P8scii


You may have heard of something called "ASCII" (American Standard Code for Information Interchange). It is an ordered sequence of numbers to represent individual characters in computers. The characters could be letters, numbers, punctuation marks, symbols, etc. In ASCII, each character is assigned a unique numeric value or "character code". For example, the ASCII code for the uppercase letter 'A' is 65, while the code for the lowercase letter 'a' is 97.

PICO-8 has its own sequence of characters in its own order. We call these "P8SCII" for fun. Below is the full list of P8SCII characters from 0 to 255, separated into their groups.

You can use chr() and ord() to switch between the P8SCII characters and their ordinal number values.



(0-15)  Control Codes

From numbers 0 to 16, the P8SCII "characters" are actually control codes rather than symbols. These are advanced options that you can use inside of print() to change certain settings. See more about how to use these in the Special Control Commands page.


"Ord" = Ordinal Number Value

Ord Code Control
0 \0 terminate printing
1 \* repeat next character this number of times.
2 \# draw solid background with this color number.
3 \- shift cursor horizontally by a value minus 16 pixels
4 \| shift cursor vertically by a value minus 16 pixels
5 \+ shift cursor by two values minus 16 pixels on X and Y axes.
6 \^ special commands (more below)
7 \a audio commands (more below)
8 \b backspace
9 \t tab
10 \n newline
11 \v decorate previous character (more below)
12 \f set foreground colour (text color)
13 \r carriage return (move cursor to start of same line)
14 \014 switch to custom font (memory 0x5600)
15 \015 switch to default font



(16 - 31) Symbols

"Ord" = Ordinal Number Value | "Chr" = Character

Ord Chr
16
17
18
19
20
21
22
23
24
25
26 ¥
27
28
29
30
31



(32 - 126) ASCII Numbers, Letters, and Punctuation

"Ord" = Ordinal Number Value | "Chr" = Character


These all correspond to the standard ASCII numbers and characters. Note that the uppercase letters (A-Z) are actually puny font in PICO-8, while the lowercase letters (a-z) are printed as the normal PICO-8 font which looks like all caps.

Ord Chr
32 (space)
33 !
34 "
35 #
36 $
37 %
38 &
39 '
40 (
41 )
42 *
43 +
44 ,
45 -
46 .
47 /
48 0
49 1
50 2
51 3
52 4
53 5
54 6
55 7
56 8
57 9
58 :
59 ;
60 <
61 =
62 >
63 ?
64 @
65 A
66 B
67 C
68 D
69 E
70 F
71 G
72 H
73 I
74 J
75 K
76 L
77 M
78 N
79 O
80 P
81 Q
82 R
83 S
84 T
85 U
86 V
87 W
88 X
89 Y
90 Z
91 [
92 \
93 ]
94 ^
95 _
96 `
97 a
98 b
99 c
100 d
101 e
102 f
103 g
104 h
105 i
106 j
107 k
108 l
109 m
110 n
111 o
112 p
113 q
114 r
115 s
116 t
117 u
118 v
119 w
120 x
121 y
122 z
123 {
124 |
125 }
126 ~



(127 - 153) PICO-8 Glyphs

 

These are special characters unique to PICO-8. You can manually type these glyphs into PICO-8 by holding Shift while pressing a certain letter. Here are the glyphs with the corresponding letter to use with Shift. The arrow and button keys are even recognized in btn() and btnp() functions.

"Ord" = Ordinal Number Value | "Chr" = Character

Ord Chr
127
128
129
130 ?
131 ⬇️
132
133
134
135
136
137
138
139 ⬅️
140 ?
141
142 🅾️
143
144
145 ➡️
146
147
148 ⬆️
149 ˇ
150
151
152
153



(154 - 203) Japanese Hiragana

"Ord" = Ordinal Number Value | "Chr" = Character

Ord Chr
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203



(204 - 253) Japanese Katakana

"Ord" = Ordinal Number Value | "Chr" = Character

Ord Chr
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253



(254 - 255) Arcs

"Ord" = Ordinal Number Value | "Chr" = Character


Ord Chr
254
255


446

4 Dec 2023

Font