/[projet1]/users/chema/skooldaze/data.s
Defence Force logotype

Contents of /users/chema/skooldaze/data.s

Parent Directory Parent Directory | Revision Log Revision Log


Revision 615 - (show annotations)
Tue Sep 13 11:10:27 2011 UTC (8 years, 6 months ago) by Chema
File size: 84889 byte(s)
Each shield has now its independent tile
1
2 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3 ;; -----------------------------------
4 ;; Skool Daze
5 ;; The Oric Version
6 ;; -----------------------------------
7 ;; (c) Chema 2011
8 ;; enguita@gmail.com
9 ;; -----------------------------------
10 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
11
12 ;; Data file
13 ;; --------------------
14
15
16
17 #include "params.h"
18 #include "script.h"
19
20 .zero
21 ; Column and row of tile in visible area coordinates
22 vis_col .byt 00
23 tile_row
24 vis_row .byt 00
25
26 ; Same but in skool coordinates
27 tile_col .byt 00
28
29 ; Backbuffer, just one tile..
30 backbuffer .dsb 8
31
32 ; Some game variables
33
34
35 first_col .byt 0 ; Leftmost visible column
36 lesson_clock .word 5376 ; Lesson clock
37 current_lesson_index .byt 0 ; Index of the current lesson in the main timetable
38 current_lesson .byt PLAYTIME1 ; Current lesson from the main timetable
39 last_char_moved .byt 0 ; Last character we have moved
40
41 ; Keep the next 6 contiguous!
42 lesson_status .byt 0 ; Lesson status flags
43 lesson_signals .byt 0 ; Lesson signal flags
44 stampede_signals .byt 0 ; Stampede control signals
45 special_playtime .byt 0 ; Special playtime flags
46 game_status .byt 0 ; Game status flags
47 birthyear_ind .byt 0 ; Creak's birth year question indicator
48
49 game_mode .byt 0 ; Game mode indicator (0 demo, 1 shields need to be flashed, 2 combination, 3 shields need to be unflashed)
50 lesson_descriptor .byt 0 ; Indicates who is teaching Eric and where
51 lines_delay .byt 0 ; Delay between punishments by teachers (used by some routines like teacher_gives_lines).
52
53 ; Eric's status flags
54 ; 0 ERIC is firing the catapult
55 ; 1 ERIC is hitting
56 ; 2 ERIC is jumping
57 ; 3 ERIC is being spoken to by little boy no. 10
58 ; 4 ERIC has just been knocked down or unseated
59 ; 5 ERIC is writing on a blackboard
60 ; 6 Unused (always reset)
61 ; 7 ERIC is sitting or lying down
62
63 Eric_flags .byt 0
64 Eric_timer .byt 0
65 Eric_mid_timer .byt 0
66 Eric_knockout .byt 0
67
68 ; For the speech bubble
69 bubble_on .byt 0 ; There is a bubble onscreen
70 bubble_lip_col .byt 0 ; Column of the bubble lip
71 bubble_lip_row .byt 0 ; Row of the bubble lip
72 bubble_col .byt 0 ; Col of the start (upper left corner) of the bubble
73 bubble_row .byt 0 ; Row of the start (upper left corner) of the bubble
74 bubble_loc_p .word 000 ; Pointer to the bubble screen position (upper left corner)
75
76 cur_speaking_char .byt 0 ; Current speaking character
77
78 ; Bitmasks for the bubble in the SRB
79 ; This is to protect against corruption
80 srb_bitmask .byt 0 ; Bitmask for first byte
81 srb_bitmask2 .byt 0 ; Idem for second byte
82 srb_offset .byt 0 ; Offset of the first byte in the SRB
83 srb_offset_lip .byt 0 ; Offset of the lip's byte
84 srb_bitmask_lip .byt 0 ; Bitmask for the lip
85
86
87 ; Screen refresh buffer
88 SRB
89 .byt $3f,$ff,$ff,$ff,$fc
90 .byt $3f,$ff,$ff,$ff,$fc
91 .byt $3f,$ff,$ff,$ff,$fc
92 .byt $3f,$ff,$ff,$ff,$fc
93 .byt $3f,$ff,$ff,$ff,$fc
94 .byt $3f,$ff,$ff,$ff,$fc
95 .byt $3f,$ff,$ff,$ff,$fc
96 .byt $3f,$ff,$ff,$ff,$fc
97 .byt $3f,$ff,$ff,$ff,$fc
98 .byt $3f,$ff,$ff,$ff,$fc
99 .byt $3f,$ff,$ff,$ff,$fc
100 .byt $3f,$ff,$ff,$ff,$fc
101 .byt $3f,$ff,$ff,$ff,$fc
102 .byt $3f,$ff,$ff,$ff,$fc
103 .byt $3f,$ff,$ff,$ff,$fc
104 .byt $3f,$ff,$ff,$ff,$fc
105 .byt $3f,$ff,$ff,$ff,$fc
106 .byt $3f,$ff,$ff,$ff,$fc
107 .byt $3f,$ff,$ff,$ff,$fc
108 .byt $3f,$ff,$ff,$ff,$fc
109 .byt $3f,$ff,$ff,$ff,$fc
110
111
112 .text
113
114
115 creak_year ; Year of the birth of Mr Creak
116 .asc "0000"
117 .byt 0
118 birthyear_id ; Identifier to the question of the year
119 .byt 0
120
121 ; Keymap table
122 user_keys
123 .byt 1, 2, 3, 4
124 .byt "S", "H", "F", "W", "J"
125 key_routh
126 .byt >(up_Eric), >(left_Eric), >(down_Eric), >(right_Eric)
127 .byt >(sit_Eric), >(hit_Eric), >(fire_Eric), >(write_Eric)
128 .byt >(jump_Eric)
129 key_routl
130 .byt <(up_Eric), <(left_Eric), <(down_Eric), <(right_Eric)
131 .byt <(sit_Eric), <(hit_Eric), <(fire_Eric), <(write_Eric)
132 .byt <(jump_Eric)
133
134 ; Used in special playtimes to patch the command list (see change_lesson)
135 tab_patchcomm
136 .byt SC_TELLANGELFACE, SC_TELLEINSTEIN, SC_TELLBOYWANDER
137
138 #define LAST_TILE 105
139
140 free_before_rows
141 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
142 .dsb 256-(*&255)
143 ; Tile map for background: row 0
144 skool_r00 ;.dsb SKOOL_COLS,1
145 .byt $1,$2,$3,$4,$4,$4,$4,$4,$4,$4,$5,$6,$7,$8,$4,$4,$4,$4,$4,$4,$4,$9,$a,$b,$4,$4,$4,$4,$4,$4,$4,$4,$4,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$2,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$2,$3,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$4,$5,$6,$1,$1,$1,$1,$1,$1,$1,$7,$8,$9,$a,$b,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0
146
147
148 base_as_pointer_high
149 .byt >Eric_anim_states,>Einstein_anim_states,>Angelface_anim_states,>BoyWander_anim_states
150 .byt >Boy_anim_states,>Boy_anim_states,>Boy_anim_states,>Boy_anim_states,>Boy_anim_states
151 .byt >Boy_anim_states,>Boy_anim_states,>Boy_anim_states,>Boy_anim_states,>Boy_anim_states
152 .byt >Boy_anim_states,>Creak_anim_states,>Rockitt_anim_states,>Wacker_anim_states,>Withit_anim_states
153 .byt >Pellet_anim_states,>Pellet_anim_states
154 base_as_pointer_low
155 .byt <Eric_anim_states,<Einstein_anim_states,<Angelface_anim_states,<BoyWander_anim_states
156 .byt <Boy_anim_states,<Boy_anim_states,<Boy_anim_states,<Boy_anim_states,<Boy_anim_states
157 .byt <Boy_anim_states,<Boy_anim_states,<Boy_anim_states,<Boy_anim_states,<Boy_anim_states
158 .byt <Boy_anim_states,<Creak_anim_states,<Rockitt_anim_states,<Wacker_anim_states,<Withit_anim_states
159 .byt <Pellet_anim_states,<Pellet_anim_states
160
161 as_pointer_high
162 .byt >Eric_anim_states,>Einstein_anim_states,>Angelface_anim_states,>BoyWander_anim_states
163 .byt >Boy_anim_states,>Boy_anim_states,>Boy_anim_states,>Boy_anim_states,>Boy_anim_states
164 .byt >Boy_anim_states,>Boy_anim_states,>Boy_anim_states,>Boy_anim_states,>Boy_anim_states
165 .byt >Boy_anim_states,>Creak_anim_states,>Rockitt_anim_states,>Wacker_anim_states,>Withit_anim_states
166 .byt >Pellet_anim_states,>Pellet_anim_states
167 as_pointer_low
168 .byt <Eric_anim_states,<Einstein_anim_states,<Angelface_anim_states,<BoyWander_anim_states
169 .byt <Boy_anim_states,<Boy_anim_states,<Boy_anim_states,<Boy_anim_states,<Boy_anim_states
170 .byt <Boy_anim_states,<Boy_anim_states,<Boy_anim_states,<Boy_anim_states,<Boy_anim_states
171 .byt <Boy_anim_states,<Creak_anim_states,<Rockitt_anim_states,<Wacker_anim_states,<Withit_anim_states
172 .byt <Pellet_anim_states,<Pellet_anim_states
173
174
175 free_r0
176 .dsb (256)-(*&255)-32
177 ; Personal timetable for Eric (same as little boy 11)
178 per_timet_eric
179 .byt 170,170,154,154,176,176,176,136,146,146,146,162,162,162,162,136,136,162,146,196,196,196,176,202,196,196,176,196,206,206,176,196
180
181 ;.byt 170,170,160,160,176,176,176,144,152,152,152,168,168,168,168,144,144,168,152,196,212,196,196,196,196,196,196,196,196,196,196,196
182
183 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
184 ;.dsb 256-(*&255)
185 ; Tile map for background: row 1
186 skool_r01 ;.dsb SKOOL_COLS,1
187 .byt $c,$c,$c,$c,$1,$2,$3,$4,$4,$4,$d,$e,$f,$10,$11,$a,$12,$4,$4,$4,$4,$13,$14,$f,$15,$16,$4,$4,$4,$4,$4,$4,$4,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$3,$4,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$c,$d,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$e,$f,$10,$11,$12,$1,$1,$1,$1,$1,$13,$14,$15,$16,$16,$17,$18,$19,$1a,$1b,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0
188
189
190 anim_state
191 .dsb MAX_CHARACTERS,0
192 flags
193 .dsb MAX_CHARACTERS,0
194 speed_counter
195 .dsb MAX_CHARACTERS, 4
196 uni_subcom_low
197 .dsb MAX_CHARACTERS,0
198
199 free_r1
200 .dsb (256-32)-(*&255)
201 ; Personal timetable for Einstein
202 per_timet_einstein
203 .byt 170,170,160,160,176,176,176,144,152,152,152,168,168,168,168,144,144,168,152,196,212,196,196,196,196,196,196,196,196,196,196,196
204
205 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
206 ;.dsb 256-(*&255)
207 ; Tile map for background: row 2
208 skool_r02 ;.dsb SKOOL_COLS,1
209 .byt $c,$c,$17,$18,$c,$c,$c,$c,$19,$1a,$1b,$1a,$1c,$10,$10,$10,$10,$0,$0,$0,$0,$0,$0,$1c,$10,$10,$1d,$1d,$1e,$1f,$20,$1d,$1e,$5,$6,$7,$8,$5,$6,$7,$8,$5,$6,$7,$8,$5,$6,$7,$8,$5,$6,$7,$8,$5,$9,$a,$8,$5,$6,$0,$8,$5,$6,$b,$8,$5,$6,$c,$8,$5,$6,$0,$8,$5,$1c,$0,$1d,$d,$1e,$1c,$0,$1f,$1e,$1c,$0,$1f,$1e,$1c,$0,$1f,$1e,$1c,$0,$1f,$1e,$1c,$1d,$0,$0,$d,$0,$0,$0,$0,$20,$0,$21,$16,$16,$16,$22,$0,$0,$0,$0,$1d,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0
210
211 uni_subcom_high
212 .dsb MAX_CHARACTERS,0
213 i_subcom_low
214 .dsb MAX_CHARACTERS,0
215
216 i_subcom_high
217 .dsb MAX_CHARACTERS,0
218 cont_subcom_low
219 .dsb MAX_CHARACTERS,0
220
221
222 free_r2
223 .dsb (256-32)-(*&255)
224 ; Personal timetable for Angelface
225 per_timet_angelface
226 .byt 174,174,158,158,166,180,180,142,166,150,150,166,166,180,180,142,142,166,150,220,196,196,182,182,182,182,182,182,182,182,182,182
227
228 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
229 ;.dsb 256-(*&255)
230 ; Tile map for background: row 3
231 skool_r03 ;.dsb SKOOL_COLS,1
232 .byt $c,$c,$21,$22,$23,$24,$c,$25,$26,$27,$28,$29,$1c,$10,$10,$10,$10,$0,$0,$0,$1e,$20,$1f,$1c,$10,$2a,$2b,$2c,$2d,$2e,$2f,$30,$31,$d,$e,$f,$10,$11,$12,$13,$14,$15,$16,$7,$7,$7,$7,$17,$18,$19,$1a,$1b,$e,$1c,$1d,$1e
233 ;$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1
234 .byt LAST_TILE+1,LAST_TILE+2,LAST_TILE+3,LAST_TILE+4,LAST_TILE+5,LAST_TILE+6,LAST_TILE+7,LAST_TILE+8,LAST_TILE+9,LAST_TILE+10,LAST_TILE+11
235 .byt $0,$0,$0,$0,$0,$0,$0,$0,$0,$1d,$d,$23,$24,$25,$26,$27,$28,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$1d,$0,$0,$d,$1c,$1e,$1c,$0,$0,$0,$21,$16,$16,$16,$22,$29,$29,$29,$0,$1d,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0
236
237 cont_subcom_high
238 .dsb MAX_CHARACTERS,0
239 command_list_high
240 .byt >command_list200
241 .byt >command_list212
242 .byt >command_list220
243 .byt >command_list216
244 .dsb 11,0
245 .byt >command_list214
246 .byt >command_list222
247 .byt >command_list218
248 .dsb 3,0
249 command_list_low
250 .byt <command_list200
251 .byt <command_list212
252 .byt <command_list220
253 .byt <command_list216
254 .dsb 11,0
255 .byt <command_list214
256 .byt <command_list222
257 .byt <command_list218
258 .dsb 3,0
259
260 dest_x
261 .dsb MAX_CHARACTERS,0
262
263 ; Table for deal_with_Eric, routines
264 tab_dE_routh
265 .byt >listen_Eric, >knock_Eric, >fire_Eric2, >hit_Eric2, >jump_Eric2
266 tab_dE_routl
267 .byt <listen_Eric, <knock_Eric, <fire_Eric2, <hit_Eric2, <jump_Eric2
268
269
270 ; For the random routine
271 randseed
272 .word $dead ; will it be $dead again?
273
274 ;free_r3
275 ;.dsb (256-32)-(*&255)
276 ; Personal timetable for Boy Wander
277 per_timet_bwander
278 .byt 172,172,156,156,178,140,178,156,148,148,148,164,178,178,164,156,140,164,148,196,196,216,192,194,192,192,192,194,194,194,192,194
279
280 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
281 ;.dsb 256-(*&255)
282 ; Tile map for background: row 4
283 skool_r04 ;.dsb SKOOL_COLS,1
284 .byt $c,$c,$32,$33,$34,$35,$c,$36,$37,$38,$39,$29,$1c,$10,$10,$10,$10,$0,$0,$0,$1e,$20,$1f,$1c,$10,$3a,$26,$3b,$3c,$3d,$3e,$38,$36,$10,$1f,$1f,$20,$21,$22,$23,$23,$23,$24,$7,$7,$7,$7,$25,$26,$27,$1a,$d,$28,$29,$1d,$1e
285 ;$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1
286 .byt LAST_TILE+12,LAST_TILE+13,LAST_TILE+14,LAST_TILE+15,LAST_TILE+16,LAST_TILE+17,LAST_TILE+18,LAST_TILE+19,LAST_TILE+20,LAST_TILE+21,LAST_TILE+22
287 .byt $0,$0,$0,$0,$0,$0,$0,$0,$0,$1d,$d,$2a,$2b,$0,$2c,$2d,$2e,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$1d,$0,$0,$d,$1c,$1e,$1c,$0,$0,$0,$21,$16,$16,$16,$22,$29,$29,$29,$0,$1d,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0
288
289 dest_y
290 .dsb MAX_CHARACTERS,0
291 var1 ; Byte 103
292 .dsb MAX_CHARACTERS,0
293 var2 ; Byte 104
294 .dsb MAX_CHARACTERS,0
295 var3 ; Byte 107
296 .dsb MAX_CHARACTERS,0
297
298 ; Table for deal_with_Eric, flagvalues
299 tab_dE_flags
300 .byt ERIC_SPOKEN, ERIC_DOWN, ERIC_FIRING, ERIC_HITTING, ERIC_JUMPING
301
302 ; Table for updating the score panel
303 tab_spanel_add
304 .word ($a000+(177*40+34))
305 .word ($a000+(185*40+34))
306 .word ($a000+(193*40+34))
307
308 free_r4
309 .dsb (256-32)-(*&255)
310 ; Personal timetable for Little boy 1
311 per_timet_lb1
312 .byt 170,170,146,154,176,136,154,146,162,154,146,146,136,146,136,154,146,154,162,196,196,196,198,176,176,202,196,196,204,204,176,196
313
314 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
315 ;.dsb 256-(*&255)
316 ; Tile map for background: row 5
317 skool_r05 ;.dsb SKOOL_COLS,1
318 .byt $c,$c,$c,$3f,$40,$c,$41,$42,$43,$44,$45,$45,$1c,$10,$10,$10,$10,$0,$0,$0,$0,$0,$0,$1c,$10,$46,$36,$47,$2e,$48,$29,$36,$36,$d,$2a,$2b,$1d,$2c,$2d,$19,$1a,$2e,$2f,$7,$7,$7,$7,$30,$1f,$f,$31,$1b,$e,$32,$33,$1e,$1,$1,$1,$1,$1,$1,$34,$35,$36,$37,$35,$36,$37,$35,$36,$37,$35,$36,$2f,$30,$31,$32,$33,$34,$0,$0,$35,$36,$37,$30,$31,$37,$30,$31,$37,$30,$31,$37,$30,$31,$37,$30,$38,$39,$0,$0,$0,$0,$0,$0,$21,$16,$16,$16,$22,$3a,$3a,$3a,$3a,$3a,$3a,$3a,$3a,$3a,$3a,$3a,$3a,$3a,$3a,$3b,$3c,$0
319
320 var4 ; Byte 108
321 .dsb MAX_CHARACTERS,0
322 var5 ; Byte 109
323 .dsb MAX_CHARACTERS,0
324 var6 ; Byte 110
325 .dsb MAX_CHARACTERS,0
326 var7 ; Byte 113
327 .dsb MAX_CHARACTERS,0
328
329 tab_bboards_low
330 .byt <bread_desc, <bwhite_desc, <bexam_desc
331
332 tab_bboards_high
333 .byt >bread_desc, >bwhite_desc, >bexam_desc
334
335 ; For utoa
336 bufconv
337 .byt 0,0,0,0,0,0
338
339 ;free_r5
340 ;.dsb (256-32)-(*&255)
341 ; Personal timetable for little boy 2
342 per_timet_lb2
343 .byt 170,170,146,154,146,136,162,162,146,154,136,136,146,162,154,162,146,154,136,196,196,196,198,198,176,202,196,196,206,206,198,176
344
345 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
346 ;.dsb 256-(*&255)
347 ; Tile map for background: row 6
348 skool_r06 ;.dsb SKOOL_COLS,1
349 .byt $c,$c,$c,$49,$4a,$4b,$4c,$0,$4d,$4e,$1a,$1a,$1c,$10,$10,$10,$10,$0,$0,$0,$0,$0,$0,$1c,$10,$4f,$50,$50,$50,$50,$50,$50,$50,$38,$38,$38,$38,$38,$38,$38,$38,$38,$39,$7,$7,$7,$7,$3a,$38,$38,$38,$38,$38,$38,$38,$1e,$0,$0,$0,$0,$0,$3b,$3c,$3d,$3e,$3f,$3d,$3e,$3f,$3d,$3e,$3f,$3d,$3e,$3d,$0,$3e,$3f,$0,$0,$0,$0,$0,$0,$40,$18,$41,$40,$18,$41,$40,$18,$41,$40,$18,$41,$42,$0,$43,$44,$0,$0,$0,$0,$0,$0,$21,$16,$16,$16,$22,$45,$45,$45,$45,$45,$45,$45,$45,$45,$45,$45,$45,$45,$45,$45,$45,$46
350
351 var8 ; Byte 114
352 .dsb MAX_CHARACTERS,0
353
354 cur_command_high
355 .dsb MAX_CHARACTERS,0
356 cur_command_low
357 .dsb MAX_CHARACTERS,0
358 pcommand
359 .dsb MAX_CHARACTERS,0
360
361 bexam_desc
362 .word board_exam ; Pointer to board UDGs
363 .byt 0 ; Column inside tile which is the first one clean
364 .byt 0 ; Current tile being written
365 .byt $ff ; Who last wrote here? $ff=empty
366 .byt 55,9 ; Tile coordinates of this board
367 .byt 0,0,0,0 ; Message written
368 .byt 0 ; Message code
369
370 ;free_r6
371 ;.dsb (256-32)-(*&255)
372 ; Personal timetable for little boy 3
373 per_timet_lb3
374 .byt 170,170,146,154,146,136,154,146,136,154,162,154,136,154,136,154,136,154,162,196,196,196,198,200,198,202,196,196,206,206,200,196
375
376 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
377 ;.dsb 256-(*&255)
378 ; Tile map for background: row 7
379 skool_r07 ;.dsb SKOOL_COLS,1
380 .byt $51,$52,$53,$54,$55,$56,$56,$4,$4,$4,$4,$4,$4,$4,$5,$6,$a,$57,$58,$59,$5a,$5a,$5a,$5b,$5c,$5d,$5e,$4,$4,$5f,$6,$60,$61,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$40,$41,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$47,$48,$49,$4a,$1,$1,$4b,$4c,$4d,$4e,$4e,$4e,$4e,$4f,$50,$51,$52,$4a,$53,$54,$54,$54,$55,$55,$55,$55,$55,$55,$55,$55,$56,$56,$56,$57,$58,$59,$5a,$5b
381
382 pos_row
383 .byt 10,3,3,3,3,3,3,10,10,10,10,10,10,10,17,17,17,17,17,10,17
384
385 pos_col
386 .byt 4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,38,42,46,255,255
387
388 ; Tables with base pointers to tiles for characters
389 tab_tiles
390 .dsb 15, >(children_tiles-8)
391 .dsb 3, >(teacher_tiles-8)
392 .dsb 1, >(teacher2_tiles-8)
393 .dsb 2, >(children_tiles-8)
394 tab_masks
395 .dsb 15, >(children_masks-8)
396 .dsb 3, >(teacher_masks-8)
397 .dsb 1, >(teacher2_masks-8)
398 .dsb 2, >(children_masks-8)
399
400 bwhite_desc
401 .word board_white ; Pointer to board UDGs
402 .byt 0 ; Column inside tile which is the first one clean
403 .byt 0 ; Current tile being written
404 .byt $ff ; Who last wrote here? $ff=empty
405 .byt 34,9 ; Tile coordinates of this board
406 .byt 0,0,0,0 ; Message written
407 .byt 0 ; Message code
408
409 ;free_r7
410 ;.dsb (256-32)-(*&255)
411 ; Personal timetable for little boy 4
412 per_timet_lb4
413 .byt 170,170,146,162,146,146,154,162,154,162,154,146,146,136,136,162,146,154,136,196,196,196,200,176,198,198,200,196,206,206,202,198
414
415 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
416 ;.dsb 256-(*&255)
417 ; Tile map for background: row 8
418 skool_r08 ;.dsb SKOOL_COLS,1
419 .byt $62,$63,$64,$64,$65,$65,$65,$65,$1d,$1d,$1d,$1d,$1d,$1d,$66,$10,$10,$10,$10,$67,$68,$69,$0,$0,$0,$0,$0,$0,$0,$6a,$6b,$6c,$10,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$42,$43,$0,$0,$0,$0,$0,$0,$44,$0,$0,$0,$0,$0,$65,$0,$0,$0,$0,$0,$69,$0,$0,$0,$0,$0,218,$0,$0,$0,$0,$0,$5c,$0,$0,$0,$0,$1d,$0,$0,$5d,$0,$0,$0,$0,$0,$0,$0,$0,$5e,$5f,$60,$0,$0,$61,$62,$1e,$1e,$1e,$1e,$1e,$1e,$1e,$1e,$1e,$60,$d,$63,$63,$63,$63,$0,$0,$0,$61
420
421 ; Tables with offsets for animatory states when moving left to right or viceversa
422 tab_offset_invl
423 .dsb 15, <(Inverted_anim_states-Eric_anim_states)
424 .dsb 3, <(t1_inverted_anim_states-Creak_anim_states)
425 .dsb 1, <(t2_inverted_anim_states-Withit_anim_states)
426 .dsb 2, <(Inverted_anim_states-Eric_anim_states)
427 tab_offset_invh
428 .dsb 15, >(Inverted_anim_states-Eric_anim_states)
429 .dsb 3, >(t1_inverted_anim_states-Creak_anim_states)
430 .dsb 1, >(t2_inverted_anim_states-Withit_anim_states)
431 .dsb 2, >(Inverted_anim_states-Eric_anim_states)
432
433 ini_pos_col
434 .byt 64,94,94,34,57,58,59,60,61,62,63,64,65,66,67,13,13,13,13,OFFSCREEN_POS,OFFSCREEN_POS
435 ini_flags
436 .byt IS_FACING_RIGHT,IS_FACING_RIGHT,IS_FACING_RIGHT,IS_FACING_RIGHT
437 .byt 0,IS_FACING_RIGHT,0,IS_FACING_RIGHT,0,IS_FACING_RIGHT,0,IS_FACING_RIGHT,0,IS_FACING_RIGHT,0
438 .byt IS_TEACHER|IS_SLOW_WALK,IS_TEACHER|IS_SLOW_WALK,IS_TEACHER|IS_SLOW_WALK,IS_TEACHER|IS_SLOW_WALK
439 .byt IS_FAST_WALK,IS_FAST_WALK
440
441 bread_desc
442 .word board_read ; Pointer to board UDGs
443 .byt 0 ; Column inside tile which is the first one clean
444 .byt 0 ; Current tile being written
445 .byt $ff ; Who last wrote here? $ff=empty
446 .byt 56,3 ; Tile coordinates of this board
447 .byt 0,0,0,0 ; Message written
448 .byt 0 ; Message code
449 ;free_r8
450 ;.dsb (256-32)-(*&255)
451 ; Personal timetable for little boy 5
452 per_timet_lb5
453 .byt 170,170,146,162,162,176,162,146,136,146,162,136,154,146,162,154,162,154,162,196,196,196,200,198,202,200,200,196,206,206,176,200
454 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
455 ;.dsb 256-(*&255)
456 ; Tile map for background: row 9
457 skool_r09 ;.dsb SKOOL_COLS,1
458 .byt $62,$6d,$6e,$6f,$1e,$1f,$62,$65,$1d,$1e,$20,$1f,$20,$70,$71,$1e,$1c,$10,$10,$10,$72,$68,$73,$0,$0,$0,$1e,$20,$1f,$20,$0,$1c,$10,$0
459 ;$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1
460 .byt LAST_TILE+23,LAST_TILE+24,LAST_TILE+25,LAST_TILE+26,LAST_TILE+27,LAST_TILE+28,LAST_TILE+29,LAST_TILE+30,LAST_TILE+31,LAST_TILE+32,LAST_TILE+33
461 .byt $0,$0,$0,$0,$0,$0,$0,$0,$42,$43
462 ;$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1
463 .byt LAST_TILE+45,LAST_TILE+46,LAST_TILE+47,LAST_TILE+48,LAST_TILE+49,LAST_TILE+50,LAST_TILE+51,LAST_TILE+52,LAST_TILE+53,LAST_TILE+54,LAST_TILE+55
464 .byt $0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$1d,$0,$64,$0,$1f,$1e,$1f,$1e,$1d,$0,$0,$65,$5f,$60,$0,$0,$0,$61,$66,$66,$66,$66,$66,$66,$1d,$0,$0,$0,$67,$d,$63,$63,$63,$63,$0,$0,$0,$61
465
466 free_r9
467 .dsb (256-32)-(*&255)
468 ; Personal timetable for little boy 6
469 per_timet_lb6
470 .byt 170,170,154,162,162,146,162,162,154,162,154,154,136,162,146,154,162,154,136,196,196,196,200,202,200,198,202,196,206,206,198,202
471
472 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
473 ;.dsb 256-(*&255)
474 ; Tile map for background: row 10
475 skool_r10 ;.dsb SKOOL_COLS,1
476 .byt $62,$74,$50,$75,$1e,$1f,$62,$65,$1d,$1e,$20,$1f,$20,$1d,$1d,$1e,$1c,$10,$10,$10,$76,$77,$68,$78,$79,$0,$1e,$20,$1f,$20,$0,$1c,$10,$0
477 ;$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1
478 .byt LAST_TILE+34,LAST_TILE+35,LAST_TILE+36,LAST_TILE+37,LAST_TILE+38,LAST_TILE+39,LAST_TILE+40,LAST_TILE+41,LAST_TILE+42,LAST_TILE+43,LAST_TILE+44
479 .byt $0,$0,$0,$0,$0,$0,$0,$0,$42,$43
480 ;$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1
481 .byt LAST_TILE+56,LAST_TILE+57,LAST_TILE+58,LAST_TILE+59,LAST_TILE+60,LAST_TILE+61,LAST_TILE+62,LAST_TILE+63,LAST_TILE+64,LAST_TILE+65,LAST_TILE+66
482 .byt $0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$1d,$0,$1d,$0,$1f,$1e,$1f,$1e,$1d,$68,$69,$5f,$60,$1d,$0,$0,$0,$61,$0,$6a,$0,$0,$0,$6a,$1d,$0,$0,$0,$63,$d,$63,$63,$63,$63,$0,$0,$0,$61
483
484 free_r10
485 .dsb (256-32)-(*&255)
486 ; Personal timetable for little boy 7
487 per_timet_lb7
488 .byt 170,170,154,162,154,146,154,154,146,162,136,146,162,154,136,146,162,154,162,196,196,196,202,176,200,200,202,196,206,206,200,176
489
490
491 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
492 ;.dsb 256-(*&255)
493 ; Tile map for background: row 11
494 skool_r11 ;.dsb SKOOL_COLS,1
495 .byt $7a,$7b,$7c,$7d,$7e,$7f,$80,$81,$1d,$82,$50,$50,$50,$83,$84,$1d,$1c,$10,$10,$10,$76,$0,$77,$68,$85,$86,$0,$0,$0,$0,$0,$1c,$10,$0,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$45,$0,$46,$45,$0,$46,$45,$0,$42,$43,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$0,$46,$45,$0,$46,$45,$0,$0,$0,$6b,$6c,$0,$6b,$6c,$0,$6b,$6c,$0,$6b,$6c,$0,$6b,$6c,$0,$1d,$0,$1d,$0,$0,$0,$0,$0,$6d,$6e,$5f,$60,$0,$1d,$0,$0,$0,$61,$6f,$70,$6f,$6f,$6f,$71,$1d,$0,$0,$0,$63,$d,$63,$63,$63,$63,$0,$0,$0,$61
496
497 free_r11
498 .dsb (256-32)-(*&255)
499 ; Personal timetable for little boy 8
500 per_timet_lb8
501 .byt 170,170,154,162,154,146,162,146,154,136,154,136,146,136,146,154,146,154,136,196,196,196,202,198,202,176,198,196,206,206,202,198
502
503 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
504 ;.dsb 256-(*&255)
505 ; Tile map for background: row 12
506 skool_r12 ;.dsb SKOOL_COLS,1
507 .byt $87,$88,$89,$8a,$8b,$8c,$8d,$8e,$8f,$90,$91,$91,$91,$92,$93,$94,$1c,$10,$10,$10,$76,$0,$0,$77,$68,$95,$0,$0,$0,$0,$0,$1c,$10,$0,$0,$0,$0,$0,$47,$48,$49,$47,$48,$49,$47,$48,$49,$47,$48,$49,$47,$48,$49,$42,$43,$0,$0,$0,$47,$48,$49,$47,$48,$49,$47,$48,$49,$47,$48,$49,$47,$48,$49,$4a,$0,$72,$73,$74,$72,$73,$74,$72,$73,$74,$72,$73,$74,$72,$73,$74,$75,$0,$1d,$0,$0,$0,$0,$0,$76,$5f,$60,$0,$0,$1d,$0,$0,$0,$61,$6f,$70,$6f,$6f,$6f,$71,$1d,$0,$0,$0,$63,$d,$63,$77,$77,$63,$0,$0,$0,$61
508
509 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
510 ; Tables for questions and answers...
511 ; see script.s s_prepare_question
512 ; the first 4 tables (16 bytes)
513 ; must be contiguous.
514 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
515 creak_table
516 .byt 5,2
517 .byt 6,3
518 rockitt_table
519 .byt 1,1
520 .byt 2,1
521 p_question
522 .dsb 2
523 p_answer
524 .dsb 2
525 withit_table
526 .byt 3,1
527 .byt 4,1
528
529 ; This table is also 16 bytes...
530 qa_tables
531 .byt <st_battles
532 .byt >st_battles
533 .byt <st_years
534 .byt >st_years
535 .byt <st_chemical_sym
536 .byt >st_chemical_sym
537 .byt <st_chemical_name
538 .byt >st_chemical_name
539 .byt 0,0,0,0
540 .byt <st_countries
541 .byt >st_countries
542 .byt <st_capitals
543 .byt >st_capitals
544
545
546 ; Table for calculating the number of lines
547 ; to give.
548 tab_lines
549 .byt 10,20,30,40,50,60,70,80,90
550
551 ; Table with the identifiers of messages to
552 ; tell the children to sit down
553 tab_sit_msg
554 .byt SIT_NASTY, SIT_CHERUBS, SIT_CANE, SIT_CHAPS
555
556
557 ; Table to relate teacher codes and identifiers. Used in s_do_class and teacher_gives_lines
558 table_teacher_codes
559 .byt CHAR_ROCKITT, CHAR_WACKER, CHAR_WITHIT, CHAR_CREAK, 0
560
561
562 ; Skool region data tables
563 rgn_topfloor_walls
564 .byt 11
565 .byt 22
566 .byt 54
567 .byt 76
568 .byt 99
569 .byt 130
570 rgn_topfloor_ids
571 .byt 0 ; Head's study
572 .byt 7 ; Between the study and the Revision Library
573 .byt 5 ; Revision library
574 .byt 1 ; Reading room
575 .byt 2 ; Map room
576 .byt 7 ; Map room door to the fire escape
577
578 rgn_midfloor_walls
579 .byt 14
580 .byt 30
581 .byt 51
582 .byt 94
583 .byt 130
584 rgn_midfloor_ids
585 .byt 0 ; Forbidden region
586 .byt 7 ; Between the staff room and the white room
587 .byt 3 ; White room
588 .byt 4 ; Exam room
589 .byt 7 ; Outside the Exam room door
590 rgn_botfloor_walls
591 .byt 46
592 .byt 68
593 .byt 130
594 rgn_botfloor_ids
595 .byt 7 ; Left of the dinner hall
596 .byt 6 ; Dinner hall
597 .byt 7 ; Right of the dinner hall
598 tab_regionshi
599 .byt >rgn_topfloor_walls, >rgn_midfloor_walls, >rgn_botfloor_walls
600 tab_regionslo
601 .byt <rgn_topfloor_walls, <rgn_midfloor_walls, <rgn_botfloor_walls
602 tab_ridshi
603 .byt >rgn_topfloor_ids, >rgn_midfloor_ids, >rgn_botfloor_ids
604 tab_ridslo
605 .byt <rgn_topfloor_ids, <rgn_midfloor_ids, <rgn_botfloor_ids
606
607 score .word 0 ; Current score
608 lines .word 0 ; Number of lines
609 hiscore .word 0 ; Highest score
610
611 ;free_r12
612 ;.dsb (256-32)-(*&255)
613
614 ; Personal timetable for little boy 9
615 per_timet_lb9
616 .byt 170,170,154,154,154,136,162,154,136,136,162,154,154,146,154,146,146,154,136,196,196,196,202,200,196,176,198,196,206,206,176,200
617
618
619 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
620 ;.dsb 256-(*&255)
621 ; Tile map for background: row 13
622 skool_r13 ;.dsb SKOOL_COLS,1
623 .byt $96,$97,$98,$99,$9a,$9b,$9c,$9d,$9e,$4,$4,$4,$4,$9f,$a0,$a1,$a2,$a3,$a4,$a5,$a6,$a7,$a8,$a9,$aa,$4,$4,$4,$4,$4,$4,$ab,$ac,$1,$1,$1,$1,$1,$4b,$4c,$4d,$4b,$4c,$4d,$4b,$4c,$4d,$4b,$4c,$4d,$4b,$4c,$4d,$4e,$4f,$1,$1,$1,$4b,$4c,$4d,$4b,$4c,$4d,$4b,$4c,$4d,$4b,$4c,$4d,$4b,$4c,$4d,$50,$1,$78,$79,$7a,$78,$79,$7a,$78,$79,$7a,$78,$79,$7a,$78,$79,$7a,$7b,$7c,$1,$1,$1,$1,$1,$1,$1,$7d,$7e,$7f,$80,$81,$82,$83,$84,$5d,$6f,$70,$6f,$6f,$6f,$71,$1d,$0,$0,$0,$63,$d,$85,$77,$77,$86,$0,$0,$0,$61
624 charset_col1
625 .byt 000,250,192,040,018,078,108,064,124,130,016,008,001,008,003,007
626 .byt 124,066,070,130,056,242,124,128,108,098,054,049,008,020,034,064
627 .byt 076,126,254,124,254,254,254,126,254,130,004,254,254,254,254,124
628 .byt 254,124,254,098,128,252,224,252,198,192,134,255,192,129,032,001
629 .byt 002,028,254,028,028,028,016,024,254,094,001,254,254,062,062,028
630 .byt 063,024,062,018,016,060,056,056,034,056,038,024,255,129,008,124
631 free_r13
632 .dsb (256-32)-(*&255)
633 ; Personal timetable for little boy 10
634 per_timet_lb10
635 .byt 170,170,154,154,154,136,176,154,162,136,136,146,154,154,146,154,162,154,162,210,208,208,176,200,196,196,176,196,206,206,176,202
636
637 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
638 ;.dsb 256-(*&255)
639 ; Tile map for background: row 14
640 skool_r14 ;.dsb SKOOL_COLS,1
641 .byt $ad,$0,$ae,$ad,$0,$ae,$ad,$af,$0,$0,$0,$0,$0,$0,$0,$0,$ad,$0,$77,$68,$b0,$b1,$b2,$b3,$0,$0,$0,$0,$0,$1c,$10,$10,$10,$0,$0,$66,$0,$0,$67,$0,$0,$68,$0,$1e,$51,$51,$51,$52,$52,$53,$54,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$1d,$0,$0,$0,$1d,$0,$87,$0,$0,219,$0,$1d,$0,$0,$0,$1d,$0,$0,$0,$88,$89,$8a,$8b,$8c,$60,$0,$61,$6f,$70,$6f,$6f,$6f,$71,$1d,$0,$0,$0,$63,$d,$8d,$8e,$8f,$77,$0,$0,$0,$61
642 charset_col2
643 .byt 000,000,000,254,042,016,146,128,130,124,124,008,002,008,003,056
644 .byt 138,254,138,146,072,146,146,134,146,146,054,050,020,020,020,138
645 .byt 082,144,146,130,130,146,144,130,016,254,002,016,002,064,096,130
646 .byt 144,130,144,146,128,002,028,002,040,032,138,129,056,255,064,001
647 .byt 126,034,034,034,034,042,126,037,032,000,001,016,000,032,016,034
648 .byt 036,036,016,042,126,002,006,006,020,005,042,102,000,102,016,146
649 free_r14
650 .dsb (256-32)-(*&255)
651 ; Personal timetable for little boy 11
652 per_timet_lb11
653 .byt 170,170,154,154,176,176,176,136,146,146,146,162,162,162,162,136,136,162,146,196,196,196,176,202,196,196,176,196,206,206,176,196
654
655 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
656 ;.dsb 256-(*&255)
657 ; Tile map for background: row 15
658 skool_r15 ;.dsb SKOOL_COLS,1
659 .byt $ad,$0,$b4,$b5,$b6,$b7,$b8,$b9,$0,$0,$0,$0,$0,$0,$0,$0,$ad,$0,$0,$77,$68,$b0,$b1,$b2,$b3,$0,$0,$0,$0,$ba,$bb,$1c,$10,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$1e,$51,$51,$51,$52,$55,$56,$1,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$1d,$0,$0,$0,$1d,$0,$0,$0,$0,$0,$0,$1d,$0,$90,$0,$1d,$0,$0,$88,$91,$92,$93,$5f,$60,$0,$0,$61,$6f,$70,$6f,$6f,$6f,$71,$1d,$0,$0,$0,$63,$d,$94,$95,$96,$77,$0,$0,$0,$61
660 charset_col3
661 .byt 000,000,192,040,127,228,146,000,000,000,056,062,000,008,000,192
662 .byt 146,002,146,178,254,146,146,152,146,146,000,000,020,020,020,144
663 .byt 094,144,146,130,130,146,144,138,016,130,002,040,002,048,024,130
664 .byt 144,134,152,146,254,002,002,028,016,030,146,000,003,000,191,001
665 .byt 146,034,034,034,034,042,144,037,032,000,094,040,000,030,032,034
666 .byt 036,036,032,042,016,002,056,056,008,005,050,129,000,024,008,170
667 free_r15
668 .dsb (256-32)-(*&255)
669 ; Personal timetable for Mr Creak
670 per_timet_creak
671 .byt 188,188,188,188,134,130,188,130,134,134,130,134,130,130,130,134,134,188,130,190,190,190,188,188,188,188,188,188,196,196,188,188
672
673 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
674 ;.dsb 256-(*&255)
675 ; Tile map for background: row 16
676 skool_r16 ;.dsb SKOOL_COLS,1
677 .byt $bc,$bd,$be,$ad,$0,$ae,$ad,$af,$0,$0,$0,$0,$0,$0,$0,$0,$ad,$0,$0,$0,$77,$68,$b0,$b1,$b2,$b3,$0,$0,$0,$0,$0,$1c,$10,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$1e,$51,$51,$57,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$97,$59,$59,$98,$1,$99,$1,$9a,$9b,$0,$0,$1d,$0,$0,$0,$0,$0,$0,$1d,$0,$9c,$9d,$9e,$0,$88,$91,$92,$93,$5f,$60,$0,$0,$0,$61,$6f,$70,$6f,$6f,$6f,$71,$9f,$a0,$a1,$0,$63,$d,$a2,$a3,$a4,$a5,$0,$0,$0,$61
678
679 charset_col4
680 .byt 000,000,000,254,042,000,109,000,000,000,124,008,000,008,000,000
681 .byt 124,000,098,204,008,140,140,224,108,124,000,000,034,020,008,096
682 .byt 066,126,108,130,124,130,128,078,254,000,252,198,002,064,254,124
683 .byt 096,124,102,140,128,252,028,002,040,032,162,000,000,000,064,001
684 .byt 130,062,028,034,254,024,064,062,030,000,000,006,000,032,030,028
685 .byt 024,063,016,036,000,062,000,006,020,062,034,000,000,000,016,130
686
687
688 free_r16
689 .dsb (256-32)-(*&255)
690 ; Personal timetable for Mr Rockitt
691 per_timet_rockitt
692 .byt 188,188,196,132,132,188,134,134,132,130,132,132,132,132,134,130,130,134,134,222,190,190,190,188,196,188,196,196,196,196,188,196
693
694 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
695 ;.dsb 256-(*&255)
696 ; Tile map for background: row 17
697 skool_r17 ;.dsb SKOOL_COLS,1
698 .byt $ad,$0,$ae,$ad,$0,$bf,$c0,$c1,$0,$0,$0,$0,$0,$0,$0,$0,$ad,$0,$0,$0,$0,$77,$68,$b0,$b1,$b2,$b3,$0,$0,$0,$0,$1c,$10,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$1e,$58,$59,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$a6,$0,$0,$a7,$a8,$a9,$aa,$1,$ab,$ac,$0,$1d,$0,$0,$0,$0,$0,$0,$1d,$0,$1d,$0,$0,$88,$91,$92,$93,$5f,$60,$0,$0,$0,$0,$61,$ad,$ae,$ad,$ad,$ad,$af,$b0,$b1,$b2,$0,$63,$d,$1d,$b3,$b4,$b5,$b6,$0,$0,$61
699
700 charset_col5
701 .byt 000,000,000,040,036,000,002,000,000,000,016,008,000,000,000,000
702 .byt 000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000
703 .byt 060,000,000,000,000,000,000,000,000,000,000,000,000,254,000,000
704 .byt 000,002,000,000,128,000,224,252,198,192,194,000,000,000,032,001
705 .byt 000,000,000,000,000,000,000,000,000,000,000,000,000,030,000,000
706 .byt 000,000,000,000,000,000,000,056,034,000,000,000,000,000,000,124
707
708 free_r17
709 .dsb (256-32)-(*&255)
710 ; Personal timetable for Mr Wacker
711 per_timet_wacker
712 .byt 186,184,132,190,130,190,190,132,130,132,134,130,134,128,132,128,190,132,190,190,214,218,190,186,190,190,190,190,190,196,188,190
713
714 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
715 ;.dsb 256-(*&255)
716 ; Tile map for background: row 18
717 skool_r18 ;.dsb SKOOL_COLS,1
718 .byt $c2,$c3,$c4,$c5,$c6,$c7,$ad,$af,$0,$0,$0,$0,$0,$0,$0,$0,$ad,$0,$0,$0,$0,$0,$77,$68,$b0,$b1,$b2,$b3,$0,$0,$0,$1c,$10,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$5a,$5b,$1,$1,$1,$5c,$5d,$5d,$5d,$5d,$5d,$5d,$5d,$5d,$5d,$5d,$5d,$5d,$5d,$5d,$5d,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$b7,$b8,$18,$18,$b9,$0,$ba,$1,$1,$bb,$bc,$1d,$0,$0,$0,$0,$0,$0,$1d,$0,$1d,$0,$88,$91,$92,$93,$5f,$60,$0,$0,$0,$0,$0,$61,$1,$bd,$1,$1,$1,$be,$bf,$c0,$c1,$c2,$c3,$d,$1d,$0,$0,$c4,$0,$0,$0,$61
719
720 ;;;;;;;;; Character widths
721 char_widths
722 .byt 003,001,003,005,005,003,005,002,002,002,005,005,002,004,002,003
723 .byt 004,003,004,004,004,004,004,004,004,004,002,002,004,004,004,004
724 .byt 005,004,004,004,004,004,004,004,004,003,004,004,004,005,004,004
725 .byt 004,005,004,004,005,004,005,005,005,005,005,002,003,002,005,005
726 .byt 004,004,004,004,004,004,004,004,004,001,003,004,001,005,004,004
727 .byt 004,004,004,004,003,004,003,005,005,004,004,003,001,003,004,005
728
729 free_r18
730 .dsb (256-32)-(*&255)
731 ; Personal timetable for Mr Withit
732 per_timet_withit
733 .byt 184,198,130,190,202,128,132,128,128,128,128,128,128,134,128,132,128,196,128,190,190,190,190,188,188,196,188,188,196,196,188,188
734
735 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
736 ;.dsb 256-(*&255)
737 ; Tile map for background: row 19
738 skool_r19 ;.dsb SKOOL_COLS,1
739 .byt $ad,$0,$ae,$ad,$c8,$c9,$ca,$cb,$4,$4,$4,$4,$4,$4,$4,$4,$ad,$0,$0,$0,$0,$0,$0,$77,$68,$cc,$cd,$ce,$4,$4,$4,$ab,$ac,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$5e,$5f,$5f,$5f,$5f,$60,$5f,$5f,$5f,$5f,$60,$5f,$5f,$5f,$61,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$c5,$c6,$c6,$c7,$c8,$c9,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$ca,$cb,$1,$1,$cc,$cd,$ce,$5f,$60,$0,$0,$0,$0,$0,$0,$61,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$cf,$d0,$d1,$d2,$0,$0,$0,$61
740
741
742 ;;;;;;;;;; Command token table (see script.h)
743 command_high
744 .byt >s_end ; SC_END
745 .byt >s_goto ; SC_GOTO
746 .byt >s_restart_nolesson ; SC_RESTIFNOLESSON
747 .byt >s_flag_event ; SC_FLAGEVENT
748 .byt >s_msg_sitdown ; SC_MSGSITDOWN
749 .byt >s_do_class ; SC_DOCLASS
750 .byt >s_move_until ; SC_MOVEUNTIL
751 .byt >s_find_seat ; SC_FINDSEAT
752 .byt >s_set_csubcom ; SC_SETCONTSUB
753 .byt >s_ctrl_einstein1 ; SC_CTRLEINSTEINCL1
754 .byt >s_ctrl_einstein2 ; SC_CTRLEINSTEINCL2
755 .byt >s_write_bl ; SC_WRITEBLCKBOARD
756 .byt >s_write_bl_c ; SC_WRITEBLCKBOARDC
757 .byt >s_walk_updown ; SC_WALKUPDOWN
758 .byt >s_restart ; SC_RESTARTLIST
759 .byt >s_restart_nodinner ; SC_RESTIFNODINNER
760 .byt >s_dinner_duty ; SC_DINNERDUTY
761 .byt >s_unflag_event ; SC_UNFLAGEVENT
762 .byt >s_goto_random ; SC_GOTORANDOM
763 .byt >s_goto_random_trip ; SC_GOTORANDOMTRIP
764 .byt >s_follow_boy1 ; SC_FOLLOWBOY1TRIP
765 .byt >s_find_eric ; SC_FINDERIC
766 .byt >s_tell_einstein ; SC_TELLEINSTEIN
767 .byt >s_tell_angelface ; SC_TELLANGELFACE
768 .byt >s_tell_boywander ; SC_TELLBOYWANDER
769 .byt >s_2000lines_eric ; SC_2000LINESERIC
770 .byt >s_end_game ; SC_ENDGAME
771
772 command_low
773 .byt <s_end ; SC_NOP
774 .byt <s_goto ; SC_GOTO
775 .byt <s_restart_nolesson ; SC_RESTIFNOLESSON
776 .byt <s_flag_event ; SC_FLAGEVENT
777 .byt <s_msg_sitdown ; SC_MSGSITDOWN
778 .byt <s_do_class ; SC_DOCLASS
779 .byt <s_move_until ; SC_MOVEUNTIL
780 .byt <s_find_seat ; SC_FINDSEAT
781 .byt <s_set_csubcom ; SC_SETCONTSUB
782 .byt <s_ctrl_einstein1 ; SC_CTRLEINSTEINCL1
783 .byt <s_ctrl_einstein2 ; SC_CTRLEINSTEINCL2
784 .byt <s_write_bl ; SC_WRITEBLCKBOARD
785 .byt <s_write_bl_c ; SC_WRITEBLCKBOARDC
786 .byt <s_walk_updown ; SC_WALKUPDOWN
787 .byt <s_restart ; SC_RESTARTLIST
788 .byt <s_restart_nodinner ; SC_RESTIFNODINNER
789 .byt <s_dinner_duty ; SC_DINNERDUTY
790 .byt <s_unflag_event ; SC_UNFLAGEVENT
791 .byt <s_goto_random ; SC_GOTORANDOM
792 .byt <s_goto_random_trip ; SC_GOTORANDOMTRIP
793 .byt <s_follow_boy1 ; SC_FOLLOWBOY1TRIP
794 .byt <s_find_eric ; SC_FINDERIC
795 .byt <s_tell_einstein ; SC_TELLEINSTEIN
796 .byt <s_tell_angelface ; SC_TELLANGELFACE
797 .byt <s_tell_boywander ; SC_TELLBOYWANDER
798 .byt <s_2000lines_eric ; SC_2000LINESERIC
799 .byt <s_end_game ; SC_ENDGAME
800
801
802 /* Usually it is a good idea to keep 0 all the entries
803 possible, as it speeds up things. Z=1 means no key
804 pressed and there is no need to look in tables */
805
806 #define KEY_UP 1
807 #define KEY_LEFT 2
808 #define KEY_DOWN 3
809 #define KEY_RIGHT 4
810
811 #define KEY_LCTRL 0
812 #define KET_RCTRL 0
813 #define KEY_LSHIFT 0
814 #define KEY_RSHIFT 0
815 #define KEY_FUNCT 0
816
817 #define KEY_RETURN $0d
818 #define KEY_ESC $1b
819 #define KEY_DEL $08
820
821 //#define COMPLETE_ASCII_TABLE
822
823 tab_ascii
824 #ifdef COMPLETE_ASCII_TABLE
825 .asc "7","N","5","V",KET_RCTRL,"1","X","3"
826 .asc "J","T","R","F",0,KEY_ESC,"Q","D"
827 .asc "M","6","B","4",KEY_LCTRL,"Z","2","C"
828 .asc "K","9",59,"-",0,0,92,39
829 .asc " ",",",".",KEY_UP,KEY_LSHIFT,KEY_LEFT,KEY_DOWN,KEY_RIGHT
830 .asc "U","I","O","P",KEY_FUNCT,KEY_DEL,"]","["
831 .asc "Y","H","G","E",0,"A","S","W"
832 .asc "8","L","0","/",KEY_RSHIFT,KEY_RETURN,0,"="
833 #else
834 .asc "7","N","5","V",0,"1","X","3"
835 .asc "J","T","R","F",0,0,"Q","D"
836 .asc "M","6","B","4",0,"Z","2","C"
837 .asc "K","9",0,0,0,0,0,0
838 .asc " ",0,0,KEY_UP,0,KEY_LEFT,KEY_DOWN,KEY_RIGHT
839 .asc "U","I","O","P",0,KEY_DEL,0,0
840 .asc "Y","H","G","E",0,"A","S","W"
841 .asc "8","L","0",0,0,KEY_RETURN,0,0
842 #endif
843
844
845 free_r19
846
847 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
848 .dsb 256-(*&255)
849 ; Tile map for background: row 20
850 skool_r20 ;.dsb SKOOL_COLS,1
851 .byt $cf,$d0,$d1,$d2,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$4,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$62,$63,$63,$63,$63,$63,$63,$63,$63,$63,$63,$63,$63,$63,$64,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$d3,$1,$1,$d4,$d4,$d5,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$1,$d6,$d7,$d8,$d9
852
853 ;;;;;;;;;;;;;;;;;;;;;;;
854 ;; Command list table
855 ;;;;;;;;;;;;;;;;;;;;;;;;
856 command_list_table
857 .word command_list128
858 .word command_list130
859 .word command_list132
860 .word command_list134
861 .word command_list136
862 .word command_list138
863 .word command_list140
864 .word command_list142
865 .word command_list144
866 .word command_list146
867 .word command_list148
868 .word command_list150
869 .word command_list152
870 .word command_list154
871 .word command_list156
872 .word command_list158
873 .word command_list160
874 .word command_list162
875 .word command_list164
876 .word command_list166
877 .word command_list168
878 .word command_list170
879 .word command_list172
880 .word command_list174
881 .word command_list176
882 .word command_list178
883 .word command_list180
884 .word command_list182
885 .word command_list184
886 .word command_list186
887 .word command_list188
888 .word command_list190
889 .word command_list192
890 .word command_list194
891 .word command_list196
892 .word command_list198
893 .word command_list200
894 .word command_list202
895 .word command_list204
896 .word command_list206
897 .word command_list208
898 .word command_list210
899 .word command_list212
900 .word command_list214
901 .word command_list216
902 .word command_list218
903 .word command_list220
904 .word command_list222
905
906 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;
907 ; Lesson descriptors
908 ;;;;;;;;;;;;;;;;;;;;;;;;;;;
909 ; Each entry in this table defines the teacher for the period
910 ; (if any), and the room. The teacher is identified by bits 4-5
911 ; See params.h
912
913
914 lesson_descriptors
915 .byt (DES_DINNER|DES_WITHIT*16), (DES_DINNER|DES_WACKER*16), (DES_EXAM|DES_WACKER*16)
916 .byt (DES_EXAM|DES_ROCKITT*16), (DES_LIBRARY|DES_NONE*16), (DES_LIBRARY|DES_NONE*16)
917 .byt (DES_LIBRARY|DES_NONE*16), (DES_MAP|DES_WITHIT*16), (DES_READING|DES_WACKER*16)
918 .byt (DES_READING|DES_ROCKITT*16), (DES_READING|DES_CREAK*16), (DES_WHITE|DES_CREAK*16)
919 .byt (DES_WHITE|DES_WACKER*16), (DES_WHITE|DES_WITHIT*16), (DES_WHITE|DES_ROCKITT*16)
920 .byt (DES_MAP|DES_WACKER*16), (DES_MAP|DES_WITHIT*16), (DES_WHITE|DES_ROCKITT*16)
921 .byt (DES_READING|DES_CREAK*16), (DES_PLAY|DES_NONE*16),(DES_PLAY|DES_NONE*16)
922 .byt (DES_PLAY|DES_NONE*16),(DES_PLAY|DES_NONE*16),(DES_PLAY|DES_NONE*16)
923 .byt (DES_PLAY|DES_NONE*16),(DES_PLAY|DES_NONE*16),(DES_PLAY|DES_NONE*16)
924 .byt (DES_PLAY|DES_NONE*16),(DES_PLAY|DES_NONE*16),(DES_PLAY|DES_NONE*16)
925 .byt (DES_PLAY|DES_NONE*16),(DES_PLAY|DES_NONE*16)
926
927
928 ; Character information
929 ;.dsb 256-(*&255)
930
931 ; Animatory states for children
932 Eric_anim_states
933 ; Animatory state 0 (1-Eric00.png)
934 .byt 0, 0, 0, 0
935 .byt 0, 1, 2, 0
936 .byt 3, 4, 5, 0
937 .byt 0, 6, 7, 0
938 ; Animatory state 1 (1-Eric01.png)
939 .byt 0, 0, 0, 0
940 .byt 15, 16, 17, 0
941 .byt 18, 19, 20, 0
942 .byt 21, 22, 23, 0
943 ; Animatory state 2 (1-Eric02.png)
944 .byt 0, 0, 0, 0
945 .byt 0, 1, 2, 0
946 .byt 3, 4, 5, 0
947 .byt 0, 33, 7, 0
948 ; Animatory state 3 (1-Eric03.png)
949 .byt 0, 0, 0, 0
950 .byt 15, 16, 17, 0
951 .byt 18, 19, 20, 0
952 .byt 35, 36, 37, 0
953 ; Animatory state 4 (1-Eric04.png)
954 .byt 0, 0, 0, 0
955 .byt 0, 1, 2, 0
956 .byt 41, 42, 43, 0
957 .byt 44, 45, 0, 0
958 ; Animatory state 5 (1-Eric05.png)
959 .byt 0, 0, 0, 0
960 .byt 0, 0, 0, 0
961 .byt 0, 51, 52, 53
962 .byt 54, 55, 56, 57
963 ; Animatory state 6 (1-Eric06.png)
964 .byt 0, 0, 0, 0
965 .byt 0, 0, 0, 0
966 .byt 0, 0, 0, 0
967 .byt 65, 66, 67, 68
968 ; Animatory state 7 (1-Eric07.png)
969 .byt 0, 0, 0, 0
970 .byt 0, 1, 2, 0
971 .byt 73, 74, 75, 0
972 .byt 0, 76, 77, 0
973 ; Animatory state 8 (1-Eric08.png)
974 .byt 0, 0, 0, 0
975 .byt 83, 84, 2, 0
976 .byt 85, 86, 75, 0
977 .byt 0, 76, 77, 0
978 ; Animatory state 9 (1-Eric09.png)
979 .byt 0, 0, 0, 0
980 .byt 91, 92, 2, 0
981 .byt 93, 94, 5, 0
982 .byt 0, 95, 7, 0
983 ; Animatory state 10 (1-Eric10.png)
984 .byt 101, 102, 0, 0
985 .byt 103, 104, 2, 0
986 .byt 93, 94, 5, 0
987 .byt 0, 95, 7, 0
988 ; Animatory state 11 (1-Eric11.png)
989 .byt 0, 0, 0, 0
990 .byt 0, 1, 2, 0
991 .byt 109, 110, 111, 112
992 .byt 0, 95, 113, 0
993 ; Animatory state 12 (1-Eric12.png)
994 .byt 0, 0, 0, 0
995 .byt 119, 120, 121, 0
996 .byt 122, 123, 124, 125
997 .byt 0, 95, 113, 0
998
999 Einstein_anim_states
1000 ; Animatory state 13 (2-Einstein00.png)
1001 .byt 0, 0, 0, 0
1002 .byt 0, 133, 134, 0
1003 .byt 3, 4, 135, 0
1004 .byt 0, 6, 7, 0
1005 ; Animatory state 14 (2-Einstein1.png)
1006 .byt 0, 0, 0, 0
1007 .byt 139, 140, 141, 0
1008 .byt 18, 142, 20, 0
1009 .byt 21, 22, 23, 0
1010 ; Animatory state 15 (2-Einstein2.png)
1011 .byt 0, 0, 0, 0
1012 .byt 0, 133, 134, 0
1013 .byt 3, 4, 135, 0
1014 .byt 0, 33, 7, 0
1015 ; Animatory state 16 (2-Einstein3.png)
1016 .byt 0, 0, 0, 0
1017 .byt 139, 140, 141, 0
1018 .byt 18, 142, 20, 0
1019 .byt 35, 36, 37, 0
1020 ; Animatory state 17 (2-Einstein4.png)
1021 .byt 0, 0, 0, 0
1022 .byt 0, 133, 134, 0
1023 .byt 41, 42, 43, 0
1024 .byt 44, 45, 0, 0
1025 ; Animatory state 18 (2-Einstein5.png)
1026 .byt 0, 0, 0, 0
1027 .byt 0, 0, 0, 0
1028 .byt 0, 51, 147, 148
1029 .byt 54, 55, 56, 57
1030 ; Animatory state 19 (2-Einstein6.png)
1031 .byt 0, 0, 0, 0
1032 .byt 0, 0, 0, 0
1033 .byt 0, 0, 0, 0
1034 .byt 65, 66, 151, 152
1035
1036 Angelface_anim_states
1037 ; Animatory state 20 (3-Angelface00.png)
1038 .byt 0, 0, 0, 0
1039 .byt 0, 155, 156, 0
1040 .byt 3, 4, 5, 0
1041 .byt 0, 6, 7, 0
1042 ; Animatory state 21 (3-Angelface01.png)
1043 .byt 0, 0, 0, 0
1044 .byt 159, 160, 17, 0
1045 .byt 18, 19, 20, 0
1046 .byt 161, 22, 23, 0
1047 ; Animatory state 22 (3-Angelface02.png)
1048 .byt 0, 0, 0, 0
1049 .byt 0, 155, 156, 0
1050 .byt 3, 4, 5, 0
1051 .byt 0, 33, 7, 0
1052 ; Animatory state 23 (3-Angelface03.png)
1053 .byt 0, 0, 0, 0
1054 .byt 159, 160, 17, 0
1055 .byt 18, 19, 20, 0
1056 .byt 35, 36, 37, 0
1057 ; Animatory state 24 (3-Angelface04.png)
1058 .byt 0, 0, 0, 0
1059 .byt 0, 155, 156, 0
1060 .byt 41, 42, 43, 0
1061 .byt 44, 45, 0, 0
1062 ; Animatory state 25 (3-Angelface05.png)
1063 .byt 0, 0, 0, 0
1064 .byt 0, 0, 0, 0
1065 .byt 0, 51, 165, 166
1066 .byt 54, 55, 56, 57
1067 ; Animatory state 26 (3-Angelface06.png)
1068 .byt 0, 0, 0, 0
1069 .byt 0, 0, 0, 0
1070 .byt 0, 0, 0, 0
1071 .byt 65, 66, 169, 170
1072 ; Animatory state 27 (3-Angelface07.png)
1073 .byt 0, 0, 0, 0
1074 .byt 0, 155, 156, 0
1075 .byt 73, 74, 75, 0
1076 .byt 0, 76, 77, 0
1077 ; Animatory state 28 (3-Angelface08.png)
1078 .byt 0, 0, 0, 0
1079 .byt 83, 173, 156, 0
1080 .byt 85, 86, 75, 0
1081 .byt 0, 76, 77, 0
1082 ; Animatory state 29 (3-Angelface09.png)
1083 .byt 0, 0, 0, 0
1084 .byt 91, 175, 156, 0
1085 .byt 93, 94, 5, 0
1086 .byt 0, 95, 7, 0
1087 ; Animatory state 30 (3-Angelface10.png)
1088 .byt 101, 102, 0, 0
1089 .byt 103, 177, 156, 0
1090 .byt 93, 94, 5, 0
1091 .byt 0, 95, 7, 0
1092
1093
1094 BoyWander_anim_states
1095 ; Animatory state 31 (4-bwander00.png)
1096 .byt 0, 0, 0, 0
1097 .byt 0, 179, 180, 0
1098 .byt 3, 4, 5, 0
1099 .byt 0, 6, 7, 0
1100 ; Animatory state 32 (4-bwander01.png)
1101 .byt 0, 0, 0, 0
1102 .byt 183, 184, 17, 0
1103 .byt 18, 19, 20, 0
1104 .byt 161, 22, 23, 0
1105 ; Animatory state 33 (4-bwander02.png)
1106 .byt 0, 0, 0, 0
1107 .byt 0, 179, 180, 0
1108 .byt 3, 4, 5, 0
1109 .byt 0, 33, 7, 0
1110 ; Animatory state 34 (4-bwander03.png)
1111 .byt 0, 0, 0, 0
1112 .byt 183, 184, 17, 0
1113 .byt 18, 19, 20, 0
1114 .byt 35, 36, 37, 0
1115 ; Animatory state 35 (4-bwander04.png)
1116 .byt 0, 0, 0, 0
1117 .byt 0, 179, 180, 0
1118 .byt 41, 42, 43, 0
1119 .byt 44, 45, 0, 0
1120 ; Animatory state 36 (4-bwander05.png)
1121 .byt 0, 0, 0, 0
1122 .byt 0, 0, 0, 0
1123 .byt 0, 51, 187, 188
1124 .byt 54, 55, 56, 57
1125 ; Animatory state 37 (4-bwander06.png)
1126 .byt 0, 0, 0, 0
1127 .byt 0, 0, 0, 0
1128 .byt 0, 0, 0, 0
1129 .byt 65, 66, 191, 192
1130
1131 ; 07 and 08 are unused with Boy Wander
1132 .byt 0,0,0,0
1133 .byt 0,0,0,0
1134 .byt 0,0,0,0
1135 .byt 0,0,0,0
1136
1137 .byt 0,0,0,0
1138 .byt 0,0,0,0
1139 .byt 0,0,0,0
1140 .byt 0,0,0,0
1141
1142
1143 ; Animatory state 38 (4-bwander09.png)
1144 .byt 0, 0, 0, 0
1145 .byt 91, 195, 180, 0
1146 .byt 93, 94, 5, 0
1147 .byt 0, 95, 7, 0
1148 ; Animatory state 39 (4-bwander10.png)
1149 .byt 101, 102, 0, 0
1150 .byt 103, 197, 180, 0
1151 .byt 93, 94, 5, 0
1152 .byt 0, 95, 7, 0
1153 ; Animatory state 40 (4-bwander11.png)
1154 .byt 0, 0, 0, 0
1155 .byt 0, 179, 180, 0
1156 .byt 109, 110, 111, 112
1157 .byt 0, 95, 113, 0
1158 ; Animatory state 41 (4-bwander12.png)
1159 .byt 0, 0, 0, 0
1160 .byt 119, 199, 200, 0
1161 .byt 122, 123, 124, 125
1162 .byt 0, 95, 113, 0
1163
1164
1165 Boy_anim_states
1166 ; Animatory state 42 (5-boy0.png)
1167 .byt 0, 0, 0, 0
1168 .byt 0, 203, 204, 0
1169 .byt 0, 205, 206, 0
1170 .byt 0, 95, 7, 0
1171 ; Animatory state 43 (5-boy1.png)
1172 .byt 0, 0, 0, 0
1173 .byt 211, 212, 0, 0
1174 .byt 213, 214, 215, 0
1175 .byt 216, 22, 23, 0
1176 ; Animatory state 44 (5-boy2.png)
1177 .byt 0, 0, 0, 0
1178 .byt 0, 203, 204, 0
1179 .byt 0, 205, 206, 0
1180 .byt 0, 223, 7, 0
1181 ; Animatory state 45 (5-boy3.png)
1182 .byt 0, 0, 0, 0
1183 .byt 211, 212, 0, 0
1184 .byt 213, 214, 215, 0
1185 .byt 35, 36, 37, 0
1186 ; Animatory state 46 (5-boy4.png)
1187 .byt 0, 0, 0, 0
1188 .byt 0, 203, 225, 0
1189 .byt 0, 226, 227, 0
1190 .byt 228, 229, 0, 0
1191 ; Animatory state 47 (5-boy5.png)
1192 .byt 0, 0, 0, 0
1193 .byt 0, 0, 0, 0
1194 .byt 24, 235, 236, 0
1195 .byt 237, 238, 239, 0
1196 ; Animatory state 48 (5-boy6.png)
1197 .byt 0, 0, 0, 0
1198 .byt 0, 0, 0, 0
1199 .byt 0, 0, 0, 0
1200 .byt 245, 246, 247, 248
1201
1202 Pellet_anim_states
1203 ; Animatory state 49 (6-pellet.png)
1204 .byt 0, 0, 0, 0
1205 .byt 0, 253, 0, 0
1206 .byt 0, 0, 0, 0
1207 .byt 0, 0, 0, 0
1208
1209
1210
1211
1212 Inverted_anim_states
1213
1214 ; Animatory states for children (invert)
1215 ; Animatory state 0 (1-Eric00.png)
1216 .byt 0, 0, 0, 0
1217 .byt 0, 8, 9, 0
1218 .byt 0, 10, 11, 12
1219 .byt 0, 13, 14, 0
1220 ; Animatory state 1 (1-Eric01.png)
1221 .byt 0, 0, 0, 0
1222 .byt 0, 24, 25, 26
1223 .byt 0, 27, 28, 29
1224 .byt 0, 30, 31, 32
1225 ; Animatory state 2 (1-Eric02.png)
1226 .byt 0, 0, 0, 0
1227 .byt 0, 8, 9, 0
1228 .byt 0, 10, 11, 12
1229 .byt 0, 13, 34, 0
1230 ; Animatory state 3 (1-Eric03.png)
1231 .byt 0, 0, 0, 0
1232 .byt 0, 24, 25, 26
1233 .byt 0, 27, 28, 29
1234 .byt 0, 38, 39, 40
1235 ; Animatory state 4 (1-Eric04.png)
1236 .byt 0, 0, 0, 0
1237 .byt 0, 8, 9, 0
1238 .byt 0, 46, 47, 48
1239 .byt 0, 0, 49, 50
1240 ; Animatory state 5 (1-Eric05.png)
1241 .byt 0, 0, 0, 0
1242 .byt 0, 0, 0, 0
1243 .byt 58, 59, 60, 0
1244 .byt 61, 62, 63, 64
1245 ; Animatory state 6 (1-Eric06.png)
1246 .byt 0, 0, 0, 0
1247 .byt 0, 0, 0, 0
1248 .byt 0, 0, 0, 0
1249 .byt 69, 70, 71, 72
1250 ; Animatory state 7 (1-Eric07.png)
1251 .byt 0, 0, 0, 0
1252 .byt 0, 8, 9, 0
1253 .byt 0, 78, 79, 80
1254 .byt 0, 81, 82, 0
1255 ; Animatory state 8 (1-Eric08.png)
1256 .byt 0, 0, 0, 0
1257 .byt 0, 8, 87, 88
1258 .byt 0, 78, 89, 90
1259 .byt 0, 81, 82, 0
1260 ; Animatory state 9 (1-Eric09.png)
1261 .byt 0, 0, 0, 0
1262 .byt 0, 8, 96, 97
1263 .byt 0, 10, 98, 99
1264 .byt 0, 13, 100, 0
1265 ; Animatory state 10 (1-Eric10.png)
1266 .byt 0, 0, 105, 106
1267 .byt 0, 8, 107, 108
1268 .byt 0, 10, 98, 99
1269 .byt 0, 13, 100, 0
1270 ; Animatory state 11 (1-Eric11.png)
1271 .byt 0, 0, 0, 0
1272 .byt 0, 8, 9, 0
1273 .byt 114, 115, 116, 117
1274 .byt 0, 118, 100, 0
1275 ; Animatory state 12 (1-Eric12.png)
1276 .byt 0, 0, 0, 0
1277 .byt 0, 126, 127, 128
1278 .byt 129, 130, 131, 132
1279 .byt 0, 118, 100, 0
1280 ; Animatory state 13 (2-Einstein00.png)
1281 .byt 0, 0, 0, 0
1282 .byt 0, 136, 137, 0
1283 .byt 0, 138, 11, 12
1284 .byt 0, 13, 14, 0
1285 ; Animatory state 14 (2-Einstein1.png)
1286 .byt 0, 0, 0, 0
1287 .byt 0, 143, 144, 145
1288 .byt 0, 27, 146, 29
1289 .byt 0, 30, 31, 32
1290 ; Animatory state 15 (2-Einstein2.png)
1291 .byt 0, 0, 0, 0
1292 .byt 0, 136, 137, 0
1293 .byt 0, 138, 11, 12
1294 .byt 0, 13, 34, 0
1295 ; Animatory state 16 (2-Einstein3.png)
1296 .byt 0, 0, 0, 0
1297 .byt 0, 143, 144, 145
1298 .byt 0, 27, 146, 29
1299 .byt 0, 38, 39, 40
1300 ; Animatory state 17 (2-Einstein4.png)
1301 .byt 0, 0, 0, 0
1302 .byt 0, 136, 137, 0
1303 .byt 0, 46, 47, 48
1304 .byt 0, 0, 49, 50
1305 ; Animatory state 18 (2-Einstein5.png)
1306 .byt 0, 0, 0, 0
1307 .byt 0, 0, 0, 0
1308 .byt 149, 150, 60, 0
1309 .byt 61, 62, 63, 64
1310 ; Animatory state 19 (2-Einstein6.png)
1311 .byt 0, 0, 0, 0
1312 .byt 0, 0, 0, 0
1313 .byt 0, 0, 0, 0
1314 .byt 153, 154, 71, 72
1315 ; Animatory state 20 (3-Angelface00.png)
1316 .byt 0, 0, 0, 0
1317 .byt 0, 157, 158, 0
1318 .byt 0, 10, 11, 12
1319 .byt 0, 13, 14, 0
1320 ; Animatory state 21 (3-Angelface01.png)
1321 .byt 0, 0, 0, 0
1322 .byt 0, 24, 162, 163
1323 .byt 0, 27, 28, 29
1324 .byt 0, 30, 31, 164
1325 ; Animatory state 22 (3-Angelface02.png)
1326 .byt 0, 0, 0, 0
1327 .byt 0, 157, 158, 0
1328 .byt 0, 10, 11, 12
1329 .byt 0, 13, 34, 0
1330 ; Animatory state 23 (3-Angelface03.png)
1331 .byt 0, 0, 0, 0
1332 .byt 0, 24, 162, 163
1333 .byt 0, 27, 28, 29
1334 .byt 0, 38, 39, 40
1335 ; Animatory state 24 (3-Angelface04.png)
1336 .byt 0, 0, 0, 0
1337 .byt 0, 157, 158, 0
1338 .byt 0, 46, 47, 48
1339 .byt 0, 0, 49, 50
1340 ; Animatory state 25 (3-Angelface05.png)
1341 .byt 0, 0, 0, 0
1342 .byt 0, 0, 0, 0
1343 .byt 167, 168, 60, 0
1344 .byt 61, 62, 63, 64
1345 ; Animatory state 26 (3-Angelface06.png)
1346 .byt 0, 0, 0, 0
1347 .byt 0, 0, 0, 0
1348 .byt 0, 0, 0, 0
1349 .byt 171, 172, 71, 72
1350 ; Animatory state 27 (3-Angelface07.png)
1351 .byt 0, 0, 0, 0
1352 .byt 0, 157, 158, 0
1353 .byt 0, 78, 79, 80
1354 .byt 0, 81, 82, 0
1355 ; Animatory state 28 (3-Angelface08.png)
1356 .byt 0, 0, 0, 0
1357 .byt 0, 157, 174, 88
1358 .byt 0, 78, 89, 90
1359 .byt 0, 81, 82, 0
1360 ; Animatory state 29 (3-Angelface09.png)
1361 .byt 0, 0, 0, 0
1362 .byt 0, 157, 176, 97
1363 .byt 0, 10, 98, 99
1364 .byt 0, 13, 100, 0
1365 ; Animatory state 30 (3-Angelface10.png)
1366 .byt 0, 0, 105, 106
1367 .byt 0, 157, 178, 108
1368 .byt 0, 10, 98, 99
1369 .byt 0, 13, 100, 0
1370 ; Animatory state 31 (4-bwander00.png)
1371 .byt 0, 0, 0, 0
1372 .byt 0, 181, 182, 0
1373 .byt 0, 10, 11, 12
1374 .byt 0, 13, 14, 0
1375 ; Animatory state 32 (4-bwander01.png)
1376 .byt 0, 0, 0, 0
1377 .byt 0, 24, 185, 186
1378 .byt 0, 27, 28, 29
1379 .byt 0, 30, 31, 164
1380 ; Animatory state 33 (4-bwander02.png)
1381 .byt 0, 0, 0, 0
1382 .byt 0, 181, 182, 0
1383 .byt 0, 10, 11, 12
1384 .byt 0, 13, 34, 0
1385 ; Animatory state 34 (4-bwander03.png)
1386 .byt 0, 0, 0, 0
1387 .byt 0, 24, 185, 186
1388 .byt 0, 27, 28, 29
1389 .byt 0, 38, 39, 40
1390 ; Animatory state 35 (4-bwander04.png)
1391 .byt 0, 0, 0, 0
1392 .byt 0, 181, 182, 0
1393 .byt 0, 46, 47, 48
1394 .byt 0, 0, 49, 50
1395 ; Animatory state 36 (4-bwander05.png)
1396 .byt 0, 0, 0, 0
1397 .byt 0, 0, 0, 0
1398 .byt 189, 190, 60, 0
1399 .byt 61, 62, 63, 64
1400 ; Animatory state 37 (4-bwander06.png)
1401 .byt 0, 0, 0, 0
1402 .byt 0, 0, 0, 0
1403 .byt 0, 0, 0, 0
1404 .byt 193, 194, 71, 72
1405 ; 07 and 08 are unused with Boy Wander
1406 .byt 0,0,0,0
1407 .byt 0,0,0,0
1408 .byt 0,0,0,0
1409 .byt 0,0,0,0
1410
1411 .byt 0,0,0,0
1412 .byt 0,0,0,0
1413 .byt 0,0,0,0
1414 .byt 0,0,0,0
1415
1416 ; Animatory state 38 (4-bwander09.png)
1417 .byt 0, 0, 0, 0
1418 .byt 0, 181, 196, 97
1419 .byt 0, 10, 98, 99
1420 .byt 0, 13, 100, 0
1421 ; Animatory state 39 (4-bwander10.png)
1422 .byt 0, 0, 105, 106
1423 .byt 0, 181, 198, 108
1424 .byt 0, 10, 98, 99
1425 .byt 0, 13, 100, 0
1426 ; Animatory state 40 (4-bwander11.png)
1427 .byt 0, 0, 0, 0
1428 .byt 0, 181, 182, 0
1429 .byt 114, 115, 116, 117
1430 .byt 0, 118, 100, 0
1431 ; Animatory state 41 (4-bwander12.png)
1432 .byt 0, 0, 0, 0
1433 .byt 0, 201, 202, 128
1434 .byt 129, 130, 131, 132
1435 .byt 0, 118, 100, 0
1436 ; Animatory state 42 (5-boy0.png)
1437 .byt 0, 0, 0, 0
1438 .byt 0, 207, 208, 0
1439 .byt 0, 209, 210, 0
1440 .byt 0, 13, 100, 0
1441 ; Animatory state 43 (5-boy1.png)
1442 .byt 0, 0, 0, 0
1443 .byt 0, 0, 217, 218
1444 .byt 0, 219, 220, 221
1445 .byt 0, 30, 31, 222
1446 ; Animatory state 44 (5-boy2.png)
1447 .byt 0, 0, 0, 0
1448 .byt 0, 207, 208, 0
1449 .byt 0, 209, 210, 0
1450 .byt 0, 13, 224, 0
1451 ; Animatory state 45 (5-boy3.png)
1452 .byt 0, 0, 0, 0
1453 .byt 0, 0, 217, 218
1454 .byt 0, 219, 220, 221
1455 .byt 0, 38, 39, 40
1456 ; Animatory state 46 (5-boy4.png)
1457 .byt 0, 0, 0, 0
1458 .byt 0, 230, 208, 0
1459 .byt 0, 231, 232, 0
1460 .byt 0, 0, 233, 234
1461 ; Animatory state 47 (5-boy5.png)
1462 .byt 0, 0, 0, 0
1463 .byt 0, 0, 0, 0
1464 .byt 0, 240, 241, 17
1465 .byt 0, 242, 243, 244
1466 ; Animatory state 48 (5-boy6.png)
1467 .byt 0, 0, 0, 0
1468 .byt 0, 0, 0, 0
1469 .byt 0, 0, 0, 0
1470 .byt 249, 250, 251, 252
1471
1472 ; Animatory state 49 (6-pellet.png)
1473 .byt 0, 0, 0, 0
1474 .byt 0, 0, 254, 0
1475 .byt 0, 0, 0, 0
1476 .byt 0, 0, 0, 0
1477
1478
1479
1480 ;Animatory states for teachers
1481
1482 Creak_anim_states
1483 ; Animatory state 0 (Creak0.png)
1484 .byt 0, 1, 2, 3
1485 .byt 0, 4, 5, 6
1486 .byt 0, 7, 8, 9
1487 .byt 0, 10, 11, 12
1488 ; Animatory state 1 (Creak1.png)
1489 .byt 25, 26, 27, 0
1490 .byt 28, 29, 30, 31
1491 .byt 32, 33, 34, 35
1492 .byt 36, 37, 38, 39
1493 ; Animatory state 2 (Creak2.png)
1494 .byt 0, 1, 2, 3
1495 .byt 0, 4, 5, 6
1496 .byt 0, 7, 8, 9
1497 .byt 0, 55, 56, 57
1498 ; Animatory state 3 (Creak3.png)
1499 .byt 25, 26, 27, 0
1500 .byt 28, 29, 30, 31
1501 .byt 32, 33, 34, 35
1502 .byt 36, 37, 38, 39
1503 ; Animatory state 4 (Creak4.png)
1504 .byt 61, 62, 2, 3
1505 .byt 32, 63, 5, 6
1506 .byt 0, 64, 8, 9
1507 .byt 0, 10, 11, 12
1508 ; Animatory state 5 (Creak5.png)
1509 .byt 0, 0, 0, 0
1510 .byt 69, 70, 71, 72
1511 .byt 73, 74, 75, 76
1512 .byt 77, 78, 79, 80
1513
1514 Rockitt_anim_states
1515 ; Animatory state 6 (Rockitt0.png)
1516 .byt 0, 93, 94, 0
1517 .byt 0, 95, 96, 97
1518 .byt 0, 98, 99, 100
1519 .byt 0, 101, 102, 35
1520 ; Animatory state 7 (Rockitt1.png)
1521 .byt 113, 114, 115, 0
1522 .byt 116, 117, 118, 0
1523 .byt 119, 120, 121, 0
1524 .byt 122, 123, 124, 125
1525 ; Animatory state 8 (Rockitt2.png)
1526 .byt 0, 93, 94, 0
1527 .byt 0, 95, 96, 97
1528 .byt 0, 98, 99, 100
1529 .byt 0, 139, 140, 141
1530 ; Animatory state 9 (Rockitt3.png)
1531 .byt 113, 114, 115, 0
1532 .byt 116, 117, 118, 0
1533 .byt 119, 120, 121, 0
1534 .byt 36, 145, 146, 0
1535 ; Animatory state 10 (Rockitt4.png)
1536 .byt 0, 93, 94, 0
1537 .byt 149, 150, 96, 97
1538 .byt 0, 151, 99, 100
1539 .byt 0, 139, 140, 141
1540 ; Animatory state 11 (Rockitt5.png)
1541 .byt 0, 0, 0, 0
1542 .byt 0, 155, 156, 157
1543 .byt 0, 158, 159, 160
1544 .byt 77, 78, 79, 80
1545
1546 Wacker_anim_states
1547 ; Animatory state 12 (Wacker0.png)
1548 .byt 0, 167, 168, 0
1549 .byt 0, 169, 170, 171
1550 .byt 172, 173, 174, 175
1551 .byt 0, 176, 177, 178
1552 ; Animatory state 13 (Wacker1.png)
1553 .byt 116, 191, 192, 0
1554 .byt 193, 194, 195, 0
1555 .byt 196, 197, 198, 199
1556 .byt 200, 201, 202, 0
1557 ; Animatory state 14 (Wacker2.png)
1558 .byt 0, 167, 168, 0
1559 .byt 0, 169, 170, 171
1560 .byt 172, 173, 174, 175
1561 .byt 0, 215, 216, 178
1562 ; Animatory state 15 (Wacker3.png)
1563 .byt 116, 191, 192, 0
1564 .byt 193, 194, 195, 0
1565 .byt 196, 197, 198, 199
1566 .byt 219, 220, 221, 0
1567 ; Animatory state 16 (Wacker4.png)
1568 .byt 225, 167, 168, 0
1569 .byt 226, 227, 170, 171
1570 .byt 172, 173, 174, 175
1571 .byt 0, 176, 177, 178
1572 ; Animatory state 17 (Wacker5.png)
1573 .byt 0, 0, 0, 0
1574 .byt 0, 231, 232, 233
1575 .byt 0, 234, 235, 236
1576 .byt 77, 78, 79, 80
1577
1578
1579 ; Animatory states for teachers (group1) inverted
1580
1581 t1_inverted_anim_states
1582 ; Animatory state 0 (Creak0.png)
1583 .byt 13, 14, 15, 0
1584 .byt 16, 17, 18, 0
1585 .byt 19, 20, 21, 0
1586 .byt 22, 23, 24, 0
1587 ; Animatory state 1 (Creak1.png)
1588 .byt 0, 40, 41, 42
1589 .byt 43, 44, 45, 46
1590 .byt 47, 48, 49, 50
1591 .byt 51, 52, 53, 54
1592 ; Animatory state 2 (Creak2.png)
1593 .byt 13, 14, 15, 0
1594 .byt 16, 17, 18, 0
1595 .byt 19, 20, 21, 0
1596 .byt 58, 59, 60, 0
1597 ; Animatory state 3 (Creak3.png)
1598 .byt 0, 40, 41, 42
1599 .byt 43, 44, 45, 46
1600 .byt 47, 48, 49, 50
1601 .byt 51, 52, 53, 54
1602 ; Animatory state 4 (Creak4.png)
1603 .byt 13, 14, 65, 66
1604 .byt 16, 17, 67, 50
1605 .byt 19, 20, 68, 0
1606 .byt 22, 23, 24, 0
1607 ; Animatory state 5 (Creak5.png)
1608 .byt 0, 0, 0, 0
1609 .byt 81, 82, 83, 84
1610 .byt 85, 86, 87, 88
1611 .byt 89, 90, 91, 92
1612 ; Animatory state 6 (Rockitt0.png)
1613 .byt 0, 103, 104, 0
1614 .byt 105, 106, 107, 0
1615 .byt 108, 109, 110, 0
1616 .byt 47, 111, 112, 0
1617 ; Animatory state 7 (Rockitt1.png)
1618 .byt 0, 126, 127, 128
1619 .byt 0, 129, 130, 131
1620 .byt 0, 132, 133, 134
1621 .byt 135, 136, 137, 138
1622 ; Animatory state 8 (Rockitt2.png)
1623 .byt 0, 103, 104, 0
1624 .byt 105, 106, 107, 0
1625 .byt 108, 109, 110, 0
1626 .byt 142, 143, 144, 0
1627 ; Animatory state 9 (Rockitt3.png)
1628 .byt 0, 126, 127, 128
1629 .byt 0, 129, 130, 131
1630 .byt 0, 132, 133, 134
1631 .byt 0, 147, 148, 54
1632 ; Animatory state 10 (Rockitt4.png)
1633 .byt 0, 103, 104, 0
1634 .byt 105, 106, 152, 153
1635 .byt 108, 109, 154, 0
1636 .byt 142, 143, 144, 0
1637 ; Animatory state 11 (Rockitt5.png)
1638 .byt 0, 0, 0, 0
1639 .byt 161, 162, 163, 0
1640 .byt 164, 165, 166, 0
1641 .byt 89, 90, 91, 92
1642 ; Animatory state 12 (Wacker0.png)
1643 .byt 0, 179, 180, 0
1644 .byt 181, 182, 183, 0
1645 .byt 184, 185, 186, 187
1646 .byt 188, 189, 190, 0
1647 ; Animatory state 13 (Wacker1.png)
1648 .byt 0, 203, 204, 131
1649 .byt 0, 205, 206, 207
1650 .byt 208, 209, 210, 211
1651 .byt 0, 212, 213, 214
1652 ; Animatory state 14 (Wacker2.png)
1653 .byt 0, 179, 180, 0
1654 .byt 181, 182, 183, 0
1655 .byt 184, 185, 186, 187
1656 .byt 188, 217, 218, 0
1657 ; Animatory state 15 (Wacker3.png)
1658 .byt 0, 203, 204, 131
1659 .byt 0, 205, 206, 207
1660 .byt 208, 209, 210, 211
1661 .byt 0, 222, 223, 224
1662 ; Animatory state 16 (Wacker4.png)
1663 .byt 0, 179, 180, 228
1664 .byt 181, 182, 229, 230
1665 .byt 184, 185, 186, 187
1666 .byt 188, 189, 190, 0
1667 ; Animatory state 17 (Wacker5.png)
1668 .byt 0, 0, 0, 0
1669 .byt 237, 238, 239, 0
1670 .byt 240, 241, 242, 0
1671 .byt 89, 90, 91, 92
1672
1673
1674 Withit_anim_states
1675 ; Animatory state 0 (Withit0.png)
1676 .byt 0, 1, 2, 3
1677 .byt 0, 4, 5, 6
1678 .byt 0, 7, 8, 9
1679 .byt 0, 10, 11, 12
1680 ; Animatory state 1 (Withit1.png)
1681 .byt 0, 25, 26, 0
1682 .byt 27, 28, 29, 30
1683 .byt 31, 32, 33, 34
1684 .byt 35, 36, 37, 38
1685 ; Animatory state 2 (Withit2.png)
1686 .byt 0, 1, 2, 3
1687 .byt 0, 4, 5, 6
1688 .byt 0, 7, 8, 9
1689 .byt 0, 53, 54, 12
1690 ; Animatory state 3 (Withit3.png)
1691 .byt 0, 25, 26, 0
1692 .byt 27, 28, 29, 30
1693 .byt 31, 32, 33, 34
1694 .byt 57, 58, 59, 0
1695 ; Animatory state 4 (Withit4.png)
1696 .byt 0, 1, 2, 3
1697 .byt 63, 64, 5, 6
1698 .byt 0, 65, 66, 9
1699 .byt 0, 10, 11, 12
1700 ; Animatory state 5 (Withit5.png)
1701 .byt 0, 0, 0, 0
1702 .byt 0, 71, 72, 73
1703 .byt 0, 74, 75, 76
1704 .byt 77, 78, 79, 80
1705
1706
1707 ; Animatory states for teachers (group 2) (invert)
1708 t2_inverted_anim_states
1709 ; Animatory state 0 (Withit0.png)
1710 .byt 13, 14, 15, 0
1711 .byt 16, 17, 18, 0
1712 .byt 19, 20, 21, 0
1713 .byt 22, 23, 24, 0
1714 ; Animatory state 1 (Withit1.png)
1715 .byt 0, 39, 40, 0
1716 .byt 41, 42, 43, 44
1717 .byt 45, 46, 47, 48
1718 .byt 49, 50, 51, 52
1719 ; Animatory state 2 (Withit2.png)
1720 .byt 13, 14, 15, 0
1721 .byt 16, 17, 18, 0
1722 .byt 19, 20, 21, 0
1723 .byt 22, 55, 56, 0
1724 ; Animatory state 3 (Withit3.png)
1725 .byt 0, 39, 40, 0
1726 .byt 41, 42, 43, 44
1727 .byt 45, 46, 47, 48
1728 .byt 0, 60, 61, 62
1729 ; Animatory state 4 (Withit4.png)
1730 .byt 13, 14, 15, 0
1731 .byt 16, 17, 67, 68
1732 .byt 19, 69, 70, 0
1733 .byt 22, 23, 24, 0
1734 ; Animatory state 5 (Withit5.png)
1735 .byt 0, 0, 0, 0
1736 .byt 81, 82, 83, 0
1737 .byt 84, 85, 86, 0
1738 .byt 87, 88, 89, 90
1739 end_anim_states
1740
1741 ;;;;;;;;;;;;;;;;;;;;;;;;;
1742 ; Tables
1743 ;;;;;;;;;;;;;;;;;;;;;;;;;
1744
1745 tab_div5
1746 .byt 0
1747 .byt 0
1748 .byt 0
1749 .byt 0
1750 .byt 0
1751 .byt 1
1752 .byt 1
1753 .byt 1
1754 .byt 1
1755 .byt 1
1756 .byt 2
1757 .byt 2
1758 .byt 2
1759 .byt 2
1760 .byt 2
1761 .byt 3
1762 .byt 3
1763 .byt 3
1764 .byt 3
1765 .byt 3
1766 .byt 4
1767 .byt 4
1768 .byt 4
1769 .byt 4
1770 .byt 4
1771 .byt 5
1772 .byt 5
1773 .byt 5
1774 .byt 5
1775 .byt 5
1776 .byt 6
1777 .byt 6
1778 .byt 6
1779 .byt 6
1780 .byt 6
1781 .byt 7
1782 .byt 7
1783 .byt 7
1784 .byt 7
1785 .byt 7
1786 .byt 8
1787 .byt 8
1788 .byt 8
1789 .byt 8
1790 .byt 8
1791 .byt 9
1792 .byt 9
1793 .byt 9
1794 .byt 9
1795 .byt 9
1796 .byt 10
1797 .byt 10
1798 .byt 10
1799 .byt 10
1800 .byt 10
1801 .byt 11
1802 .byt 11
1803 .byt 11
1804 .byt 11
1805 .byt 11
1806 .byt 12
1807 .byt 12
1808 .byt 12
1809 .byt 12
1810 .byt 12
1811 .byt 13
1812 .byt 13
1813 .byt 13
1814 .byt 13
1815 .byt 13
1816 .byt 14
1817 .byt 14
1818 .byt 14
1819 .byt 14
1820 .byt 14
1821 .byt 15
1822 .byt 15
1823 .byt 15
1824 .byt 15
1825 .byt 15
1826 .byt 16
1827 .byt 16
1828 .byt 16
1829 .byt 16
1830 .byt 16
1831 .byt 17
1832 .byt 17
1833 .byt 17
1834 .byt 17
1835 .byt 17
1836 .byt 18
1837 .byt 18
1838 .byt 18
1839 .byt 18
1840 .byt 18
1841 .byt 19
1842 .byt 19
1843 .byt 19
1844 .byt 19
1845 .byt 19
1846 .byt 20
1847 .byt 20
1848 .byt 20
1849 .byt 20
1850 .byt 20
1851
1852 tab_mod5
1853 .byt 0
1854 .byt 8
1855 .byt 16
1856 .byt 24
1857 .byt 32
1858 .byt 0
1859 .byt 8
1860 .byt 16
1861 .byt 24
1862 .byt 32
1863 .byt 0
1864 .byt 8
1865 .byt 16
1866 .byt 24
1867 .byt 32
1868 .byt 0
1869 .byt 8
1870 .byt 16
1871 .byt 24
1872 .byt 32
1873 .byt 0
1874 .byt 8
1875 .byt 16
1876 .byt 24
1877 .byt 32
1878 .byt 0
1879 .byt 8
1880 .byt 16
1881 .byt 24
1882 .byt 32
1883 .byt 0
1884 .byt 8
1885 .byt 16
1886 .byt 24
1887 .byt 32
1888 .byt 0
1889 .byt 8
1890 .byt 16
1891 .byt 24
1892 .byt 32
1893 .byt 0
1894 .byt 8
1895 .byt 16
1896 .byt 24
1897 .byt 32
1898 .byt 0
1899 .byt 8
1900 .byt 16
1901 .byt 24
1902 .byt 32
1903 .byt 0
1904 .byt 8
1905 .byt 16
1906 .byt 24
1907 .byt 32
1908 .byt 0
1909 .byt 8
1910 .byt 16
1911 .byt 24
1912 .byt 32
1913 .byt 0
1914 .byt 8
1915 .byt 16
1916 .byt 24
1917 .byt 32
1918 .byt 0
1919 .byt 8
1920 .byt 16
1921 .byt 24
1922 .byt 32
1923 .byt 0
1924 .byt 8
1925 .byt 16
1926 .byt 24
1927 .byt 32
1928 .byt 0
1929 .byt 8
1930 .byt 16
1931 .byt 24
1932 .byt 32
1933 .byt 0
1934 .byt 8
1935 .byt 16
1936 .byt 24
1937 .byt 32
1938 .byt 0
1939 .byt 8
1940 .byt 16
1941 .byt 24
1942 .byt 32
1943 .byt 0
1944 .byt 8
1945 .byt 16
1946 .byt 24
1947 .byt 32
1948 .byt 0
1949 .byt 8
1950 .byt 16
1951 .byt 24
1952 .byt 32
1953 .byt 0
1954 .byt 8
1955 .byt 16
1956 .byt 24
1957 .byt 32
1958
1959
1960 ;.dsb 256-(*&255)
1961 .bss
1962 *=$400
1963 _HiresAddrLow .dsb 240
1964
1965 .text
1966 ;;;;;; Main timetable (see script.h)
1967 main_timetable
1968 .byt PLAYTIME1, WACKER_EXAMROOM, WITHIT_MAPROOM
1969 .byt PLAYTIME2, ROCKITT_WHITEROOM, CREAK_READINGROOM
1970 .byt PLAYTIME3, DINNER_WITHIT, PLAYTIME7S, PLAYTIME9
1971 .byt WITHIT_WHITEROOM, REV_LIBRARY1, PLAYTIME4, ROCKITT_WHITEROOM
1972 .byt PLAYTIME5, WACKER_WHITEROOM, PLAYTIME6, WACKER_READINGROOM
1973 .byt CREAK_WHITEROOM, PLAYTIME3, PLAYTIME10, ROCKITT_READINGROOM
1974 .byt WACKER_MAPROOM, PLAYTIME5, DINNER_WACKER, PLAYTIME8S
1975 .byt CREAK_READINGROOM, ROCKITT_EXAMROOM, REV_LIBRARY2, PLAYTIME1
1976 .byt WITHIT_WHITEROOM, ROCKITT_READINGROOM, PLAYTIME4, WITHIT_WHITEROOM
1977 .byt ROCKITT_EXAMROOM, PLAYTIME4, WITHIT_MAPROOM, REV_LIBRARY3
1978 .byt CREAK_WHITEROOM, PLAYTIME6, CREAK_READINGROOM, ROCKITT_WHITEROOM
1979 .byt PLAYTIME2, DINNER_WITHIT, PLAYTIME1, PLAYTIME10, ROCKITT_WHITEROOM
1980 .byt WACKER_EXAMROOM, PLAYTIME5, REV_LIBRARY1, WITHIT_MAPROOM
1981 .byt PLAYTIME3, WITHIT_MAPROOM, WACKER_READINGROOM, PLAYTIME5, PLAYTIME9
1982 .byt ROCKITT_WHITEROOM, CREAK_READINGROOM2, PLAYTIME2, DINNER_WACKER
1983 .byt PLAYTIME7S,PLAYTIME9, WACKER_EXAMROOM, REV_LIBRARY2
1984 .byt PLAYTIME4, WITHIT_WHITEROOM, WACKER_MAPROOM
1985
1986
1987 ;.dsb 256-(*&255)
1988 _HiresAddrHigh .dsb 200
1989
1990
1991 ;.dsb 256-(*&255)
1992 #ifdef FULLTABLEMUL8
1993 tab_mul8hi
1994 .byt 0
1995 .byt 0
1996 .byt 0
1997 .byt 0
1998 .byt 0
1999 .byt 0
2000 .byt 0
2001 .byt 0
2002 .byt 0
2003 .byt 0
2004 .byt 0
2005 .byt 0
2006 .byt 0
2007 .byt 0
2008 .byt 0
2009 .byt 0
2010 .byt 0
2011 .byt 0
2012 .byt 0
2013 .byt 0
2014 .byt 0
2015 .byt 0
2016 .byt 0
2017 .byt 0
2018 .byt 0
2019 .byt 0
2020 .byt 0
2021 .byt 0
2022 .byt 0
2023 .byt 0
2024 .byt 0
2025 .byt 0
2026 .byt 1
2027 .byt 1
2028 .byt 1
2029 .byt 1
2030 .byt 1
2031 .byt 1
2032 .byt 1
2033 .byt 1
2034 .byt 1
2035 .byt 1
2036 .byt 1
2037 .byt 1
2038 .byt 1
2039 .byt 1
2040 .byt 1
2041 .byt 1
2042 .byt 1
2043 .byt 1
2044 .byt 1
2045 .byt 1
2046 .byt 1
2047 .byt 1
2048 .byt 1
2049 .byt 1
2050 .byt 1
2051 .byt 1
2052 .byt 1
2053 .byt 1
2054 .byt 1
2055 .byt 1
2056 .byt 1
2057 .byt 1
2058 .byt 2
2059 .byt 2
2060 .byt 2
2061 .byt 2
2062 .byt 2
2063 .byt 2
2064 .byt 2
2065 .byt 2
2066 .byt 2
2067 .byt 2
2068 .byt 2
2069 .byt 2
2070 .byt 2
2071 .byt 2
2072 .byt 2
2073 .byt 2
2074 .byt 2
2075 .byt 2
2076 .byt 2
2077 .byt 2
2078 .byt 2
2079 .byt 2
2080 .byt 2
2081 .byt 2
2082 .byt 2
2083 .byt 2
2084 .byt 2
2085 .byt 2
2086 .byt 2
2087 .byt 2
2088 .byt 2
2089 .byt 2
2090 .byt 3
2091 .byt 3
2092 .byt 3
2093 .byt 3
2094 .byt 3
2095 .byt 3
2096 .byt 3
2097 .byt 3
2098 .byt 3
2099 .byt 3
2100 .byt 3
2101 .byt 3
2102 .byt 3
2103 .byt 3
2104 .byt 3
2105 .byt 3
2106 .byt 3
2107 .byt 3
2108 .byt 3
2109 .byt 3
2110 .byt 3
2111 .byt 3
2112 .byt 3
2113 .byt 3
2114 .byt 3
2115 .byt 3
2116 .byt 3
2117 .byt 3
2118 .byt 3
2119 .byt 3
2120 .byt 3
2121 .byt 3
2122 .byt 4
2123 .byt 4
2124 .byt 4
2125 .byt 4
2126 .byt 4
2127 .byt 4
2128 .byt 4
2129 .byt 4
2130 .byt 4
2131 .byt 4
2132 .byt 4
2133 .byt 4
2134 .byt 4
2135 .byt 4
2136 .byt 4
2137 .byt 4
2138 .byt 4
2139 .byt 4
2140 .byt 4
2141 .byt 4
2142 .byt 4
2143 .byt 4
2144 .byt 4
2145 .byt 4
2146 .byt 4
2147 .byt 4
2148 .byt 4
2149 .byt 4
2150 .byt 4
2151 .byt 4
2152 .byt 4
2153 .byt 4
2154 .byt 5
2155 .byt 5
2156 .byt 5
2157 .byt 5
2158 .byt 5
2159 .byt 5
2160 .byt 5
2161 .byt 5
2162 .byt 5
2163 .byt 5
2164 .byt 5
2165 .byt 5
2166 .byt 5
2167 .byt 5
2168 .byt 5
2169 .byt 5
2170 .byt 5
2171 .byt 5
2172 .byt 5
2173 .byt 5
2174 .byt 5
2175 .byt 5
2176 .byt 5
2177 .byt 5
2178 .byt 5
2179 .byt 5
2180 .byt 5
2181 .byt 5
2182 .byt 5
2183 .byt 5
2184 .byt 5
2185 .byt 5
2186 .byt 6
2187 .byt 6
2188 .byt 6
2189 .byt 6
2190 .byt 6
2191 .byt 6
2192 .byt 6
2193 .byt 6
2194 .byt 6
2195 .byt 6
2196 .byt 6
2197 .byt 6
2198 .byt 6
2199 .byt 6
2200 .byt 6
2201 .byt 6
2202 .byt 6
2203 .byt 6
2204 .byt 6
2205 .byt 6
2206 .byt 6
2207 .byt 6
2208 .byt 6
2209 .byt 6
2210 .byt 6
2211 .byt 6
2212 .byt 6
2213 .byt 6
2214 .byt 6
2215 .byt 6
2216 .byt 6
2217 .byt 6
2218 .byt 7
2219 .byt 7
2220 .byt 7
2221 .byt 7
2222 .byt 7
2223 .byt 7
2224 .byt 7
2225 .byt 7
2226 .byt 7
2227 .byt 7
2228 .byt 7
2229 .byt 7
2230 .byt 7
2231 .byt 7
2232 .byt 7
2233 .byt 7
2234 .byt 7
2235 .byt 7
2236 .byt 7
2237 .byt 7
2238 .byt 7
2239 .byt 7
2240 .byt 7
2241 .byt 7
2242 .byt 7
2243 .byt 7
2244 .byt 7
2245 .byt 7
2246 .byt 7
2247 .byt 7
2248 .byt 7
2249 .byt 7
2250 #endif
2251 tab_mul8
2252 .byt 0
2253 .byt 8
2254 .byt 16
2255 .byt 24
2256 .byt 32
2257 .byt 40
2258 .byt 48
2259 .byt 56
2260 .byt 64
2261 .byt 72
2262 .byt 80
2263 .byt 88
2264 .byt 96
2265 .byt 104
2266 .byt 112
2267 .byt 120
2268 .byt 128
2269 .byt 136
2270 .byt 144
2271 .byt 152
2272 .byt 160
2273 .byt 168
2274 .byt 176
2275 .byt 184
2276 .byt 192
2277 .byt 200
2278 .byt 208
2279 .byt 216
2280 .byt 224
2281 .byt 232
2282 .byt 240
2283 .byt 248
2284 #ifdef FULLTABLEMUL8
2285 .byt 0
2286 .byt 8
2287 .byt 16
2288 .byt 24
2289 .byt 32
2290 .byt 40
2291 .byt 48
2292 .byt 56
2293 .byt 64
2294 .byt 72
2295 .byt 80
2296 .byt 88
2297 .byt 96
2298 .byt 104
2299 .byt 112
2300 .byt 120
2301 .byt 128
2302 .byt 136
2303 .byt 144
2304 .byt 152
2305 .byt 160
2306 .byt 168
2307 .byt 176
2308 .byt 184
2309 .byt 192
2310 .byt 200
2311 .byt 208
2312 .byt 216
2313 .byt 224
2314 .byt 232
2315 .byt 240
2316 .byt 248
2317 .byt 0
2318 .byt 8
2319 .byt 16
2320 .byt 24
2321 .byt 32
2322 .byt 40
2323 .byt 48
2324 .byt 56
2325 .byt 64
2326 .byt 72
2327 .byt 80
2328 .byt 88
2329 .byt 96
2330 .byt 104
2331 .byt 112
2332 .byt 120
2333 .byt 128
2334 .byt 136
2335 .byt 144
2336 .byt 152
2337 .byt 160
2338 .byt 168
2339 .byt 176
2340 .byt 184
2341 .byt 192
2342 .byt 200
2343 .byt 208
2344 .byt 216
2345 .byt 224
2346 .byt 232
2347 .byt 240
2348 .byt 248
2349 .byt 0
2350 .byt 8
2351 .byt 16
2352 .byt 24
2353 .byt 32
2354 .byt 40
2355 .byt 48
2356 .byt 56
2357 .byt 64
2358 .byt 72
2359 .byt 80
2360 .byt 88
2361 .byt 96
2362 .byt 104
2363 .byt 112
2364 .byt 120
2365 .byt 128
2366 .byt 136
2367 .byt 144
2368 .byt 152
2369 .byt 160
2370 .byt 168
2371 .byt 176
2372 .byt 184
2373 .byt 192
2374 .byt 200
2375 .byt 208
2376 .byt 216
2377 .byt 224
2378 .byt 232
2379 .byt 240
2380 .byt 248
2381 .byt 0
2382 .byt 8
2383 .byt 16
2384 .byt 24
2385 .byt 32
2386 .byt 40
2387 .byt 48
2388 .byt 56
2389 .byt 64
2390 .byt 72
2391 .byt 80
2392 .byt 88
2393 .byt 96
2394 .byt 104
2395 .byt 112
2396 .byt 120
2397 .byt 128
2398 .byt 136
2399 .byt 144
2400 .byt 152
2401 .byt 160
2402 .byt 168
2403 .byt 176
2404 .byt 184
2405 .byt 192
2406 .byt 200
2407 .byt 208
2408 .byt 216
2409 .byt 224
2410 .byt 232
2411 .byt 240
2412 .byt 248
2413 .byt 0
2414 .byt 8
2415 .byt 16
2416 .byt 24
2417 .byt 32
2418 .byt 40
2419 .byt 48
2420 .byt 56
2421 .byt 64
2422 .byt 72
2423 .byt 80
2424 .byt 88
2425 .byt 96
2426 .byt 104
2427 .byt 112
2428 .byt 120
2429 .byt 128
2430 .byt 136
2431 .byt 144
2432 .byt 152
2433 .byt 160
2434 .byt 168
2435 .byt 176
2436 .byt 184
2437 .byt 192
2438 .byt 200
2439 .byt 208
2440 .byt 216
2441 .byt 224
2442 .byt 232
2443 .byt 240
2444 .byt 248
2445 .byt 0
2446 .byt 8
2447 .byt 16
2448 .byt 24
2449 .byt 32
2450 .byt 40
2451 .byt 48
2452 .byt 56
2453 .byt 64
2454 .byt 72
2455 .byt 80
2456 .byt 88
2457 .byt 96
2458 .byt 104
2459 .byt 112
2460 .byt 120
2461 .byt 128
2462 .byt 136
2463 .byt 144
2464 .byt 152
2465 .byt 160
2466 .byt 168
2467 .byt 176
2468 .byt 184
2469 .byt 192
2470 .byt 200
2471 .byt 208
2472 .byt 216
2473 .byt 224
2474 .byt 232
2475 .byt 240
2476 .byt 248
2477 .byt 0
2478 .byt 8
2479 .byt 16
2480 .byt 24
2481 .byt 32
2482 .byt 40
2483 .byt 48
2484 .byt 56
2485 .byt 64
2486 .byt 72
2487 .byt 80
2488 .byt 88
2489 .byt 96
2490 .byt 104
2491 .byt 112
2492 .byt 120
2493 .byt 128
2494 .byt 136
2495 .byt 144
2496 .byt 152
2497 .byt 160
2498 .byt 168
2499 .byt 176
2500 .byt 184
2501 .byt 192
2502 .byt 200
2503 .byt 208
2504 .byt 216
2505 .byt 224
2506 .byt 232
2507 .byt 240
2508 .byt 248
2509 #endif
2510
2511
2512 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2513 ;; COMMAND LISTS... WILL END UP SOMEWHERE ELSE?
2514 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2515 command_list128 ; Map Room - teacher
2516 .byt SC_GOTO, D_FIRE_ESCAPE ; Go to the fire escape
2517 .byt SC_GOTO, D_MAP_DOORWAY ; Go to the entrance of the room
2518 .byt SC_RESTIFNOLESSON ; Restart until it is time to start the lesson
2519 .byt SC_FLAGEVENT, E_TEACHER_MAP ; Signal that the teacher has arrived
2520 .byt SC_MSGSITDOWN ; Tell the kids to sit down
2521 .byt SC_GOTO, D_MAP_MAP ; Go to the teacher position
2522 .byt SC_GOTO, D_POS_MAP ; Go to the teacher position
2523 .byt SC_DOCLASS ; Wipe the board & conduct the class
2524
2525
2526 command_list130 ; Reading Room - teacher
2527 .byt SC_GOTO, D_LIBRARY_INT ; Go to the library
2528 .byt SC_GOTO, D_READING_DOORWAY ; Go to the entrance of the room
2529 .byt SC_RESTIFNOLESSON ; Restart until it is time to start the lesson
2530 .byt SC_FLAGEVENT, E_TEACHER_READING ; Signal that the teacher has arrived
2531 .byt SC_MSGSITDOWN ; Tell the kids to sit down
2532 .byt SC_GOTO, D_POS_READING1 ; Go to the teacher position
2533 .byt SC_GOTO, D_POS_READING2 ; Go to the teacher position
2534 .byt SC_DOCLASS ; Wipe the board & conduct the class
2535
2536 command_list132 ; Exam Room - teacher
2537 .byt SC_GOTO, D_FIRE_ESCAPE ; Go to the fire escape
2538 .byt SC_GOTO, D_EXAM_DOORWAY ; Go to the entrance of the room
2539 .byt SC_RESTIFNOLESSON ; Restart until it is time to start the lesson
2540 .byt SC_FLAGEVENT, E_TEACHER_EXAM ; Signal that the teacher has arrived
2541 .byt SC_MSGSITDOWN ; Tell the kids to sit down
2542 .byt SC_GOTO, D_POS_EXAM ; Go to the teacher position
2543 .byt SC_DOCLASS ; Wipe the board & conduct the class
2544
2545
2546 command_list134 ; White Room - teacher
2547 .byt SC_GOTO, D_STAFF_ROOM ; Go to the staff room
2548 .byt SC_GOTO, D_WHITE_DOORWAY ; Go to the entrance of the room
2549 .byt SC_RESTIFNOLESSON ; Restart until it is time to start the lesson
2550 .byt SC_FLAGEVENT, E_TEACHER_WHITE ; Signal that the teacher has arrived
2551 .byt SC_MSGSITDOWN ; Tell the kids to sit down
2552 .byt SC_GOTO, D_ABOARD_WHITE ; Go to the spot right after the board
2553 .byt SC_GOTO, D_ABOARD1_WHITE ; Go to the spot just before
2554 .byt SC_DOCLASS ; Wipe the board & conduct the class
2555
2556 command_list136 ; Map Room - Little boy
2557 .byt SC_GOTO, D_MAP_ROOM ; Go to the map room
2558 .byt SC_MOVEUNTIL, E_TEACHER_MAP ; Wait until teacher arrives
2559 .byt SC_FINDSEAT ; Find a seat and sit down
2560 ; This continues in 136
2561
2562 command_list138 ; Do nothing
2563 .byt SC_END ; Sit still
2564
2565 command_list140 ; Map Room - BOY WANDER
2566 .byt SC_SETCONTSUB, CS_FIRECATAPULT ; Put a command making Boy Wander fire the catapult now and then
2567 .byt SC_GOTO, D_MAP_ROOM ; Go to the map room
2568 .byt SC_SETCONTSUB, CS_FIRECATAPULT ; Put a command making Boy Wander fire the catapult now and then
2569 .byt SC_MOVEUNTIL, E_TEACHER_MAP ; Move about until the teacher arrives
2570 .byt SC_FINDSEAT ; Find a seat and sit down
2571 .byt SC_END ; Sit still
2572
2573 command_list142 ; Map Room - Angelface
2574 .byt SC_SETCONTSUB, CS_HITNOWTHEN ; Put a command making Angelface hit now & then
2575 .byt SC_GOTO, D_MAP_ROOM ; Go to the reading room
2576 .byt SC_SETCONTSUB, CS_HITNOWTHEN ; Put a command making Angelface hit now & then
2577 .byt SC_MOVEUNTIL, E_TEACHER_MAP ; Move about until the the teacher arrives
2578 .byt SC_FINDSEAT ; Find a seat and sit down
2579 .byt SC_END ; Sit still
2580
2581 command_list144 ; Map room - EINSTEIN
2582 .byt SC_GOTO, D_MAP_ROOM ; Go to the end of the blackboard in the map room
2583 .byt SC_MOVEUNTIL, E_TEACHER_MAP ; Wait until teacher arrives
2584 .byt SC_FINDSEAT ; Find a seat and sit down
2585 .byt SC_CTRLEINSTEINCL1 ; Grass & answer questions
2586
2587 command_list146 ; Reading Room - Little boy
2588 .byt SC_GOTO, D_READING_ROOM ; Go to the reading room
2589 .byt SC_MOVEUNTIL, E_TEACHER_READING ; Wait until teacher arrives
2590 .byt SC_FINDSEAT ; Find a seat and sit down
2591 .byt SC_END ; Sit still
2592
2593 command_list148 ; Reading Room - BOY WANDER
2594 .byt SC_SETCONTSUB, CS_FIRECATAPULT ; Put a command making Boy Wander fire the catapult now and then
2595 .byt SC_GOTO, D_READING_BOARD ; Go to the blackboard of the reading room
2596 .byt SC_WRITEBLCKBOARDC, E_TEACHER_READING ; Write there until the teacher arrives
2597 .byt SC_GOTO, D_READING_ROOM ; Go to the reading room
2598 .byt SC_SETCONTSUB, CS_FIRECATAPULT ; Put a command making Boy Wander fire the catapult now and then
2599 .byt SC_MOVEUNTIL, E_TEACHER_READING ; Move about until the teacher arrives
2600 .byt SC_FINDSEAT ; Find a seat and sit down
2601 .byt SC_END ; Sit still
2602
2603 command_list150 ; Reading Room - Angelface
2604 .byt SC_SETCONTSUB, CS_HITNOWTHEN ; Put a command making Angelface hit now & then
2605 .byt SC_GOTO, D_READING_ROOM ; Go to the reading room
2606 .byt SC_SETCONTSUB, CS_HITNOWTHEN ; Put a command making Angelface hit now & then
2607 .byt SC_MOVEUNTIL, E_TEACHER_READING ; Move about until the the teacher arrives
2608 .byt SC_FINDSEAT ; Find a seat and sit down
2609 .byt SC_END ; Sit still
2610
2611
2612 command_list152 ; Reading room - EINSTEIN
2613 .byt SC_GOTO, D_READING_ROOM ; Go to the reading room
2614 .byt SC_MOVEUNTIL, E_TEACHER_READING ; Wait until teacher arrives
2615 .byt SC_FINDSEAT ; Find a seat and sit down
2616 .byt SC_CTRLEINSTEINCL1 ; Grass & answer questions
2617
2618
2619 command_list154 ; Exam Room - Little boy
2620 .byt SC_GOTO, D_EXAM_ROOM ; Go to the exam room
2621 .byt SC_MOVEUNTIL, E_TEACHER_EXAM ; Wait until teacher arrives
2622 .byt SC_FINDSEAT ; Find a seat and sit down
2623 .byt SC_END ; Sit still
2624
2625 command_list156 ; Exam Room - BOY WANDER
2626 .byt SC_SETCONTSUB, CS_FIRECATAPULT ; Put a command making Boy Wander fire the catapult now and then
2627 .byt SC_GOTO, D_EXAM_BOARD ; Go to the blackboard of the exam room
2628 .byt SC_WRITEBLCKBOARDC, E_TEACHER_EXAM ; Write there until the teacher arrives
2629 .byt SC_GOTO, D_EXAM_ROOM ; Go to the exam room
2630 .byt SC_SETCONTSUB, CS_FIRECATAPULT ; Put a command making Boy Wander fire the catapult now and then
2631 .byt SC_MOVEUNTIL, E_TEACHER_EXAM ; Move about until the teacher arrives
2632 .byt SC_FINDSEAT ; Find a seat and sit down
2633 .byt SC_END ; Sit still
2634
2635 command_list158 ; Exam Room - Angelface
2636 .byt SC_SETCONTSUB, CS_HITNOWTHEN ; Put a command making Angelface hit now & then
2637 .byt SC_GOTO, D_EXAM_ROOM ; Go to the exam room
2638 .byt SC_SETCONTSUB, CS_HITNOWTHEN ; Put a command making Angelface hit now & then
2639 .byt SC_MOVEUNTIL, E_TEACHER_EXAM ; Move about until the the teacher arrives
2640 .byt SC_FINDSEAT ; Find a seat and sit down
2641 .byt SC_END ; Sit still
2642
2643
2644 command_list160 ; Exam room - EINSTEIN
2645 .byt SC_GOTO, D_EXAM_ROOM ; Go to the end of the blackboard in the exam room
2646 .byt SC_MOVEUNTIL, E_TEACHER_EXAM ; Wait until teacher arrives
2647 .byt SC_FINDSEAT ; Find a seat and sit down
2648 .byt SC_CTRLEINSTEINCL1 ; Grass & answer questions
2649
2650