Learn about the technologies behind the Internet with The TCP/IP Guide!|
NOTE: Using robot software to mass-download the site degrades the server and is prohibited. See here for more.
Find The PC Guide helpful? Please consider a donation to The PC Guide Tip Jar. Visa/MC/Paypal accepted.
|View over 750 of my fine art photos any time for free at DesktopScenes.com!|
As described in the section on keystroke detection and scan code generation, keyboards don't send letters and numbers to the PC, but rather sets of scan codes. The keyboard decides what to send to the PC, and the PC decides how to interpret it. This enables the easy support of alternate keyboard layouts such as the Dvorak keyboard. It also means that it is very straight-forward to create keyboards that are programmable, meaning that their function and operation can be altered by the user.
Programmable keyboards have special additional "smarts" built into their internal processor to support programmability, and an EEPROM (flash memory) to hold key definitions, even when power to the keyboard has been cut. They are great for users that really want control over their keyboard's layout and operation--people like me! :^) As I mentioned, I exclusively use programmable keyboards, in my case Gateway Anykey 124-key keyboards. The programming features let me overcome what I consider to be poor layout decisions in the standard 101-key "Enhanced" PC keyboard layout.
Tip: For many years Gateway
included these keyboards as standard equipment on all their new PCs, but I believe they
are now optional. They can in fact be used on any system, not just Gateway's PCs. Gateway
officially sells them only to Gateway system buyers, but used Anykey keyboards are easy to
find inexpensively at online auction sites. There are of course other manufacturers of
programmable keyboards as well.
Keyboards with programming features usually include additional keys that control the programming of other keys. One important function of the programmability is the ability to "Remap" keys. You hit the "Remap" key, and then another two keys, and the original function of the first is transferred to the second. This lets you swap keys around or redefine the layout of the keyboard. For example, I use this to define the <Caps Lock> key on my keyboard to function as a <Ctrl> key. Since the change is made within the keyboard itself, the alteration is completely transparent to the system, and the keyboard can be moved to any PC and operate the same way.
Tip: One could also use this
functionality to create the equivalent of a "hard-wired" Dvorak keyboard, for
example, simply swapping the letter keys around to match the Dvorak pattern, with no
software changes needed to the PC.
Another feature of these keyboards is the ability to define macros. These are strings of key sequences that are activated when a single key is pressed. Again, for many users they are not that important, but for others they are extremely useful. For example, you could program a single key to insert your entire email address into any program. Again, this is implemented at the keyboard level, so you can use strings of key sequences with all application, and even use special key sequences like <Alt>+<Tab> to move between applications or perform special operations.
Programmable keyboards have never been all that popular. For most typical PC users the programming features aren't needed, and so the additional cost of the programming feature isn't warranted. Worse, there are problems with programmable keyboards. Since keys can be remapped and macros defined, accidentally hitting the programming keys can cause the keyboard to change the meaning of any key on the keyboard, including fundamental ones like <Enter> or the <Space Bar>. If programming is activated and not shut off, the keyboard may "absorb" long sequences of characters into macro strings instead of sending them to the system, without the user realizing that this has happened.
This can create a great deal of confusion, and some companies have banned these keyboards from their offices entirely because the PC support people got tired of all the calls from users whose keyboards were "locked up", or questions regarding why the letter "Q" shows up when they press the "A" key. The programming can be cleared and the keyboard reset, but this is still an annoyance to many users who don't need the programmability in the first place. So once again, the value of this tool depends on the needs of its wielder.
Programmable keyboards, such as the Gateway Anykey I mentioned, sometimes come with special software that will let you save the current configuration of the keys, or restore a previously-saved configuration. This is useful for recovering in the event that the current configuration becomes cleared. It could also be used by two people sharing a keyboard (though that would be quite cumbersome if frequent switching was necessary.)
Next: Notebook Keyboards