0
|
1 nam Tmode
|
|
2 ttl program module
|
|
3
|
|
4 * Disassembled 98/09/11 18:35:13 by Disasm v1.6 (C) 1988 by RML
|
|
5
|
|
6 ifp1
|
|
7 use defsfile
|
|
8 endc
|
|
9
|
|
10 tylg set Prgrm+Objct
|
|
11 atrv set ReEnt+rev
|
|
12 rev set $01
|
|
13 edition set 12
|
|
14
|
|
15 mod eom,name,tylg,atrv,start,size
|
|
16
|
|
17 u0000 rmb 1
|
|
18 u0001 rmb 1
|
|
19 u0002 rmb 1
|
|
20 u0003 rmb 2
|
|
21 u0005 rmb 1
|
|
22 u0006 rmb 1
|
|
23 u0007 rmb 32
|
|
24 u0027 rmb 10
|
|
25 u0031 rmb 526
|
|
26 size equ .
|
|
27
|
|
28 name fcs /Tmode/
|
|
29 fcb edition
|
|
30 fcb $00
|
|
31 fcb $17
|
|
32 L0015 fcb $FF
|
|
33 fcb $01
|
|
34 fcb $01
|
|
35 fcb $01
|
|
36 fcs "upc"
|
|
37 fcb $FF
|
|
38 fcb $01
|
|
39 fcb $02
|
|
40 fcb $01
|
|
41 fcs "bsb"
|
|
42 fcb $FF
|
|
43 fcb $00
|
|
44 fcb $03
|
|
45 fcb $00
|
|
46 fcs "bsl"
|
|
47 fcb $FF
|
|
48 fcb $01
|
|
49 fcb $04
|
|
50 fcb $01
|
|
51 fcs "echo"
|
|
52 fcb $FF
|
|
53 fcb $01
|
|
54 fcb $05
|
|
55 fcb $01
|
|
56 fcs "lf"
|
|
57 fcb $00
|
|
58 fcb $00
|
|
59 fcb $06
|
|
60 fcb $00
|
|
61 fcs "null"
|
|
62 fcb $FF
|
|
63 fcb $01
|
|
64 fcb $07
|
|
65 fcb $01
|
|
66 fcs "pause"
|
|
67 fcb $00
|
|
68 fcb $18
|
|
69 fcb $08
|
|
70 fcb $00
|
|
71 fcs "pag"
|
|
72 fcb $01
|
|
73 fcb $08
|
|
74 fcb $09
|
|
75 fcb $00
|
|
76 fcs "bsp"
|
|
77 fcb $01
|
|
78 fcb $18
|
|
79 fcb $0A
|
|
80 fcb $00
|
|
81 fcs "del"
|
|
82 fcb $01
|
|
83 fcb $0D
|
|
84 fcb $0B
|
|
85 fcb $00
|
|
86 fcs "eor"
|
|
87 fcb $01
|
|
88 fcb $1B
|
|
89 fcb $0C
|
|
90 fcb $00
|
|
91 fcs "eof"
|
|
92 fcb $01
|
|
93 fcb $04
|
|
94 fcb $0D
|
|
95 fcb $00
|
|
96 fcs "reprint"
|
|
97 fcb $01
|
|
98 fcb $01
|
|
99 fcb $0E
|
|
100 fcb $00
|
|
101 fcs "dup"
|
|
102 fcb $01
|
|
103 fcb $17
|
|
104 fcb $0F
|
|
105 fcb $00
|
|
106 fcs "psc"
|
|
107 fcb $01
|
|
108 fcb $03
|
|
109 fcb $10
|
|
110 fcb $00
|
|
111 fcs "abort"
|
|
112 fcb $01
|
|
113 fcb $05
|
|
114 fcb $11
|
|
115 fcb $00
|
|
116 fcs "quit"
|
|
117 fcb $01
|
|
118 fcb $08
|
|
119 fcb $12
|
|
120 fcb $00
|
|
121 fcs "bse"
|
|
122 fcb $01
|
|
123 fcb $07
|
|
124 fcb $13
|
|
125 fcb $00
|
|
126 fcs "bell"
|
|
127 fcb $01
|
|
128 fcb $15
|
|
129 fcb $14
|
|
130 fcb $00
|
|
131 fcs "type"
|
|
132 fcb $01
|
|
133 fcb $02
|
|
134 fcb $15
|
|
135 fcb $00
|
|
136 fcs "baud"
|
|
137 fcb $01
|
|
138 fcb $11
|
|
139 fcb $18
|
|
140 fcb $00
|
|
141 fcs "xon"
|
|
142 fcb $01
|
|
143 fcb $13
|
|
144 fcb $19
|
|
145 fcb $00
|
|
146 fcs "xoff"
|
|
147
|
|
148 start lda #$32
|
|
149 sta <u0002
|
|
150 pshs y,x,b,a
|
|
151 lda #$01
|
|
152 ldb #$26
|
|
153 os9 I$GetStt
|
|
154 bcc L00DB
|
|
155 cmpb #$D0
|
|
156 beq L00E4
|
|
157 puls y,x,b,a
|
|
158 bra L0120
|
|
159 L00DB cmpx #$0037
|
|
160 bge L00E4
|
|
161 lda #$16
|
|
162 sta <u0002
|
|
163 L00E4 puls y,x,b,a
|
|
164 leay ,x
|
|
165 bsr L0123
|
|
166 clra
|
|
167 cmpb #$2E
|
|
168 bne L00FB
|
|
169 leay 1,y
|
|
170 lda ,y+
|
|
171 suba #$30
|
|
172 cmpa #$10
|
|
173 lbcc L0181
|
|
174 L00FB sta <u0000
|
|
175 ldb #$00
|
|
176 leax u0007,u
|
|
177 os9 I$GetStt
|
|
178 bcs L0120
|
|
179 bsr L0123
|
|
180 cmpb #$0D
|
|
181 lbeq L01F0
|
|
182 L010E bsr L0134
|
|
183 bcs L0181
|
|
184 cmpb #$0D
|
|
185 bne L010E
|
|
186 lda <u0000
|
|
187 ldb #$00
|
|
188 os9 I$SetStt
|
|
189 bcs L0120
|
|
190 clrb
|
|
191 L0120 os9 F$Exit
|
|
192 L0123 ldb ,y+
|
|
193 cmpb #$2C
|
|
194 bne L012B
|
|
195 L0129 ldb ,y+
|
|
196 L012B cmpb #$20
|
|
197 beq L0129
|
|
198 leay -$01,y
|
|
199 andcc #$FE
|
|
200 rts
|
|
201 L0134 clr <u0001
|
|
202 lda ,y
|
|
203 cmpa #$2D
|
|
204 bne L0140
|
|
205 inc <u0001
|
|
206 leay $01,y
|
|
207 L0140 sty <u0003
|
|
208 leax >L0015,pcr
|
|
209 lbsr L02D1
|
|
210 bcs L0181
|
|
211 lda ,x
|
|
212 bpl L015C
|
|
213 L0150 ldb $01,x
|
|
214 L0152 lda $02,x
|
|
215 eorb <u0001
|
|
216 leax u0007,u
|
|
217 stb a,x
|
|
218 bra L0123
|
|
219 L015C tst <u0001
|
|
220 bne L0181
|
|
221 ldb ,y
|
|
222 cmpb #$3D
|
|
223 bne L0150
|
|
224 leay $01,y
|
|
225 tsta
|
|
226 bne L01AA
|
|
227 clrb
|
|
228 L016C lda ,y
|
|
229 suba #$30
|
|
230 cmpa #$09
|
|
231 bhi L01C1
|
|
232 pshs a
|
|
233 leay $01,y
|
|
234 lda #$0A
|
|
235 mul
|
|
236 addb ,s+
|
|
237 adca #$00
|
|
238 beq L016C
|
|
239 L0181 leax <L0192,pcr
|
|
240 ldy #$000E
|
|
241 bsr L01A4
|
|
242 ldx <u0003
|
|
243 bsr L01A0
|
|
244 clrb
|
|
245 os9 F$Exit
|
|
246 L0192 fcc "SYNTAX Error: "
|
|
247 L01A0 ldy #$0050
|
|
248 L01A4 lda #$01
|
|
249 os9 I$WritLn
|
|
250 rts
|
|
251 L01AA bsr L01D1
|
|
252 bcs L0181
|
|
253 pshs b
|
|
254 bsr L01D1
|
|
255 puls a
|
|
256 bcc L01B9
|
|
257 clrb
|
|
258 exg a,b
|
|
259 L01B9 lsla
|
|
260 lsla
|
|
261 lsla
|
|
262 lsla
|
|
263 pshs a
|
|
264 addb ,s+
|
|
265 L01C1 lda ,y
|
|
266 cmpa #$20
|
|
267 beq L0152
|
|
268 cmpa #$0D
|
|
269 beq L0152
|
|
270 cmpa #$2C
|
|
271 beq L0152
|
|
272 bra L0181
|
|
273 L01D1 ldb ,y
|
|
274 subb #$30
|
|
275 cmpb #$09
|
|
276 bls L01E9
|
|
277 cmpb #$31
|
|
278 bcs L01DF
|
|
279 subb #$20
|
|
280 L01DF subb #$07
|
|
281 cmpb #$0F
|
|
282 bhi L01EE
|
|
283 cmpb #$0A
|
|
284 bcs L01EE
|
|
285 L01E9 andcc #$FE
|
|
286 leay $01,y
|
|
287 rts
|
|
288 L01EE comb
|
|
289 rts
|
|
290 L01F0 clr <u0005
|
|
291 lda #$2F
|
|
292 lbsr L02AF
|
|
293 leax <u0031,u
|
|
294 lda <u0000
|
|
295 ldb #$0E
|
|
296 os9 I$GetStt
|
|
297 bsr L024A
|
|
298 lda #$0D
|
|
299 lbsr L02AF
|
|
300 leax >L0015,pcr
|
|
301 leay u0007,u
|
|
302 clrb
|
|
303 L020F lda b,y
|
|
304 bsr L0221
|
|
305 incb
|
|
306 cmpb #$20
|
|
307 bcs L020F
|
|
308 lda #$0D
|
|
309 lbsr L02AF
|
|
310 clrb
|
|
311 os9 F$Exit
|
|
312 L0221 pshs u,y,x,b,a
|
|
313 ldy -$02,x
|
|
314 L0226 cmpb $02,x
|
|
315 beq L0236
|
|
316 leax $04,x
|
|
317 L022C lda ,x+
|
|
318 bpl L022C
|
|
319 leay -$01,y
|
|
320 bne L0226
|
|
321 puls pc,u,y,x,b,a
|
|
322 L0236 bsr L02AD
|
|
323 tst ,x
|
|
324 bpl L025E
|
|
325 lda ,s
|
|
326 cmpa $03,x
|
|
327 beq L0246
|
|
328 lda #$2D
|
|
329 bsr L02AF
|
|
330 L0246 bsr L024E
|
|
331 puls pc,u,y,x,b,a
|
|
332 L024A pshs x
|
|
333 bra L0252
|
|
334 L024E pshs x
|
|
335 leax $04,x
|
|
336 L0252 lda ,x
|
|
337 anda #$7F
|
|
338 bsr L02AF
|
|
339 lda ,x+
|
|
340 bpl L0252
|
|
341 puls pc,x
|
|
342 L025E bsr L024E
|
|
343 lda #$3D
|
|
344 bsr L02AF
|
|
345 tst ,x
|
|
346 bne L0291
|
|
347 ldb ,s
|
|
348 lda #$2F
|
|
349 clr <u0006
|
|
350 L026E inca
|
|
351 subb #$64
|
|
352 bcc L026E
|
|
353 bsr L0286
|
|
354 lda #$3A
|
|
355 L0277 deca
|
|
356 addb #$0A
|
|
357 bcc L0277
|
|
358 bsr L0286
|
|
359 tfr b,a
|
|
360 adda #$30
|
|
361 bsr L02AF
|
|
362 puls pc,u,y,x,b,a
|
|
363 L0286 inc <u0006
|
|
364 cmpa #$30
|
|
365 bne L02AF
|
|
366 dec <u0006
|
|
367 bne L02AF
|
|
368 rts
|
|
369 L0291 lda ,s
|
|
370 anda #$F0
|
|
371 lsra
|
|
372 lsra
|
|
373 lsra
|
|
374 lsra
|
|
375 bsr L02A3
|
|
376 lda ,s
|
|
377 anda #$0F
|
|
378 bsr L02A3
|
|
379 puls pc,u,y,x,b,a
|
|
380 L02A3 adda #$30
|
|
381 cmpa #$39
|
|
382 bls L02AF
|
|
383 adda #$07
|
|
384 bra L02AF
|
|
385 L02AD lda #$20
|
|
386 L02AF pshs y,x,b,a
|
|
387 leax <u0027,u
|
|
388 ldb <u0005
|
|
389 sta b,x
|
|
390 cmpa #$0D
|
|
391 beq L02C9
|
|
392 incb
|
|
393 cmpb <u0002
|
|
394 bcs L02CD
|
|
395 cmpa #$20
|
|
396 bne L02CD
|
|
397 lda #$0D
|
|
398 sta b,x
|
|
399 L02C9 lbsr L01A0
|
|
400 clrb
|
|
401 L02CD stb <u0005
|
|
402 puls pc,y,x,b,a
|
|
403 L02D1 pshs u,y,x
|
|
404 ldu -$02,x
|
|
405 L02D5 ldy $02,s
|
|
406 stx ,s
|
|
407 leax $04,x
|
|
408 L02DC lda ,x+
|
|
409 eora ,y+
|
|
410 anda #$DF
|
|
411 lsla
|
|
412 bne L02ED
|
|
413 bcc L02DC
|
|
414 sty $02,s
|
|
415 clra
|
|
416 puls pc,u,y,x
|
|
417 L02ED leax -$01,x
|
|
418 L02EF lda ,x+
|
|
419 bpl L02EF
|
|
420 leau -u0001,u
|
|
421 cmpu #$0000
|
|
422 bne L02D5
|
|
423 coma
|
|
424 puls pc,u,y,x
|
|
425
|
|
426 emod
|
|
427 eom equ *
|
|
428 end
|