DECEKBD—Extended Keyboard Report

This control function is a report that provides applications with more complete keystroke information. Each report consists of an ISO key position code and the current state of the eight modifier keys—pressed or released.




is a three-character ISO key position name, for example C01. For keys that occupy more than one position in the ISO key position map, the VT510 uses the largest lower-left position. The position for the space bar is A02; Return is C13.

are two ASCII hexadecimal digits that represent the state of the modifier keys.

The terminal represents the state of each modifier key as a bit in an 8-bit binary number. A bit value of 1 means the key is pressed, and a bit value of 0 means the key is not pressed. mm is the hexadecimal equivalent of the resulting 8-bit binary number.

The following table shows the order in which keys are represented in the binary number, and their corresponding hexadecimal values when pressed. The least significant bit represents the left Shift key. The most significant bit represents the right Compose Character key.

For example, 000000102 means that the right Shift key is pressed. The hexadecimal value for 000000102 is 0216.

mm Key
01 left Shift (Least significant bit)
02 right Shift
04 Lock
08 Ctrl
10 left Alt Function
20 right Alt Function
40 left Compose Character
80 right Compose Character (Most significant bit)


The terminal only sends extended key position reports when key position mode (DECKPM) is set.

The terminal uses the following rules when sending extended key reports:


The following sequence reports an a key with no modifier keys, four > keys, one < key, and a b key:

APC : C01 00 / B18.../ B16 / B05 ST

The following sequence reports a left Shift key and an A key:

APC : B99 01 / C01 ST