|
|
|
|
<TITLE>ANSI.SYS -- ansi terminal emulation escape sequences</TITLE>
|
|
|
|
|
|
|
|
|
|
ANSI.SYS
|
|
|
|
|
|
|
|
|
|
Defines functions that change display graphics, control cursor movement, and
|
|
|
|
|
reassign keys. The ANSI.SYS device driver supports ANSI terminal emulation
|
|
|
|
|
of escape sequences to control your system's screen and keyboard. An ANSI
|
|
|
|
|
escape sequence is a sequence of ASCII characters, the first two of which
|
|
|
|
|
are the escape character (1Bh) and the left-bracket character (5Bh). The
|
|
|
|
|
character or characters following the escape and left-bracket characters
|
|
|
|
|
specify an alphanumeric code that controls a keyboard or display function.
|
|
|
|
|
ANSI escape sequences distinguish between uppercase and lowercase letters;
|
|
|
|
|
for example,"A" and "a" have completely different meanings.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Parameters used in ANSI escape sequences
|
|
|
|
|
|
|
|
|
|
Pn
|
|
|
|
|
Numeric parameter. Specifies a decimal number.
|
|
|
|
|
|
|
|
|
|
Ps
|
|
|
|
|
Selective parameter. Specifies a decimal number that you use to select
|
|
|
|
|
a function. You can specify more than one function by separating the
|
|
|
|
|
parameters with semicolons.
|
|
|
|
|
|
|
|
|
|
PL
|
|
|
|
|
Line parameter. Specifies a decimal number that represents one of the
|
|
|
|
|
lines on your display or on another device.
|
|
|
|
|
|
|
|
|
|
Pc
|
|
|
|
|
Column parameter. Specifies a decimal number that represents one of the
|
|
|
|
|
columns on your screen or on another device.
|
|
|
|
|
|
|
|
|
|
ANSI escape sequences for cursor movement, graphics, and keyboard settings
|
|
|
|
|
|
|
|
|
|
In the following list of ANSI escape sequences, the abbreviation ESC
|
|
|
|
|
represents the ASCII escape character 27 (1Bh), which appears at the
|
|
|
|
|
beginning of each escape sequence.
|
|
|
|
|
|
|
|
|
|
ESC[PL;PcH
|
|
|
|
|
Cursor Position: Moves the cursor to the specified position
|
|
|
|
|
(coordinates). If you do not specify a position, the cursor moves to the
|
|
|
|
|
home position - the upper-left corner of the screen (line 0, column
|
|
|
|
|
0). This escape sequence works the same way as the following Cursor
|
|
|
|
|
Position escape sequence.
|
|
|
|
|
|
|
|
|
|
ESC[PL;Pcf
|
|
|
|
|
Cursor Position: Works the same way as the preceding Cursor Position
|
|
|
|
|
escape sequence.
|
|
|
|
|
|
|
|
|
|
ESC[PnA
|
|
|
|
|
Cursor Up: Moves the cursor up by the specified number of lines without
|
|
|
|
|
changing columns. If the cursor is already on the top line, ANSI.SYS
|
|
|
|
|
ignores this sequence.
|
|
|
|
|
|
|
|
|
|
ESC[PnB
|
|
|
|
|
Cursor Down: Moves the cursor down by the specified number of lines
|
|
|
|
|
without changing columns. If the cursor is already on the bottom line,
|
|
|
|
|
ANSI.SYS ignores this sequence.
|
|
|
|
|
|
|
|
|
|
ESC[PnC
|
|
|
|
|
Cursor Forward: Moves the cursor forward by the specified number of
|
|
|
|
|
columns without changing lines. If the cursor is already in the
|
|
|
|
|
rightmost column, ANSI.SYS ignores this sequence.
|
|
|
|
|
|
|
|
|
|
ESC[PnD
|
|
|
|
|
Cursor Backward: Moves the cursor back by the specified number of
|
|
|
|
|
columns without changing lines. If the cursor is already in the leftmost
|
|
|
|
|
column, ANSI.SYS ignores this sequence.
|
|
|
|
|
|
|
|
|
|
ESC[s
|
|
|
|
|
Save Cursor Position: Saves the current cursor position. You can move
|
|
|
|
|
the cursor to the saved cursor position by using the Restore Cursor
|
|
|
|
|
Position sequence.
|
|
|
|
|
|
|
|
|
|
ESC[u
|
|
|
|
|
Restore Cursor Position: Returns the cursor to the position stored
|
|
|
|
|
by the Save Cursor Position sequence.
|
|
|
|
|
|
|
|
|
|
ESC[2J
|
|
|
|
|
Erase Display: Clears the screen and moves the cursor to the home
|
|
|
|
|
position (line 0, column 0).
|
|
|
|
|
|
|
|
|
|
ESC[K
|
|
|
|
|
Erase Line: Clears all characters from the cursor position to the
|
|
|
|
|
end of the line (including the character at the cursor position).
|
|
|
|
|
|
|
|
|
|
ESC[Ps;...;Psm
|
|
|
|
|
Set Graphics Mode: Calls the graphics functions specified by the
|
|
|
|
|
following values. These specified functions remain active until the next
|
|
|
|
|
occurrence of this escape sequence. Graphics mode changes the colors and
|
|
|
|
|
attributes of text (such as bold and underline) displayed on the
|
|
|
|
|
screen.
|
|
|
|
|
|
|
|
|
|
Text attributes
|
|
|
|
|
0 All attributes off
|
|
|
|
|
1 Bold on
|
|
|
|
|
4 Underscore (on monochrome display adapter only)
|
|
|
|
|
5 Blink on
|
|
|
|
|
7 Reverse video on
|
|
|
|
|
8 Concealed on
|
|
|
|
|
|
|
|
|
|
Foreground colors
|
|
|
|
|
30 Black
|
|
|
|
|
31 Red
|
|
|
|
|
32 Green
|
|
|
|
|
33 Yellow
|
|
|
|
|
34 Blue
|
|
|
|
|
35 Magenta
|
|
|
|
|
36 Cyan
|
|
|
|
|
37 White
|
|
|
|
|
|
|
|
|
|
Background colors
|
|
|
|
|
40 Black
|
|
|
|
|
41 Red
|
|
|
|
|
42 Green
|
|
|
|
|
43 Yellow
|
|
|
|
|
44 Blue
|
|
|
|
|
45 Magenta
|
|
|
|
|
46 Cyan
|
|
|
|
|
47 White
|
|
|
|
|
|
|
|
|
|
Parameters 30 through 47 meet the ISO 6429 standard.
|
|
|
|
|
|
|
|
|
|
ESC[=psh
|
|
|
|
|
Set Mode: Changes the screen width or type to the mode specified
|
|
|
|
|
by one of the following values:
|
|
|
|
|
|
|
|
|
|
0 40 x 148 x 25 monochrome (text)
|
|
|
|
|
1 40 x 148 x 25 color (text)
|
|
|
|
|
2 80 x 148 x 25 monochrome (text)
|
|
|
|
|
3 80 x 148 x 25 color (text)
|
|
|
|
|
4 320 x 148 x 200 4-color (graphics)
|
|
|
|
|
5 320 x 148 x 200 monochrome (graphics)
|
|
|
|
|
6 640 x 148 x 200 monochrome (graphics)
|
|
|
|
|
7 Enables line wrapping
|
|
|
|
|
13 320 x 148 x 200 color (graphics)
|
|
|
|
|
14 640 x 148 x 200 color (16-color graphics)
|
|
|
|
|
15 640 x 148 x 350 monochrome (2-color graphics)
|
|
|
|
|
16 640 x 148 x 350 color (16-color graphics)
|
|
|
|
|
17 640 x 148 x 480 monochrome (2-color graphics)
|
|
|
|
|
18 640 x 148 x 480 color (16-color graphics)
|
|
|
|
|
19 320 x 148 x 200 color (256-color graphics)
|
|
|
|
|
|
|
|
|
|
ESC[=Psl
|
|
|
|
|
Reset Mode: Resets the mode by using the same values that Set Mode
|
|
|
|
|
uses, except for 7, which disables line wrapping. The last character
|
|
|
|
|
in this escape sequence is a lowercase L.
|
|
|
|
|
|
|
|
|
|
ESC[code;string;...p
|
|
|
|
|
Set Keyboard Strings: Redefines a keyboard key to a specified string.
|
|
|
|
|
The parameters for this escape sequence are defined as follows:
|
|
|
|
|
|
|
|
|
|
Code is one or more of the values listed in the following table.
|
|
|
|
|
These values represent keyboard keys and key combinations. When using
|
|
|
|
|
these values in a command, you must type the semicolons shown in this
|
|
|
|
|
table in addition to the semicolons required by the escape sequence.
|
|
|
|
|
The codes in parentheses are not available on some keyboards.
|
|
|
|
|
ANSI.SYS will not interpret the codes in parentheses for those
|
|
|
|
|
keyboards unless you specify the /X switch in the DEVICE command for
|
|
|
|
|
ANSI.SYS.
|
|
|
|
|
|
|
|
|
|
String is either the ASCII code for a single character or a string
|
|
|
|
|
contained in quotation marks. For example, both 65 and "A" can be
|
|
|
|
|
used to represent an uppercase A.
|
|
|
|
|
|
|
|
|
|
IMPORTANT: Some of the values in the following table are not valid for all
|
|
|
|
|
computers. Check your computer's documentation for values that
|
|
|
|
|
are different.
|
|
|
|
|
|
|
|
|
|
Key Code SHIFT+code CTRL+code ALT+code
|
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
F1 0;59 0;84 0;94 0;104
|
|
|
|
|
|
|
|
|
|
F2 0;60 0;85 0;95 0;105
|
|
|
|
|
|
|
|
|
|
F3 0;61 0;86 0;96 0;106
|
|
|
|
|
|
|
|
|
|
F4 0;62 0;87 0;97 0;107
|
|
|
|
|
|
|
|
|
|
F5 0;63 0;88 0;98 0;108
|
|
|
|
|
|
|
|
|
|
F6 0;64 0;89 0;99 0;109
|
|
|
|
|
|
|
|
|
|
F7 0;65 0;90 0;100 0;110
|
|
|
|
|
|
|
|
|
|
F8 0;66 0;91 0;101 0;111
|
|
|
|
|
|
|
|
|
|
F9 0;67 0;92 0;102 0;112
|
|
|
|
|
|
|
|
|
|
F10 0;68 0;93 0;103 0;113
|
|
|
|
|
|
|
|
|
|
F11 0;133 0;135 0;137 0;139
|
|
|
|
|
|
|
|
|
|
F12 0;134 0;136 0;138 0;140
|
|
|
|
|
|
|
|
|
|
HOME (num keypad) 0;71 55 0;119 --
|
|
|
|
|
|
|
|
|
|
UP ARROW (num keypad) 0;72 56 (0;141) --
|
|
|
|
|
|
|
|
|
|
PAGE UP (num keypad) 0;73 57 0;132 --
|
|
|
|
|
|
|
|
|
|
LEFT ARROW (num keypad) 0;75 52 0;115 --
|
|
|
|
|
|
|
|
|
|
RIGHT ARROW (num 0;77 54 0;116 --
|
|
|
|
|
keypad)
|
|
|
|
|
|
|
|
|
|
END (num keypad) 0;79 49 0;117 --
|
|
|
|
|
|
|
|
|
|
DOWN ARROW (num keypad) 0;80 50 (0;145) --
|
|
|
|
|
|
|
|
|
|
PAGE DOWN (num keypad) 0;81 51 0;118 --
|
|
|
|
|
|
|
|
|
|
INSERT (num keypad) 0;82 48 (0;146) --
|
|
|
|
|
|
|
|
|
|
DELETE (num keypad) 0;83 46 (0;147) --
|
|
|
|
|
|
|
|
|
|
HOME (224;71) (224;71) (224;119) (224;151)
|
|
|
|
|
|
|
|
|
|
UP ARROW (224;72) (224;72) (224;141) (224;152)
|
|
|
|
|
|
|
|
|
|
PAGE UP (224;73) (224;73) (224;132) (224;153)
|
|
|
|
|
|
|
|
|
|
LEFT ARROW (224;75) (224;75) (224;115) (224;155)
|
|
|
|
|
|
|
|
|
|
RIGHT ARROW (224;77) (224;77) (224;116) (224;157)
|
|
|
|
|
|
|
|
|
|
END (224;79) (224;79) (224;117) (224;159)
|
|
|
|
|
|
|
|
|
|
DOWN ARROW (224;80) (224;80) (224;145) (224;154)
|
|
|
|
|
|
|
|
|
|
PAGE DOWN (224;81) (224;81) (224;118) (224;161)
|
|
|
|
|
|
|
|
|
|
INSERT (224;82) (224;82) (224;146) (224;162)
|
|
|
|
|
|
|
|
|
|
DELETE (224;83) (224;83) (224;147) (224;163)
|
|
|
|
|
|
|
|
|
|
PRINT SCREEN <20><> <20><> 0;114 <20><>
|
|
|
|
|
|
|
|
|
|
PAUSE/BREAK <20><> <20><> 0;0 <20><>
|
|
|
|
|
|
|
|
|
|
BACKSPACE 8 8 127 (0)
|
|
|
|
|
|
|
|
|
|
ENTER 13 <20><> 10 (0
|
|
|
|
|
|
|
|
|
|
TAB 9 0;15 (0;148) (0;165)
|
|
|
|
|
|
|
|
|
|
NULL 0;3 <20><> <20><> <20><>
|
|
|
|
|
|
|
|
|
|
A 97 65 1 0;30
|
|
|
|
|
|
|
|
|
|
B 98 66 2 0;48
|
|
|
|
|
|
|
|
|
|
C 99 66 3 0;46
|
|
|
|
|
|
|
|
|
|
D 100 68 4 0;32
|
|
|
|
|
|
|
|
|
|
E 101 69 5 0;18
|
|
|
|
|
|
|
|
|
|
F 102 70 6 0;33
|
|
|
|
|
|
|
|
|
|
G 103 71 7 0;34
|
|
|
|
|
|
|
|
|
|
H 104 72 8 0;35
|
|
|
|
|
|
|
|
|
|
I 105 73 9 0;23
|
|
|
|
|
|
|
|
|
|
J 106 74 10 0;36
|
|
|
|
|
|
|
|
|
|
K 107 75 11 0;37
|
|
|
|
|
|
|
|
|
|
L 108 76 12 0;38
|
|
|
|
|
|
|
|
|
|
M 109 77 13 0;50
|
|
|
|
|
|
|
|
|
|
N 110 78 14 0;49
|
|
|
|
|
|
|
|
|
|
O 111 79 15 0;24
|
|
|
|
|
|
|
|
|
|
P 112 80 16 0;25
|
|
|
|
|
|
|
|
|
|
Q 113 81 17 0;16
|
|
|
|
|
|
|
|
|
|
R 114 82 18 0;19
|
|
|
|
|
|
|
|
|
|
S 115 83 19 0;31
|
|
|
|
|
|
|
|
|
|
T 116 84 20 0;20
|
|
|
|
|
|
|
|
|
|
U 117 85 21 0;22
|
|
|
|
|
|
|
|
|
|
V 118 86 22 0;47
|
|
|
|
|
|
|
|
|
|
W 119 87 23 0;17
|
|
|
|
|
|
|
|
|
|
X 120 88 24 0;45
|
|
|
|
|
|
|
|
|
|
Y 121 89 25 0;21
|
|
|
|
|
|
|
|
|
|
Z 122 90 26 0;44
|
|
|
|
|
|
|
|
|
|
1 49 33 <20><> 0;120
|
|
|
|
|
|
|
|
|
|
2 50 64 0 0;121
|
|
|
|
|
|
|
|
|
|
3 51 35 <20><> 0;122
|
|
|
|
|
|
|
|
|
|
4 52 36 <20><> 0;123
|
|
|
|
|
|
|
|
|
|
5 53 37 <20><> 0;124
|
|
|
|
|
|
|
|
|
|
6 54 94 30 0;125
|
|
|
|
|
|
|
|
|
|
7 55 38 <20><> 0;126
|
|
|
|
|
|
|
|
|
|
8 56 42 <20><> 0;126
|
|
|
|
|
|
|
|
|
|
9 57 40 <20><> 0;127
|
|
|
|
|
|
|
|
|
|
0 48 41 <20><> 0;129
|
|
|
|
|
|
|
|
|
|
- 45 95 31 0;130
|
|
|
|
|
|
|
|
|
|
= 61 43 <20><>- 0;131
|
|
|
|
|
|
|
|
|
|
[ 91 123 27 0;26
|
|
|
|
|
|
|
|
|
|
] 93 125 29 0;27
|
|
|
|
|
|
|
|
|
|
92 124 28 0;43
|
|
|
|
|
|
|
|
|
|
; 59 58 <20><> 0;39
|
|
|
|
|
|
|
|
|
|
' 39 34 <20><> 0;40
|
|
|
|
|
|
|
|
|
|
, 44 60 <20><> 0;51
|
|
|
|
|
|
|
|
|
|
. 46 62 <20><> 0;52
|
|
|
|
|
|
|
|
|
|
/ 47 63 <20><> 0;53
|
|
|
|
|
|
|
|
|
|
` 96 126 <20><> (0;41)
|
|
|
|
|
|
|
|
|
|
ENTER (keypad) 13 <20><> 10 (0;166)
|
|
|
|
|
|
|
|
|
|
/ (keypad) 47 47 (0;142) (0;74)
|
|
|
|
|
|
|
|
|
|
* (keypad) 42 (0;144) (0;78) <20><>
|
|
|
|
|
|
|
|
|
|
- (keypad) 45 45 (0;149) (0;164)
|
|
|
|
|
|
|
|
|
|
+ (keypad) 43 43 (0;150) (0;55)
|
|
|
|
|
|
|
|
|
|
5 (keypad) (0;76) 53 (0;143) <20><>
|