comparison 3rdparty/drivers/s16550/s16550.asm @ 878:b2983d97e218

Added for later use
author boisy
date Fri, 17 Jan 2003 04:12:47 +0000
parents
children
comparison
equal deleted inserted replaced
877:c684d4897a63 878:b2983d97e218
1 00001 nam s16550
2 00002 ttl os9 device driver
3 00003
4 00004 * Disassembled 96/09/20 17:17:26 by Disasm v1.5 (C) 1988 by RML
5 00005
6 00006 ifp1
7 00007 use /dd/defs/os9defs
8 00008 endc
9 00009 00E1 tylg set Drivr+Objct
10 00010 0081 atrv set ReEnt+rev
11 00011 0001 rev set $01
12 00012 0000 87CD0799 mod eom,name,tylg,atrv,start,size
13
14 00013 D 0000 u0000 rmb 1 V.PAGE
15 00014 D 0001 u0001 rmb 2 V.PORT
16 00015 D 0003 u0003 rmb 1 V.LPRC
17 00016 D 0004 u0004 rmb 1 V.BUSY
18 00017 D 0005 u0005 rmb 1 V.WAKE
19 00018 D 0006 u0006 rmb 1 V.TYPE
20 u0007 rmb 1 V.LINE
21 00019 D 0008 u0008 rmb 1 V.PAUS
22 00020 D 0009 u0009 rmb 2 V.DEV2
23 00022 D 000B u000B rmb 1 V.INTR
24 00023 D 000C u000C rmb 1 V.QUIT
25 00024 D 000D u000D rmb 1 V.PCHR
26 00025 D 000E u000E rmb 1 V.ERR
27 00026 D 000F u000F rmb 1 V.XON
28 00027 D 0010 u0010 rmb 4 V.XOFF
29 u0011 rmb 1 V.KANJI
30 u0012 rmb 2 V.KBUF
31 00028 D 0014 u0014 rmb 2 V.MODADR
32 00029 D 0016 u0016 rmb 2 V.PDLHD
33 u0018 rmb 5 V.RSV
34 00030 D 001D u001D rmb 1
35 00031 D 001E u001E rmb 1
36 00032 D 001F u001F rmb 1
37 00033 D 0020 u0020 rmb 1
38 00034 D 0021 u0021 rmb 1
39 00035 D 0022 u0022 rmb 1
40 00036 D 0023 u0023 rmb 2
41 00037 D 0025 u0025 rmb 2
42 00038 D 0027 u0027 rmb 1 * signal code (for send)
43 00039 D 0028 u0028 rmb 1
44 00040 D 0029 u0029 rmb 1
45 00041 D 002A u002A rmb 2
46 00042 D 002C u002C rmb 2
47 00043 D 002E u002E rmb 2
48 00044 D 0030 u0030 rmb 2
49 00045 D 0032 u0032 rmb 2 V.BUFADDR
50 00046 D 0034 u0034 rmb 1
51 00047 D 0035 u0035 rmb 1
52 00048 D 0036 u0036 rmb 2 V.BUFSIZ
53 00049 D 0038 u0038 rmb 2 xmit buff addr?
54 00050 D 003A u003A rmb 1
55 00051 D 003B u003B rmb 1
56 00052 D 003C u003C rmb 2
57 00053 D 003E u003E rmb 2
58 00054 D 0040 u0040 rmb 1
59 00055 D 0041 u0041 rmb 2
60 00056 D 0043 u0043 rmb 1
61 00057 D 0044 u0044 rmb 52
62 00058 D 0078 u0078 rmb 8
63 00059 D 0080 u0080 rmb 128 * ???baud table???
64
65 00060 D 0100 size equ .
66 00061 000D 03 fcb $03
67 00062 000E name equ *
68 00063 000E 73313635 fcs /s16550/
69 00064 0014 10 fcb $10
70 00065 0015 03 L0015 fcb $03
71
72 00066 0016 start equ *
73 00067 0016 16005A lbra Iniz |SCF jump table
74 00068 0019 160160 lbra Read |
75 00069 001C 160114 lbra Write |
76 00070 001F 1601EC lbra GetSta |
77 00071 0022 160324 lbra SetSta |
78 * Term |
79
80 00072 0025 5F clrb
81 00073 0026 340D pshs dp,b,cc
82 00074 0028 1704FB lbsr UtoDP
83
84 00075 002B 1A50 orcc #$50
85 00076 002D 4F clra
86 00077 002E DD34 std <u0034
87 00078 0030 9E32 ldx <u0032
88 00079 0032 9F2C stx <u002C
89 00080 0034 9F2E stx <u002E
90 00081 0036 3416 pshs x,b,a
91 00082 0038 E664 ldb $04,s
92 00083 003A 1F9A tfr b,cc
93 00084 003C BE0050 ldx >$0050
94 00085 003F A684 lda ,x
95 00086 0041 9704 sta <V.BUSY
96 00087 0043 9703 sta <V.LPRC
97 00088 0045 0D40 L0045 tst <u0040
98 00089 0047 2608 bne L0051
99
100 00090 0049 9E01 ldx <V.PORT
101 00091 004B E605 ldb $05,x
102 00092 004D C420 andb #$20
103 00093 004F 260D bne exit *exit routine
104
105 00094 0051 1704BA L0051 lbsr L050E
106 00095 0054 EC62 ldd $02,s
107 00096 0056 DD2C std <u002C
108 00097 0058 ECE4 ldd ,s
109 00098 005A DD34 std <u0034
110 00099 005C 20E7 bra L0045
111
112 00100 005E 3264 exit leas $04,s * EXIT-----------------------
113 00101 0060 6F01 clr $01,x
114 00102 0062 6F04 clr $04,x
115 00103 0064 DC36 ldd <V.BUFSIZ |num bytes to return
116 00104 0066 DE32 ldu <V.BUFADDR |st addr ram to return
117 00105 0068 103F29 os9 F$SRtMem |return system memory
118 00106 006B 8E0000 ldx #$0000 |
119 00107 006E 103F2A os9 F$IRQ |remove from poll
120 00108 0071 358D puls pc,dp,b,cc
121
122 *** crash into init from exit? ***
123
124 00109 0073 5F Iniz clrb
125 00110 0074 340D pshs dp,b,cc
126 00111 0076 1704AD lbsr UtoDP
127
128 00112 0079 DC01 ldd <u0001 |dev. base addr
129 00113 007B C30002 addd #$0002 |status register=base+2
130 00114 007E 3420 pshs y dev.desc. addr>stack
131 00115 0080 308D06CF leax >Data,pcr |addr packet
132 00116 0084 318D04B3 leay >IRQser,pcr |addr irq service routine
133 00117 0088 103F2A os9 F$IRQ |add to poll
134 00118 008B 3520 puls y dev.desc. addr
135 00119 008D 2406 bcc checkdesc
136
137 00120 008F 3503 puls a,cc
138 00121 0091 1A01 orcc #$01
139 00122 0093 3588 puls pc,dp
140 00123 0095 A6A811 checkdesc lda <$11,y bytes in init table
141 00124 0098 811C cmpa #$1C
142 00125 009A 230E bls L00AA
143
144 00126 009C A6A82E lda <$2E,y
145 00127 009F 8410 anda #$10
146 00128 00A1 971F sta <u001F
147 00129 00A3 A6A82E lda <$2E,y
148 00130 00A6 840F anda #$0F
149 00131 00A8 2602 bne L00AC
150
151 00132 00AA 8601 L00AA lda #$01
152 00133 00AC 5F L00AC clrb
153 00134 00AD 3440 pshs u save U
154 00135 00AF 103F28 os9 F$SRqMem |Request System RAM
155 |(D=byte cnt)
156 00136 00B2 1F31 tfr u,x |start addr to x
157 00137 00B4 3540 puls u restore U
158 00138 00B6 240D bcc L00C5 |error?
159
160 00139 00B8 E761 stb $01,s
161 00140 00BA 8E0000 ldx #$0000 set remove
162 00141 00BD 103F2A os9 F$IRQ Set IRQ (remove from poll)
163 00142 00C0 350D puls dp,b,cc
164 00143 00C2 1A01 orcc #$01
165 00144 00C4 39 rts
166
167 00145 00C5 9F32 L00C5 stx <u0032
168 00146 00C7 9F2C stx <u002C
169 00147 00C9 9F2E stx <u002E
170 00148 00CB DD36 std <u0036
171 00149 00CD 308B leax d,x
172 00150 00CF 9F30 stx <u0030
173 00151 00D1 1F89 tfr a,b
174 00152 00D3 4F clra
175 00153 00D4 CB03 addb #$03
176 00154 00D6 C40C andb #$0C
177 00155 00D8 58 lslb
178 00156 00D9 58 lslb
179 00157 00DA 58 lslb
180 00158 00DB 3406 pshs b,a
181 00159 00DD DC36 ldd <u0036
182 00160 00DF A3E1 subd ,s++
183 00161 00E1 DD2A std <u002A
184 00162 00E3 30C844 leax <u0044,u
185 00163 00E6 9F3E stx <u003E
186 00164 00E8 9F38 stx <u0038
187 00165 00EA 9F3A stx <u003A
188 00166 00EC 30C90100 leax >u0100,u
189 00167 00F0 9F3C stx <u003C
190 00168 00F2 CC00BC ldd #$00BC
191 00169 00F5 DD41 std <u0041
192 00170 00F7 0F34 clr <u0034
193 00171 00F9 0F35 clr <u0035
194 00172 00FB 0F40 clr <u0040
195 00173 00FD ECA826 ldd <$26,y
196 00174 0100 DD1D std <u001D
197 00175 0102 170203 lbsr L0308
198
199 00176 0105 9E01 ldx <V.PORT
200 00177 0107 C610 ldb #$10
201 00178 0109 A605 L0109 lda $05,x
202 00179 010B A684 lda ,x
203 00180 010D 5A decb
204 00181 010E 26F9 bne L0109
205
206 00182 0110 1A50 orcc #$50
207 00183 0112 A68DFEFF lda >L0015,pcr
208 00184 0116 2B03 bmi L011B
209
210 00185 0118 B7FF7F sta >$FF7F * set mpi slot
211 00186 011B B6FF23 L011B lda >$FF23 * CART IRQ flag
212 00187 011E 84FC anda #$FC
213 00188 0120 B7FF23 sta >$FF23 * CART IRQ ctrl
214 00189 0123 B6FF22 lda >$FF22 * ???ram size???
215 00190 0126 B60092 lda >$0092
216 00191 0129 8A01 ora #$01
217 00192 012B B70092 sta >$0092
218 00193 012E B7FF92 sta >$FF92 * IRQENR irq enable
219 00194 0131 358D puls pc,dp,b,cc
220 00195 0133 5F Write clrb
221 00196 0134 340D pshs dp,b,cc
222 00197 0136 1703ED lbsr UtoDP u=dev mem area
223
224 00198 0139 9E38 ldx <u0038
225 00199 013B A780 sta ,x+ character to write
226 00200 013D 9C3C cmpx <u003C
227 00201 013F 2502 bcs L0143
228
229 00202 0141 9E3E ldx <u003E
230 00203 0143 9C3A L0143 cmpx <u003A
231 00204 0145 260A bne L0151
232
233 00205 0147 3410 pshs x
234 00206 0149 8D19 bsr L0164
235
236 00207 014B 3510 puls x
237 00208 014D 24F4 bcc L0143
238 00209 014F 2006 bra L0157
239
240 00210 0151 9F38 L0151 stx <u0038
241 00211 0153 0C40 inc <u0040
242 00212 0155 8D02 bsr L0159
243
244 00213 0157 358D L0157 puls pc,dp,b,cc
245 00214 0159 860F L0159 lda #$0F
246 00215 015B 2002 bra L015F
247
248 00216 015D 860D lda #$0D
249 00217 015F 9E01 L015F ldx <V.PORT
250 00218 0161 A701 sta $01,x
251 00219 0163 39 rts
252
253 00220 0164 1703A7 L0164 lbsr L050E
254
255 00221 0167 BE0050 ldx >$0050
256 00222 016A E68819 ldb <$19,x
257 00223 016D 2704 beq L0173
258
259 00224 016F C103 cmpb #$03
260 00225 0171 2306 bls L0179
261
262 00226 0173 E60C L0173 ldb $0C,x
263 00227 0175 C402 andb #$02
264 00228 0177 2702 beq L017B
265
266 00229 0179 1A01 L0179 orcc #$01
267 00230 017B 39 L017B rts
268 00231 017C 5F Read clrb
269 00232 017D 340D pshs dp,b,cc
270 00233 017F 1703A4 lbsr UtoDP dev.mem. to dp
271
272 00234 0182 D60E ldb <V.ERR
273 00235 0184 262C bne ReadErr
274
275 00236 0186 1A50 L0186 orcc #$50 FIRQ,IRQ mask
276 00237 0188 DC34 ldd <u0034
277 00238 018A 271B beq L01A7
278
279 00239 018C 10830010 cmpd #$0010
280 00240 0190 2602 bne L0194
281
282 00241 0192 8D33 bsr L01C7
283
284 00242 0194 830001 L0194 subd #$0001
285 00243 0197 DD34 std <u0034
286 00244 0199 9E2E ldx <u002E
287 00245 019B A680 lda ,x+
288 00246 019D 9C30 cmpx <u0030
289 00247 019F 2602 bne L01A3
290
291 00248 01A1 9E32 ldx <u0032
292 00249 01A3 9F2E L01A3 stx <u002E
293 00250 01A5 358D puls pc,dp,b,cc
294
295 00251 01A7 8DBB L01A7 bsr L0164
296
297 00252 01A9 2502 bcs L01AD
298
299 00253 01AB 20D9 bra L0186
300
301 00254 01AD 350B L01AD puls dp,a,cc
302 00255 01AF 1A01 orcc #$01
303 00256 01B1 39 rts
304
305 00257 01B2 E7A83A ReadErr stb <$3A,y b=V.ERR
306 00258 01B5 0F0E clr <V.ERR
307 00259 01B7 350B puls dp,a,cc
308 00260 01B9 C520 bitb #$20 $20=bit 5
309 00261 01BB 2705 beq L01C2
310
311 00262 01BD C6F4 ldb #$F4
312 00263 01BF 1A01 orcc #$01
313 00264 01C1 39 rts
314
315 00265 01C2 C6DC L01C2 ldb #$DC
316 00266 01C4 1A01 orcc #$01
317 00267 01C6 39 rts
318
319 00268 01C7 3407 L01C7 pshs b,a,cc
320 00269 01C9 9E01 ldx <V.PORT
321 00270 01CB D628 ldb <u0028
322 00271 01CD C570 bitb #$70
323 00272 01CF 2712 beq L01E3
324
325 00273 01D1 C520 bitb #$20
326 00274 01D3 2710 beq L01E5
327
328 00275 01D5 1A50 orcc #$50
329 00276 01D7 D628 ldb <u0028
330 00277 01D9 C4DF andb #$DF
331 00278 01DB D728 stb <u0028
332 00279 01DD A604 lda $04,x
333 00280 01DF 8A0A ora #$0A
334 00281 01E1 A704 sta $04,x
335 00282 01E3 3587 L01E3 puls pc,b,a,cc
336 00283 01E5 C510 L01E5 bitb #$10
337 00284 01E7 2710 beq L01F9
338
339 00285 01E9 1A50 orcc #$50
340 00286 01EB D628 ldb <u0028
341 00287 01ED C4EF andb #$EF
342 00288 01EF D728 stb <u0028
343 00289 01F1 A604 lda $04,x
344 00290 01F3 8A05 ora #$05
345 00291 01F5 A704 sta $04,x
346 00292 01F7 20EA bra L01E3
347
348 00293 01F9 C540 L01F9 bitb #$40
349 00294 01FB 27E6 beq L01E3
350
351 00295 01FD D60F ldb <V.XON
352 00296 01FF 1A50 orcc #$50
353 00297 0201 D743 stb <u0043
354 00298 0203 17FF53 lbsr L0159
355 00299 0206 D628 ldb <u0028
356 00300 0208 C4BF andb #$BF
357 00301 020A D728 stb <u0028
358 00302 020C 20D5 bra L01E3
359
360 00303 020E 5F GetSta clrb
361 00304 020F 340D pshs dp,b,cc
362 00305 0211 170312 lbsr UtoDP
363 00306 0214 8101 cmpa #$01
364 00307 0216 2618 bne L0230
365
366 00308 0218 DC34 ldd <u0034
367 00309 021A 270C beq L0228
368
369 00310 021C 4D tsta
370 00311 021D 2702 beq L0221
371
372 00312 021F C6FF ldb #$FF
373 00313 0221 AE26 L0221 ldx $06,y
374 00314 0223 E702 stb $02,x
375 00315 0225 1600DE lbra L0306
376
377 00316 0228 3505 L0228 puls b,cc
378 00317 022A 1A01 orcc #$01
379 00318 022C C6F6 ldb #$F6
380 00319 022E 3588 puls pc,dp
381 00320 0230 8128 L0230 cmpa #$28
382 00321 0232 2624 bne L0258
383
384 00322 0234 DC1D ldd <u001D
385 00323 0236 0D1F tst <u001F
386 00324 0238 2706 beq L0240
387
388 00325 023A C504 bitb #$04
389 00326 023C 2602 bne L0240
390
391 00327 023E C4F7 andb #$F7
392 00328 0240 AE26 L0240 ldx $06,y
393 00329 0242 ED06 std $06,x
394 00330 0244 5F clrb
395 00331 0245 9620 lda <u0020
396 00332 0247 8580 bita #$80
397 00333 0249 2602 bne L024D
398
399 00334 024B CA10 orb #$10
400 00335 024D 8520 L024D bita #$20
401 00336 024F 2602 bne L0253
402
403 00337 0251 CA40 orb #$40
404 00338 0253 E702 L0253 stb $02,x
405 00339 0255 1600AE lbra L0306
406 00340 0258 8106 L0258 cmpa #$06
407 00341 025A 2604 bne L0260
408
409 00342 025C 5F clrb
410 00343 025D 1600A6 lbra L0306
411 00344 0260 81D0 L0260 cmpa #$D0
412 00345 0262 266A bne L02CE
413
414 00346 0264 D60E ldb <V.ERR
415 00347 0266 1026FF48 lbne L01B2
416 00348 026A 1A50 orcc #$50
417 00349 026C DC30 ldd <u0030
418 00350 026E 932E subd <u002E
419 00351 0270 109334 cmpd <u0034
420 00352 0273 2504 bcs L0279
421
422 00353 0275 DC34 ldd <u0034
423 00354 0277 27AF beq L0228
424
425 00355 0279 1CAF L0279 andcc #$AF
426 00356 027B EE26 ldu $06,y
427 00357 027D 10A346 cmpd V.TYPE,u
428 00358 0280 2302 bls L0284
429
430 00359 0282 EC46 ldd V.TYPE,u
431 00360 0284 ED46 L0284 std V.TYPE,u
432 00361 0286 2744 beq L02CC
433
434 00362 0288 3406 pshs b,a
435 00363 028A 3470 pshs u,y,x
436 00364 028C ED62 std $02,s
437 00365 028E DC2E ldd <u002E
438 00366 0290 EDE4 std ,s
439 00367 0292 EC44 ldd V.BUSY,u
440 00368 0294 ED64 std $04,s
441 00369 0296 BE0050 ldx >$0050
442 00370 0299 E606 ldb $06,x * |dest task num
443 00371 029B B600D0 lda >$00D0 * |source task num
444 00372 029E 3570 puls u,y,x * |dest pt, bytes, srce pt
445 00373 02A0 103F38 os9 F$Move * |move data
446 00374 02A3 1A50 orcc #$50
447 00375 02A5 DC34 ldd <u0034
448 00376 02A7 A3E4 subd ,s
449 00377 02A9 DD34 std <u0034
450 00378 02AB 1CAF andcc #$AF
451 00379 02AD 10830010 cmpd #$0010
452 00380 02B1 240B bcc L02BE
453
454 00381 02B3 E3E4 addd ,s
455 00382 02B5 10830010 cmpd #$0010
456 00383 02B9 2503 bcs L02BE
457
458 00384 02BB 17FF09 lbsr L01C7
459
460 00385 02BE 3506 L02BE puls b,a
461 00386 02C0 9E2E ldx <u002E
462 00387 02C2 308B leax d,x
463 00388 02C4 9C30 cmpx <u0030
464 00389 02C6 2602 bne L02CA
465
466 00390 02C8 9E32 ldx <u0032
467 00391 02CA 9F2E L02CA stx <u002E
468 00392 02CC 2038 L02CC bra L0306
469
470 00393 02CE 81D2 L02CE cmpa #$D2
471 00394 02D0 2613 bne L02E5
472
473 00395 02D2 CC0B04 ldd #$0B04
474 00396 02D5 AE26 ldx $06,y
475 00397 02D7 ED01 std $01,x
476 00398 02D9 CC0707 ldd #$0707
477 00399 02DC ED04 std $04,x
478 00400 02DE CC0001 ldd #$0001
479 00401 02E1 ED06 std $06,x
480 00402 02E3 2021 bra L0306
481
482 00403 02E5 8126 L02E5 cmpa #$26
483 00404 02E7 2615 bne L02FE
484
485 00405 02E9 AE26 ldx $06,y
486 00406 02EB 10AE23 ldy $03,y
487 00407 02EE 10AE24 ldy $04,y
488 00408 02F1 4F clra
489 00409 02F2 E6A82C ldb <$2C,y
490 00410 02F5 ED04 std $04,x
491 00411 02F7 E6A82D ldb <$2D,y
492 00412 02FA ED06 std $06,x
493 00413 02FC 2008 bra L0306
494
495 00414 02FE 3505 L02FE puls b,cc
496 00415 0300 1A01 orcc #$01
497 00416 0302 C6D0 ldb #$D0
498 00417 0304 3588 puls pc,dp
499 00418 0306 358D L0306 puls pc,dp,b,cc
500 00419 0308 3440 L0308 pshs u
501 00420 030A 1F98 tfr b,a
502 00421 030C 338D0446 leau >L0756,pcr
503 00422 0310 9E01 ldx <V.PORT
504 00423 0312 C40F andb #$0F
505 00424 0314 58 lslb
506 00425 0315 58 lslb
507 00426 0316 33C5 leau b,u
508 00427 0318 44 lsra
509 00428 0319 44 lsra
510 00429 031A 44 lsra
511 00430 031B 44 lsra
512 00431 031C 44 lsra
513 00432 031D 8803 eora #$03
514 00433 031F 8403 anda #$03
515 00434 0321 3403 pshs a,cc
516 00435 0323 961D lda <u001D
517 00436 0325 44 lsra
518 00437 0326 44 lsra
519 00438 0327 8438 anda #$38
520 00439 0329 AA61 ora $01,s
521 00440 032B A761 sta $01,s
522 00441 032D 8A80 ora #$80
523 00442 032F 1A50 orcc #$50
524 00443 0331 A703 sta $03,x
525 00444 0333 ECC1 ldd ,u++
526 00445 0335 1E89 exg a,b
527 00446 0337 ED84 std ,x
528 00447 0339 A661 lda $01,s
529 00448 033B A703 sta $03,x
530 00449 033D ECC4 ldd ,u
531 00450 033F 9721 sta <u0021
532 00451 0341 8A06 ora #$06
533 00452 0343 A702 sta $02,x
534 00453 0345 D729 stb <u0029
535 00454 0347 35C3 puls pc,u,a,cc
536 00455 0349 5F SetSta clrb
537 00456 034A 340D pshs dp,b,cc
538 00457 034C 1701D7 lbsr UtoDP
539
540 00458 034F 81D1 cmpa #$D1
541 00459 0351 267F bne L03D2
542
543 00460 0353 EE26 ldu $06,y
544 00461 0355 AE44 ldx V.BUSY,u
545 00462 0357 EC46 ldd V.TYPE,u
546 00463 0359 3416 pshs x,b,a
547 00464 035B 2764 beq L03C1
548
549 00465 035D DC3A L035D ldd <u003A
550 00466 035F 10933E cmpd <u003E
551 00467 0362 2607 bne L036B
552
553 00468 0364 DC3C ldd <u003C
554 00469 0366 830001 subd #$0001
555 00470 0369 200A bra L0375
556
557 00471 036B 830001 L036B subd #$0001
558 00472 036E 109338 cmpd <u0038
559 00473 0371 2402 bcc L0375
560
561 00474 0373 DC3C ldd <u003C
562 00475 0375 9338 L0375 subd <u0038
563 00476 0377 274D beq L03C6
564
565 00477 0379 10A3E4 cmpd ,s
566 00478 037C 2302 bls L0380
567
568 00479 037E ECE4 ldd ,s
569 00480 0380 3406 L0380 pshs b,a
570 00481 0382 BE0050 ldx >$0050
571 00482 0385 A606 lda $06,x
572 00483 0387 F600D0 ldb >$00D0
573 00484 038A DE38 ldu <u0038
574 00485 038C AE64 ldx $04,s
575 00486 038E 10AEE4 ldy ,s
576 00487 0391 1A50 orcc #$50
577 00488 0393 103F38 os9 F$Move
578 00489 0396 ECE4 ldd ,s
579 00490 0398 DE38 ldu <u0038
580 00491 039A 33CB leau d,u
581 00492 039C 11933C cmpu <u003C
582 00493 039F 2502 bcs L03A3
583
584 00494 03A1 DE3E ldu <u003E
585 00495 03A3 DF38 L03A3 stu <u0038
586 00496 03A5 4F clra
587 00497 03A6 D640 ldb <u0040
588 00498 03A8 E3E4 addd ,s
589 00499 03AA D740 stb <u0040
590 00500 03AC 1CAF andcc #$AF
591 00501 03AE ECE4 ldd ,s
592 00502 03B0 AE64 ldx $04,s
593 00503 03B2 308B leax d,x
594 00504 03B4 AF64 stx $04,s
595 00505 03B6 EC62 ldd $02,s
596 00506 03B8 A3E1 subd ,s++
597 00507 03BA EDE4 std ,s
598 00508 03BC 269F bne L035D
599
600 00509 03BE 17FD98 lbsr L0159
601 00510 03C1 3264 L03C1 leas $04,s
602 00511 03C3 160146 lbra L050C
603 00512 03C6 1A50 L03C6 orcc #$50
604 00513 03C8 17FD8E lbsr L0159
605 00514 03CB 17FD96 lbsr L0164
606 00515 03CE 248D bcc L035D
607
608 00516 03D0 20EF bra L03C1
609
610 00517 03D2 8128 L03D2 cmpa #$28
611 00518 03D4 262C bne L0402
612
613 00519 03D6 AE26 ldx $06,y
614 00520 03D8 EC06 ldd $06,x
615 00521 03DA 0D1F tst <u001F
616 00522 03DC 2706 beq L03E4
617
618 00523 03DE C504 bitb #$04
619 00524 03E0 2602 bne L03E4
620
621 00525 03E2 CA08 orb #$08
622 00526 03E4 DD1D L03E4 std <u001D
623 00527 03E6 17FF1F lbsr L0308
624 00528 03E9 0F22 clr <u0022
625 00529 03EB 0D0C tst <V.QUIT
626 00530 03ED 2610 bne L03FF
627
628 00531 03EF 0D0B tst <V.INTR
629 00532 03F1 260C bne L03FF
630
631 00533 03F3 0D0D tst <V.PCHR
632 00534 03F5 2608 bne L03FF
633
634 00535 03F7 D61D ldb <u001D
635 00536 03F9 C504 bitb #$04
636 00537 03FB 2602 bne L03FF
637
638 00538 03FD 0C22 inc <u0022
639 00539 03FF 16010A L03FF lbra L050C
640 00540 0402 812B L0402 cmpa #$2B
641 00541 0404 2617 bne L041D
642
643 00542 0406 9E01 ldx <V.PORT
644 00543 0408 A604 lda $04,x
645 00544 040A 3412 pshs x,a
646 00545 040C 84FA anda #$FA
647 00546 040E A704 sta $04,x
648 00547 0410 8E001E ldx #$001E
649 00548 0413 103F0A os9 F$Sleep
650 00549 0416 3512 puls x,a
651 00550 0418 A704 sta $04,x
652 00551 041A 1600EF lbra L050C
653 00552 041D 811D L041D cmpa #$1D
654 00553 041F 2640 bne L0461
655
656 00554 0421 1A50 orcc #$50
657 00555 0423 9E01 ldx <V.PORT
658 00556 0425 9628 lda <u0028
659 00557 0427 8A08 ora #$08
660 00558 0429 9728 sta <u0028
661 00559 042B 8D50 bsr L047D
662
663 00560 042D 4F clra
664 00561 042E A784 sta ,x
665 00562 0430 1A50 L0430 orcc #$50
666 00563 0432 A605 lda $05,x
667 00564 0434 8540 bita #$40
668 00565 0436 260C bne L0444
669
670 00566 0438 1CAF andcc #$AF
671 00567 043A 8E0001 ldx #$0001
672 00568 043D 103F0A os9 F$Sleep
673 00569 0440 9E01 ldx <V.PORT
674 00570 0442 20EC bra L0430
675
676 00571 0444 8A40 L0444 ora #$40
677 00572 0446 A703 sta $03,x
678 00573 0448 8E001E ldx #$001E
679 00574 044B 103F0A os9 F$Sleep
680 00575 044E 9E01 ldx <V.PORT
681 00576 0450 1A50 orcc #$50
682 00577 0452 A603 lda $03,x
683 00578 0454 84BF anda #$BF
684 00579 0456 A703 sta $03,x
685 00580 0458 9628 lda <u0028
686 00581 045A 84F7 anda #$F7
687 00582 045C 9728 sta <u0028
688 00583 045E 1600AB lbra L050C
689 00584 0461 811A L0461 cmpa #$1A
690 00585 0463 262B bne L0490
691
692 00586 0465 A625 lda $05,y
693 00587 0467 AE26 ldx $06,y
694 00588 0469 E605 ldb $05,x
695 00589 046B 1A50 orcc #$50
696 00590 046D 9E34 ldx <u0034
697 00591 046F 2605 bne L0476
698
699 00592 0471 DD25 std <u0025
700 00593 0473 160096 lbra L050C
701 00594 0476 3501 L0476 puls cc
702 00595 0478 103F08 os9 F$Send
703 00596 047B 358C puls pc,dp,b
704 00597 047D 860D L047D lda #$0D
705 00598 047F A701 sta $01,x
706 00599 0481 0F40 clr <u0040
707 00600 0483 DC3E ldd <u003E
708 00601 0485 DD3A std <u003A
709 00602 0487 DD38 std <u0038
710 00603 0489 9621 lda <u0021
711 00604 048B 8A04 ora #$04
712 00605 048D A702 sta $02,x
713 00606 048F 39 rts
714 00607 0490 811B L0490 cmpa #$1B
715 00608 0492 260C bne L04A0
716
717 00609 0494 A625 lda $05,y
718 00610 0496 9125 cmpa <u0025
719 00611 0498 2604 bne L049E
720
721 00612 049A 4F clra
722 00613 049B 5F clrb
723 00614 049C DD25 std <u0025
724 00615 049E 206C L049E bra L050C
725
726 00616 04A0 819A L04A0 cmpa #$9A
727 00617 04A2 260A bne L04AE
728
729 00618 04A4 A625 lda $05,y
730 00619 04A6 AE26 ldx $06,y
731 00620 04A8 E605 ldb $05,x
732 00621 04AA DD23 std <u0023
733 00622 04AC 205E bra L050C
734
735 00623 04AE 819B L04AE cmpa #$9B
736 00624 04B0 260E bne L04C0
737
738 00625 04B2 1A50 orcc #$50
739 00626 04B4 A625 lda $05,y
740 00627 04B6 9123 cmpa <u0023
741 00628 04B8 2604 bne L04BE
742
743 00629 04BA 4F clra
744 00630 04BB 5F clrb
745 00631 04BC DD23 std <u0023
746 00632 04BE 204C L04BE bra L050C
747
748 00633 04C0 812A L04C0 cmpa #$2A
749 00634 04C2 2615 bne L04D9
750
751 00635 04C4 1A50 orcc #$50
752 00636 04C6 A625 lda $05,y
753 00637 04C8 8E0000 ldx #$0000
754 00638 04CB 9125 cmpa <u0025
755 00639 04CD 2602 bne L04D1
756
757 00640 04CF 9F25 stx <u0025
758 00641 04D1 9123 L04D1 cmpa <u0023
759 00642 04D3 2602 bne L04D7
760
761 00643 04D5 9F23 stx <u0023
762 00644 04D7 2033 L04D7 bra L050C
763
764 00645 04D9 8129 L04D9 cmpa #$29
765 00646 04DB 2627 bne L0504
766
767 00647 04DD 9E01 ldx <V.PORT
768 00648 04DF 1A50 orcc #$50
769 00649 04E1 0D28 tst <u0028
770 00650 04E3 2619 bne L04FE
771
772 00651 04E5 A606 lda $06,x
773 00652 04E7 84B0 anda #$B0
774 00653 04E9 9720 sta <u0020
775 00654 04EB 5F clrb
776 00655 04EC 8510 bita #$10
777 00656 04EE 2602 bne L04F2
778
779 00657 04F0 CA02 orb #$02
780 00658 04F2 8520 L04F2 bita #$20
781 00659 04F4 2602 bne L04F8
782
783 00660 04F6 CA01 orb #$01
784 00661 04F8 D728 L04F8 stb <u0028
785 00662 04FA 860F lda #$0F
786 00663 04FC A704 sta $04,x
787 00664 04FE C60F L04FE ldb #$0F
788 00665 0500 E701 stb $01,x
789 00666 0502 2008 bra L050C
790
791 00667 0504 3505 L0504 puls b,cc
792 00668 0506 1A01 orcc #$01
793 00669 0508 C6D0 ldb #$D0
794 00670 050A 3588 puls pc,dp
795 00671 050C 358D L050C puls pc,dp,b,cc
796 00672 050E 1A50 L050E orcc #$50
797 00673 0510 FC0050 ldd >$0050
798 00674 0513 9705 sta <V.WAKE
799 00675 0515 1F01 tfr d,x
800 00676 0517 A60C lda $0C,x
801 00677 0519 8A08 ora #$08
802 00678 051B A70C sta $0C,x
803 00679 051D 8E0001 ldx #$0001 * |remainer of slice
804 00680 0520 103F0A os9 F$Sleep * |sleep
805 00681 0523 1CAF andcc #$AF * |carry set on error
806 00682 0525 39 rts
807
808 00683 0526 3440 UtoDP pshs u U to DP, clean stack
809 00684 0528 3508 puls dp |
810 00685 052A 3261 leas $01,s |
811 00686 052C 39 rts |
812
813 00687 052D 01 L052D fcb $01
814 00688 052E 6F01 clr $01,x
815 00689 0530 1C00 andcc #$00
816 00690 0532 1D sex
817 00691 0533 01 fcb $01
818 00692 0534 C8FF eorb #$FF
819 00693 0536 F3FFF3 addd >$FFF3
820 00694 0539 002C neg <u002C
821 00695 053B 3408 IRQser pshs dp
822 00696 053D 8DE7 bsr UtoDP
823
824 00697 053F 0F27 clr <u0027
825 00698 0541 109E01 ldy <V.PORT
826 00699 0544 E622 ldb $02,y
827 00700 0546 C501 bitb #$01
828 00701 0548 2710 beq L055A
829
830 00702 054A 0D40 tst <u0040
831 00703 054C 2708 beq L0556
832
833 00704 054E E625 ldb $05,y
834 00705 0550 C520 bitb #$20
835 00706 0552 10260131 lbne L0687
836 00707 0556 1A01 L0556 orcc #$01
837 00708 0558 3588 puls pc,dp
838 00709 055A 308DFFCF L055A leax >L052D,pcr
839 00710 055E C40E andb #$0E
840 00711 0560 3A abx
841 00712 0561 1F50 tfr pc,d
842 00713 0563 E384 addd ,x
843 00714 0565 1F05 tfr d,pc
844 00715 0567 E622 L0567 ldb $02,y
845 00716 0569 C501 bitb #$01
846 00717 056B 27ED beq L055A
847
848 00718 056D 9605 lda <V.WAKE
849 00719 056F 270B beq L057C
850
851 00720 0571 5F clrb
852 00721 0572 D705 stb <V.WAKE
853 00722 0574 1F01 tfr d,x
854 00723 0576 A60C lda $0C,x
855 00724 0578 84F7 anda #$F7
856 00725 057A A70C sta $0C,x
857 00726 057C 1CFE L057C andcc #$FE
858 00727 057E 3588 puls pc,dp
859 00728 0580 9E2C ldx <u002C
860 00729 0582 A625 lda $05,y
861 00730 0584 2B0D bmi L0593
862
863 00731 0586 D629 ldb <u0029
864 00732 0588 8D2F L0588 bsr L05B9
865
866 00733 058A 5A decb
867 00734 058B 26FB bne L0588
868
869 00735 058D 2002 bra L0591
870
871 00736 058F 9E2C ldx <u002C
872 00737 0591 A625 L0591 lda $05,y
873 00738 0593 851E L0593 bita #$1E
874 00739 0595 2705 beq L059C
875
876 00740 0597 170198 lbsr L0732
877
878 00741 059A 20F5 bra L0591
879
880 00742 059C 8501 L059C bita #$01
881 00743 059E 2704 beq L05A4
882
883 00744 05A0 8D17 bsr L05B9
884
885 00745 05A2 20ED bra L0591
886
887 00746 05A4 0D27 L05A4 tst <u0027
888 00747 05A6 260D bne L05B5
889
890 00748 05A8 DC25 ldd <u0025
891 00749 05AA 2709 beq L05B5
892
893 00750 05AC D727 stb <u0027 * |signal code
894 00751 05AE 103F08 os9 F$Send * |send signal
895 00752 05B1 4F clra
896 00753 05B2 5F clrb
897 00754 05B3 DD25 std <u0025
898 00755 05B5 9F2C L05B5 stx <u002C
899 00756 05B7 20AE bra L0567
900
901 00757 05B9 3404 L05B9 pshs b
902 00758 05BB A6A4 lda ,y
903 00759 05BD 2736 beq L05F5
904
905 00760 05BF 0D22 tst <u0022
906 00761 05C1 2632 bne L05F5
907
908 00762 05C3 910C cmpa <V.QUIT
909 00763 05C5 2604 bne L05CB
910
911 00764 05C7 C602 ldb #$02
912 00765 05C9 2006 bra L05D1
913
914 00766 05CB 910B L05CB cmpa <V.INTR
915 00767 05CD 2611 bne L05E0
916
917 00768 05CF C603 ldb #$03
918 00769 05D1 3402 L05D1 pshs a
919 00770 05D3 0D27 tst <u0027
920 00771 05D5 2607 bne L05DE
921
922 00772 05D7 9603 lda <V.LPRC * | dest proc id
923 00773 05D9 D727 stb <u0027 * | signal code
924 00774 05DB 103F08 os9 F$Send * | send signal
925 00775 05DE 3502 L05DE puls a
926 00776 05E0 910F L05E0 cmpa <V.XON
927 00777 05E2 2773 beq L0657
928
929 00778 05E4 9110 cmpa <V.XOFF
930 00779 05E6 10270081 lbeq L066B
931
932 00780 05EA 910D cmpa <V.PCHR
933 00781 05EC 2607 bne L05F5
934
935 00782 05EE DE09 ldu <V.DEV2
936 00783 05F0 2703 beq L05F5
937
938 00784 05F2 A7C808 sta <V.PAUS,u
939 00785 05F5 A780 L05F5 sta ,x+
940 00786 05F7 9C30 cmpx <u0030
941 00787 05F9 2602 bne L05FD
942
943 00788 05FB 9E32 ldx <u0032
944 00789 05FD 9C2E L05FD cmpx <u002E
945 00790 05FF 2610 bne L0611
946
947 00791 0601 C602 ldb #$02
948 00792 0603 DA0E orb <V.ERR
949 00793 0605 D70E stb <V.ERR
950 00794 0607 9C32 cmpx <u0032
951 00795 0609 2602 bne L060D
952
953 00796 060B 9E30 ldx <u0030
954 00797 060D 301F L060D leax -$01,x
955 00798 060F 200C bra L061D
956
957 00799 0611 DC34 L0611 ldd <u0034
958 00800 0613 C30001 addd #$0001
959 00801 0616 DD34 std <u0034
960 00802 0618 10932A cmpd <u002A
961 00803 061B 2702 beq L061F
962
963 00804 061D 3584 L061D puls pc,b
964 00805 061F D628 L061F ldb <u0028
965 00806 0621 C570 bitb #$70
966 00807 0623 26F8 bne L061D
967
968 00808 0625 961D lda <u001D
969 00809 0627 8502 bita #$02
970 00810 0629 270C beq L0637
971
972 00811 062B CA20 orb #$20
973 00812 062D D728 stb <u0028
974 00813 062F A624 lda $04,y
975 00814 0631 84F5 anda #$F5
976 00815 0633 A724 sta $04,y
977 00816 0635 20E6 bra L061D
978
979 00817 0637 8501 L0637 bita #$01
980 00818 0639 270C beq L0647
981
982 00819 063B CA10 orb #$10
983 00820 063D D728 stb <u0028
984 00821 063F A624 lda $04,y
985 00822 0641 84FA anda #$FA
986 00823 0643 A724 sta $04,y
987 00824 0645 20D6 bra L061D
988
989 00825 0647 9610 L0647 lda <V.XOFF
990 00826 0649 27D2 beq L061D
991
992 00827 064B CA40 orb #$40
993 00828 064D D728 stb <u0028
994 00829 064F 9743 sta <u0043
995 00830 0651 C60F ldb #$0F
996 00831 0653 E721 stb $01,y
997 00832 0655 20C6 bra L061D
998
999 00833 0657 D61D L0657 ldb <u001D
1000 00834 0659 C504 bitb #$04
1001 00835 065B 1027FF96 lbeq L05F5
1002
1003 00836 065F 9628 lda <u0028
1004 00837 0661 84FB anda #$FB
1005 00838 0663 9728 sta <u0028
1006 00839 0665 860F lda #$0F
1007 00840 0667 A721 sta $01,y
1008 00841 0669 20B2 bra L061D
1009
1010 00842 066B D61D L066B ldb <u001D
1011 00843 066D C504 bitb #$04
1012 00844 066F 1027FF82 lbeq L05F5
1013
1014 00845 0673 9628 lda <u0028
1015 00846 0675 8A04 ora #$04
1016 00847 0677 9728 sta <u0028
1017 00848 0679 860D lda #$0D
1018 00849 067B A721 sta $01,y
1019 00850 067D 209E bra L061D
1020
1021 00851 067F A625 lda $05,y
1022 00852 0681 8520 bita #$20
1023 00853 0683 1027FEE0 lbeq L0567
1024
1025 00854 0687 9E3A L0687 ldx <u003A
1026 00855 0689 9643 lda <u0043
1027 00856 068B 2F06 ble L0693
1028
1029 00857 068D A7A4 sta ,y
1030 00858 068F 8A80 ora #$80
1031 00859 0691 9743 sta <u0043
1032 00860 0693 0D40 L0693 tst <u0040
1033 00861 0695 2734 beq L06CB
1034
1035 00862 0697 D628 ldb <u0028
1036 00863 0699 C508 bitb #$08
1037 00864 069B 262E bne L06CB
1038
1039 00865 069D C407 andb #$07
1040 00866 069F D41D andb <u001D
1041 00867 06A1 2628 bne L06CB
1042
1043 00868 06A3 D63B ldb <u003B
1044 00869 06A5 50 negb
1045 00870 06A6 C10F cmpb #$0F
1046 00871 06A8 2302 bls L06AC
1047 00872 06AA C60F ldb #$0F
1048
1049 00873 06AC D140 L06AC cmpb <u0040
1050 00874 06AE 2302 bls L06B2
1051
1052 00875 06B0 D640 ldb <u0040
1053 00876 06B2 3404 L06B2 pshs b
1054 00877 06B4 A680 L06B4 lda ,x+
1055 00878 06B6 A7A4 sta ,y
1056 00879 06B8 5A decb
1057 00880 06B9 26F9 bne L06B4
1058
1059 00881 06BB 9C3C cmpx <u003C
1060 00882 06BD 2502 bcs L06C1
1061
1062 00883 06BF 9E3E ldx <u003E
1063 00884 06C1 9F3A L06C1 stx <u003A
1064 00885 06C3 D640 ldb <u0040
1065 00886 06C5 E0E0 subb ,s+
1066 00887 06C7 D740 stb <u0040
1067 00888 06C9 2604 bne L06CF
1068
1069 00889 06CB 860D L06CB lda #$0D
1070 00890 06CD A721 sta $01,y
1071
1072 00891 06CF 16FE95 L06CF lbra L0567
1073 00892 06D2 A626 lda $06,y
1074 00893 06D4 1F89 tfr a,b
1075 00894 06D6 C4B0 andb #$B0
1076 00895 06D8 D720 stb <u0020
1077 00896 06DA D628 ldb <u0028
1078 00897 06DC C4FC andb #$FC
1079 00898 06DE 8510 bita #$10
1080 00899 06E0 2602 bne L06E4
1081
1082 00900 06E2 CA02 orb #$02
1083 00901 06E4 8520 L06E4 bita #$20
1084 00902 06E6 2602 bne L06EA
1085
1086 00903 06E8 CA01 orb #$01
1087 00904 06EA D728 L06EA stb <u0028
1088 00905 06EC 8508 bita #$08
1089 00906 06EE 2734 beq L0724
1090
1091 00907 06F0 8580 bita #$80
1092 00908 06F2 261E bne L0712
1093
1094 00909 06F4 961D lda <u001D
1095 00910 06F6 8510 bita #$10
1096 00911 06F8 270E beq L0708
1097
1098 00912 06FA 9E16 ldx <V.PDLHD
1099 00913 06FC 270A beq L0708
1100
1101 00914 06FE 8601 lda #$01
1102 00915 0700 A7883F L0700 sta <$3F,x
1103 00916 0703 AE883D ldx <$3D,x
1104 00917 0706 26F8 bne L0700
1105
1106 00918 0708 8620 L0708 lda #$20
1107 00919 070A 9A0E ora <V.ERR
1108 00920 070C 970E sta <V.ERR
1109 00921 070E C4FB andb #$FB
1110 00922 0710 D728 stb <u0028
1111 00923 0712 0D27 L0712 tst <u0027
1112 00924 0714 260E bne L0724
1113
1114 00925 0716 DC23 ldd <u0023
1115 00926 0718 5D tstb
1116 00927 0719 2709 beq L0724
1117
1118 00928 071B 103F08 os9 F$Send * |send signal
1119 00929 071E D727 stb <u0027
1120 00930 0720 4F clra
1121 00931 0721 5F clrb
1122 00932 0722 DD23 std <u0023
1123 00933 0724 860F L0724 lda #$0F
1124 00934 0726 A721 sta $01,y
1125 00935 0728 16FE3C lbra L0567
1126 00936 072B A625 lda $05,y
1127
1128 00937 072D 8D03 bsr L0732
1129
1130 00938 072F 16FE35 lbra L0567
1131
1132 00939 0732 3404 L0732 pshs b
1133 00940 0734 5F clrb
1134 00941 0735 8502 bita #$02
1135 00942 0737 2702 beq L073B
1136
1137 00943 0739 CA04 orb #$04
1138 00944 073B 8504 L073B bita #$04
1139 00945 073D 2702 beq L0741
1140
1141 00946 073F CA01 orb #$01
1142 00947 0741 8508 L0741 bita #$08
1143 00948 0743 2702 beq L0747
1144
1145 00949 0745 CA02 orb #$02
1146 00950 0747 8510 L0747 bita #$10
1147 00951 0749 2606 bne L0751
1148
1149 00952 074B CA08 orb #$08
1150 00953 074D DA0E orb <V.ERR
1151 00954 074F D70E stb <V.ERR
1152 00955 0751 3584 L0751 puls pc,b
1153
1154 *[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[
1155
1156 00956 0753 01 Data fcb $01
1157 00957 0754 01 fcb $01
1158 00958 0755 0A28 dec <u0028
1159 00959 0757 E901 adcb $01,x
1160 00960 0759 01 fcb $01
1161 00961 075A 0F00 clr <V.PAGE
1162 00962 075C 01 fcb $01
1163 00963 075D 01 fcb $01
1164 00964 075E 0780 asr <u0080
1165 00965 0760 41 fcb $41 A
1166 00966 0761 0403 lsr <V.LPRC
1167 00967 0763 C081 subb #$81
1168
1169 00968 0765 0801 lsl <V.PORT
1170 00969 0767 E0C1 subb ,u++
1171 00970 0769 0E00 jmp <V.PAGE
1172 00971 076B F0C10E subb >$C10E
1173 00972 076E 0078 neg <u0078
1174 00973 0770 C10E cmpb #$0E
1175 00974 0772 003C neg <u003C
1176 00975 0774 8108 cmpa #$08
1177 00976 0776 001E neg <u001E
1178 00977 0778 8108 cmpa #$08
1179 00978 077A 0014 neg <V.MODADR
1180 00979 077C 8108 cmpa #$08
1181 00980 077E 000F neg <V.XON
1182 00981 0780 8108 cmpa #$08
1183 00982 0782 000A neg <u000A
1184 00983 0784 8108 cmpa #$08
1185 00984 0786 000A neg <u000A
1186 00985 0788 8108 cmpa #$08
1187 00986 078A 000A neg <u000A
1188 00987 078C 8108 cmpa #$08
1189 00988 078E 000A neg <u000A
1190 00989 0790 8108 cmpa #$08
1191 00990 0792 0025 neg <u0025
1192 00991 0794 8108 cmpa #$08
1193 00992 0796 85C9D1 emod
1194 00993 0799 eom equ *