-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathvariables.ras
More file actions
322 lines (271 loc) · 26.3 KB
/
variables.ras
File metadata and controls
322 lines (271 loc) · 26.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
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
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
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
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
oldti,ti: byte at $8f; // Jiffy timer ($0200- $0202 on older??)
i,c: integer = 0;
ch : byte = 0;
rom4: cstring ="4.0 rom";
rom2: cstring ="2.0 rom";
arrp: pointer;
p_SW: pointer;
// need to take into account 80 columns
DETECTED_SCREEN_WIDTH: byte = 40;
// Keyboard locations
const KEYB: address = 151; // Keys being pressed
const KEYBUF: address = 158; // Keyboard buffer
const KEYSCN: address = $E810; // 59408
const KEYHIT: address = $E812; // 59410
KEYPRESS: integer = $FF;
THIS_KEY: byte = $FF;
ks: byte = 0; // keystate
n_key_up,n_key_down,n_key_left,n_key_right,key_up,key_down,key_left,key_right:integer;
// Keyboard Buffer Queue (FIFO)
const KEYD: address = $0270; // $0270-027A (624-633 decimal)
const KEYDNU: address = $026f; // $026f-$0278 on newer
// Game flags
PLAY_SOUND: byte=1;
GAME_SPEED: byte=8;
ALIVE: byte=1;
WON_GAME: byte=0;
FROGS_SAVED: byte=0;
GAME_TICKS: byte=0;
READY_TO_PLAY: byte=false;
// 12345678901234567890
spc80: cstring = (" ");
// 123456789012345678901234567890
blk: cstring = " ";
by : cstring = " BY CHRIS GARRETT 01/2021 ";
url: cstring = " @MAKERHACKS MAKERHACKS.COM ";
over: cstring = " GAME OVER ";
score: cstring = " YOU SCORED:";
space: cstring = " PRESS SPACE TO CONTINUE ";
space2: cstring = (160,144,146,133,147,147,160,147,144,129,131,133,160,148,143,160,131,143,142,148,137,142,149,133,160);
help: cstring = " PRESS H FOR HELP GUIDE ";
help2: cstring = (" PRESS ",136," FOR HELP GUIDE ");
is_80: byte;
// 80 column warning
sorry_80: string = (147,14,"80 COLUMNS DETECTED",13,"PLEASE CHOOSE 40 COLUMNS AND REBOOT");
help_screen_array: cstring = (
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
32,78,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,77,32,32,32,32,32,32,32,
32,116,16,5,20,6,18,15,7,32,230,230,230,230,230,230,230,230,230,230,230,230,230,230,230,230,230,230,230,230,230,230,103,32,32,32,32,32,32,32,
32,116,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,103,32,32,32,32,32,32,32,
32,116,42,32,18,5,17,21,9,18,5,19,32,7,18,1,16,8,9,3,32,11,5,25,2,15,1,18,4,32,32,32,103,32,32,32,32,32,32,32,
32,116,42,32,16,12,1,25,32,9,14,32,52,48,32,3,15,12,21,13,14,32,13,15,4,5,32,32,32,32,32,32,103,32,32,32,32,32,32,32,
32,116,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,103,32,32,32,32,32,32,32,
32,116,2,18,9,14,7,32,25,15,21,18,32,6,18,15,7,7,9,5,19,32,8,15,13,5,33,32,32,32,32,32,103,32,32,32,32,32,32,32,
32,116,1,22,15,9,4,32,20,18,1,6,6,9,3,32,1,14,4,32,3,18,15,3,32,13,15,21,20,8,19,32,103,32,32,32,32,32,32,32,
32,116,2,5,20,23,5,5,14,32,18,9,22,5,18,32,2,1,14,11,19,32,9,19,32,4,5,1,4,12,25,32,106,32,32,32,32,32,32,32,
32,116,18,9,4,5,32,12,15,7,19,44,32,3,18,15,3,32,2,15,4,19,32,43,32,20,21,18,20,12,5,19,103,32,32,32,32,32,32,32,
32,116,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,103,32,32,32,32,32,32,32,
32,116,230,32,7,5,20,32,19,9,24,32,6,18,15,7,19,32,15,14,32,83,32,20,15,32,23,9,14,33,32,102,103,32,32,32,32,32,32,32,
32,77,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,32,32,32,32,32,111,78,108,226,123,32,98,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,97,32,32,32,254,126,32,32,32,32,124,32,127,32,
32,32,32,32,32,32,98,98,98,98,98,32,32,85,64,64,64,64,64,64,64,64,64,64,64,73,251,32,32,225,126,32,32,108,160,123,108,160,123,32,
32,32,32,108,160,160,160,226,32,32,124,123,32,93,32,32,32,32,32,32,32,32,32,32,32,93,225,123,32,225,123,32,32,225,254,252,254,254,252,123,
32,32,32,254,226,97,108,98,160,252,32,251,32,93,11,5,25,19,58,32,32,32,32,32,32,93,32,251,123,32,252,32,108,160,160,160,160,252,124,160,
32,32,32,236,254,108,160,160,236,225,32,124,252,93,32,32,32,32,32,32,32,32,32,32,32,93,32,32,124,127,255,127,123,124,251,160,160,126,252,160,
32,32,225,126,97,225,160,126,254,126,32,98,236,93,32,32,32,32,32,23,32,32,32,56,32,93,32,32,32,32,124,226,126,32,108,108,123,108,160,160,
32,32,160,108,97,32,226,226,32,98,236,126,108,93,127,123,32,32,1,19,4,32,52,53,54,93,32,32,32,32,32,32,160,252,124,226,108,160,251,160,
32,32,97,225,32,32,32,98,226,126,32,255,252,74,64,64,64,64,64,64,64,64,64,64,64,75,32,32,32,32,225,123,225,160,160,160,160,126,254,160,
32,225,97,160,32,254,226,126,98,160,252,123,108,124,32,32,97,32,32,32,32,32,32,32,32,32,32,32,32,252,108,97,124,160,160,98,98,254,160,160,
32,32,251,123,251,123,32,160,160,160,236,126,32,32,123,126,97,32,32,32,32,32,32,32,32,32,32,32,108,32,160,160,123,32,160,160,160,160,160,160,
32,32,124,160,123,251,123,124,226,126,32,32,98,236,108,226,32,32,32,32,32,32,32,32,32,32,32,32,32,226,251,160,160,254,254,160,160,160,160,160,
);
// =========================================
// SOUND!
const SOUND : address = 59467;
const SOUND_ON : byte = 16;
const SOUND_OFF : byte = 0;
const SOUND_OCTAVE : address = 59466;
const SOUND_FREQ : address = 59464;
// =========================================
/*
*/
frogcharA: byte = 214;
frogcharB: byte = 86;
frog_x,frog_old_x: byte = 20;
frog_y,frog_old_y: byte = 24;
previous_tile: byte =32;
next_tile:byte;
player_lives: byte=0;
player_score: integer=0;
arr_crockr: array[9] of byte = ( 192,162,220,220,220,220,220, 98,121,);
str_crockr: cstring = " ";
arr_crockl: array[9] of byte = ( 121, 98,220,220,220,220,220,162,192,);
str_crockl: cstring = " ";
arr_logl: array[5] of byte = ( 168,168,168,168,209,);
str_logl: cstring = " ";
arr_logr: array[5] of byte = ( 209,169,169,169, 169,);
str_logr: cstring = " ";
arr_turtles: array[5] of byte = ( 81,81,81,81,81,);
str_turtles: cstring = " ";
arr_river_r: array[5] of byte = ( 111,100,100,111,100,);
str_river_r: cstring = " ";
arr_river_l: array[5] of byte = ( 32,100,111,100,100,);
str_river_l: cstring = " ";
arr_carl: array[4] of byte = ( 240,207,208,224,);
str_cart: cstring = " ";
arr_carr: array[4] of byte = ( 237,215,215,160,);
str_carb: cstring = " ";
arr_truckb_l: array[8] of byte = ( $F0,$F3,$FC,$60,$60,$60,);
str_truckb_l: cstring = " ";
arr_truckt_l: array[8] of byte = ( $ED,$D7,$F1,$D7,$62,$D7,);
str_truckt_l: cstring = " ";
arr_truckb_r: array[8] of byte = ( 160,215, 98,215,241,215,253,160,);
str_truckb_r: cstring = " ";
arr_truckt_r: array[8] of byte = ( 224, 96, 96, 96,254,235,238,224,);
str_truckt_r: cstring = " ";
// WHERE ROWS START AND END
obstacles_y: array[13] of byte = ( 4, 5, 6, 7, 8, 12, 13, 15, 16, 18, 19, 21, 22);
strip_direction: array[13] of byte = ( 1, 0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0);
level_strips: array[2000] of byte = (
);
traffic_x_rl,traffic_x_lr: byte;
obstacles_x_rl,obstacles_x_lr: byte;
blank_river: cstring = " ";
blank_road: array[12] of byte = (160,160,160,160,160,160,160,160,160,160,160,160);
logo: array[52] of byte = (
// 1 2 3 4 5 6 7 8 9 10 11 12 13
114, 73,112,110,112,114,110, 85, 73, 32, 32, 32, 32,
107, 75,107, 32, 32, 93, 32,107, 85, 85, 73, 85, 73,
113, 32,109,125, 32,113, 32, 75,113, 74, 75, 74, 93,
120,120,120,120,120,120,120,120,120,120,120, 74, 75,
);
title_screen_frog_pointer: pointer;
title_screen_frog: array[1000] of byte = (
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$6C,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$7B,$20,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$6C,$A0,$A0,$A0,$A0,$A0,$7B,$20,$20,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$20,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$F5,$A0,$A0,$A0,$A0,$A0,$A0,$20,$20,$A0,$A0,$A0,$A0,$7E,$20,$20,$7C,$A0,$A0,$A0,$20,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$A0,$7E,$E2,$E2,$E2,$7C,$A0,$61,$20,$A0,$A0,$A0,$7E,$20,$20,$20,$20,$E1,$A0,$A0,$20,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$76,$A0,$20,$20,$20,$20,$20,$A0,$61,$20,$A0,$A0,$A0,$20,$20,$20,$20,$20,$20,$A0,$A0,$20,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$76,$A0,$20,$20,$20,$20,$20,$A0,$A0,$A0,$A0,$A0,$A0,$20,$20,$20,$20,$20,$20,$A0,$A0,$20,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$A0,$7B,$20,$20,$20,$6C,$A0,$A0,$A0,$A0,$A0,$A0,$20,$62,$A0,$A0,$62,$20,$A0,$A0,$20,
$20,$20,$20,$20,$20,$20,$20,$68,$66,$20,$20,$20,$20,$20,$20,$20,$20,$62,$A0,$A0,$A0,$62,$62,$62,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$EC,$62,$62,$FB,$A0,$A0,$A0,$20,
$20,$68,$20,$20,$20,$20,$20,$66,$66,$5C,$20,$20,$20,$20,$20,$20,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$7E,$20,
$20,$66,$5C,$20,$20,$20,$20,$66,$66,$5C,$20,$20,$20,$20,$20,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$7B,$20,
$20,$20,$20,$20,$20,$20,$20,$20,$66,$20,$20,$20,$20,$20,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$20,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$A0,$EC,$FB,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$7B,
$66,$20,$20,$66,$20,$20,$20,$20,$68,$66,$20,$20,$20,$E1,$A0,$6C,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,
$66,$68,$20,$66,$66,$20,$20,$66,$66,$66,$5C,$20,$20,$A0,$A0,$A0,$20,$FB,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$EC,$20,$A0,
$66,$66,$20,$20,$66,$20,$20,$66,$66,$66,$66,$5C,$20,$A0,$A0,$A0,$7B,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$6C,$A0,
$66,$66,$66,$20,$66,$66,$20,$66,$66,$20,$66,$5C,$20,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$62,$62,$62,$62,$62,$62,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$FE,$A0,$A0,
$66,$66,$66,$66,$20,$66,$66,$20,$66,$66,$66,$5C,$20,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$E2,$E2,$E2,$E2,$E2,$E2,$A0,$A0,$A0,$A0,
$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$20,$20,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$EC,$E2,$E2,$EC,$A0,$A0,$A0,$A0,$A0,
$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$20,$E1,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$EC,
$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$20,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$20,
$66,$66,$5C,$20,$66,$66,$66,$66,$20,$20,$66,$66,$66,$66,$20,$20,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$61,$68,
$66,$66,$20,$20,$20,$66,$66,$5C,$20,$20,$66,$66,$66,$66,$66,$20,$20,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$EC,$20,$66,
$66,$5C,$20,$20,$20,$66,$66,$20,$20,$20,$20,$66,$66,$66,$66,$66,$20,$20,$E2,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$EC,$20,$66,$66,
$66,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$66,$66,$66,$20,$20,$20,$E2,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$EC,$20,$20,$66,$66,$66,
$66,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$66,$66,$66,$66,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$66,$66,$66,$66,$66
);
success: array[1000] of byte = (
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,123,108,32,123,123,123,123,123,123,123,98,108,98,108,98,98,98,98,98,98,98,98,98,98,123,32,32,
32,32,32,32,32,32,32,123,126,124,124,124,124,123,126,127,124,123,97,97,97,236,254,255,252,127,160,254,254,254,252,160,251,160,160,160,160,160,252,32,
32,32,32,32,32,32,126,32,123,126,255,124,124,123,127,126,97,97,97,97,97,252,127,127,252,251,254,254,254,127,160,254,160,160,160,160,160,160,160,97,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,124,160,160,160,
32,32,32,32,32,32,32,32,108,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,254,32,32,32,32,32,252,32,160,160,160,
32,32,32,32,32,32,32,32,255,32,32,97,32,32,32,32,32,32,32,32,32,32,32,98,123,32,32,32,32,160,32,32,160,32,32,160,32,160,160,160,
32,32,32,32,32,32,32,32,251,123,254,97,32,32,32,32,254,160,252,32,32,32,254,226,251,32,32,32,32,160,123,108,160,98,108,160,32,225,160,160,
32,32,32,32,32,32,32,32,32,226,225,126,32,32,32,225,236,32,124,97,32,225,126,98,124,97,32,32,32,160,160,236,32,251,160,160,32,225,160,160,
32,32,32,32,32,32,32,32,127,98,236,32,32,32,32,225,97,225,32,97,32,225,32,251,32,252,32,32,32,124,126,32,98,32,124,126,32,225,160,160,
32,32,32,32,32,32,32,32,98,98,123,32,32,108,98,123,252,32,108,160,160,160,252,32,254,236,126,32,32,32,32,108,98,123,32,32,32,225,160,160,
32,32,32,32,32,32,32,225,126,32,251,32,32,160,236,160,160,160,160,160,160,160,160,160,160,254,160,123,32,32,32,251,160,126,32,32,32,225,160,160,
32,32,32,32,32,32,32,225,123,32,254,32,32,160,32,124,160,160,160,160,160,160,160,160,226,127,160,97,32,32,32,254,160,98,32,32,32,225,160,160,
32,32,32,32,32,32,32,32,251,160,126,32,32,254,32,32,32,32,32,32,32,32,32,32,124,251,160,97,32,32,124,226,226,126,32,32,32,225,160,160,
32,32,32,32,32,32,32,32,123,32,108,32,32,251,123,32,32,32,108,160,255,252,32,32,32,32,254,126,32,32,98,98,123,32,32,108,32,225,160,160,
32,32,32,32,32,32,32,225,32,32,160,32,32,32,251,160,252,98,98,98,98,98,98,98,160,160,126,32,32,254,160,160,160,32,32,160,32,254,160,160,
32,32,32,32,32,32,32,124,98,255,124,123,32,32,32,124,226,251,160,160,160,160,160,226,226,32,32,32,32,160,126,251,160,97,108,160,32,160,160,160,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,236,32,124,160,160,160,226,32,160,160,97,
32,32,32,32,32,32,32,32,32,32,32,123,108,32,123,123,123,123,123,123,123,98,108,123,98,98,98,98,98,98,98,98,98,98,98,98,254,160,160,126,
32,32,32,32,108,32,126,124,124,124,124,108,126,255,123,127,225,225,225,225,127,97,252,251,127,252,252,252,160,254,160,251,160,160,160,160,160,160,236,32,
32,32,32,32,32,32,124,32,126,126,126,126,124,32,124,124,124,124,124,124,126,226,124,226,126,126,126,226,124,226,124,226,226,226,226,226,226,126,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
);
rip: array[1000] of byte = (
226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
32,32,32,32,32,32,108,98,98,123,32,108,160,160,160,252,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
32,32,32,32,32,108,236,126,124,251,98,160,126,98,123,251,97,32,32,32,32,32,32,98,160,160,160,160,160,160,252,32,32,32,32,32,32,32,32,32,
32,32,32,32,32,160,127,160,160,123,160,97,254,160,160,225,160,32,32,32,32,108,236,126,98,98,123,32,108,98,124,252,32,32,32,32,32,32,32,32,
32,32,32,32,225,97,254,236,226,252,124,108,236,98,251,97,160,32,32,32,32,236,254,160,160,160,160,160,98,108,98,124,97,32,32,32,32,32,32,32,
32,32,32,32,124,252,225,108,160,160,160,160,160,160,97,252,225,252,32,32,225,127,160,236,251,160,160,160,160,123,98,123,251,32,32,32,32,32,32,32,
32,32,32,32,108,97,160,254,160,160,160,160,160,160,160,160,97,160,123,32,160,225,160,108,123,97,225,160,160,97,123,226,225,32,32,32,32,32,32,32,
32,32,32,32,236,108,160,160,226,226,226,226,226,226,160,160,160,225,97,160,97,160,97,124,108,126,254,160,160,97,226,226,225,32,32,32,32,32,32,32,
32,32,32,32,97,160,126,32,225,97,251,32,32,32,225,160,160,225,160,160,127,236,108,123,236,32,236,32,225,97,251,252,225,32,32,32,32,32,32,32,
32,32,32,32,97,160,32,32,123,160,254,123,160,252,123,160,97,160,160,160,225,160,160,254,160,254,126,254,32,97,123,226,225,32,32,32,32,32,32,32,
32,32,32,32,252,251,98,254,252,225,160,97,160,160,160,254,108,160,160,97,254,160,160,160,160,126,108,32,225,126,251,97,160,32,32,32,32,32,32,32,
32,32,32,32,251,255,251,160,160,98,124,108,160,160,160,126,254,160,160,126,160,160,160,160,160,252,160,160,160,225,98,32,236,32,32,32,32,32,32,32,
32,32,32,32,32,160,98,124,226,251,160,160,160,236,126,254,160,160,160,225,160,160,160,160,160,160,160,160,160,108,123,225,97,32,32,32,32,32,32,32,
32,32,32,32,32,124,160,160,160,252,98,98,98,98,160,226,226,251,236,236,32,108,254,160,160,160,160,160,236,32,126,254,126,32,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,160,160,252,32,32,126,32,32,254,32,124,160,236,160,160,97,251,97,97,32,32,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,160,123,32,108,225,98,225,108,225,97,252,124,97,123,251,98,123,108,160,236,226,226,160,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,160,252,225,225,123,160,254,225,124,252,225,252,251,225,123,252,254,226,108,32,98,254,126,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,160,225,160,160,160,160,254,97,251,225,160,97,225,97,225,126,108,97,254,126,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,252,254,160,160,160,160,160,160,160,160,160,160,254,160,160,252,160,252,97,32,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
);
petscii_pointer: pointer;
/*
1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 20 1 2 3 4 5 6 7 8 9 30 1 2 3 4 5 6 7 8 9 40
*/
level1: array[1000] of byte = (
$CF,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$F7,$D0,
$F4,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$90,$85,$94,$86,$92,$8F,$87,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$EA,
$F4,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$EA,
$CC,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$EF,$FA,
$E6,$E6,$E6,$20,$E6,$E6,$E6,$E6,$E6,$E6,$20,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$20,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$20,$E6,$E6,$E6,$E6,$E6,$20,$E6,$E6,
$E6,$E6,$20,$20,$20,$20,$E6,$E6,$E6,$20,$20,$20,$20,$E6,$E6,$E6,$20,$20,$20,$20,$E6,$E6,$E6,$20,$20,$20,$20,$E6,$E6,$20,$20,$20,$20,$E6,$E6,$20,$20,$20,$20,$E6,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$C0,$A2,$DC,$DC,$DC,$DC,$DC,$62,$79,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,
$20,$20,$20,$20,$20,$A8,$A8,$A8,$A8,$A8,$A8,$D1,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$79,$62,$DC,$DC,$DC,$DC,$DC,$A2,$C0,$20,$20,$20,$20,$20,$20,$20,$20,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$D1,$A9,$A9,$A9,$A9,$20,$20,$20,$56,$20,$20,$20,$20,$20,$20,$20,$20,$D1,$A9,$A9,$A9,$A9,$20,$20,$20,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,
$68,$68,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$68,$68,$68,$68,$68,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$68,$68,$68,$20,$20,$20,$20,$20,$20,
$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$68,
$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,
$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,$E3,
$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$F0,$CF,$D0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$F0,$CF,$D0,$E0,$E0,$E0,$E0,$F0,$CF,$D0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,
$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$ED,$D7,$D7,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$ED,$D7,$D7,$A0,$A0,$A0,$A0,$ED,$D7,$D7,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,
$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,
$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$60,$60,$60,$FE,$EB,$EE,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$E0,$A0,$A0,$A0,
$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$D7,$62,$D7,$F1,$D7,$FD,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,
$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,
$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,
$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$D6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6,$E6
);
level2: array[1000] of byte = (
$CC,$EF,$FA,$13,$03,$0F,$12,$05,$3A,$39,$39,$39,$CC,$EF,$EF,$EF,$A0,$90,$85,$94,$86,$92,$8F,$87,$A0,$EF,$EF,$EF,$EF,$FA,$0C,$09,$16,$05,$13,$3A,$33,$CC,$EF,$FA,
$20,$68,$68,$20,$68,$68,$68,$68,$68,$68,$20,$68,$68,$68,$68,$68,$68,$68,$20,$68,$68,$68,$68,$68,$68,$68,$68,$68,$68,$68,$68,$20,$68,$68,$68,$68,$68,$20,$68,$20,
$66,$5C,$20,$20,$20,$20,$66,$66,$20,$20,$20,$20,$20,$66,$66,$20,$20,$20,$20,$20,$66,$66,$66,$20,$20,$20,$20,$66,$66,$20,$20,$20,$20,$66,$66,$20,$20,$20,$20,$5C,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,
$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,
$66,$68,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$68,$68,$68,$68,$68,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$68,$68,$68,$20,$20,$20,$20,$68,$66,
$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,
$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,
$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,
$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,
$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,
$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,
$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,$C3,
$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,
$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,
$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,$AD,
$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,
$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,$A0,
$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,$E2,
$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66,$66
);