Web Site

Computerit-solutions.com



» Computer » Topics begins with S » Scancode


Page modified: Friday, June 23, 2006 20:28:27

XT-keyboard

To the early 1980-er years IBM introduced the so-called XT PC keyboard with 83 keys. In order to have to generate not with each country-specific keyboard other codes, each key a number was assigned, to the so-called Scancode, to which in the computer by the keyboard driver an ASCII-Code was assigned. A standard keyboard driver for the US-American allocation was integrated with each PC in the BIOS, country-specific allocations settled a software keyboard driver, which was reloaded as TSR program with the system start.

With the XT-keyboard there was left a block of 10 function keys and on the right of the alphanumeric keys with attached number block. LED for signaling the current conditions and a separate cursor block was not there yet. Communication exclusively happened from the keyboard to the PC. The structure in principle of the serial interface is described under PS/2-Schnittstelle; the typical plug connector for PC and RK keyboards was however over long years a 5poliger DIN link, which one could do in Germany as plug for NF-signals ("“overacting cables"”).

RK keyboard

The logical advancement was the RK keyboard with 84 keys (set off function keys and 10er block). Here the physical interface, which PS/2-Schnittstelle maintained, however signaling was arranged completely new. Communication between computers and keyboard was now bi-directional, recognizably for example to the fact that the computer could switch the status LEDs by program control. The transferred codes were completely different than with the XT. A small single-chip computer (8042), somewhat misleadingly "“key board BIOS"” mentioned, converted the actually transferred codes on compatible values. For the software an RK keyboard (with its upstream "“key board BIOS"”) saw very similar to a XT-keyboard.

The change of a XT on RK required usually the exchange of the keyboard; in addition, there were itself keyboards, sel

MF2-Tastatur

The next change of generations carried out itself 1986, when IBM brought the 101 keys out large MF2-Tastatur for US or English market. Similarly the country-specific 102 keys large MF2-Tastatur was defined. Finally all future extensions are based, as for example the 104/105 keys Windows keyboard on these two keyboard layouts.

The arrangement of the keys was changed there against that now the function keys lay above the alphanumeric keys. The numeric key block and special keys for cursor movement were optically separated.

In principle when pressing a key the appropriate Scancode of the key one sends. With longer pressures the same Scancode is sent repeated and put in front when releasing a so-called BREAK code $F0 to the Scancode.

The "“key board BIOS"” converts these values however. Usually make code is the highest bit = 0, with the BREAK code however 1 with.

Example: The space bar has the make code $39 and the BREAK code $B9.

In order to be compatible with a MF2-Tastatur to the XT-keyboard, certain keys got the same code with a special code $E0 or $E1 for distinction in front of it-set.

The American MF2-Tastatur has 101 keys; the country-specific 102 keys. The additional key carries the inscription on German keyboards </>. The new Windows keys 59, 63 and 64 are not into that below described tables contained. Who knows the codes, she can register gladly.

Keyboard of instructions

  • If the keyboard is put back (PC sends RESETs = $FF), it answers with successful basic assurance test with asked = $AA
  • If the keyboard is put back and it gives a case of an error, for example wedges a key, it reacts to BatE2 = $FD with BatE1 = $FC or.
  • The test of communication from the PC with echo = $EE and the keyboard answers effected likewise with echo = $EE.
  • Generally all commands are confirmed to the keyboard with Acknowledge Ack = $FA by the keyboard. Somewhat not a Misunderstand Misu = $FE is correct with the data, comes.
  • If the keyboard is asked READ ID = for $F2 their type, a MF2-Tastatur answers ID2 = $83 with 2 bytes ID1 = $AB and.
  • The keyboard if buffer is full, the keyboard reacts with Full = $FF
  • From the PC coming the instruction set LED = $ED followed of a byte, steers the light emitting diodes (bits 0..2 = ScrlLock, NumLock, CapsLock; Bit 3..7 = 0).
  • Of the PC set code set = $F0 followed of a byte, selects the code set 1..3.
  • From the PC set code set = $F0 followed of 0 meant that the PC info. would like to have, which code set is active.
  • From the PC the instruction set speed = $F3 followed of a byte, steers the delay (bit 5, 6) and repetition rate (bit 0..4).
  • From the PC Enable = $F4 activates the Scanvorgang and Disable = $F5 deactivates the Scanvorgang.
  • From the PC set default = $F6 sets everything on default values.
  • From the PC Resend = $FE serves for repeating the last code.

Code set

The code table of the PC keyboard is a considerable disorder. Already early one tried to systematize it and therefore for the MF-keyboard defined three code tables: compatible and two systematic.

The existing code table was however already so firmly imported that found the again-created no more acceptance. Until today each keyboard controls all three tables, was used and becomes however excluding one (compatible first).

---

See also: Magazine c't 11.1988; c't 6 ' 88 S.156

Related links


Related Websites

We found here 5 related websites.

  • Key Support, Keyboard Scan Codes, and Windows
    The Keyboard Scan Code Specification details the PS/2 Scan Codes and USB Usage ... Download the PDF file Download "USB HID to PS/2 Scan Code Translation ...

  • Keyboard Scan Codes
    Many keyboard scancode tables published are not completely accurate. ... The keyboard for that machine used a scancode set virtually identical to other IBM ...

  • Scan Code Mapper for Windows
    Describes the new Scan Code Mapper in Microsoft Windows 2000, which provides a method that allows for mapping of PS/2-compatible scan codes so that they are ...

  • Scancode Logistics
    Transportation Management System (ATMS), Warehouse Management System (WMS) and Logistics Software compliant with all major Carriers in Canada & US.

  • Scancode Systems : Contact Us - Careers at Scancode
    Scancode Logistics, Scancode Systems, Scancode, Scan Code, scan-code, UPC, rating, label, software, hardware, server, client, solutions, tracking, shipping, ...

Page cached: Wednesday, July 5, 2006 14:10:13
Valid XHTML 1.0!  Valid CSS!

Navigation

Related articles


Page copy protected against web site content infringement by Copyscape