69
|
1 *
|
|
2 * GAME09 interpreter
|
|
3 *
|
|
4
|
70
|
5 ifp1
|
|
6 use defsfile
|
|
7 endc
|
69
|
8
|
70
|
9 nam Game09
|
|
10 ttl Game09
|
|
11 tylg set Prgrm+Objct
|
|
12 atrv set ReEnt+rev
|
|
13 rev set $01
|
71
|
14 edition set 1
|
69
|
15
|
70
|
16 mod eom,name,tylg,atrv,start,size
|
69
|
17
|
70
|
18
|
|
19 org 0
|
|
20 dpage rmb $96
|
69
|
21
|
70
|
22 DP00 equ $00
|
|
23 DP42 equ $42
|
|
24 DP46 equ $46
|
|
25 DP4A equ $4A
|
|
26 DP4B equ $4B
|
|
27 DP4E equ $4E
|
|
28 DP4F equ $4F
|
|
29 DP50 equ $50
|
|
30 DP52 equ $52
|
|
31 DP58 equ $58
|
|
32 DP7E equ $7E
|
|
33 DP82 equ $82
|
|
34 DP83 equ $83
|
|
35 DP84 equ $84
|
|
36 DP86 equ $86
|
|
37 DP88 equ $88
|
|
38 DP8A equ $8A
|
|
39 DP8C equ $8C
|
|
40 DP8D equ $8D
|
|
41 DP8E equ $8E
|
|
42 DP94 equ $94
|
|
43 DPWORK rmb 2
|
|
44 DPSTK rmb 2
|
69
|
45
|
70
|
46 linebuf rmb 256
|
71
|
47 program rmb 10000
|
70
|
48 size equ .
|
69
|
49
|
71
|
50 name fcs "Game09"
|
|
51 fcb edition
|
|
52 start * clrb
|
|
53 * os9 F$Exit
|
70
|
54 LC000 BRA LC005
|
|
55 LC002 NOP
|
|
56 LC003 BRA LC014
|
|
57 LC005 TFR U,D
|
69
|
58 TFR A,DP
|
70
|
59 STU <DPWORK
|
|
60 STS <DPSTK
|
|
61 LEAX program,U
|
69
|
62 STX <$7E
|
|
63 STX <$50
|
|
64 LDA #$FF
|
|
65 STA ,X
|
71
|
66 LC014 LDU <DPWORK
|
70
|
67 LEAX size,U
|
69
|
68 STX <$58
|
70
|
69 LC020 LDA #$FF
|
69
|
70 STA <$8C
|
70
|
71 LC024 LDS <DPSTK
|
|
72 LDU <DPWORK
|
|
73 LEAU linebuf,U
|
69
|
74 LEAX >LC63F,PCR
|
|
75 LBSR LC165
|
70
|
76 LC032 LBSR LC370
|
69
|
77 BCS LC06D
|
|
78 STX <$42
|
|
79 LBSR LC1D3
|
|
80 BEQ LC024
|
70
|
81 LC03E BSR LC09C
|
|
82 LC040 BMI LC024
|
69
|
83 STX <$42
|
70
|
84 LC044 LEAX +$02,X
|
69
|
85 LDA ,X+
|
|
86 CMPA #$20
|
|
87 BNE LC05B
|
|
88 LBSR LC1D3
|
|
89 BNE LC05F
|
|
90 LEAX +$01,X
|
|
91 TST ,X
|
|
92 BRA LC040
|
70
|
93 LC057 LDS <DPSTK
|
|
94 LC05B BSR LC0A8
|
69
|
95 BRA LC040
|
70
|
96 LC05F LDX <$42
|
69
|
97 STX <$84
|
|
98 BSR LC0A0
|
|
99 BMI LC024
|
|
100 CMPX <$84
|
|
101 BEQ LC03E
|
|
102 BRA LC044
|
70
|
103 LC06D STX <$86
|
69
|
104 STD <$4A
|
|
105 LDB ,X
|
|
106 CMPB #$2F
|
|
107 BNE LC0B1
|
70
|
108 LC077 BSR LC09C
|
|
109 LC079 LBSR LC397
|
69
|
110 TST ,X
|
|
111 BMI LC024
|
|
112 BSR LC087
|
|
113 LBSR LC173
|
|
114 BRA LC079
|
70
|
115 LC087 LDD ,X++
|
69
|
116 PSHS X
|
|
117 LBSR LC443
|
|
118 PULS X
|
|
119 LBRA LC165
|
70
|
120 LC093 LDX <$42
|
69
|
121 LEAX +$02,X
|
70
|
122 LC097 TST ,X+
|
69
|
123 BNE LC097
|
|
124 RTS
|
70
|
125 LC09C LDX <$7E
|
|
126 LC09E STX <$42
|
|
127 LC0A0 LDD ,X
|
69
|
128 BMI LC0B0
|
|
129 SUBD <$4A
|
|
130 BCC LC0AF
|
70
|
131 LC0A8 LBSR LC173
|
69
|
132 BSR LC093
|
|
133 BRA LC09E
|
70
|
134 LC0AF CLRA
|
|
135 LC0B0 RTS
|
|
136 LC0B1 LDX <$4A
|
69
|
137 BEQ LC077
|
|
138 BMI LC117
|
|
139 LDX <$50
|
|
140 LDA ,X
|
|
141 INCA
|
|
142 BNE LC117
|
|
143 BSR LC09C
|
|
144 BMI LC0DE
|
|
145 LDX ,X
|
|
146 CMPX <$4A
|
|
147 BNE LC0DE
|
|
148 BSR LC093
|
|
149 LDY <$42
|
70
|
150 LC0CD LDA ,X
|
69
|
151 STA ,Y
|
|
152 CMPX <$50
|
|
153 BEQ LC0DB
|
|
154 LEAX +$01,X
|
|
155 LEAY +$01,Y
|
|
156 BRA LC0CD
|
70
|
157 LC0DB STY <$50
|
|
158 LC0DE LDX <$86
|
69
|
159 LDB #$03
|
|
160 TST ,X+
|
|
161 BEQ LC114
|
70
|
162 LC0E6 INCB
|
69
|
163 TST ,X+
|
|
164 BNE LC0E6
|
|
165 CLRA
|
|
166 ADDD <$50
|
|
167 TFR D,Y
|
|
168 SUBD <$58
|
|
169 BCC LC117
|
|
170 LDX <$50
|
|
171 STY <$50
|
|
172 LEAX +$01,X
|
|
173 LEAY +$01,Y
|
70
|
174 LC0FD LDB ,-X
|
69
|
175 STB ,-Y
|
|
176 CMPX <$42
|
|
177 BNE LC0FD
|
|
178 LDY <$4A
|
|
179 STY ,X++
|
|
180 LDY <$86
|
70
|
181 LC10E LDB ,Y+
|
69
|
182 STB ,X+
|
|
183 BNE LC10E
|
70
|
184 LC114 LBRA LC032
|
|
185 LC117 LBRA LC024
|
71
|
186 LC11A LDX <DPWORK
|
|
187 LEAX $8F,X
|
69
|
188 TST <$8C
|
|
189 BNE LC124
|
71
|
190 LEAX $95,X
|
70
|
191 LC124 LEAY <LC159,PCR
|
|
192 LC127 PSHS X
|
69
|
193 LDX ,Y++
|
|
194 PSHU X
|
|
195 LBSR LC335
|
|
196 PULU X
|
|
197 PULS X
|
|
198 PSHS A
|
|
199 LDA <$83
|
|
200 ADDA #$30
|
|
201 STA ,X+
|
|
202 PULS A
|
|
203 TST +$01,Y
|
|
204 BNE LC127
|
|
205 CLR ,X
|
|
206 COM ,-X
|
|
207 PSHS X
|
|
208 LEAX -$05,X
|
|
209 CLRA
|
70
|
210 LC14B LEAX +$01,X
|
69
|
211 INCA
|
|
212 LDB ,X
|
|
213 CMPB #$30
|
|
214 BEQ LC14B
|
|
215 COM [,S++]
|
|
216 SUBA #$06
|
70
|
217 LC158 RTS
|
|
218 LC159 FDB 10000
|
69
|
219 FDB 1000
|
|
220 FDB 100
|
|
221 FDB 10
|
|
222 FDB 1
|
|
223 FDB 0
|
70
|
224 LC165 CLRA
|
|
225 LC166 STA <$94
|
|
226 LC168 LDB ,X+
|
69
|
227 CMPB <$94
|
|
228 BEQ LC158
|
|
229 LBSR LC412
|
|
230 BRA LC168
|
70
|
231 LC173 LBSR LC650
|
69
|
232 LBCS LC024
|
|
233 RTS
|
70
|
234 LC17B CMPA #$20
|
69
|
235 BEQ LC1D1
|
|
236 CLR <$4A
|
|
237 CLR <$4B
|
|
238 LDB +$01,X
|
|
239 BITB #$DF
|
|
240 BNE LC1A6
|
|
241 CMPA #$5D
|
|
242 BNE LC195
|
|
243 PULU X,B,A
|
|
244 STD <$46
|
|
245 STX <$42
|
|
246 BRA LC1C6
|
70
|
247 LC195 CMPA #$40
|
69
|
248 BNE LC1A6
|
|
249 LEAX +$01,X
|
|
250 STX <$46
|
|
251 CLRA
|
|
252 CLRB
|
|
253 LDY <$42
|
|
254 PSHU Y,X,B,A
|
|
255 BRA LC1D3
|
70
|
256 LC1A6 CMPA #$22
|
69
|
257 BNE LC1CA
|
|
258 LEAX +$01,X
|
|
259 BSR LC166
|
|
260 BRA LC1D3
|
70
|
261 LC1B0 CMPA #$5C
|
69
|
262 BNE LC1B9
|
|
263 LBSR LC676
|
|
264 BRA LC1D3
|
70
|
265 LC1B9 STX <$84
|
69
|
266 BSR LC1EC
|
|
267 LBSR LC39F
|
|
268 BSR LC173
|
|
269 LDX <$4A
|
|
270 BNE LC1D7
|
70
|
271 LC1C6 LDX <$46
|
69
|
272 BRA LC1D3
|
70
|
273 LC1CA CMPA #$2F
|
69
|
274 BNE LC1B0
|
|
275 LBSR LC397
|
70
|
276 LC1D1 LEAX +$01,X
|
|
277 LC1D3 LDA ,X
|
69
|
278 BNE LC17B
|
70
|
279 LC1D7 RTS
|
|
280 LC1D8 PSHS A
|
69
|
281 LEAX +$01,X
|
|
282 BSR LC1F6
|
|
283 LDX <$46
|
70
|
284 LC1E0 LDY <$42
|
69
|
285 PSHU Y,X,B,A
|
|
286 PULS PC,B,A
|
70
|
287 LC1E7 LDA #$3D
|
69
|
288 LBRA LC4F9
|
70
|
289 LC1EC LDA ,X+
|
69
|
290 BITA #$DF
|
|
291 BEQ LC1E7
|
|
292 CMPA #$3D
|
|
293 BNE LC1EC
|
70
|
294 LC1F6 LBSR LC521
|
|
295 LC1F9 PSHS B
|
69
|
296 LDB ,X
|
|
297 BITB #$DF
|
|
298 BEQ LC210
|
|
299 CMPB #$29
|
|
300 BEQ LC214
|
|
301 CMPB #$2C
|
|
302 BEQ LC1D8
|
|
303 PULS B
|
|
304 LBSR LC29C
|
|
305 BRA LC1F9
|
70
|
306 LC210 STX <$46
|
69
|
307 PULS PC,B
|
70
|
308 LC214 LEAX +$01,X
|
69
|
309 PULS PC,B
|
70
|
310 LC218 CMPB #$3F
|
69
|
311 BNE LC22E
|
|
312 PSHS X
|
|
313 STB <$8C
|
|
314 LBSR LC5D8
|
|
315 BSR LC1F6
|
|
316 PULS X
|
|
317 LEAX +$01,X
|
|
318 RTS
|
|
319 LEAX +$01,X
|
|
320 BRA LC1F6
|
70
|
321 LC22E BSR LC287
|
69
|
322 CMPA #$3A
|
|
323 BEQ LC239
|
|
324 BSR LC26E
|
70
|
325 LC236 LDD ,Y
|
69
|
326 RTS
|
70
|
327 LC239 BSR LC269
|
69
|
328 CLRA
|
70
|
329 LC23C LDB ,Y
|
|
330 LC23E RTS
|
|
331 LC23F CMPB #$22
|
69
|
332 BCS LC218
|
|
333 CMPB #$2D
|
|
334 BHI LC218
|
|
335 SUBB #$22
|
|
336 LSLB
|
|
337 LEAY <LC251,PCR
|
|
338 LDD B,Y
|
|
339 JMP D,Y
|
68
|
340
|
70
|
341 LC251 fdb LC6EC-* 049b
|
69
|
342 fdb LC535-* 02e2
|
|
343 fdb LC5A1-* 034c
|
|
344 fdb LC545-* 02ee
|
|
345 fdb LC236-* ffdd
|
|
346 fdb LC54E-* 02f3
|
|
347 fdb LC236-* ffd9
|
|
348 fdb LC23C-* ffdd
|
|
349 fdb LC23E-* ffdd
|
|
350 fdb LC53F-* 02dc
|
|
351 fdb LC23F-* ffdd
|
|
352 fdb LC53F-* 02d8
|
68
|
353
|
70
|
354 LC269 BSR LC279
|
69
|
355 LEAY D,Y
|
|
356 RTS
|
70
|
357 LC26E CMPA #$28
|
69
|
358 BNE LC292
|
|
359 BSR LC279
|
|
360 LSLB
|
|
361 ROLA
|
|
362 LEAY D,Y
|
|
363 RTS
|
70
|
364 LC279 BSR LC292
|
69
|
365 LDY ,Y
|
|
366 PSHS Y
|
|
367 LEAX +$01,X
|
|
368 LBSR LC1F6
|
|
369 PULS PC,Y
|
70
|
370 LC287 LDB ,X+
|
|
371 LC289 LDA ,X+
|
69
|
372 CMPA #$41
|
|
373 BPL LC289
|
|
374 LEAX -$01,X
|
|
375 RTS
|
68
|
376
|
70
|
377 LC292 ANDB #$3F
|
69
|
378 CLRA
|
|
379 LSLB
|
71
|
380 ADDD <$04
|
69
|
381 TFR D,Y
|
|
382 RTS
|
70
|
383 LC29C PSHU B,A
|
69
|
384 LDD ,X+
|
|
385 PSHS B,A
|
|
386 SUBB #$3D
|
|
387 BEQ LC2A9
|
|
388 DECB
|
|
389 BNE LC2AB
|
70
|
390 LC2A9 LEAX +$01,X
|
|
391 LC2AB LBSR LC521
|
69
|
392 PULU Y
|
|
393 EXG D,Y
|
|
394 PSHU Y,B,A
|
|
395 PULS B,A
|
|
396 CMPA #$3D
|
|
397 BNE LC2C4
|
|
398 PULU B,A
|
|
399 SUBD ,U++
|
|
400 BNE LC2E4
|
70
|
401 LC2C0 CLRA
|
69
|
402 LDB #$01
|
|
403 RTS
|
70
|
404 LC2C4 CMPA #$3C
|
69
|
405 BNE LC2E7
|
|
406 CMPB #$3D
|
|
407 BEQ LC2D7
|
|
408 CMPB #$3E
|
|
409 PULU B,A
|
|
410 BNE LC2E0
|
|
411 SUBD ,U++
|
|
412 BNE LC2C0
|
|
413 RTS
|
70
|
414 LC2D7 PULU B,A
|
69
|
415 SUBD ,U++
|
|
416 BLE LC2C0
|
|
417 CLRA
|
|
418 CLRB
|
|
419 RTS
|
70
|
420 LC2E0 SUBD ,U++
|
69
|
421 BLT LC2C0
|
70
|
422 LC2E4 CLRA
|
69
|
423 CLRB
|
|
424 RTS
|
70
|
425 LC2E7 CMPA #$3E
|
69
|
426 BNE LC2FF
|
|
427 CMPB #$3D
|
|
428 PULU B,A
|
|
429 BNE LC2F8
|
|
430 SUBD ,U++
|
|
431 BGE LC2C0
|
|
432 CLRA
|
|
433 CLRB
|
|
434 RTS
|
70
|
435 LC2F8 SUBD ,U++
|
69
|
436 BGT LC2C0
|
|
437 CLRA
|
|
438 CLRB
|
|
439 RTS
|
70
|
440 LC2FF CMPA #$2B
|
69
|
441 BNE LC308
|
|
442 PULU B,A
|
|
443 ADDD ,U++
|
|
444 RTS
|
70
|
445 LC308 CMPA #$2D
|
69
|
446 BNE LC311
|
|
447 PULU B,A
|
|
448 SUBD ,U++
|
|
449 RTS
|
70
|
450 LC311 CMPA #$2A
|
69
|
451 LBNE LC653
|
|
452 PULU B,A
|
70
|
453 LC319 EXG A,B
|
69
|
454 PSHU B,A
|
|
455 LDB +$03,U
|
|
456 MUL
|
|
457 STD <$82
|
|
458 BSR LC32B
|
|
459 BSR LC32B
|
|
460 LDD <$82
|
|
461 LEAU +$02,U
|
|
462 RTS
|
70
|
463 LC32B PULU A
|
69
|
464 LDB +$01,U
|
|
465 MUL
|
|
466 ADDB <$82
|
|
467 STB <$82
|
|
468 RTS
|
70
|
469 LC335 CLR ,-S
|
|
470 LC337 INC ,S
|
69
|
471 LSL +$01,U
|
|
472 ROL ,U
|
|
473 BCC LC337
|
|
474 ROR ,U
|
|
475 ROR +$01,U
|
|
476 CLR <$82
|
|
477 CLR <$83
|
70
|
478 LC347 SUBD ,U
|
69
|
479 BCC LC351
|
|
480 ADDD ,U
|
|
481 ANDCC #$FE
|
|
482 BRA LC353
|
70
|
483 LC351 ORCC #$01
|
|
484 LC353 ROR <$83
|
69
|
485 ROR <$82
|
|
486 DEC ,S
|
|
487 BEQ LC361
|
|
488 LSR ,U
|
|
489 ROR +$01,U
|
|
490 BRA LC347
|
70
|
491 LC361 LEAS +$01,S
|
69
|
492 RTS
|
70
|
493 LC364 LDB ,X
|
69
|
494 CMPB #$30
|
|
495 BCS LC36D
|
|
496 CMPB #$3A
|
|
497 RTS
|
70
|
498 LC36D ANDCC #$FE
|
69
|
499 RTS
|
70
|
500 LC370 LBSR LC5D8
|
|
501 LC373 BSR LC364
|
69
|
502 BCC LC396
|
|
503 CLRA
|
|
504 CLRB
|
70
|
505 LC379 ADDB ,X+
|
69
|
506 ADCA #$00
|
|
507 SUBD #$030
|
|
508 PSHU B,A
|
|
509 BSR LC364
|
|
510 LDD ,U
|
|
511 BCC LC392
|
|
512 LSLB
|
|
513 ROLA
|
|
514 LSLB
|
|
515 ROLA
|
|
516 ADDD ,U++
|
|
517 LSLB
|
|
518 ROLA
|
|
519 BRA LC379
|
70
|
520 LC392 PULU B,A
|
69
|
521 ORCC #$01
|
70
|
522 LC396 RTS
|
|
523 LC397 LDB #$0D
|
69
|
524 BSR LC39D
|
70
|
525 LC39B LDB #$0A
|
|
526 LC39D BRA LC412
|
|
527 LC39F PSHS B,A
|
69
|
528 LDA #$01
|
|
529 STA <$8C
|
|
530 LDX <$84
|
|
531 LDB ,X
|
|
532 CMPB #$2E
|
|
533 BNE LC3BA
|
|
534 PULS A
|
|
535 LDA ,S+
|
70
|
536 LC3B1 BEQ LC3C4
|
69
|
537 LDB #$20
|
|
538 BSR LC412
|
|
539 DECA
|
|
540 BRA LC3B1
|
70
|
541 LC3BA CMPB #$3B
|
69
|
542 BNE LC3C5
|
|
543 LDD ,S++
|
|
544 LBEQ LC057
|
70
|
545 LC3C4 RTS
|
|
546 LC3C5 CMPB #$40
|
69
|
547 BNE LC3E4
|
|
548 LDB +$02,X
|
|
549 LBSR LC292
|
|
550 PULS B,A
|
|
551 STD ,Y
|
|
552 PULU B,A
|
|
553 SUBD ,Y
|
|
554 BLT LC3E1
|
|
555 PULU X,B,A
|
|
556 STD <$46
|
|
557 STX <$42
|
|
558 LEAU -$06,U
|
|
559 RTS
|
70
|
560 LC3E1 LEAU +$04,U
|
69
|
561 RTS
|
70
|
562 LC3E4 CMPB #$26
|
69
|
563 BNE LC3FA
|
70
|
564 LC3E8 LDB +$01,X
|
69
|
565 CMPB #$3D
|
|
566 BNE LC3FA
|
|
567 LDD ,S++
|
|
568 BNE LC3F9
|
|
569 LDX <$7E
|
|
570 STX <$50
|
|
571 DECA
|
|
572 STA ,X
|
70
|
573 LC3F9 RTS
|
|
574 LC3FA CMPB #$21
|
69
|
575 BNE LC40C
|
|
576 PULS B,A
|
|
577 STD <$4A
|
|
578 BEQ LC40B
|
|
579 LDY <$42
|
|
580 LDX <$46
|
|
581 PSHU Y,X
|
70
|
582 LC40B RTS
|
|
583 LC40C CMPB #$24
|
69
|
584 BNE LC415
|
|
585 PULS B,A
|
70
|
586 LC412 LBRA LC64A
|
|
587 LC415 CMPB #$3F
|
69
|
588 BNE LC449
|
|
589 LDB +$01,X
|
|
590 CMPB #$28
|
|
591 LBNE LC56E
|
|
592 LBSR LC51F
|
70
|
593 LC424 STB <$8E
|
69
|
594 PULS B,A
|
|
595 BSR LC433
|
|
596 ADDA <$8E
|
|
597 BMI LC430
|
|
598 BSR LC3B1
|
70
|
599 LC430 LBRA LC165
|
|
600 LC433 TSTA
|
69
|
601 LBPL LC11A
|
|
602 LBSR LC4F3
|
|
603 LBSR LC11A
|
|
604 LDB #$2D
|
|
605 STB ,-X
|
|
606 RTS
|
70
|
607 LC443 PSHS B,A
|
69
|
608 LDB #$05
|
|
609 BRA LC424
|
70
|
610 LC449 CMPB #$3D
|
69
|
611 BNE LC460
|
|
612 PULS B,A
|
|
613 STD <$7E
|
71
|
614 LDX #$FFFF
|
69
|
615 STX <$4A
|
|
616 LBSR LC09C
|
|
617 STX <$50
|
|
618 LBRA LC024
|
70
|
619 LC45E PULS PC,B,A
|
|
620 LC460 CMPB #$3E
|
69
|
621 BNE LC46C
|
|
622 LDD ,S
|
|
623 BEQ LC45E
|
|
624 JSR [,S++]
|
|
625 PSHS B,A
|
70
|
626 LC46C LDX <$84
|
69
|
627 LBSR LC287
|
|
628 CMPA #$3A
|
|
629 BNE LC47D
|
|
630 LBSR LC269
|
|
631 PULS B,A
|
|
632 STB ,Y
|
|
633 RTS
|
70
|
634 LC47D LBSR LC26E
|
69
|
635 PULS B,A
|
|
636 STD ,Y
|
|
637 RTS
|
|
638 LDA +$01,X
|
|
639 CMPA #$4E
|
|
640 BEQ LC48E
|
71
|
641 LBRA SYSTEM
|
70
|
642 LC48E TST +$02,X
|
69
|
643 BNE LC494
|
|
644 CLR +$03,X
|
70
|
645 LC494 LEAX +$03,X
|
69
|
646 CLR <$8C
|
|
647 LBSR LC373
|
|
648 BCS LC4A0
|
|
649 LDD #LC3E8
|
70
|
650 LC4A0 STD <$88
|
69
|
651 LDB ,X
|
|
652 CMPB #$2C
|
|
653 BNE LC4AF
|
|
654 LEAX +$01,X
|
|
655 LBSR LC373
|
|
656 BCS LC4B2
|
70
|
657 LC4AF LDD #$00A
|
|
658 LC4B2 STD <$8A
|
69
|
659 RTS
|
70
|
660 LC4B5 CMPA #$2F
|
69
|
661 BNE LC4F9
|
|
662 CLR <$8D
|
|
663 LDD +$02,U
|
|
664 BEQ LC4F9
|
|
665 BMI LC4D4
|
|
666 CMPD #LC002
|
|
667 BNE LC4DE
|
|
668 PULU B,A
|
|
669 CLR <$4E
|
|
670 CLR <$4F
|
|
671 ASRA
|
|
672 RORB
|
|
673 ROR <$4F
|
|
674 LEAU +$02,U
|
|
675 RTS
|
70
|
676 LC4D4 INC <$8D
|
69
|
677 NEG +$03,U
|
|
678 BNE LC4DC
|
|
679 DEC +$02,U
|
70
|
680 LC4DC COM +$02,U
|
|
681 LC4DE LDD ,U++
|
69
|
682 BPL LC4E6
|
|
683 DEC <$8D
|
|
684 BSR LC4F3
|
70
|
685 LC4E6 LBSR LC335
|
69
|
686 LEAU +$02,U
|
|
687 STD <$4E
|
|
688 LDD <$82
|
|
689 TST <$8D
|
|
690 BEQ LC4F8
|
70
|
691 LC4F3 NEGB
|
69
|
692 BNE LC4F7
|
|
693 DECA
|
70
|
694 LC4F7 COMA
|
|
695 LC4F8 RTS
|
|
696 LC4F9 LBSR LC397
|
69
|
697 LDB #$3F
|
|
698 STB <$8C
|
|
699 LBSR LC412
|
|
700 TFR A,B
|
|
701 LBSR LC412
|
|
702 LDB #$20
|
|
703 LBSR LC412
|
|
704 LDX <$42
|
71
|
705 PSHS Y,D
|
|
706 LDY <DPWORK
|
|
707 LEAY $95,Y
|
|
708 STY ,S
|
|
709 CMPX ,S
|
|
710 PULS Y,D
|
69
|
711 BNE LC519
|
|
712 LBSR LC165
|
|
713 BRA LC51C
|
70
|
714 LC519 LBSR LC087
|
|
715 LC51C LBRA LC024
|
|
716 LC51F LEAX +$01,X
|
|
717 LC521 LBSR LC373
|
69
|
718 BCS LC532
|
|
719 LBRA LC23F
|
|
720 BSR LC51F
|
|
721 BRA LC4F3
|
|
722 BSR LC51F
|
|
723 TSTA
|
|
724 BMI LC4F3
|
70
|
725 LC532 RTS
|
69
|
726 BSR LC51F
|
70
|
727 LC535 PSHS B,A
|
69
|
728 LDD ,S++
|
|
729 LBNE LC2E4
|
|
730 INCB
|
|
731 RTS
|
70
|
732 LC53F BSR LC51F
|
69
|
733 LDD <$4E
|
|
734 RTS
|
|
735 LC545
|
|
736 BSR LC51F
|
|
737 PSHU B,A
|
|
738 LDD <$52
|
|
739 PSHU B,A
|
|
740 LC54E
|
71
|
741 LDD #$3D09
|
69
|
742 LBSR LC319
|
|
743 ADDD #1
|
|
744 STD <$52
|
|
745 TFR A,B
|
|
746 CLRA
|
|
747 LBSR LC319
|
|
748 TFR A,B
|
|
749 CLRA
|
|
750 ADDD #1
|
|
751 RTS
|
|
752 LC568
|
|
753 CLRA
|
|
754 LDB +$01,X
|
|
755 LEAX +$03,X
|
|
756 RTS
|
70
|
757 LC56E CMPB #$3F
|
69
|
758 BEQ LC57E
|
|
759 CMPB #$24
|
|
760 BEQ LC582
|
|
761 PULS B,A
|
|
762 LBSR LC433
|
|
763 LBRA LC165
|
70
|
764 LC57E LDB ,S
|
69
|
765 BSR LC584
|
70
|
766 LC582 PULS B,A
|
|
767 LC584 TFR B,A
|
69
|
768 BSR LC58E
|
|
769 TFR A,B
|
|
770 ANDB #$0F
|
|
771 BRA LC592
|
70
|
772 LC58E LSRB
|
69
|
773 LSRB
|
|
774 LSRB
|
|
775 LSRB
|
70
|
776 LC592 CMPB #$0A
|
69
|
777 BMI LC598
|
|
778 ADDB #$07
|
70
|
779 LC598 ADDB #$30
|
69
|
780 LBRA LC412
|
|
781 CLRA
|
|
782 BSR LC5BD
|
|
783 LC5A1
|
|
784 LBCC LC64D
|
70
|
785 LC5A4 PSHS B
|
69
|
786 BSR LC5BD
|
|
787 PSHU B
|
|
788 PULS B
|
|
789 BCC LC5BA
|
|
790 LSLB
|
|
791 ROLA
|
|
792 LSLB
|
|
793 ROLA
|
|
794 LSLB
|
|
795 ROLA
|
|
796 LSLB
|
|
797 ROLA
|
|
798 ADDB ,U+
|
|
799 BRA LC5A4
|
70
|
800 LC5BA LEAU +$01,U
|
69
|
801 RTS
|
70
|
802 LC5BD LEAX +$01,X
|
69
|
803 LDB ,X
|
|
804 SUBB #$30
|
|
805 BCS LC5D2
|
|
806 CMPB #$0A
|
|
807 BCS LC5D1
|
|
808 SUBB #$07
|
|
809 CMPB #$0A
|
|
810 BCS LC5D2
|
|
811 CMPB #$10
|
70
|
812 LC5D1 RTS
|
|
813 LC5D2 ANDCC #$FE
|
69
|
814 RTS
|
70
|
815 LC5D5 LBSR LC397
|
|
816 LC5D8 LDB #$3A
|
71
|
817 LBSR LC64A
|
|
818 LDX <DPWORK
|
|
819 LEAX $95,X
|
69
|
820 TST <$8C
|
|
821 BNE LC5F2
|
|
822 LDD <$88
|
|
823 LBMI LC020
|
|
824 LBSR LC443
|
|
825 LDB #$20
|
|
826 STB -$01,X
|
|
827 BSR LC64A
|
70
|
828 LC5F2 BSR LC64D
|
69
|
829 CMPB #$08
|
|
830 BEQ LC634
|
|
831 CMPB #$0D
|
|
832 BCS LC5F2
|
|
833 BEQ LC611
|
|
834 CMPB #$18
|
|
835 BEQ LC5D5
|
|
836 STB ,X+
|
71
|
837 PSHS Y,D
|
|
838 LDD <DPWORK
|
|
839 ADDD #$DF
|
|
840 LEAY $DF,Y
|
|
841 STY ,Y
|
|
842 CMPX ,S
|
|
843 PULS Y,D
|
69
|
844 BNE LC5F2
|
|
845 LEAX -$01,X
|
|
846 LDB #$08
|
|
847 BSR LC64A
|
|
848 BRA LC5F2
|
70
|
849 LC611 TST <$8C
|
69
|
850 BNE LC626
|
71
|
851 LDY <DPWORK
|
|
852 LEAY $9B,Y
|
|
853 PSHS Y
|
|
854 CMPX ,S++
|
69
|
855 BEQ LC61F
|
71
|
856 LEAY -1,Y
|
|
857 PSHS Y
|
|
858 CMPX ,S++
|
69
|
859 BCC LC626
|
70
|
860 LC61F COM <$8C
|
69
|
861 LBSR LC39B
|
|
862 BRA LC5D8
|
70
|
863 LC626 LDD <$88
|
69
|
864 ADDD <$8A
|
|
865 STD <$88
|
|
866 CLR ,X
|
71
|
867 LDX <DPWORK
|
|
868 LEAX $95,X
|
69
|
869 LBRA LC39B
|
70
|
870 LC634 LEAX -$01,X
|
71
|
871 LDY <DPWORK
|
|
872 LEAY $94,Y
|
|
873 PSHS Y
|
|
874 CMPX ,S++
|
69
|
875 BNE LC5F2
|
|
876 STB <$8C
|
71
|
877 LBRA LC5D8
|
69
|
878 LC63F
|
|
879 FCB $D,$A
|
|
880 FCS "*READY"
|
|
881 FCB $D,$A,0
|
68
|
882
|
70
|
883 LC64A LBRA OUTCH
|
71
|
884 LC64D LBRA GETCH
|
|
885 LC650 LBRA SENSE
|
70
|
886
|
|
887 LC653 CMPA #$2E EXBOP
|
69
|
888 BNE LC65E
|
|
889 PULU B,A
|
|
890 ORA ,U+
|
|
891 ORB ,U+
|
|
892 RTS
|
70
|
893 LC65E CMPA #$26
|
69
|
894 BNE LC669
|
|
895 PULU B,A
|
|
896 ANDA ,U+
|
|
897 ANDB ,U+
|
|
898 RTS
|
70
|
899 LC669 CMPA #$21
|
69
|
900 LBNE LC4B5
|
|
901 PULU B,A
|
|
902 EORA ,U+
|
|
903 EORB ,U+
|
|
904 RTS
|
70
|
905 LC676 LDD +$01,X EXTEND
|
69
|
906 LEAX +$03,X
|
|
907 PSHS U,X,B,A
|
|
908 LEAY >OPCMD,PCR
|
70
|
909 LC680 LDX ,Y
|
69
|
910 BMI LC6E7
|
|
911 CMPX ,S
|
|
912 BEQ LC68C
|
|
913 LEAY +$05,Y
|
|
914 BRA LC680
|
70
|
915 LC68C LEAY +$03,Y
|
69
|
916 LEAS +$02,S
|
|
917 LDX ,S
|
|
918 LDA -$01,Y
|
|
919 BEQ LC6C3
|
|
920 PSHS Y,A
|
|
921 LDA #$20
|
70
|
922 LC69A CMPA ,X+
|
69
|
923 BEQ LC69A
|
|
924 LDA ,-X
|
|
925 STX +$03,S
|
70
|
926 LC6A2 BITA #$DF
|
69
|
927 BEQ LC6B0
|
|
928 CMPA #$2C
|
|
929 BEQ LC6AE
|
|
930 BSR LC6C9
|
|
931 BRA LC6B3
|
70
|
932 LC6AE LEAX +$01,X
|
71
|
933 LC6B0 LDD #$FFFF
|
70
|
934 LC6B3 PSHU B,A
|
69
|
935 LDA ,X
|
|
936 DEC ,S
|
|
937 BNE LC6A2
|
|
938 LDD +$03,S
|
|
939 STX +$03,S
|
|
940 TFR D,X
|
|
941 PULS Y,A
|
70
|
942 LC6C3 LDD ,Y
|
69
|
943 JSR D,Y
|
|
944 PULS PC,U,X
|
70
|
945 LC6C9 LBSR LC521
|
|
946 LC6CC PSHS B
|
69
|
947 LDB ,X
|
|
948 BITB #$DF
|
|
949 BEQ LC6E5
|
|
950 CMPB #$2C
|
|
951 BEQ LC6E3
|
|
952 CMPB #$29
|
|
953 BEQ LC6E3
|
|
954 PULS B
|
|
955 LBSR LC29C
|
|
956 BRA LC6CC
|
70
|
957 LC6E3 LEAX +$01,X
|
|
958 LC6E5 PULS PC,B
|
|
959 LC6E7 PULS U,X,B,A
|
69
|
960 LBRA LC4F9
|
70
|
961 LC6EC LEAX +$01,X
|
69
|
962 LDB ,X+
|
70
|
963 LC6F0 LDA ,X+
|
69
|
964 BEQ LC6F8
|
|
965 CMPA #$22
|
|
966 BNE LC6F0
|
70
|
967 LC6F8 CLRA
|
69
|
968 RTS
|
|
969
|
70
|
970 GETCH LDA #0
|
71
|
971 PSHS B
|
70
|
972 LEAX ,S
|
|
973 LDY #1
|
|
974 OS9 I$Read
|
71
|
975 PULS B
|
70
|
976 BCS GETCH
|
71
|
977 OUTCH PSHS B
|
70
|
978 LEAX ,S
|
|
979 LDA #1
|
|
980 LDY #1
|
|
981 OS9 I$Write
|
71
|
982 PULS B,PC
|
70
|
983 SENSE LDA #0
|
|
984 LDB #SS.Ready
|
|
985 OS9 i$GetStt
|
|
986 RTS
|
|
987
|
69
|
988
|
68
|
989
|
69
|
990 * COMMAND TABLE CONSIST....
|
|
991 * COMMAND NAME (2 BYTE)
|
|
992 * PARAMETER COUNT (1 BYTE)
|
|
993 * OFSET TO SUBROUTIE FROM HERE (1 WORD)
|
|
994 **************************
|
|
995 OPCMD FCB 'A','T',2 START LINE,STEP
|
|
996 FDB CAUTO-*
|
|
997 FCB 'R','N',3 RENUM first line no,inc,renum start
|
|
998 FDB RENUM-*
|
|
999 * FCB 'R','D',3 DISK READ address,track,sector
|
|
1000 * FDB GETDK-*
|
|
1001 * FCB 'W','R',3 DISK WRITE
|
|
1002 * FDB PUTDK-*
|
|
1003 FCB 'S','Y',0 TO SYSTEM
|
|
1004 FDB SYSTEM-*
|
|
1005 FDB -1,-1,-1,-1,-1,-1
|
|
1006 *************************
|
|
1007 RENUM
|
|
1008 LDD ,U++
|
|
1009 BPL LC762
|
|
1010 CLRA
|
|
1011 CLRB
|
70
|
1012 LC762 STD <$4A
|
69
|
1013 LBSR LC09C
|
|
1014 BMI LC789
|
|
1015 LDD ,U++
|
|
1016 BPL LC770
|
|
1017 LDD #$00A
|
70
|
1018 LC770 LDY ,U++
|
69
|
1019 BPL LC779
|
|
1020 LDY #LC3E8
|
70
|
1021 LC779 STY ,X++
|
69
|
1022 LBSR LC173
|
|
1023 LEAY D,Y
|
70
|
1024 LC781 TST ,X+
|
69
|
1025 BNE LC781
|
|
1026 TST ,X
|
|
1027 BPL LC779
|
70
|
1028 LC789 RTS
|
69
|
1029 CAUTO
|
|
1030 LDD ,U++
|
|
1031 BPL LC791
|
|
1032 LDD #$00A
|
70
|
1033 LC791 STD <$8A
|
69
|
1034 LDD ,U
|
|
1035 BEQ LC79E
|
|
1036 BPL LC79C
|
|
1037 LDD #LC3E8
|
70
|
1038 LC79C STD <$88
|
|
1039 LC79E CLR <$8C
|
69
|
1040 RTS
|
|
1041 BSR LC7B6
|
71
|
1042 * LBSR LCD09
|
69
|
1043 BNE LC7B1
|
|
1044 RTS
|
|
1045 BSR LC7B6
|
71
|
1046 * LBSR LCD0C
|
69
|
1047 BNE LC7B1
|
|
1048 RTS
|
70
|
1049 LC7B1 LDA #$44
|
69
|
1050 LBRA LC4F9
|
70
|
1051 LC7B6 LDX +$04,U
|
69
|
1052 LDA +$03,U
|
|
1053 LDB +$01,U
|
|
1054 RTS
|
70
|
1055 SYSTEM clrb
|
|
1056 os9 F$Exit
|
|
1057 rts
|
|
1058 emod
|
71
|
1059 eom equ *
|
70
|
1060 end
|