Mercurial > hg > Members > kono > os9 > sbc09
comparison TL1/TL1.txt @ 117:f8f44153f8c1
add TL1 source
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 04 Jan 2019 07:39:19 +0900 |
parents | |
children | 8f2154d95a04 |
comparison
equal
deleted
inserted
replaced
116:6be44b5de445 | 117:f8f44153f8c1 |
---|---|
1 1000 *******TL/1************** | |
2 1010 GAME EQU $B503 | |
3 1020 TXTTOP EQU $FB7E | |
4 1030 BASE EQU $FB | |
5 1040 DPAGE EQU BASE*$100 | |
6 1050 SETDP BASE | |
7 1060 MSTACK EQU $FE52-$100 | |
8 1070 INEEE EQU $B003 | |
9 1080 OUTEEE EQU $B006 | |
10 1090 ** DPAGE DEFINE | |
11 1100 ORG DPAGE+$10 | |
12 1110 INDN RMB 1 | |
13 1120 OUTDN RMB 1 | |
14 1130 LB RMB 2 | |
15 1140 GB RMB 2 | |
16 1150 MHIGH RMB 1 | |
17 1160 MOD RMB 1 | |
18 1170 WT1 RMB 1 | |
19 1180 WT2 RMB 1 | |
20 1190 RNDH RMB 1 | |
21 1200 RNDL RMB 1 | |
22 1210 DREG RMB 1 | |
23 1220 DBUF RMB 3 | |
24 1230 XR RMB 2 | |
25 1240 YR RMB 2 | |
26 1250 ZR RMB 2 | |
27 1260 PFTBEG RMB 2 | |
28 1270 PC RMB 2 | |
29 1280 SREG RMB 2 | |
30 1290 SP RMB 2 | |
31 1300 PFMAX RMB 2 | |
32 1310 LSW RMB 2 | |
33 1320 SY RMB 2 | |
34 1330 CH RMB 1 | |
35 1340 VAL RMB 1 | |
36 1350 GL RMB 1 | |
37 1360 OPER RMB 1 | |
38 1370 GLL RMB 1 | |
39 1380 INDEX RMB 1 | |
40 1390 RMCODE RMB 1 | |
41 1400 ACC RMB 1 | |
42 1410 LSIZE RMB 1 | |
43 1420 TCOUNT RMB 1 | |
44 1430 TEND RMB 2 | |
45 1440 WEND RMB 2 | |
46 1450 PMODE RMB 1 | |
47 1450 RSW RMB 1 | |
48 1470 GEND RMB 2 | |
49 1480 SSW RMB 1 | |
50 1490 | |
51 1500 ORG $5000 | |
52 1510 ** | |
53 1520 COMP LDA #BASE | |
54 1530 TFR A,DP | |
55 1540 CLRA | |
56 5005 STA OUTDN | |
57 5006 STA LSW | |
58 1570 STA INDEX | |
59 1580 STA PMODE | |
60 1590 STA LSIZE | |
61 1600 STA RSW | |
62 1610 STA PFMAX | |
63 1620 LDX #MSTACK | |
64 1630 STX SP | |
65 1640 LEAX 2,x | |
66 1650 STX PFTBEG | |
67 1660 CLRB | |
68 1670 C1 STA ,X+ | |
69 1680 DECB | |
70 1690 BNE C1 | |
71 1700 INCA | |
72 1710 STA TCOUNT | |
73 1720 LDA #" " | |
74 1730 STA CH | |
75 1740 LDX TXTTOP | |
76 1750 LEAX 2,X | |
77 1760 STX SREG | |
78 1790 LEAX WTBLE,PCR | |
79 1780 STX TEND | |
80 1790 LEAX OBJECT,PCR | |
81 1800 STX PC | |
82 1810 STX OBJMP+1,PCR | |
83 1820 ** | |
84 1830 LBSR CRLF | |
85 1840 BSR REG0 | |
86 1850 LBSR WORD | |
87 1860 CMPA #$30 PROC? | |
88 1870 BNE *+4 | |
89 1880 BSR REGNAM | |
90 1890 BSR REG0 | |
91 1900 CMPA #$31 FUNC? | |
92 1910 BNE *+4 | |
93 1920 BSR REGNAM | |
94 1930 CLR LSIZE | |
95 1340 BSR REG0 | |
96 1950 LBSR PROG | |
97 1960 LBSR STPOUT | |
98 1970 LDX TEND | |
99 1980 STX GEND | |
100 1990 PLOOP LDA SY | |
101 2000 CMPA #$8F /END CODE | |
102 2010 LBEQ ENDL | |
103 2020 CMPA $4 | |
104 2030 BCC ERR4 | |
105 2040 DECA | |
106 2050 STA PMODE | |
107 2060 LDA VAL | |
108 2070 LBSR DEFPF | |
109 2080 LBSR PUTHS | |
110 2090 FDB $03BD | |
111 2100 FDB PSHLB | |
112 2110 BSR REG0 | |
113 2120 CLR LSIZE | |
114 2130 LBSR WORD | |
115 2140 CMPA #$37 | |
116 2150 BNE PL1 | |
117 2160 BSR REGNAM | |
118 2170 LDA #$38 ) | |
119 2180 LBSR CHECK | |
120 2190 PL1 BSR PROG | |
121 2200 LDB PMODE | |
122 2210 CMPB #1 | |
123 2220 BNE *+5 | |
124 2230 LBSR RETP | |
125 2240 LDX GEND | |
126 2250 STX TEND | |
127 2260 LDB #5 | |
128 2270 STB TCOUNT | |
129 2280 BRA PLOOP | |
130 2290 ** | |
131 2330 * REGIST ZERO | |
132 2310 ** | |
133 2320 REG0 LDX TEND | |
134 2330 CLR ,X+ | |
135 2340 STX TEND | |
136 2350 INC TCOUNT | |
137 2360 RTS | |
138 2370 ** | |
139 2380 * REGIST NAME | |
140 2390 ** | |
141 2400 REGNAM COM RSW | |
142 2410 LBSR WORD | |
143 2420 LDB RSW | |
144 2430 BEQ *+5 | |
145 2440 ERR4 LBRA ERROR | |
146 2450 LDX TEND | |
147 2460 LDA LSIZE | |
148 2470 STA ,X | |
149 2480 INC LSIZE | |
150 2490 LDX WEND | |
151 2500 STX TEND | |
152 2510 BSR WORD1 | |
153 2520 CMPA #$36 | |
154 2530 BNE REG2 | |
155 2540 BSR WORD1 | |
156 2550 BNE ERR4 | |
157 2560 LDA VAL | |
158 2570 ADDA LSIZE | |
159 2575 STA LSIZE | |
160 2580 BSR WORD1 | |
161 2590 LDA #$3A | |
162 2600 LBSR CHECK | |
163 2610 REG2 CMPA #$3C | |
164 2620 BEQ REGNAM | |
165 2630 RTS | |
166 2640 ** | |
167 2650 * PROGRAM | |
168 2660 ** | |
169 2670 PROG CMPA #$32 VAR? | |
170 2680 BNE *+4 | |
171 2690 BSR REGNAM | |
172 2700 BSR REG0 | |
173 2710 CMPA #$33 ARRAY? | |
174 2720 BNE *+4 | |
175 2730 BSR REGNAM | |
176 2740 LDB #-1 | |
177 2750 STB INDEX | |
178 2760 ** | |
179 2770 * STATEMENT | |
180 2780 ** | |
181 2790 STAT BSR SSTAT | |
182 2800 LDB SSW | |
183 2310 BEQ RTS1 | |
184 2820 LBRA ERROR | |
185 2830 ** | |
186 2840 * STATEMENTS LIST | |
187 2850 ** | |
188 2860 STLIST BSR SSTAT | |
189 2870 LDB SSW | |
190 2880 BEQ STLIST | |
191 2890 RTS1 RTS | |
192 2900 ** | |
193 2910 * SINGLE STATEMENT | |
194 2920 ** | |
195 2930 SSTAT CLRA | |
196 2940 STA ACC | |
197 2950 STA SSW | |
198 2960 LDY SY | |
199 2970 ** | |
200 2980 * MULTIPLE STATEMENTS | |
201 2990 ** | |
202 3000 SS1 CMPA #$34 | |
203 3010 BCS SS2 | |
204 3020 CMPA #$38 | |
205 3060 BSR WORD1 | |
206 3070 BSR STLIST | |
207 3080 PULS A | |
208 3090 CLR SSW | |
209 3100 LBRA CHECK | |
210 3110 ** | |
211 3120 * STOP | |
212 3130 ** | |
213 3140 SS2 CMPA #$50 | |
214 3150 BNE SS3 | |
215 3160 BSR STPOUT | |
216 3170 WORD1 LBRA WORD | |
217 3180 ** | |
218 3190 STPOUT LBSR PUTHS | |
219 3200 FCB 3,$7E | |
220 3210 FDB MONIT | |
221 3220 RTS | |
222 3230 ** | |
223 3240 * RETURN | |
224 3250 ** | |
225 3260 SS3 CMPA #$51 | |
226 3270 BNE SS4 | |
227 3280 LDB PMODE | |
228 3290 LBEQ ERR4 | |
229 3300 PSHS B | |
230 3310 BSR WORD1 | |
231 3320 PULS B | |
232 3330 DECB | |
233 3340 BEQ RETP | |
234 3350 LBSR EXPR | |
235 3360 RETP ,_BSR PUTHS | |
236 3370 FDB $037E | |
237 3380 FDB PULLB | |
238 3390 RTS | |
239 3400 ** | |
240 3410 * PROC CALL | |
241 3420 ** | |
242 3430 SS4 CMPA #2 | |
243 3440 LBEQ PFCALL | |
244 3450 CMPA #$E0 | |
245 3460 BCS SS5 | |
246 3470 LBRA PFCALL | |
247 3480 ** | |
248 3490 * ASS I GMENT STATEMENT | |
249 3500** | |
250 3510 SS5 CMPA #7 | |
251 3520 BCS ASSIGN | |
252 3530 LBRA SS6 | |
253 3540 ASSIGN LDB GL | |
254 3550 PSHS B | |
255 3560 LDB VAL | |
256 3570 PSHS B | |
257 3580 CMPA #5 | |
258 5590 BNE ASS1 | |
259 5600 LBSR SUBSC1 | |
260 3610 LDB ,S | |
261 3620 LDA LSW | |
262 3630 BNE AS0 | |
263 3640 LDA #$8B | |
264 3650 LBSR PUTAB | |
265 3660 LDA #1 | |
266 3670 BRA AS2 | |
267 3680 AS0 ADDB OPER | |
268 3690 STB ,S | |
269 3700 CLR LSW | |
270 3710 BRA AS1 | |
271 3720 ASS1 CMPA #6 | |
272 3730 BNE ASS2 | |
273 3740 LBSR DSUBSC | |
274 3750 LDA #2 | |
275 3760 BRA AS2 | |
276 3770 CMPA #4 | |
277 3780 BEQ *+5 | |
278 3790 LBRA ERROR | |
279 3800 LBSR WORD | |
280 3810 AS1 CLRA | |
281 3820 AS2 PSHS A | |
282 3830 LDA SY | |
283 3840 CMPA #S3C | |
284 3850 BNE *+9 | |
285 3860 LBSR WORD | |
286 3870 BSR ASSIGN | |
287 3680 BRA AS3 | |
288 3890 LDA #$3D | |
289 3900 LBSR CHECK | |
290 3910 LDA #$27 | |
291 3920 LBSR CHECK | |
292 3930 LBSR EXPR | |
293 3940 AS3 PULS D | |
294 3950 STB OPER 4-- | |
295 3960 PULS B | |
296 3970 STB GLL | |
297 3980 TSTA | |
298 3390 BNE AS4 | |
299 4000 LBSR PUTX | |
300 4010 LDA #$A7 | |
301 4020 LDS OPER | |
302 4030 LBRA PUTAB | |
303 4040 AS4 DECA | |
304 4050 BNE AS5 | |
305 4050 LBSR PUTX | |
306 4070 LDA #$33 | |
307 4080 LBSR PUTA | |
308 4090 LBRA STABX | |
309 4100 AS5 LBSR PUTHS | |
310 4110 FCB 10 | |
311 4120 FDB $33D7 | |
312 4130 FCB WT2 | |
313 4140 FDB $33D7 | |
314 4150 FCB WT1 $DE,WT2 | |
315 4160 FDB $A700 | |
316 4170 CLR INDEX | |
317 4180 RTS | |
318 4190 ** | |
319 4200 ** NON-STATEMENT | |
320 4210 ** | |
321 4220 SSEND COM SSW | |
322 4230 RTS | |
323 4242 ** | |
324 4250 CMPA #$58 | |
325 4260 BCC SSEND | |
326 4270 CMPA #$52 | |
327 4280 BCS SSEND | |
328 4290 SUBA #$51 | |
329 4300 PSHS A | |
330 4310 LBSR WORD | |
331 4320 PULS B | |
332 4330 ** | |
333 4340 * REPEAT UNTIL | |
334 4350 ** | |
335 4360 DECB | |
336 4370 BNE SS7 | |
337 4380 STB INDEX | |
338 4390 BSR ASTOUT | |
339 4400 LBSR STLIST | |
340 4410 LDA #$60 | |
341 4420 LBSR CHECK | |
342 4430 LBSR EXPR | |
343 4440 LBSR PUTHS | |
344 4450 FCB 2 | |
345 4460 FDB $2603 | |
346 4470 CLR SSW | |
347 4480 BRA MINOUT | |
348 4490 ** | |
349 4500 * FOR-TO | |
350 4510 ** | |
351 4520 SS7 DECB | |
352 4530 BNE SS8 | |
353 4540 CMPA #4 | |
354 4531 BEQ *+5 | |
355 4560 LBRA ERROR | |
356 4370 LDB VAL | |
357 4580 PSHS B | |
358 4590 LDB GL | |
359 4600 PSHS B | |
360 4610 LBSR ASSIGN | |
361 4620 LDA #$61 | |
362 4630 LBSR CHECK | |
363 4640 CLR ACC | |
364 4650 LBSR EXPR | |
365 4660 LDA #$64 | |
366 4670 LBSR CHECK | |
367 4680 BSR ASTOUT | |
368 4690 LDA #$36 | |
369 4700 LBSR PUTA | |
370 4710 CLR INDEX | |
371 4720 LBSR STAT | |
372 4730 LDA #$32 | |
373 4740 LBSR PUTA | |
374 4750 PULS D | |
375 4760 STA GLL | |
376 4770 STB OPER | |
377 4780 LDA #$A1 | |
378 4790 LBSR PUTABSX | |
379 4800 LBSR PUTHS | |
380 4610 FCB 2 | |
381 4020 FDB $2305 | |
382 4830 LDA #$6C | |
383 4840 LDB OPER | |
384 4850 LBSR PUTAB | |
385 4860 MINOUT LBRA PULJMP | |
386 4870 ASTOUT LBRA PSHDEF | |
387 4880 ** | |
388 4890 * WHILE-DO | |
389 4900 ** | |
390 4910 SS8 DECB | |
391 4920 BNE SS9 | |
392 4930 STB INDEX | |
393 4940 BSR ASTOUT | |
394 4950 LBSR EXPR | |
395 4960 LDA #$64 | |
396 4970 LBSR CHECK | |
397 4980 LBSR PUTHS | |
398 4990 FCB 2 | |
399 5000 FDB $2603 | |
400 5010 BSR SLAOUT | |
401 5020 LDS INDEX | |
402 5130 PSHS B | |
403 5040 LBSR STAT | |
404 5500 PULS B | |
405 5060 STB INDEX | |
406 5070 BSR PEROUT | |
407 5080 BSR MINOUT | |
408 5090 PLUOUT LBRA PULDEF | |
409 5100 ** | |
410 5110 ** IF—THEN | |
411 5120 ** | |
412 5130 SS9 DECB | |
413 3140 BNE SS10 | |
414 5150 LBSR EXPR | |
415 5160 LDA #$65 | |
416 5170 LBSR CHECK | |
417 5180 LBSR PUTHS | |
418 5190 FCB 2 | |
419 5200 FDB $2603 | |
420 5210 BSR SLAOUT | |
421 5220 LDB INDEX | |
422 5230 PSHS B | |
423 5340 LBSR STAT | |
424 5250 PULS B | |
425 5260 CMPB INDEX | |
426 5270 BEQ *+4 | |
427 5280 CLRB | |
428 5290 BRA PLUOUT | |
429 5300 SLAOUT LBRA PSHJMP | |
430 5310 PEROUT LBRA STCHG | |
431 5320 *** | |
432 5330 * CASE—OF | |
433 5340 SS10 DECB | |
434 5350 BNE SS11 | |
435 5360 LBSR EXPR | |
436 5370 LDA #$66 | |
437 5380 LBSR CHECK | |
438 5390 CLRB | |
439 3400 S10A INCB | |
440 5410 PSHS B | |
441 5420 STB ACC | |
442 5430 LBSR LEXPR | |
443 5440 LDA #$81 | |
444 5450 LBSR ROPER | |
445 5460 LBSR PUTHS | |
446 5470 FCB 2 | |
447 5480 FDB $2703 | |
448 5490 BSR SLAOUT | |
449 5500 LDB INDEX | |
450 5510 PSHS B | |
451 5520 LBSR STAT | |
452 5540 BSR PEROUT | |
453 5550 BSR PLUOUT | |
454 5560 PULS B | |
455 5570 STB INDEX | |
456 5580 PULS B | |
457 5590 LDA SY | |
458 5600 CMPA #$XX | |
459 5610 BNE S10A | |
460 5620 PSHS B | |
461 5630 LBSR WORD | |
462 5640 LBSR STAT | |
463 5650 CLR INDEX | |
464 5660 PULS A | |
465 5670 LBRA PLDFN | |
466 5680 ** | |
467 5690 * WRITE STATEMENT | |
468 5700 ** | |
469 5710 SS11 LDA #$37 | |
470 5720 LBSR CHECK | |
471 5730 LBSR EXPR | |
472 5740 LBSR PUTHS | |
473 5750 FDB $0297 | |
474 5760 FCB OUTDN | |
475 5780 LBSR CHECK | |
476 5790 WTLP CLR ACC | |
477 5800 BSR WTERM | |
478 5810 LDA SY | |
479 5820 CMPA #$3C | |
480 5830 BNE WTEN | |
481 5840 LBSR WORD | |
482 5850 BRA WTLP | |
483 5860 WTEN LDA #$36 | |
484 5870 LBRA CHECK | |
485 5880 ** | |
486 3890 WTERM CMPA #$6C | |
487 3900 BNE WR1 | |
488 5910 LBSR PUTHS | |
489 5920 FDB $03BD | |
490 5930 FDB PUTSTR | |
491 5940 LDA CH | |
492 5950 WR01 CMPA #""" | |
493 5960 BEQ WR02 | |
494 5970 LBSR PUTA | |
495 5980 LBSR GFTCH | |
496 5390 BRA WRO1 | |
497 6000 WRO2 CLRA | |
498 6010 STA INDEX | |
499 6020 LBSR PUTA | |
500 6030 LBSR GETCH | |
501 6040 LBRA WORD | |
502 6050 ** | |
503 6060 WR1 CMPA #$6B | |
504 6070 BNE WR3 | |
505 6080 LBSR WORD | |
506 6090 CMPA #$37 | |
507 6121 BEQ WR2 | |
508 6110 LBSR PUTHS | |
509 6120 FDB $03BD | |
510 6130 FDB CRLFA | |
511 6140 RTS | |
512 6150 ** | |
513 6160 WR2 LBSR WEXPR | |
514 6170 BSR WTEN | |
515 6180 LBSR PUTHS | |
516 6190 FDB $03BD | |
517 6200 FDB CRLFA | |
518 6210 RTS | |
519 6220 ** | |
520 6230 WR3 CMPA #$6A | |
521 6240 BNE WR4 | |
522 6250 LBSR SUBSC | |
523 6260 LBSR PUTHS | |
524 6270 FDB $03BD | |
525 6280 FDB SPACEA | |
526 6300 ** | |
527 6310 WR4 CMPA #$A9 | |
528 6320 BNE WR5 | |
529 6320 LBSR SUBSC | |
530 6340 LBSR PUTHS | |
531 6350 FDB $03BD | |
532 6360 FDB PUTCA | |
533 6370 RTS | |
534 6380 ** | |
535 6390 WR5 CMPA #$26 | |
536 6400 BNE WR6 | |
537 6410 LBSR DSUBSC | |
538 5420 LBSR PUTPLB | |
539 6430 LBSR PUTHS | |
540 6440 FDB $03BD | |
541 6450 FDB PUTDA+1 | |
542 6460 BRA WR66 | |
543 6470 ** | |
544 6480 WR6 LBSR EXPR | |
545 6490 LBSR PUTHS | |
546 6500 FDB $03BD | |
547 6510 FDB PUTDA | |
548 6520 WR66 CLR INDEX | |
549 530 RTS11 RTS | |
550 6540 ** | |
551 6750 * PUTX & PUTB | |
552 6560 ** | |
553 6570 PUTABX PSHS D | |
554 6580 BSR PUTX | |
555 6590 PULS D | |
556 6600 BRA PUTAB | |
557 6610 ** | |
558 6620 * PUT LP, OR GB BY INDEX | |
559 6630 ** | |
560 6640 PUTX LDB GLL | |
561 6650 CMPB INDEX | |
562 6660 BEQ RTS11 | |
563 6670 STB INDEX | |
564 6680 ADDB #LB+1 | |
565 6490 LDA #$DE | |
566 6700 *** | |
567 6710 * PUT ACC A&B | |
568 6720 ** | |
569 6730 PUTAB BSR PUTA | |
570 6740 TFR B,A | |
571 6750 ** | |
572 6760 * PUT ACCA RS AN OBJECT | |
573 6770 ** | |
574 6780 PUTA STX RNDH | |
575 6790 LBSR ROUT | |
576 6800 LDX RNDH | |
577 6810 RTS | |
578 6820 •* | |
579 6830 * PUTHS STRING | |
580 6840 ** | |
581 6850 PUTHS LDX ,S++ | |
582 6860 LDB ,X+ | |
583 6870 PS1 LDA ,X+ | |
584 6880 BSR PUTA | |
585 6890 DECB | |
586 6900 BNE PS1 | |
587 6910 JMP ,X | |
588 6920 ** | |
589 6930 ** CHECK ACC | |
590 6940 ** | |
591 6950 CHECK CMPA SY | |
592 6960 BEQ WORD | |
593 6970 ** | |
594 6980 * ERROR | |
595 6990 ** | |
596 7000 ERROR LBSR PUTSTR | |
597 7010 FDB $0D0A | |
598 7020 FCS "ERROR" | |
599 7030 LDX TEND | |
600 7040 LEAX 1,X | |
601 7050 NEG ,X | |
602 7060 ER0 LDA ,X+ | |
603 7070 LBSR PUTCA | |
604 7080 CMPX WEND | |
605 7090 BNE ER0 | |
606 7100 JMP GAME | |
607 7010 ** | |
608 7120 * WORD DECORDER | |
609 7130 ** | |
610 7140 WORD BSR WORDS | |
611 7150 LDA SY | |
612 7160 RTS | |
613 7170 WORDS CLRB | |
614 7180 STB SY | |
615 7190 STB VAL | |
616 7200 LDA CH | |
617 7210 ** SKIP CONT ,SPACE.; | |
618 7220 WD1 CMPA #$21 | |
619 7230 BCS SKIP | |
620 7340 CMPA #"." | |
621 7250 BEQ SKIP | |
622 7260 CMPA #";" | |
623 7270 BNE WD2 | |
624 7280 SKIP BSR GETCH | |
625 7290 BRA WD1 | |
626 7300 ** | |
627 7310 * COMMENT | |
628 7320 ** | |
629 7330 WD2 CMPA #"%" | |
630 7440 BNE WD3 | |
631 7350 BSR GETCH | |
632 7360 CMPA #$20 | |
633 7370 BCC *--4 | |
634 7380 BRA WD1 | |
635 7390 ** | |
636 7400 * ASCC CONST | |
637 7410 ** | |
638 7420 WD3 CMPA #"'" | |
639 7430 BNE WD4 | |
640 7440 BSR GETCH | |
641 7450 STA VAL | |
642 7460 BSR GETCH | |
643 7470 GETCH PSHS X | |
644 7480 LBSR MEMIN | |
645 7490 STA CH | |
646 7500 PULS X,PC | |
647 7510 * HEX CONSTANT | |
648 75221 WD4 CMPA #"$" | |
649 7530 BNE WD5 | |
650 7540 WD40 BSR GETCH | |
651 7560 BEQ WD41 | |
652 7570 BCC RTS2 | |
653 7580 | |
654 7590 BCC RTS2 | |
655 7600 SUBA #7 | |
656 7610 WD41 SUBA #"0" | |
657 7620 LDB VAL | |
658 7630 ASLB | |
659 7640 ASLB | |
660 7650 ASLB | |
661 7660 ASLB | |
662 7670 PSHS B | |
663 7680 ADDA ,S+ | |
664 7693 STA VAL | |
665 7700 BRA WD40 | |
666 7710 ** | |
667 7720 * TEST ALPHA NUMERIC | |
668 7730 TSTNA CMPA #"0" | |
669 7740 BCS NAF | |
670 7750 CMPA #'9'+1 | |
671 7760 BCS NT | |
672 7770 CMPA #"A" | |
673 7780 BCS NAF | |
674 7790 CMPA #'Z'+1 | |
675 7800 BCS AT | |
676 7810 NAF CLRB CLEAR C | |
677 7823 AT LDB #-1 | |
678 7833 RTS2 RTS | |
679 7840 NT CLRB | |
680 7350 RTS | |
681 7860 ** DECIMAL CONSTANT | |
682 7870 W5 BSR TSTNA | |
683 7883 BNE WD6 | |
684 7890 WD50 SUBA #"0" | |
685 7900 PSHS A | |
686 7910 LDA VAL | |
687 7920 LDB #10 | |
688 7930 MUL | |
689 7940 ADDA ,S+ | |
690 7950 STA VAL | |
691 7960 BSR GETCH | |
692 7970 BSR TSTNA | |
693 7980 BEQ WD50 | |
694 7990 RTS | |
695 8000 * THE OTHER WORDS | |
696 8010 LDX TEND | |
697 8020 PSHS A | |
698 8030 NEGA | |
699 8040 LEAX 1,X | |
700 8050 BSR STAONE | |
701 8060 PULS A | |
702 8070 BSR TSTNA | |
703 8080 BCC TLOOK1 | |
704 8090 WD61 LDA CH | |
705 8100 BSR TSTNA | |
706 8110 BCS *+4 | |
707 8120 BNE TLOOK1 | |
708 8130 BSR STRONE | |
709 8140 BRA W061 | |
710 8150 STAONE STA ,X+ | |
711 8160 STX WEND | |
712 8170 BRA GETCH | |
713 8180 TLOOK1 LDA RSW | |
714 8190 BEQ TLOOK | |
715 8200 COM RSW | |
716 8210 RTS | |
717 8220 ** | |
718 8230 * WORD TABLE SEARCH | |
719 8240 ** | |
720 8250 TLOOK LDA TCOUNG | |
721 8260 STA SY | |
722 8270 LDX TEND | |
723 8280 S01 LDU WEND | |
724 8290 S02 LDA ,-U | |
725 8300 CMPA ,-X | |
726 8310 BEQ S06 | |
727 8320 S03 TST ,X | |
728 8330 BEQ S05 | |
729 8340 BMI S04 | |
730 8350 LEAX -1,X | |
731 8360 BRA S03 | |
732 8370 S04 LEAX -1,X | |
733 8380 BRA S01 | |
734 8390 S05 DEC SY | |
735 8400 BNE S01 | |
736 8410 LBRA ERROR | |
737 8420 S6 TSTA | |
738 8430 BPL S02 | |
739 8440 LDB ,-X | |
740 8450 STB VAL | |
741 8460 LDA SY | |
742 8470 CMPA #1 | |
743 8480 BNE *+6 | |
744 8490 TFR B,A | |
745 8500 BRA S07 | |
746 8510 CMPA #4 | |
747 8520 BCS RTSS | |
748 8530 LDB #1 | |
749 8540 TST PMODE | |
750 8550 BEQ *+6 | |
751 8560 CMPA #6 | |
752 8570 BCS *+3 | |
753 8580 NEGB | |
754 8390 STB GL | |
755 8600 ANDA #$FD | |
756 8610 S07 STA SY | |
757 8620 RTSS RTS | |
758 8620 ** | |
759 8640 * ARITHMATIC EXPRESSION | |
760 8650 ** | |
761 8660 WEXPR LBSR WORD | |
762 8670 EXPR BSR LEXPR | |
763 8680 BSR OLOAD | |
764 8690 RTE RTS | |
765 8700 ** WORD * LEXPR | |
766 8710 WLEXPR LBSR WORD | |
767 8620 ** | |
768 8730 * LOGICAL EXPRESSION | |
769 8640 ** | |
770 8750 LEXPR BSR REEXPR | |
771 8760 LE1 LDY SY | |
772 8770 CMPA #$82 | |
773 8780 BCS RTE | |
774 6790 CMPA #$8A+1 | |
775 8800 BCC RTE | |
776 8810 PSHS A | |
777 8820 LBSR WORD | |
778 8830 BSR REXPR | |
779 8840 LDB LSW | |
780 3850 BNE LE2 | |
781 8860 LBSR PUTHS | |
782 8870 FDB $0397 | |
783 8880 FCB WT1 | |
784 8890 FCB $32 | |
785 8900 PULS A | |
786 8910 ADDA #$10 | |
787 8920 LDB #WT1 | |
788 8930 LBSR PUTAB | |
789 8940 BRA LE1 | |
790 8950 LE2 PULS A | |
791 8560 BSR OCORD | |
792 8970 BRA LE1 | |
793 8980 ** | |
794 8990 * RELATIONAL EXPRESS | |
795 8900 ** | |
796 9010 REXPR BSR AEXPR | |
797 9020 RE1 LDA SY | |
798 9030 CMPA #$21 | |
799 5040 BCS RTE | |
800 9350 CMPA #$30 | |
801 9060 BCC RTE | |
802 9070 PSHS A | |
803 9080 LBSR WORD | |
804 9090 ASR AEXPR | |
805 9100 LDA #$80 | |
806 9110 BSR AOPER | |
807 9120 PULS A | |
808 9130 LBSR PUTHS | |
809 9140 FCB 6 | |
810 9150 FCB $3,$4F,$20,$02,$86,$FF | |
811 9160 BRA RE1 | |
812 9170 ** ADDING OPERATFR | |
813 9180 ROPER LDB LSW | |
814 9190 BNE OCORD | |
815 9200 PSHS A | |
816 9210 CMPA #$80 | |
817 9220 BEQ *+5 | |
818 9230 BSR PUTPUL | |
819 9240 FCB $8C | |
820 9250 BSR PUTPLB | |
821 9260 PULS A | |
822 9270 SUBA #$70 | |
823 9280 PUTA1 LBRA PUTA | |
824 9290 ** OUTPUT SAVED L-CC | |
825 9300 OLOAD LDA LSW | |
826 9310 BEQ RTE | |
827 9320 LDA ACC | |
828 9330 BEQ *+6 | |
829 9340 LDA #$36 | |
830 9350 BSR PUTA1 | |
831 9360 LDA #$86 | |
832 9370 OCORD PSHS A | |
833 9380 CLRA | |
834 9390 STA LSW | |
835 9400 COMA | |
836 9410 STA ACC | |
837 9420 LDA AMODE | |
838 9430 CMPA #$20 | |
839 9440 BNE *+5 | |
840 9450 LBSR PUTX | |
841 9460 CLR LSW | |
842 9470 PULS A | |
843 9480 ADDA AMODE | |
844 9490 LDB OPER | |
845 3500 LBRA PUTAB | |
846 9510 * PUT 'TAB:PULS A' | |
847 9520 PUTPUL LBSR PUTHS | |
848 9530 FCB 2 | |
849 9540 FDB $1632 | |
850 9550 RTS | |
851 9560 | |
852 9570 | |
853 9580 BRA PUTA1 | |
854 9590 ** | |
855 9600 * ADDING EXPRESSION | |
856 9610 ** | |
857 9620 AEXPR BSR MEXPR | |
858 9630 AE1 LDA SY | |
859 9640 CMPA #$80 | |
860 9650 BEQ AE2 | |
861 9660 CMPA #$8B | |
862 9670 BNE RTE1 | |
863 9650 AE2 PSHS A | |
864 9690 LBSR WORD | |
865 9700 BSR MEXPR | |
866 9710 PULS A | |
867 9720 BSR ROPER | |
868 9730 BRA AE1 | |
869 9740 ** | |
870 9750 * MUTIPLYING EXPRESSION | |
871 9760 ** | |
872 9770 MEXPR BSR TERM | |
873 9780 ME1 LDA SY | |
874 9790 CMPA #$8E | |
875 9800 BEQ ME2 | |
876 9810 CMPA #$8F | |
877 9820 BNE RTE1 | |
878 9830 ME2 PSHS A | |
879 9840 LBSR WORD | |
880 9850 BSR TERM | |
881 9860 LDB LSW | |
882 9870 BEQ ME3 | |
883 9830 LDA #$C6 | |
884 9890 BSR OCORD | |
885 9900 FCB $8C | |
886 9910 ME3 BSR PUTPUL | |
887 9920 PULS A | |
888 9930 CMPA #$8E | |
889 9940 BHS ME4 | |
890 9950 LBSR PUTHS | |
891 9960 FCB 3 | |
892 9970 FCB $BD | |
893 9980 FDB MULT | |
894 9990 BRA ME1 | |
895 10000 ME4 LBSR PUTHS | |
896 10010 FCB 3 | |
897 10020 FCB $BD | |
898 10030 FDB DIV | |
899 10040 BRA ME1 | |
900 10050 ** | |
901 10060 * TERM | |
902 10070 ** | |
903 10080 TERM LDA SY | |
904 10050 BNE TM1 | |
905 10100 * SAVE L-COMMAND | |
906 10110 SLOAD, PSHS A | |
907 10120 LBSR OLOAD | |
908 10130 LDA VAL | |
909 10140 STA OPER | |
910 10150 LDA GL | |
911 10160 STA GLL | |
912 10170 PULS A | |
913 10180 STA PMODE | |
914 10190 COM LSW | |
915 10200 LBRA WORD | |
916 10210 * CONSTfTRUE & FALSE | |
917 10220 | |
918 10230 BEQ TM01 | |
919 10240 CMPA #$A1 | |
920 10250 BNE TM2 | |
921 10260 TM01 SUBA #$A1 | |
922 10270 STA VAL | |
923 10280 CLRA | |
924 10290 BRA SLOAD | |
925 10300 * SYSTEM VAR MHIGH & MOD | |
926 10310 TM2 CMPA #$16 | |
927 10220 BRA *+6 | |
928 10330 CMPA #$17 | |
929 10340 BNE TM3 | |
930 10350 STA VAL | |
931 10360 LDA #$10 | |
932 10370 BRA SLOAD | |
933 10380 * SIMPLE VARIABLE | |
934 10390 TM3 CMPA #4 | |
935 10400 BNE TM4 | |
936 10410 LDA #$20 | |
937 10420 BRA SLOAD | |
938 10430 * ( EXPTRSSION ) | |
939 10440 TM4 CMPA #$35 | |
940 10450 BCS TM5 | |
941 10460 CMPA #$38 | |
942 10470 BCC TM5 | |
943 10480 PSHS A | |
944 10490 LBSR WLEXPR | |
945 10500 PULS A | |
946 10510 ADDA #4 | |
947 10520 LBRA CHECK | |
948 10530 ** FUNCTION CALL | |
949 10540 TM5 CMPA #3 | |
950 10550 BMI *+6 | |
951 10560 CMPA #$E0 | |
952 10570 BCS TMG | |
953 10580 BSR OLP | |
954 10590 PFCALL LDA VAL | |
955 10600 PSHS A | |
956 10610 LBSR WORD | |
957 10620 CMPA #$37 | |
958 10630 BNE PFC1 | |
959 10640 LDA LSIZE | |
960 10650 PSHS A | |
961 10660 INC LSIZE | |
962 10670 PFC2 INC LSIZE | |
963 10680 LBSR WEXPR | |
964 10690 CLRB | |
965 10700 STB ACC | |
966 10710 DECB | |
967 10720 STB GLL | |
968 10730 LDA #$A7 | |
969 10740 LDB LSIZE | |
970 10750 LBSR PUTABX | |
971 10760 LDA SY | |
972 10770 CMPA #$3C | |
973 10780 BEQ PFC2 | |
974 10790 PULS A | |
975 10800 STA LSIZE | |
976 10810 LDA #$3B | |
977 10820 LBSR CHECK | |
978 10830 PFC1 LDB #-1 | |
979 10840 STB RCC | |
980 10850 STB INDEX | |
981 10860 LDA #$86 | |
982 10870 LDB LSIZE | |
983 10880 | |
984 10890 | |
985 10900 CMPA #$C0 | |
986 10910 BCC *+5 | |
987 10920 LBRA CALPF | |
988 10930 LDX #LIBR | |
989 10940 SUBA #$C0 | |
990 10950 PFC3 BEQ PFC4 | |
991 10960 LBSR PUTA | |
992 10970 DECA | |
993 10380 BRA PFC3 | |
994 10990 PFC4 LDA #$BD | |
995 11000 LBSR PUTA | |
996 11010 LDD ,X | |
997 11020 LBRA PUTAB | |
998 11030 ** | |
999 11040 OLP LBSR OLORD | |
1000 11050 LDB ACC | |
1001 11060 BEQ RTS4 | |
1002 11070 LDA #$36 | |
1003 11080 LBSR PUTA | |
1004 11090 CLR ACC | |
1005 11100 RTS4 RTS | |
1006 11110 ** FUNCTION RND | |
1007 11120 TM6 CMPA #$70 | |
1008 11130 BNE T161 | |
1009 11140 BSR SUBSC | |
1010 11150 LBSR PUTHS | |
1011 11160 FCB $03BD | |
1012 11170 FDB RND | |
1013 11180 RTS | |
1014 11190 * FUNTION GET | |
1015 11200 TM61 CMPA #$71 | |
1016 11210 BNE TM62 | |
1017 11220 BSR SUBSC | |
1018 11230 LBSR PUTHS | |
1019 11240 FDB $0597 | |
1020 11250 FCB INDN,$BD | |
1021 11260 FDB GETCH | |
1022 11270 RTS | |
1023 11280 * FUNCTION READ | |
1024 11290 TM62 CMPA #$72 | |
1025 11300 BNE TM7 | |
1026 11310 BSR SUBSC | |
1027 11320 LBSR PUTHS | |
1028 11330 FDB $0597 | |
1029 11340 FDB INDN | |
1030 11350 FCB $8D | |
1031 11360 FDB GETDA | |
1032 11370 RTS | |
1033 11280 * FUNCTION NOTASL ET AL | |
1034 11390 TM7 CMPA #$40 | |
1035 11400 BCS TM8 | |
1036 11410 CMPA #$49+1 | |
1037 11420 BCC TM8 | |
1038 11430 PSHS A | |
1039 11440 BSR SUBSC | |
1040 11450 PULS A | |
1041 11450 LBRA PUTA | |
1042 11470 * ARRAY | |
1043 11480 TMS CMPA #$5 | |
1044 11490 BNE TM9 | |
1045 11500 LDB VAL | |
1046 11510 PSHS B | |
1047 11520 LDB GL | |
1048 11530 PSHS B | |
1049 11540 BSR SUBSC1 | |
1050 11550 PULS B | |
1051 11560 STB GLL | |
1052 11570 PULS B | |
1053 11580 LDA LSW | |
1054 11590 BEQ ARY1 | |
1055 11600 ADDB OPER | |
1056 11610 STB OPER | |
1057 11620 LDA #$20 | |
1058 11630 STA ANODE | |
1059 11640 RTS | |
1060 11650 ARY1 LDA #$8B | |
1061 11660 LBSR PUTABX | |
1062 11670 LBRA LDAAX | |
1063 11680 ** | |
1064 11690 DSUBSC LDA #$3C | |
1065 11700 BSR SIUBS1 | |
1066 11710 LDA #$3B | |
1067 11720 PSHS A | |
1068 11730 BRA SUBS2 | |
1069 11740 SUBSC LDA #$3E | |
1070 11750 SUBC1 PSHS A | |
1071 11760 LBSR WORD | |
1072 11770 LDA #$37 | |
1073 11780 LBSR CHECK | |
1074 11790 LBSR EXPR | |
1075 11800 PULS A | |
1076 11810 LBRA CHECK | |
1077 11820 SUBSC1 LBSR WORD | |
1078 11830 LDA #$36 | |
1079 11240 LBSR CHECK | |
1080 11850 LBSR LEXPR | |
1081 11860 LDB LSW | |
1082 11870 BEQ SBS5 | |
1083 11880 LDB AMODE | |
1084 11890 BEQ SBS5 | |
1085 11900 LBSR OLOAD | |
1086 11910 SB35 LDA #$3A | |
1087 11920 LBRA CHECK | |
1088 11930 * MEM FUNCTION | |
1089 11940 TM9 CMPA #6 | |
1090 11950 BNE TM10 | |
1091 11960 BSR DSUBSC | |
1092 11970 LBSR PUTHS | |
1093 11980 FDB $0997 | |
1094 11990 FCB WT2 | |
1095 12000 FDB $3297 | |
1096 12010 FCB WT1,$DE,WT1 | |
1097 12020 FDB $A600 | |
1098 12030 CLR INDEX | |
1099 12040 RTS | |
1100 12050 ** FOR EXPANTION | |
1101 12060 TMI0 BRA ERROR | |
1102 12070 ** | |
1103 12080 * LIBRARY ADDRESSS TABLE | |
1104 12090 ** | |
1105 12100 LIBR RMB 80 | |
1106 12110 ** | |
1107 12120 * ADDRESS DEPENDENT CODE | |
1108 12130 * GENARATION | |
1109 12140 ** | |
1110 12150 * SET PRC—FUNC TABLE | |
1111 12160 ** | |
1112 12170 SETPFT PSHS A | |
1113 12180 LDB #3 | |
1114 12190 MUL | |
1115 12200 ADDD PFTBEG | |
1116 12210 STD XR | |
1117 12220 PULS A,PC | |
1118 12230 ** | |
1119 12240 TWICE LBSR PUTSTR | |
1120 12250 FCB $0D,$0A | |
1121 12260 FCS "TWICE!" | |
1122 12270 JMP GAME | |
1123 12280 ** | |
1124 12290 * DEF PROC-FUNC | |
1125 12300 ** | |
1126 12310 DEFPF BSR SETPFT | |
1127 12320 LDX XR | |
1128 12330 TST ,X | |
1129 12740 BNE TWICE | |
1130 12350 COM ,X | |
1131 12360 LDX 1,X | |
1132 12370 STX YR | |
1133 12380 LDX XR | |
1134 12400 BSR PCST | |
1135 12410 LDX YR | |
1136 12420 DP1 BEQ RT10 | |
1137 12430 LDX ,X | |
1138 12440 STX ZR | |
1139 12450 LDX YR | |
1140 12460 BSR PCST | |
1141 12470 LDX ZR | |
1142 17480 STX YR | |
1143 12490 BRA DP1 | |
1144 12500 ** | |
1145 12510 * CALL POR0-FUNC | |
1146 12520 ** | |
1147 12530 CRLPF BSR SETPFT | |
1148 12540 INCA | |
1149 12550 CMPA PFMAX | |
1150 12560 BCS *+4 | |
1151 12570 STA PFMAX | |
1152 12580 LDA #$BD | |
1153 12590 BSR AOUT | |
1154 12600 LDX XR | |
1155 12610 LDD 1,X | |
1156 12620 LDX PC | |
1157 12630 BSR STAABX | |
1158 12640 LDX XR | |
1159 12650 TST , X | |
1160 12660 BNE PC2ADD | |
1161 12670 LEAX 1,X | |
1162 12680 BSR PCST | |
1163 12690 BRA PC2ADD | |
1164 12700 ** | |
1165 12710 * PUL-DEF N TIMES | |
1166 12720 ** | |
1167 12730 PLDFN PSHS A | |
1168 12740 BSR PULDEF | |
1169 12750 DEC ,S | |
1170 12760 BNE *-4 | |
1171 12770 PULS A,PC | |
1172 12780 ** | |
1173 12790 * PULL AND DEFINE | |
1174 12800 ** | |
1175 12810 PULDEF BSR PULSTK | |
1176 12820 PCST LDD PC | |
1177 12830 STAABX STD ,X | |
1178 12840 PT10 RTS | |
1179 12850 ** | |
1180 12860 JMPOUT LDA #$7E | |
1181 12870 ROUT LDX PC | |
1182 12880 STA ,X | |
1183 12890 BRA INCPC1 | |
1184 12900 ** | |
1185 12910 PULSTK LDX SP | |
1186 12920 LEAX 2,x | |
1187 12930 STX SP | |
1188 12940 LDD ,X | |
1189 12950 LDX ,X | |
1190 12960 RTS | |
1191 12970 ** | |
1192 12980 * PUL STACK & Jump | |
1193 12990 ** | |
1194 13000 PULJMP BSR JMPOUT | |
1195 13010 BSR PULSTK | |
1196 13020 PCST2 LDX PC | |
1197 13030 BSR STAABX | |
1198 13040 INCPC LEAX 1,X | |
1199 13050 INCPC1 LEAX 1,X | |
1200 13060 SETPC STX PC | |
1201 13070 RTS | |
1202 13080 ** | |
1203 13090 * PUSH STACK & JUMP | |
1204 13100 ** | |
1205 13110 PSHJMP BSR JMPOUT | |
1206 13120 BSR PSHDEF | |
1207 13130 PC2ADD LDX PC | |
1208 13140 BRA INCPC | |
1209 13150 ** | |
1210 13160 * PUSH STRCK & DEFINE | |
1211 13170 ** | |
1212 13189 TSHDEF LDX SP | |
1213 13190 BSR PCST | |
1214 13200 LEAX -2,X | |
1215 13210 STX SP | |
1216 13220 RTS | |
1217 13240 OUTPC3 BSR ROUT | |
1218 13250 LDD PC | |
1219 13260 ADDD #3 | |
1220 13270 BRA PCST2 | |
1221 13280 ** | |
1222 13290 * LDA R,X | |
1223 13300 LDAAX LDA #$B7 | |
1224 13310 BSR OUTPC3 | |
1225 13320 LDA #$A6 | |
1226 13730 LA1 BSR ROUT | |
1227 13340 BRA INCPC1 | |
1228 13350 ** | |
1229 13360 * STA B,X | |
1230 13370 STABX LDA #$F7 | |
1231 13380 BSR OUTPC3 | |
1232 13390 LDA #$A7 | |
1233 13400 BRA LA1 | |
1234 13410 ** | |
1235 13420 * STACK TOP CHANGE | |
1236 13430 ** | |
1237 13440 STCHG LDU SP | |
1238 13450 LEAU 2,U | |
1239 13460 PULU D,X | |
1240 13470 EXG D,X | |
1241 13480 PSHU D,X | |
1242 13490 RTS | |
1243 135n0 ** | |
1244 13510 * END OF LOAD | |
1245 13320 ** | |
1246 13530 ENDL LDX PFTBEG | |
1247 13340 LDA PFMAX | |
1248 13550 EL1 BEQ EL | |
1249 13560 TST ,X | |
1250 13570 BEQ UDERR | |
1251 13580 EL2 LEAX 3,X | |
1252 13590 DECA | |
1253 13600 BRA EL1 | |
1254 13610 UDERR PSHS A | |
1255 13620 STA ZR | |
1256 13630 SUBA PFMAX | |
1257 13640 NEGA | |
1258 13650 PSHS A | |
1259 13660 LBSR PUTSTR | |
1260 13670 FDB $0D0A | |
1261 13680 FCS "UNDEF" | |
1262 13690 PULS A | |
1263 13700 LBSR PUTCA | |
1264 13710 PULS A | |
1265 13720 LDX ZR | |
1266 13730 BRA EL2 | |
1267 13740 EL LDX PC | |
1268 13750 STX VARPTR+1,PCR | |
1269 13760 JMP GAME | |
1270 13770 ** | |
1271 13780 * INPUT ROUTINE | |
1272 13790 * GET ONE CHR FORM MEMORY | |
1273 13810 MEMIN LDX SREG | |
1274 13820 LDA ,X+ | |
1275 13830 BEQ LEND | |
1276 13840 MEM1 STX SREG | |
1277 13850 MEM2 LBRA PUTCR | |
1278 13860 LEND LDA #$D | |
1279 13870 BSR MEM2 | |
1280 13860 LDA #$A | |
1281 13890 TST ,X++ | |
1282 13900 BPL MEM1 | |
1283 13910 LDA #"/" | |
1284 13920 RTS | |
1285 13930 ********************** | |
1286 13940 * ADVANCE WORD | |
1287 13950 ** | |
1288 13960 WTABLE FCB 0 END MARK | |
1289 13970 FCB $30,-'P' | |
1290 13980 FCC "ROC" | |
1291 13990 FCB $31,-'F' | |
1292 14000 FCC "UNC" | |
1293 14010 FCB $32, 'V' | |
1294 14020 FCC "AR" | |
1295 14030 FCB $33,-'A' | |
1296 14040 FCC "RRAY" | |
1297 14030 FCB $34, -'B' | |
1298 14060 FCC "EGIN" | |
1299 14070 FCB $35,';' | |
1300 14080 FCB $36,-'[' | |
1301 14090 FCB $37,-'(' | |
1302 '4100 FCB $38,-'E' | |
1303 14110 FCC "ND" | |
1304 14120 FCB $39, -'=' | |
1305 14130 FCB $3A,-']' | |
1306 14140 FCB $3B,-')' | |
1307 14150 FCB $3C,-';' | |
1308 14160 FCB $3D,-':' | |
1309 14170 FCB $50,-'S' | |
1310 14180 FCC "TOP" | |
1311 14190 FCB $51,-'R' | |
1312 14200 FCC "ETURN" | |
1313 14210 FCB $55,-'I' | |
1314 14220 FCC "F" | |
1315 14230 FCB $65,-'T' | |
1316 14240 FCC "HEN" | |
1317 14250 FCB $53,-'F' | |
1318 14260 FCC "OR" | |
1319 14270 FCB $61,-'T' | |
1320 14280 FCC "O" | |
1321 14290 FCB $52, -'R' | |
1322 14300 FCC "EPEATI1 | |
1323 14310 FCB $60,-'U' | |
1324 14320 FCC "NTIL" | |
1325 14330 FCB $54, -'W' | |
1326 14340 FCC "HILE" | |
1327 14350 FCB $64,-'D' | |
1328 14360 FCC "O" | |
1329 14370 FCB $56,-'C' | |
1330 14380 FCC "ASE" | |
1331 14390 FCB $66, -'O' | |
1332 14400 FCC "F" | |
1333 14410 FCB $67,-'E' | |
1334 14420 FCC "LSE" | |
1335 14430 FCB $57, -'W' | |
1336 14440 FCC "RITE" | |
1337 14450 FCB $69,-'A' | |
1338 14460 FCC "SCII" | |
1339 14470 FCB $6A,-'S' | |
1340 14480 FCC "PACE" | |
1341 14490 FCB $68,-'C' | |
1342 14500 FCC "RLF" | |
1343 14510 FCB $6C,-'"' | |
1344 14520 FCB $8B,-'+' | |
1345 14530 FCB $80,-'-' | |
1346 14540 FCB $8E -'*' | |
1347 14550 FCB $8F,-'/' | |
1348 14560 FCB $82,-'S' | |
1349 14570 FCC "BC" | |
1350 14580 FCB $84 —'A' | |
1351 14590 FCC "ND" | |
1352 14600 FCB $88,-'E' | |
1353 14610 FCC "OR" | |
1354 14620 FCB $89,-'A' | |
1355 14630 FCC "DC" | |
1356 14640 FCB $8A,-'O' | |
1357 14650 FCC ”R" | |
1358 14660 FCB $22,-'>' | |
1359 14670 FCB $25,-'<' | |
1360 14680 FCB $26,-'#' | |
1361 14690 FCB $27,-'=' | |
1362 14700 FCB $2D,-'L','T' | |
1363 14710 FCB $2E,-'G','T' | |
1364 14720 FCB $40,-'N','E','G' | |
1365 14730 FCB $43,-'N','O','T' | |
1366 14740 FCB,$43,-'C','O','M' | |
1367 14750 FCB $44,-'L','S','R' | |
1368 14760 FCB $46,-'R','O','R' | |
1369 14790 FCB $47,-'A','S','R' | |
1370 14590 FCB $48,-'A','S','L' | |
1371 14590 FCB $49,-'R','O','L' | |
1372 14590 FCB $06,-'M','E','M' | |
1373 14810 FCB $A0,-'T' | |
1374 14820 FCC "RUE" | |
1375 14830 FCB $A1,-'F' | |
1376 14840 FCC "ALSE" | |
1377 14850 FCB $16,-'M' | |
1378 14660 FCC "HIGH" | |
1379 14870 FCB $17,-'M' | |
1380 14880 FCC "OD" | |
1381 14890 FCB $70,-'R','N','D' | |
1382 14900 FCB $71,-'G','E','T' | |
1383 14910 FCB $72,-'R' | |
1384 14920 FCC "EAD" | |
1385 14930 ****** | |
1386 14940 WTBLE RMB $500 | |
1387 14950 ****** | |
1388 14960 * SUPORTING ROUTINES | |
1389 14970 * & I/0 CONTROL | |
1390 14980 ** | |
1391 14990 SYSTEM EQU $8837 | |
1392 13000 RUB EQU $8 | |
1393 13010 STACK EQU $FEE00 | |
1394 15020 ** OBJECT START | |
1395 15030 C LDS #STACK | |
1396 15040 VARPTR LDX #0 | |
1397 15050 STX G8 | |
1398 15060 STX LB | |
1399 15070 OBJMP JMP >0 | |
1400 15080 ** | |
1401 15090 * PUSH LB & SET NEW LP | |
1402 15100 ** | |
1403 15110 PSHLB CLRB | |
1404 15120 ADDD LB | |
1405 15130 STD WT1 | |
1406 15140 LDX WT1 | |
1407 15150 LDD LB | |
1408 15160 STD ,X++ | |
1409 15170 STX LB | |
1410 13180 RTS | |
1411 15190 ** | |
1412 15200 * PULL LB | |
1413 15210 ** | |
1414 13220 PULLB LDX LB | |
1415 15230 LDX ,--X | |
1416 15240 STX LB | |
1417 15250 TSTA | |
1418 15260 RTS | |
1419 15270 ** | |
1420 13280 * RND FUNCTION | |
1421 15290 ** | |
1422 15300 RND PSHS A | |
1423 13310 LDA RNDL | |
1424 15320 LDB $125 | |
1425 15330 MUL | |
1426 15340 ADDD #1 | |
1427 15350 STA RNDL | |
1428 15360 PSHS A | |
1429 15370 LDA RNDH | |
1430 15380 LDB #125 | |
1431 15390 MUL | |
1432 15400 ADDA ,S+ | |
1433 15410 STA RNDH | |
1434 15420 PULS B | |
1435 15430 MUL | |
1436 15440 INCA | |
1437 15450 RTS | |
1438 15460 ** | |
1439 15470 * DVISITION SET MOD | |
1440 15480 ** | |
1441 15490 DIV STB WT1 | |
1442 13500 BEQ ERDIV | |
1443 15510 TFR A,B | |
1444 15520 CLRA | |
1445 15530 STA WT2 | |
1446 15540 DV0 INC WT2 | |
1447 15550 ASL WT1 | |
1448 15560 BCC DV0 | |
1449 15570 DV1 ROR WT1 | |
1450 15580 CMPB WT1 | |
1451 15590 BCS DV2 | |
1452 15600 SUBB WT1 | |
1453 15510 ORCC #1 | |
1454 15520 BRA *+4 | |
1455 15530 DV2 ANDCC #$FE CLR C | |
1456 15640 ROLA | |
1457 15650 DEC WT2 | |
1458 15670 STB MOD | |
1459 15680 TSTA | |
1460 15690 RTS | |
1461 15700 ** | |
1462 15710 ERDIV STB COUTDN | |
1463 17720 LBSR CRLF | |
1464 15730 LBSR PUTSTR | |
1465 15740 FCC "ERR DIV 0" | |
1466 15750 MONIT JMP SYSTEM | |
1467 15760 ** | |
1468 15770 MULT MUL | |
1469 15780 STA MHIGH | |
1470 15790 TFR B,A | |
1471 15800 RTS | |
1472 15810 ** | |
1473 15820 * PUT A IN DECIMAL | |
1474 15830 ** | |
1475 15840 PUTDA CLRB | |
1476 15850 PUTDR STB DREG | |
1477 15860 LEAX ,S | |
1478 15870 LEAS -4,S | |
1479 15880 CLR 1,X | |
1480 15890 LDB #3 | |
1481 15900 P0 PSHS B | |
1482 15910 LDB #10 | |
1483 15920 BSR DIV | |
1484 15930 ADDB #$30 | |
1485 15940 STB ,X | |
1486 15950 LEAX -1,X | |
1487 15960 PULS B | |
1488 15970 DECB | |
1489 15980 BNE P0 | |
1490 15990 COMA 3,X | |
1491 16000 LDA #"0" | |
1492 16010 LDB #4 | |
1493 16020 P1 LEAX 1,X | |
1494 16030 DECB | |
1495 16040 CMPA ,X | |
1496 16050 BEQ P1 | |
1497 16060 COM 4,S | |
1498 16070 LDA DREG | |
1499 16080 PSHS B | |
1500 16090 SUBA ,S+ | |
1501 16100 BCS PRX | |
1502 16110 BSR SPACER | |
1503 16120 PRX LDB ,X | |
1504 16130 BEQ P4 | |
1505 16140 BSR PUTCA | |
1506 16150 LEAX 1,X | |
1507 16160 BRA PRX | |
1508 16170 P4 LEAS 4,S | |
1509 16180 CL1 RTS | |
1510 16190 ** | |
1511 16200 * GET IN A DECIMAL | |
1512 16210 ** | |
1513 16220 GETDA CLRA | |
1514 16230 PSHS A | |
1515 16240 BSR GETCA | |
1516 16250 CMPA #RUB | |
1517 16265 BNE GD1 | |
1518 16275 PULS A | |
1519 16280 LDB #10 | |
1520 16290 LBSR DIV | |
1521 16300 BRA GETDA+1 | |
1522 16310 GD1 SUBA #"0" | |
1523 16320 BCS GD2 | |
1524 16330 CMPA #10 | |
1525 16340 BCC GD2 | |
1526 16355 STA DBUF | |
1527 16365 PULS A | |
1528 16370 LDB #10 | |
1529 16380 MUL | |
1530 16390 ADDB DBUF | |
1531 16405 TFR B,A | |
1532 16415 BRA GETDA+1 | |
1533 16420 GD2 PULS A,PC | |
1534 16430 ** | |
1535 16445 * SPACE A TIMES | |
1536 16455 ** | |
1537 16460 SPFICEA BEQ CL1 | |
1538 16470 PSHS A | |
1539 16485 LDA #" " | |
1540 16490 BSR PUTCA | |
1541 16500 PULS A | |
1542 16310 DECA | |
1543 16520 BRA SPACER | |
1544 16530 ** | |
1545 16540 * STR OUT | |
1546 16550 ** | |
1547 16560 PUTSTR PSHS X | |
1548 16570 LDX 2,S | |
1549 16560 STR1 LDA ,X+ | |
1550 16590 BEQ STR2 | |
1551 16650 LBSR PUTCA | |
1552 16610 BRA STR1 | |
1553 16620 STR2 STX 2,S | |
1554 16630 PULS X,PC | |
1555 16640 ** | |
1556 16650 * CRLF | |
1557 16660 ** | |
1558 16670 CRLF LDA #$0D | |
1559 16680 BSR PUTCA | |
1560 16690 LDA LDA #$0A | |
1561 16755 BRA PUTCA | |
1562 16710 ** | |
1563 16725 * CRLF A TIMES | |
1564 16730 ** | |
1565 16740 CRLFA BEQ CL1 | |
1566 16750 PSHS A | |
1567 16760 BSR CRLF | |
1568 16770 PULS A | |
1569 16780 DECA | |
1570 16790 BRA CRLFA | |
1571 16800 ** | |
1572 16810 * PUTCHR A | |
1573 16820 ** | |
1574 16830 PUTCA PSHS X | |
1575 16840 LDB OUTDN | |
1576 16850 LEAX OUTAT,PC | |
1577 16860 ASLB | |
1578 16870 JSR [B,X] | |
1579 16880 PULS X,PC | |
1580 16890 ** | |
1581 16900 * GET ACCA ONE CHR | |
1582 16910 ** | |
1583 16920 GETCA PSHS X | |
1584 16930 LDB INDN | |
1585 16940 LEAX INAT,PC | |
1586 16950 ASLB | |
1587 16960 JSR [B,X] | |
1588 16970 PULS X, PC | |
1589 16980 ** | |
1590 16990 * INPUT ROUTINE ADDRESS | |
1591 17000 ** | |
1592 17010 INAT FDB INEEE | |
1593 17020 RMB 4 | |
1594 17030 RMB 14 | |
1595 17040 ** | |
1596 17050 * OUTPUT ROUTINE ADDRESS | |
1597 17060 ** | |
1598 17070 OUTAT FDB OUTEEE | |
1599 17080 RMB 6 | |
1600 17090 RMB 12 | |
1601 17100 | |
1602 17110 * OBJECT PG AREA | |
1603 17120 | |
1604 17130 OBJECT NOP | |
1605 17140 END |