Appendix b console, B.1 simple_input – Intel Extensible Firmware Interface User Manual
Page 853

Version 1.10
12/01/02
B-1
Appendix B
Console
The EFI console was designed so that it could map to common console devices. This appendix
explains how an EFI console could map to a VGA with PC AT 101/102, PC ANSI, or
ANSI X3.64 consoles.
B.1 SIMPLE_INPUT
Table B-1 gives examples of how an EFI scan code can be mapped to ANSI X3.64 terminal,
PCANSI terminal, or an AT 101/102 keyboard. PC ANSI terminals support an escape sequence
that begins with the ASCII character 0x1b and is followed by the ASCII character 0x5B, “ [ ”.
ASCII characters that define the control sequence that should be taken follow the escape sequence.
(The escape sequence does not contain spaces, but spaces are used in Table B-1 to ease the reading
of the table.) ANSI X3.64, when combined with ISO 6429, can be used to represent the same
subset of console support required by EFI. ANSI X3.64 uses a single character escape sequence
CSI: ASCII character 0x9B. ANSI X3.64 can optionally use the same two-character escape
sequence “ESC [ ”. ANSI X3.64 and ISO 6429 support the same escape codes as PC ANSI.
Table B-1. EFI Scan Codes for
EFI Scan Code
Description
ANSI X3.64
Codes
PC ANSI
Codes
AT 101/102 Keyboard
Scan Codes
0x00
Null scan code
N/A
N/A
N/A
0x01
Move cursor up 1 row
CSI A
ESC [ A
0xe0, 0x48
0x02
Move cursor down 1 row
CSI B
ESC [ B
0xe0, 0x50
0x03
Move cursor right 1 column
CSI C
ESC [ C
0xe0, 0x4d
0x04
Move cursor left 1 column
CSI D
ESC [ D
0xe0, 0x4b
0x05
Home
CSI H
ESC [ H
0xe0, 0x47
0x06
End
CSI K
ESC [ K
0xe0, 0x4f
0x07
Insert
CSI @
ESC [ @
0xe0, 0x52
0x08
Delete
CSI P
ESC [ P
0xe0, 0x53
0x09
Page Up
CSI ?
ESC [ ?
0xe0, 0x49
0x0a
Page Down
CSI /
ESC [ /
0xe0, 0x51
continued