You can read from multiple keyboards with GlovePIE, if you have Windows XP. You will probably need extra USB keyboards. Multiple keyboards are rare, and not especially useful. You can’t write to multiple keyboards, because I haven’t seen any programs other than mine that can tell which keyboard you used.
Just put a number after the word keyboard, like this:
midi.BassDrum1 = keyboard2.Enter
It uses RawInput instead of DirectInput for reading multiple keyboards, so sometimes you can get better or worse results just by changing one of your “keyboard”s to a “keyboard1” so that it uses RawInput instead. You only need to mention keyboard1 once in your script to force it to use RawInput. RawInput will conflict with some exclusive-mode DirectInput software.
You can tell how many keyboards there are with Keyboard.Count. You can tell whether a keyboard exists with Keyboard2.Exists.
Keys that can’t be used
The (stupid bloody) F Lock key can’t be read or simulated. It doesn’t send information to the computer when pressed. It just changes what the other keys do.
The My Documents key doesn’t seem to have a scan-code or an AppCommand, so it is not useable with GlovePIE.
The Messenger key doesn’t seem to work with GlovePIE.
Sleep, LogOff, Power
The Sleep, LogOff and Power keys shouldn’t be used because they turn everything off. Which kind of makes responding to them pointless. But the Sleep key does actually work in GlovePIE.
Acer Laptop special keys
Most of the Acer Laptop special keys don’t work, or only work sometimes. Including the envelope, Saturn, P, and e special keys; the media keys (FB, FF, MediaStop, PlayPause, VOL-, VOL+); the increase/decrease brightness keys, and the ?, Fn+F2, Fn+F3, Fn+F4, Fn+F5, Fn+F6, and Fn+F7. On the other hand, the Mute key (Fn+F8) works, but only triggers for a short while once you release it. The other VolumeUp and VolumeDown keys work fine (Fn+Up, Fn+Down), unlike their VOL- and VOL+ equivalents.
Keys that sort of work
You can use the multimedia keys, and application keys, but they may not work as well as other keys. You can’t usually tell how long they are held down. You can’t tell how long the Pause key was held down either.
You can also simulate Unicode characters. This allows you to make typing programs for other languages, or to type special symbols or letters.
The possible values are the word “Unicode” followed by the four hexadecimal digits for that character. See www.unicode.org for tables. For example, to type the Greek letter alpha when the user presses the joystick button:
key.Unicode03B1 = joystick.button1
This may not work on all programs or on all operating systems.
The TypeUnicode command also send a string of characters by the same method. Although those characters sent by TypeUnicode can currently only be Ansi characters since GlovePIE strings are still Ansi. But they will be sent via the same Unicode messages.
PrintScreen, SysReq, Pause, Break, ScrollLock NOTE: Pause should not be confused with the new Play and Pause keys for music players. This Pause is the original Pause key that has been on every keyboard since the beginning. The new Pause key is called MediaPause.
This Pause key (and coincidently also the MediaPause one) doesn’t usually tell you when it is released. Which means GlovePIE will guess.
SysReq and Break used to be separate keys. Then the Breakkey got moved onto NumLock. Then the Break key got moved again onto Pause. Then the SysReq got moved onto PrintScreen. But the computer still regards them as separate keys. Break is Ctrl+Pause and SysReq is Alt+PrintScreen.