Compatible with:
DOS Maximite CMM MM150 MM170 MM+ MMX Picromite ArmiteL4
Armite F4 ArmiteH7 Picomite CMM2
The first 32 characters in the ASCII-table are unprintable control codes and are used to control peripherals such as printers.
DEC OCT HEX BIN
Symbol Description
0 000 00 00000000 NUL Null char
1 001 01 00000001 SOH Start of Heading
2 002 02 00000010 STX Start of Text
3 003 03 00000011 ETX End of Text
4 004 04 00000100 EOT End of Transmission
5 005 05 00000101 ENQ Enquiry
6 006 06 00000110 ACK Acknowledgment
7 007 07 00000111 BEL Bell
8 010 08 00001000 BS Back Space
9 011 09 00001001 HT Horizontal Tab
10 012 0A 00001010 LF Line Feed
11 013 0B 00001011 VT Vertical Tab
12 014 0C 00001100 FF Form Feed
13 015 0D 00001101 CR Carriage Return
14 016 0E 00001110 SO Shift Out / X-On
15 017 0F 00001111 SI Shift In / X-Off
16 020 10 00010000 DLE Data Line Escape
17 021 11 00010001 DC1 Device Control 1 (oft.
XON)
18 022 12 00010010 DC2 Device Control 2
19 023 13 00010011 DC3 Device Control 3 (oft.
XOFF)
20 024 14 00010100 DC4 Device Control 4
21 025 15 00010101 NAK Negative Acknowledgement
22 026 16 00010110 SYN Synchronous Idle
23 027 17 00010111 ETB End of Transmit Block
24 030 18 00011000 CAN Cancel
25 031 19 00011001 EM End of Medium
26 032 1A 00011010 SUB Substitute
27 033 1B 00011011 ESC Escape
28 034 1C 00011100 FS File Separator
29 035 1D 00011101 GS Group Separator
30 036 1E 00011110 RS Record Separator
31 037 1F 00011111 US Unit Separator
Codes 32-127 are common for all the different variations of the ASCII table, they are called printable characters, represent letters, digits, punctuation marks, and a few miscellaneous symbols.
You will find almost every character on your keyboard. Character 127 represents the command DEL.
DEC OCT HEX BIN
Symbol Description
32 040 20 00100000 Space
33 041 21 00100001 ! Exclamation
mark
34 042 22 00100010 " Double
quotes (or speech marks)
35 043 23 00100011 # Number
36 044 24 00100100 $ Dollar
37 045 25 00100101 % Procenttecken
38 046 26 00100110 & Ampersand
39 047 27 00100111 ' Single quote
40 050 28 00101000 ( Open
parenthesis (or open bracket)
41 051 29 00101001 ) Close
parenthesis (or close bracket)
42 052 2A 00101010 * Asterisk
43 053 2B 00101011 + Plus
44 054 2C 00101100 , Comma
45 055 2D 00101101 - Hyphen
46 056 2E 00101110 . Period, dot or
full stop
47 057 2F 00101111 / Slash or divide
48 060 30 00110000 0 Zero
49 061 31 00110001 1 One
50 062 32 00110010 2 Two
51 063 33 00110011 3 Three
52 064 34 00110100 4 Four
53 065 35 00110101 5 Five
54 066 36 00110110 6 Six
55 067 37 00110111 7 Seven
56 070 38 00111000 8 Eight
57 071 39 00111001 9 Nine
58 072 3A 00111010 : Colon
59 073 3B 00111011 ; Semicolon
60 074 3C 00111100 < Less than
(or open angled bracket)
61 075 3D 00111101 = Equals
62 076 3E 00111110 > Greater than
(or close angled bracket)
63 077 3F 00111111 ? Question mark
64 100 40 01000000 @ At symbol
65 101 41 01000001 A Uppercase A
66 102 42 01000010 B Uppercase B
67 103 43 01000011 C Uppercase C
68 104 44 01000100 D Uppercase D
69 105 45 01000101 E Uppercase E
70 106 46 01000110 F Uppercase F
71 107 47 01000111 G Uppercase G
72 110 48 01001000 H Uppercase H
73 111 49 01001001 I Uppercase I
74 112 4A 01001010 J Uppercase J
75 113 4B 01001011 K Uppercase K
76 114 4C 01001100 L Uppercase L
77 115 4D 01001101 M Uppercase M
78 116 4E 01001110 N Uppercase N
79 117 4F 01001111 O Uppercase O
80 120 50 01010000 P Uppercase P
81 121 51 01010001 Q Uppercase Q
82 122 52 01010010 R Uppercase R
83 123 53 01010011 S Uppercase S
84 124 54 01010100 T Uppercase T
85 125 55 01010101 U Uppercase U
86 126 56 01010110 V Uppercase V
87 127 57 01010111 W Uppercase W
88 130 58 01011000 X Uppercase X
89 131 59 01011001 Y Uppercase Y
90 132 5A 01011010 Z Uppercase Z
91 133 5B 01011011 [ Opening bracket
92 134 5C 01011100 \ Backslash
93 135 5D 01011101 ] Closing bracket
94 136 5E 01011110 ^ Caret -
circumflex
95 137 5F 01011111 _ Underscore
96 140 60 01100000 ` Grave accent
97 141 61 01100001 a Lowercase a
98 142 62 01100010 b Lowercase b
99 143 63 01100011 c Lowercase c
100 144 64 01100100 d Lowercase d
101 145 65 01100101 e Lowercase e
102 146 66 01100110 f Lowercase f
103 147 67 01100111 g Lowercase g
104 150 68 01101000 h Lowercase h
105 151 69 01101001 i Lowercase i
106 152 6A 01101010 j Lowercase j
107 153 6B 01101011 k Lowercase k
108 154 6C 01101100 l Lowercase l
109 155 6D 01101101 m Lowercase m
110 156 6E 01101110 n Lowercase n
111 157 6F 01101111 o Lowercase o
112 160 70 01110000 p Lowercase p
113 161 71 01110001 q Lowercase q
114 162 72 01110010 r Lowercase r
115 163 73 01110011 s Lowercase s
116 164 74 01110100 t Lowercase t
117 165 75 01110101 u Lowercase u
118 166 76 01110110 v Lowercase v
119 167 77 01110111 w Lowercase w
120 170 78 01111000 x Lowercase x
121 171 79 01111001 y Lowercase y
122 172 7A 01111010 z Lowercase z
123 173 7B 01111011 { Opening brace
124 174 7C 01111100 | Vertical bar
125 175 7D 01111101 } Closing brace
126 176 7E 01111110 ~ Equivalency sign -
tilde
127 177 7F 01111111 Delete
MMBasic generates a single unique character for the function keys and other
special keys on the keyboard.
These are shown in this table as hexadecimal and
decimal numbers:
DEC OCT HEX
BIN Description
128 200 80 10000000 Up Arrow
129 201 81 10000001 Down Arrow
130 202 82 10000010 Left Arrow
131 203 83 10000011 Right Arrow
132 204 84 10000100 Insert
134 206 86 10000110 Home
135 207 87 10000111 End
136 210 88 10001000 Page Up
137 211 89 10001001 Page Down
145 221 91 10010001 F1
146 222 92 10010010 F2
147 223 93 10010011 F3
148 224 94 10010100 F4
149 225 95 10010101 F5
150 226 96 10010110 F6
151 227 97 10010111 F7
152 230 98 10011000 F8
153 231 99 10011001 F9
154 232 9A 10011010 F10
155 233 9B 10011011 F11
156 234 9C 10011100 F12
157 235 9D 10011101 Print Screen (CMM2 KB only)
158 236 9E 10011110 Pause (CMM2 KB
only)
159 237 9F 10011111 Shift-TAB (CMM2 KB only)
160 240 A0 10100000 Shift-DEL (CMM2 KB only)
161 241 A1 10100001 Shift-Down (CMM2 KB only)
163 242 A2 10100010 Shift-Right (CMM2 KB only)
If the shift key is simultaneously pressed then 40 (hex) is added to the code
(this is the equivalent of setting bit 6). For example Shift-F10 will generate
DA (hex).
The shift modifier only works with the function keys F1 to F12; it is ignored
for the other keys.
MMBasic will translate most VT100 escape codes generated by terminal emulators
such as Tera Term and Putty to these codes (excluding the shift and control
modifiers).
This means that a terminal emulator operating over a USB or a serial port opened
as console will generate the same key codes as a directly attached keyboard.
Note that on some keyboards, Using 'shift' in combination with the arrow keys may generate a different keycode.
CLS
DO
IF KEYDOWN(0) <> 0 THEN
PRINT @(0,0),STR$(KEYDOWN(0),4), STR$(KEYDOWN(1),4),STR$(KEYDOWN(2),4),STR$(KEYDOWN(3),4);
print STR$(KEYDOWN(4),4),STR$(KEYDOWN(5),4),STR$(KEYDOWN(6)),BIN$(KEYDOWN(7),8)
ENDIF
PAUSE 200
LOOP
Last edited: 19 December, 2020