annotate level2/modules/sio.asm @ 0:6641a883d6b0

Initial revision
author boisy
date Thu, 04 Apr 2002 16:34:12 +0000
parents
children b3bfa479f8d0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1 ********************************************************************
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
2 * SIO - CoCo 3 Serial driver
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
3 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
4 * $Id$
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
5 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
6 * Ed. Comments Who YY/MM/DD
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
7 * ------------------------------------------------------------------
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
8 * 9 Original Tandy L2 distribution version
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
9
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
10 nam SIO
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
11 ttl CoCo 3 Serial driver
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
12
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
13 * Disassembled 98/08/23 20:58:36 by Disasm v1.6 (C) 1988 by RML
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
14
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
15 ifp1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
16 use defsfile
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
17 use scfdefs
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
18 endc
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
19
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
20 tylg set Drivr+Objct
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
21 atrv set ReEnt+rev
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
22 rev set $01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
23 edition set 9
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
24
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
25 mod eom,name,tylg,atrv,start,size
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
26
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
27 u0000 rmb 29
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
28 u001D rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
29 u001E rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
30 u001F rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
31 u0020 rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
32 u0022 rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
33 u0024 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
34 u0025 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
35 size equ .
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
36 fcb $03
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
37
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
38 name fcs /SIO/
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
39 fcb edition
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
40
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
41 L0012 fcb $09
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
42 fcb $0C
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
43 fcb $03
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
44 fcb $4C L
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
45 fcb $01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
46 fcb $A2 "
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
47 fcb $00
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
48 fcb $CE N
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
49 fcb $00
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
50 fcb $62 b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
51 fcb $00
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
52 fcb $2E .
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
53 fcb $00
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
54 fcb $12
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
55 fcb $00
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
56 fcb $03
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
57
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
58 start lbra Init
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
59 lbra Read
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
60 lbra Write
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
61 lbra GetStat
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
62 lbra SetStat
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
63 lbra Term
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
64
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
65 * Init
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
66 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
67 * Entry:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
68 * Y = address of device descriptor
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
69 * U = address of device memory area
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
70 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
71 * Exit:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
72 * CC = carry set on error
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
73 * B = error code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
74 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
75 Init pshs cc
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
76 orcc #IntMasks
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
77 ldx #PIA1Base
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
78 clr $01,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
79 ldd <IT.COL,y get col/row bytes
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
80 std <u0024,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
81 lda #$FE
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
82 sta ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
83 lda #$36
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
84 sta $01,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
85 lda ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
86 ldd <IT.PAR,y get parity/baud
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
87 lbsr L0148
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
88 puls cc
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
89 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
90
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
91 * Term
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
92 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
93 * Entry:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
94 * U = address of device memory area
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
95 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
96 * Exit:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
97 * CC = carry set on error
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
98 * B = error code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
99 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
100 Term rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
101
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
102 * Read
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
103 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
104 * Entry:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
105 * Y = address of path descriptor
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
106 * U = address of device memory area
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
107 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
108 * Exit:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
109 * A = character read
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
110 * CC = carry set on error
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
111 * B = error code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
112 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
113 Read bsr L00AC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
114 bcs L00C8
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
115 ldb #$08
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
116 pshs b,cc
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
117 tst <u001E,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
118 beq L0066
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
119 dec $01,s
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
120 L0066 bra L0077
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
121 L0068 lda <PD.BAU,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
122 anda #$0F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
123 cmpa #$07
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
124 beq L0077
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
125 ldx #$0001
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
126 os9 F$Sleep
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
127 L0077 pshs y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
128 ldy #$FFFF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
129 L007D lda >PIA1Base+2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
130 leay -$01,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
131 beq L008B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
132 lsra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
133 bcs L007D
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
134 puls y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
135 bra L0090
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
136 L008B puls y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
137 lsra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
138 bcs L0068
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
139 L0090 orcc #IntMasks
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
140 clra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
141 bsr L00D5
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
142 L0095 bsr L00CE
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
143 ldb >PIA1Base+2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
144 lsrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
145 rora
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
146 dec $01,s
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
147 bne L0095
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
148 bsr L00D5
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
149 tst <u001E,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
150 beq L00A8
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
151 lsra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
152 L00A8 puls b,cc
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
153 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
154 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
155 L00AC pshs a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
156 lda <PD.BAU,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
157 anda #$0F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
158 cmpa #$08
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
159 bcc L00C4
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
160 lsla
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
161 leax >L0012,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
162 ldd a,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
163 std <u0020,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
164 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
165 puls pc,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
166 L00C4 ldb #E$BMode
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
167 puls a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
168 L00C8 orcc #Carry
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
169 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
170 L00CB stb >PIA1Base
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
171 L00CE pshs b,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
172 ldd <u0020,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
173 bra L00DC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
174 L00D5 pshs b,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
175 ldd <u0020,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
176 lsra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
177 rorb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
178 L00DC subd #$0001
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
179 bne L00DC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
180 puls pc,b,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
181
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
182 * Write
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
183 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
184 * Entry:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
185 * A = character to write
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
186 * Y = address of path descriptor
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
187 * U = address of device memory area
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
188 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
189 * Exit:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
190 * CC = carry set on error
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
191 * B = error code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
192 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
193 Write bsr L00AC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
194 bcs L00C8
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
195 ldb #$09
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
196 pshs b,cc
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
197 orcc #IntMasks
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
198 tst <u001E,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
199 beq L00F4
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
200 dec $01,s
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
201 L00F4 andcc #^Carry
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
202 L00F6 ldb #$02
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
203 bcs L00FB
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
204 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
205 L00FB bsr L00CB
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
206 lsra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
207 dec $01,s
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
208 bne L00F6
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
209 ldb <u001D,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
210 beq L010B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
211 andb #$FE
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
212 bsr L00CB
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
213 L010B ldb #$02
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
214 bsr L00CB
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
215 tst <u001F,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
216 beq L0118
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
217 ldb #$02
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
218 bsr L00CB
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
219 L0118 puls pc,b,cc
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
220
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
221 * GetStat
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
222 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
223 * Entry:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
224 * A = function code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
225 * Y = address of path descriptor
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
226 * U = address of device memory area
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
227 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
228 * Exit:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
229 * CC = carry set on error
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
230 * B = error code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
231 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
232 GetStat cmpa #SS.EOF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
233 bne L0120
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
234 L011E clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
235 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
236 L0120 ldx PD.RGS,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
237 cmpa #SS.ScSiz
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
238 beq L0131
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
239 cmpa #SS.ComSt
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
240 bne L017E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
241 ldd <u0022,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
242 std R$Y,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
243 bra L011E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
244 L0131 ldx PD.RGS,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
245 clra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
246 ldb <u0024,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
247 std R$X,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
248 ldb <u0025,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
249 std R$Y,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
250 bra L011E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
251
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
252 * SetStat
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
253 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
254 * Entry:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
255 * A = function code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
256 * Y = address of path descriptor
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
257 * U = address of device memory area
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
258 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
259 * Exit:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
260 * CC = carry set on error
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
261 * B = error code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
262 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
263 SetStat cmpa #SS.ComSt
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
264 bne L017E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
265 ldx PD.RGS,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
266 ldd R$Y,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
267 L0148 std <u0022,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
268 clra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
269 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
270 std <u001D,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
271 sta <u001F,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
272 ldd <u0022,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
273 tstb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
274 bpl L015C
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
275 inc <u001F,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
276 L015C bitb #$40
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
277 bne L017A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
278 bitb #$20
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
279 beq L0167
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
280 inc <u001E,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
281 L0167 bita #$20
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
282 beq L0179
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
283 bita #$80
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
284 beq L017A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
285 inc <u001D,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
286 bita #$40
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
287 bne L0179
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
288 inc <u001D,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
289 L0179 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
290 L017A comb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
291 ldb #E$BMode
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
292 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
293 L017E comb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
294 ldb #E$UnkSvc
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
295 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
296
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
297 emod
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
298 eom equ *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
299 end