IBM PC keyboard

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

The keyboards for IBM PC compatible computers are standardized. However, during the more than 30 years of PC architecture being constantly updated, multiple types of keyboard layout variations have been developed.

A well-known class of IBM PC keyboards is the Model M. Introduced in 1986 and manufactured by IBM, Lexmark, Maxi-Switch and Unicomp, the vast majority of Model M keyboards feature a buckling spring key design and many have fully swappable keycaps.

Keyboard layouts

The PC keyboard changed over the years, often at the launch of new IBM PC versions.

Name Keys Description Image
Model F (PC/XT) 083 Original left-hand side function key (F key) columns, F1 through F10; electronically incompatible with PC/AT keyboard types 83-key PC/XT keyboard Introduced with original IBM PC August 1981.
Model F (PC/AT) 084 Additional Sys Req (system request) key; numerical block clearly separated from main keyboard; added indicator LEDs for Caps/Scroll/Num lock File:AT keyboard.jpg Introduced August 1984.
Model M (Enhanced) Additional navigation and control keys; 12 F keys in separate row along top, grouped F1–4, F5–8, and F9–12. Early models of Enhanced keyboard (notably those manufactured by Northgate Ltd.) maintained the layout with function keys on the left side, arranged in two columns of six pairs. This layout was more efficient for touch typists but was superseded in the marketplace by that with F-keys along the top. PS/2 released April 1987. There are different versions of the Enhanced keyboard layout:
101 standard US layout 101-key Enhanced keyboard Introduced April 1986.[1]
102 European layouts
  • additional key to the right of the Left Shift key
  • different shape of the Return key
File:102-key Model M.jpg Introduced April 1986.
103 additional 2 keys (one to the left and one to the right of the space bar) for the Korean layout
104 Brazilian ABNT NBR 10346 variant 2 (alphanumeric portion) and 10347 (numeric portion). File:Brazilian 104-key ABNT2 keyboard.jpg
106 additional 5 keys (one above the tab key, one to the left of the right Shift key, one to the left and two to the right of the space bar) for the Japanese layout File:Compaq Enhanced III.jpg
Windows[2] Additional MS Windows key (×2) and Menu key added (one MS Windows key to the right of the left control key, the other and the Menu key to the left of the right control key).[2][3] Introduced in the Microsoft Natural keyboard for use with the MS Windows 95 operating system.[4] Most modern PCs, whether supplied with MS Windows or not, are now delivered with this layout.[5] Like the Enhanced layout, there are regional variants of the Windows keyboard layout[5]:
104 standard US layout File:Unicomp keyboard.jpg
105 European layouts[5] (as above) 105-key Windows keyboard
106 Korean layout (as above) File:Korean 106-key keyboard.jpg
107 Brazilian ABNT NBR 10346 variant 2 (alphanumeric portion) and 10347 (numeric). File:Brazilian 107-key ABNT2 Windows keyboard.jpg
109 Japanese layout (as above)

Common additions to the standard layouts include additional power management keys, volume controls, media player controls, and miscellaneous user-configurable shortcuts for email client, World Wide Web browser, etc.

The IBM PC layout, particularly the Model M, has been extremely influential, and today most keyboards use some variant of it. This has caused problems for applications developed with alternative layouts, which require keys that are in awkward positions on the Model M layout – often requiring the pinkie to operate – and thus require remapping for comfortable use.[6] One notable example is the Escape key, used by the vi editor: on the ADM-3A terminal this was located where the Tab key is on the IBM PC, but on the IBM PC the Escape key is in the corner; this is typically solved by remapping Caps Lock to Escape.[6] Another example is the Emacs editor, which makes extensive use of modifier keys, and uses the Control key more than the Meta key (IBM PC instead has the Alt key) – these date to the Knight keyboard, which had the Control key on the inside of the Meta key, opposite to the Model M, where it is on the outside of the Alt key; and to the space-cadet keyboard, where the four bucky bit keys (Control, Meta, Super, Hyper) are in a row, allowing easy chording to press several, unlike on the Model M layout. This results in the "Emacs pinky" problem.[7]

Reception

Although PC Magazine praised most aspects of the 1981 IBM PC keyboard's hardware design, it questioned "how IBM, that ultimate pro of keyboard manufacture, could put the left-hand SHIFT key at the awkward reach they did".[8] The magazine reported in 1982 that it received more letters to its "Wish List" column asking for the ability to determine the status of the three lock keys than on any other topic.[9] BYTE columnist Jerry Pournelle praised the keyboard's feel as "excellent" but complained that the Shift and other keys' locations were "enough to make a saint weep", and denounced the trend of PC compatible computers to emulate the layout but not the feel.[10] BYTE's review was more sanguine. It praised the keyboard as "bar none, the best ... on any microcomputer" and described the unusual Shift key locations as "minor [problems] compared to some of the gigantic mistakes made on almost every other microcomputer keyboard".[11]

Standard key meanings

<templatestyles src="Module:Hatnote/styles.css"></templatestyles>

The PC keyboard with its various keys has a long history of evolution reaching back to teletypewriters. In addition to the 'old' standard keys, the PC keyboard has accumulated several special keys over the years. Some of the additions have been inspired by the opportunity or requirement for improving user productivity with general office application software, while other slightly more general keyboard additions have become the factory standards after being introduced by certain operating system or GUI software vendors such as Microsoft.

From mechanical typewriters

  • Shift selects the upper character, or upper case of letters. The Shift key in typewriters was attached to a lever that moved the character types so that the uppercase characters could be printed in the paper. Unlike mechanical typewriters, PC keyboards do not capitalize all letters properly when both shift keys are engaged simultaneously.
  • Caps Lock selects upper case, or if shift is pressed, lower case of letters. In mechanical typewriters, it worked like the Shift key, but also used a lock to keep the Shift key depressed. The lock was released by pressing the Shift key.
  • Enter wraps to the next line or activates the default or selected option. ASCII keyboards were labeled CR or Return. Typewriters used a lever that would return the cylinder with the paper to the start of the line.
  • Tab produces an ASCII tab character, moving to the next tab stop.

From Teletype keyboards

  • Ctrl shifts the value of letters and numbers from the ASCII graphics range, down into the ASCII control characters. For example, CTRL-S is XOFF (stops many programs as they print to screen) CTRL-Q is XON (resume printing stopped by CTRL-S).
  • Esc produces an ASCII escape character. It may be used to exit menus or modes.
  • ~ is the tilde, an accent backspaced and printed over other letters for non-English languages. Nowadays the key does not produce a backspaceable character and is used for 'not' or 'circa'.
  • ` is a grave accent or backtick, also formerly backspaced over letters to write non-English languages; on some systems it is used as an opening quote. The single quote ' is normally used for an acute accent.
  • ^ is a circumflex, another accent for non-English languages. Also used to indicate exponentiation where superscript is not available.
  • * is an asterisk, used to indicate a note, or multiplication.
  • _ is an underscore, backspaced and overprinted to add emphasis.
  • | is a vertical bar, originally used as a typographic separator for optical character recognition. Many character sets break it in the middle so it cannot be confused with the numeral "1" or the letter "l" (in most EBCDIC codepages, vertical bar and divided vertical bar are separate characters). This character is often known as a "pipe" or a "fencepost."

Invented for computers with video displays

  • Function keys are the F-numbered keys. Their use varies by program; F1 is often Help.
  • Arrow keys move the cursor on the screen. When shifted, they select items.
  • Home moves the cursor to the start of text, usually the left side of the screen.
  • End moves the cursor to the end of the current line.
  • PgUp and PgDn move through the document by pages.
  • Del (Delete) deletes the character after the cursor, or the selected items.
  • Ins (Insert) toggles between text insertion and overwrite modes.
  • Print screen originally printed a text image of the screen. (On modern computers, Ctrl+Print Screen usually takes a screenshot.) With the Alt key, it switched to SysRq, a different keycode.
  • Num lock toggles the state of the numeric keypad. When off, the keypad acts as arrow and navigational keys. When on, it is a 10-key number pad similar to a standard calculator. Preferences vary so much that a favorite default for this key can often be configured in the BIOS. The key continues to exist on keyboards with separate arrow keys to accommodate those who still prefer the toggleable keypad.
  • Scroll lock is little-used. IBM documentation described it as "inactive", and the key's purpose was a mystery even to keyboard manufacturers.[12] In modern software, typing text usually causes previous text to scroll off the top of the screen or window. Some old programs could disable this and restart at the top of the window when scroll lock was pressed. The advantage is that the entire screenful of text does not shift, making it easier to read. Scroll Lock was also used to lock the cursor on its line and scroll the work area under it. In spreadsheets such as Microsoft Excel, it locks the cell pointer on the current cell, allowing the user to use the arrow keys to move the view window without moving the cell pointer. On some consoles (such as the Linux console), it prevents scrolling of messages until another key combination is pressed. Many hardware KVM switches use Scroll Lock to switch between the devices they control.
  • Pause pauses output or processing. In combination with Ctrl, it produces a keycode for Break. Ctrl+Break traditionally stopped programs in DOS. Ctrl+Break is also used to halt execution of the debugger in some programming environments such as Microsoft Visual Studio. In combination with the Windows key, it opens the System Properties window in Microsoft Windows environments.
  • Alt shifts the letters and numbers into the range above hex 0x80 where the international characters and special characters exist in the PC's standard character set. Alt plus a number typed on the numeric keypad produces special characters; see Windows Alt keycodes.
  • Win Windows key (also known as the "super" key) is a quick way to open the Start menu in Microsoft Windows's standard Explorer shell, and can usually be configured to open the main menu in other operating systems. In Microsoft Windows, the Windows key can also be used in combination with other keys to perform desktop-related actions (e.g. Win+M to minimize all open windows, then again to restore them).
  • The menu key brings up the active application's context menu, similar to right-clicking.
  • AltGr works like the Ctrl+Alt key combination, often used in combination with other keys to print special characters like the backslash on non-English keyboards.
  • Fn may be present on compact keyboards such as those built into laptop computers. When depressed in combination with other keys, it either enables the user to access key functions that do not have dedicated keys on the compact keyboard (such as the numeric keypad simulation block), or it controls hardware functions such as switching between the built-in screen and an external display, changing screen brightness, or changing speaker volume. These alternate meanings are usually indicated with text or symbols of a different color printed on the key, with the 'Fn' key text having that same color.
  • Turbo on some keyboards. It is usually on the right side of the right Shift key. When depressed in combination with a function key it sets the key repeat rate.[13]

Connection

System Connector Pinout Transmission Protocol Command Strings Image
PC (Type 1) [14] 5-pin DIN
(DIN 41524)
1 CLK

2 DATA
3 -RESET
4 GND
5 +5V

2 start bits,
8 data bits,
make/break bit (keydown/keyup),
1 stop bit

keyboard reset via pin 3 to ground

Not supported 5-pin DIN connector
XT (Type 2) [15] 5-pin DIN
(DIN 41524)
1 CLK

2 DATA
3 N/C
4 GND
5 +5V

2 start bits,
8 data bits,
make/break bit (keydown/keyup),
1 stop bit

keyboard reset via sequence on DATA and CLK lines

Not supported 5-pin DIN connector
AT 5-pin DIN
(DIN 41524)
1 CLK

2 DATA
3 N/C
4 GND
5 +5V

1 start bit,
8 data,
1 parity (odd),
1 stop bit
keyboard reset via command string
Supported 5-pin DIN connector
PS/2
"PS/2 port"
6-pin Mini-DIN
(DIN 45322)
1 DATA

2 N/C (or MOUSE DATA)
3 GND
4 +5V
5 CLK
6 N/C (or MOUSE CLK)

1 start bit,
8 data,
1 parity (odd),
1 stop bit
keyboard reset via command string
Supported 6-pin DIN connector
Later
PC compatibles
4-pin USB
Type A connector
1 +5V

2 Data −
3 Data +
Ground

sync field plus
8-bit bytes as packets
(HANDSHAKE, TOKEN, DATA, Special packets),
least-significant bit first.
Supported USB Type A connector

See also

Notes

  1. IBM. IBM Enhanced Keyboard for the Personal Computer Announcement Letter. 1986-04-18 ([1]).
  2. 2.0 2.1 Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. 5.0 5.1 5.2 Lua error in package.lua at line 80: module 'strict' not found.
  6. 6.0 6.1 Lua error in package.lua at line 80: module 'strict' not found.
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. Lua error in package.lua at line 80: module 'strict' not found.
  9. Lua error in package.lua at line 80: module 'strict' not found.
  10. Lua error in package.lua at line 80: module 'strict' not found.
  11. Lua error in package.lua at line 80: module 'strict' not found.
  12. Lua error in package.lua at line 80: module 'strict' not found.
  13. Belkin International. Knowledge Base Article 3532
  14. International Business Machines Corporation (1983): IBM Personal Computer XT Technical Reference Manual, pages D-12 to D-13.
  15. International Business Machines Corporation (1983): IBM Personal Computer XT Technical Reference Manual, pages D-14 to D-15.

External links