Mercurial > hg > Members > kono > nitros9-code
comparison 3rdparty/drivers/disto/cc3disk_sc2_slp.asm @ 399:3ccac8049e18
Added ability to switch base register addresses.
author | tlindner |
---|---|
date | Wed, 28 Aug 2002 03:57:01 +0000 |
parents | 2c1190feec28 |
children | 15d9dbd6a0e4 |
comparison
equal
deleted
inserted
replaced
398:2c1190feec28 | 399:3ccac8049e18 |
---|---|
9 | 9 |
10 nam CC3Disk | 10 nam CC3Disk |
11 ttl os9 device driver | 11 ttl os9 device driver |
12 | 12 |
13 * Disassembled 02/08/27 11:42:59 by Disasm v1.6 (C) 1988 by RML | 13 * Disassembled 02/08/27 11:42:59 by Disasm v1.6 (C) 1988 by RML |
14 level equ 2 | 14 |
15 * Disto's Super Controller II supports two locations for its | |
16 * registers: $FF74 and $FF58 | |
17 | |
18 nh_base equ $FF74 | |
19 nh_stat equ nh_base | |
20 nh_data equ nh_base+2 | |
21 | |
15 ifp1 | 22 ifp1 |
16 use defsfile | 23 use defsfile |
17 endc | 24 endc |
18 tylg set Drivr+Objct | 25 tylg set Drivr+Objct |
19 atrv set ReEnt+rev | 26 atrv set ReEnt+rev |
61 stb <u0032 | 68 stb <u0032 |
62 rts | 69 rts |
63 L0039 fcb $00 | 70 L0039 fcb $00 |
64 fcb $01 | 71 fcb $01 |
65 fcb $09 | 72 fcb $09 |
66 L003C clr >$FF76 | 73 L003C clr >nh_data |
67 clr <u0032 | 74 clr <u0032 |
68 ldx #$FF48 | 75 ldx #$FF48 |
69 lda #$D0 | 76 lda #$D0 |
70 sta ,x | 77 sta ,x |
71 lbsr L02D9 | 78 lbsr L02D9 |
78 sta <$15,x | 85 sta <$15,x |
79 leax <$26,x | 86 leax <$26,x |
80 decb | 87 decb |
81 bne L0057 | 88 bne L0057 |
82 leax >L01C0,pcr | 89 leax >L01C0,pcr |
83 fcb $9F Was: stx <u00FC | 90 stx <D.NMI |
84 fcb $FC | |
85 pshs u | 91 pshs u |
86 leau >u00A7,u | 92 leau >u00A7,u |
87 leay u000E,u | 93 leay u000E,u |
88 tfr y,d | 94 tfr y,d |
89 leay >L0428,pcr | 95 leay >L0428,pcr |
137 ldb #$80 | 143 ldb #$80 |
138 lda #$07 | 144 lda #$07 |
139 lbsr L016C | 145 lbsr L016C |
140 bcc L00F6 | 146 bcc L00F6 |
141 ldb >$FF48 | 147 ldb >$FF48 |
142 clr >$FF76 | 148 clr >nh_data |
143 lda u0001,u | 149 lda u0001,u |
144 ora #$08 | 150 ora #$08 |
145 sta >$FF40 | 151 sta >$FF40 |
146 lbra L01E3 | 152 lbra L01E3 |
147 L00F6 ldx $08,y | 153 L00F6 ldx $08,y |
148 ldb #$80 | 154 ldb #$80 |
149 tst u0003,u | 155 tst u0003,u |
150 bne L010B | 156 bne L010B |
151 pshs b | 157 pshs b |
152 L0100 ldd >$FF74 | 158 L0100 ldd >nh_stat |
153 std ,x++ | 159 std ,x++ |
154 dec ,s | 160 dec ,s |
155 bne L0100 | 161 bne L0100 |
156 puls b | 162 puls b |
157 L010B andcc #$FE | 163 L010B andcc #$FE |
167 L011F rts | 173 L011F rts |
168 L0120 lbsr L0257 | 174 L0120 lbsr L0257 |
169 bcs L011F | 175 bcs L011F |
170 ldx $08,y | 176 ldx $08,y |
171 lda #$04 | 177 lda #$04 |
172 sta >$FF76 | 178 sta >nh_data |
173 ldb #$80 | 179 ldb #$80 |
174 pshs b | 180 pshs b |
175 L0130 ldd ,x++ | 181 L0130 ldd ,x++ |
176 std >$FF74 | 182 std >nh_stat |
177 dec ,s | 183 dec ,s |
178 bne L0130 | 184 bne L0130 |
179 puls b | 185 puls b |
180 ldb #$A0 | 186 ldb #$A0 |
181 lda #$06 | 187 lda #$06 |
187 lda #$FF | 193 lda #$FF |
188 sta u0003,u | 194 sta u0003,u |
189 lbsr L00D8 | 195 lbsr L00D8 |
190 bcs L0167 | 196 bcs L0167 |
191 pshs b | 197 pshs b |
192 L0155 ldd >$FF74 | 198 L0155 ldd >nh_stat |
193 cmpd ,x++ | 199 cmpd ,x++ |
194 bne L0163 | 200 bne L0163 |
195 dec ,s | 201 dec ,s |
196 bne L0155 | 202 bne L0155 |
197 bra L0165 | 203 bra L0165 |
215 lbsr L02E5 | 221 lbsr L02E5 |
216 bra L016E | 222 bra L016E |
217 L018B coma | 223 L018B coma |
218 L018C rts | 224 L018C rts |
219 L018D stb >$FF48 | 225 L018D stb >$FF48 |
220 sta >$FF76 | 226 sta >nh_data |
221 ldb #$28 | 227 ldb #$28 |
222 orb u0001,u | 228 orb u0001,u |
223 stb >$FF40 | 229 stb >$FF40 |
224 ldb #$04 | 230 ldb #$04 |
225 lda #$FF | 231 lda #$FF |
226 pshs x,a | 232 pshs x,a |
227 L01A0 ldx #$0001 | 233 L01A0 ldx #$0001 |
228 lbsr L03C3 | 234 lbsr L03C3 |
229 dec ,s | 235 dec ,s |
230 beq L01B5 | 236 beq L01B5 |
231 tst >$FF76 | 237 tst >nh_data |
232 bmi L01A0 | 238 bmi L01A0 |
233 stb >$FF76 | 239 stb >nh_data |
234 clrb | 240 clrb |
235 puls pc,x,a | 241 puls pc,x,a |
236 L01B5 stb >$FF76 | 242 L01B5 stb >nh_data |
237 lda #$D0 | 243 lda #$D0 |
238 sta >$FF48 | 244 sta >$FF48 |
239 comb | 245 comb |
240 puls pc,x,a | 246 puls pc,x,a |
241 L01C0 leas $0C,s | 247 L01C0 leas $0C,s |
242 puls y,cc | 248 puls y,cc |
243 L01C4 ldb >$FF48 | 249 L01C4 ldb >$FF48 |
244 clr >$FF76 | 250 clr >nh_data |
245 andb #$F8 | 251 andb #$F8 |
246 beq L01DC | 252 beq L01DC |
247 pshs x | 253 pshs x |
248 leax <L01DD,pcr | 254 leax <L01DD,pcr |
249 L01D3 leax $01,x | 255 L01D3 leax $01,x |
256 fcb $F6 | 262 fcb $F6 |
257 fcb $F2 | 263 fcb $F2 |
258 fcb $F5 | 264 fcb $F5 |
259 fcb $F7 | 265 fcb $F7 |
260 fcb $F3 | 266 fcb $F3 |
261 L01E3 fcb $53 | 267 L01E3 comb |
262 fcb $C6 | 268 ldb #$F4 |
263 fcb $F4 | 269 rts |
264 fcb $39 | |
265 L01E7 leau >u00A7,u | 270 L01E7 leau >u00A7,u |
266 clr u0007,u | 271 clr u0007,u |
267 lda #$91 | 272 lda #$91 |
268 sta u0004,u | 273 sta u0004,u |
269 tstb | 274 tstb |