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