mirror of
https://github.com/robjustice/Apple3.git
synced 2024-06-01 13:41:32 +00:00
862 lines
46 KiB
Plaintext
862 lines
46 KiB
Plaintext
; 6502bench SourceGen v1.7.2-dev1
|
|
IMASK .eq $8b
|
|
CURTRK .eq $8c
|
|
SECT .eq $98
|
|
MONTIMEL .eq $99
|
|
MONTIMEH .eq $9a
|
|
BUF .eq $9b
|
|
TRKN .eq $9e
|
|
RECALCNT .eq $d2
|
|
SEEKWAIT .eq $d3
|
|
IRQMASK .eq $d4
|
|
D_TRACK .eq $16d8
|
|
D_SECTOR .eq $16d9
|
|
D_UNITNUM .eq $16da
|
|
D_BUFL .eq $16db
|
|
D_BUFH .eq $16dc
|
|
D_BUFX .eq $16dd
|
|
D_COMMAND .eq $16de
|
|
CLRPDL0 .eq $c058 ;Clear PDL0 (A/D Addr 0)
|
|
SETPDL0 .eq $c059 ;Set PDL0 (A/D Addr 0)
|
|
CLRPDL2 .eq $c05a ;Clear PDL2 (A/D Addr 2)
|
|
SETPDL2 .eq $c05b ;Set PDL2 (A/D Addr 2)
|
|
CLRPDLEN .eq $c05c ;Clear PDLEN (A/D Ramp Start)
|
|
SETPDLEN .eq $c05d ;Set PDLEN (A/D Ramp Start)
|
|
CLRPDL1 .eq $c05e ;Clear PDL1 (A/D Addr 1)
|
|
SETPDL1 .eq $c05f ;Set PDL1 (A/D Addr 1)
|
|
READSW0 .eq $c060 ;Read SW0
|
|
READSW1 .eq $c061 ;Read SW1/MGNSW
|
|
READSW2 .eq $c062 ;Read SW2
|
|
READSW3 .eq $c063 ;Read SW3/SCO
|
|
JOYRDY .eq $c066 ;Read PDLOT (A/D Ramp Stop)
|
|
CLOCK .eq $c070 ;clock
|
|
CLRDSA0 .eq $c0d0 ;Clear Drive Select A0
|
|
MS_EXT2 .eq $c0d1
|
|
MD_EXT1 .eq $c0d2
|
|
MS_EXT1 .eq $c0d3
|
|
CLREN1INT .eq $c0d4
|
|
SETEN1INT .eq $c0d5
|
|
CLRSCR .eq $c0d8 ;Clear Smooth Scroll (to turn smooth scroll off)
|
|
CLRENSEL .eq $c0dc ;Clear enable silentype port (ENSEL)
|
|
CLRENSIO .eq $c0de ;Clear enable silentype port (ENSIO)
|
|
MOTORON .eq $c0e9
|
|
IS_EXT .eq $c0eb
|
|
READ16 .eq $f148
|
|
RDADR16 .eq $f1b9
|
|
WRITE16 .eq $f216
|
|
SEEK .eq $f400
|
|
MSWAIT .eq $f456
|
|
ANALOG .eq $f4a8
|
|
ANLOG1 .eq $f4ab
|
|
Z_REG .eq $ffd0 ;zero page register
|
|
D_TIMER2C_L .eq $ffd8
|
|
D_TIMER2C_H .eq $ffd9
|
|
D_ACR .eq $ffdb
|
|
D_IFR .eq $ffdd
|
|
E_REG .eq $ffdf ;environment register
|
|
E_IER .eq $ffee
|
|
|
|
.org $9a00
|
|
+000000 9a00: 20 ec 9a jsr L9AEC
|
|
+000003 9a03: a2 00 ldx #$00
|
|
+000005 9a05: a0 12 ldy #$12
|
|
+000007 9a07: a9 30 lda #$30
|
|
+000009 9a09: d0 04 bne L9A0F
|
|
|
|
+00000b 9a0b: e8 L9A0B inx
|
|
+00000c 9a0c: b9 e0 16 lda $16e0,y
|
|
+00000f 9a0f: 29 0f L9A0F and #$0f
|
|
+000011 9a11: 9d b1 9b sta L9BB1,x
|
|
+000014 9a14: 88 dey
|
|
+000015 9a15: c0 07 cpy #$07
|
|
+000017 9a17: f0 f2 beq L9A0B
|
|
+000019 9a19: b9 e0 16 lda $16e0,y
|
|
+00001c 9a1c: 0a asl A
|
|
+00001d 9a1d: 0a asl A
|
|
+00001e 9a1e: 0a asl A
|
|
+00001f 9a1f: 0a asl A
|
|
+000020 9a20: 1d b1 9b ora L9BB1,x
|
|
+000023 9a23: 9d b1 9b sta L9BB1,x
|
|
+000026 9a26: 88 dey
|
|
+000027 9a27: 10 e2 bpl L9A0B
|
|
+000029 9a29: ad b8 9b lda L9BB8
|
|
+00002c 9a2c: 20 8d 9b jsr L9B8D
|
|
+00002f 9a2f: aa tax
|
|
+000030 9a30: ad b9 9b lda L9BB9
|
|
+000033 9a33: 20 8d 9b jsr L9B8D
|
|
+000036 9a36: a8 tay
|
|
+000037 9a37: 4a lsr A
|
|
+000038 9a38: 4a lsr A
|
|
+000039 9a39: 85 d2 sta RECALCNT
|
|
+00003b 9a3b: 98 tya
|
|
+00003c 9a3c: 29 03 and #$03
|
|
+00003e 9a3e: d0 05 bne L9A45
|
|
+000040 9a40: e0 03 cpx #$03
|
|
+000042 9a42: 90 01 bcc L9A45
|
|
+000044 9a44: 88 dey
|
|
+000045 9a45: 18 L9A45 clc
|
|
+000046 9a46: 98 tya
|
|
+000047 9a47: 65 d2 adc RECALCNT
|
|
+000049 9a49: 7d a4 9b adc L9BA4,x
|
|
+00004c 9a4c: 85 d2 sta RECALCNT
|
|
+00004e 9a4e: ad b7 9b lda L9BB7
|
|
+000051 9a51: 20 8d 9b jsr L9B8D
|
|
+000054 9a54: 18 clc
|
|
+000055 9a55: 65 d2 adc RECALCNT
|
|
+000057 9a57: 38 sec
|
|
+000058 9a58: e9 07 L9A58 sbc #$07
|
|
+00005a 9a5a: c9 08 cmp #$08
|
|
+00005c 9a5c: b0 fa bcs L9A58
|
|
+00005e 9a5e: 8d b6 9b sta L9BB6
|
|
+000061 9a61: a9 d0 lda #$d0
|
|
+000063 9a63: 85 d0 sta $d0
|
|
+000065 9a65: a9 ff lda #$ff
|
|
+000067 9a67: 85 d1 sta $d1
|
|
+000069 9a69: a9 8f lda #$8f
|
|
+00006b 9a6b: 8d d1 14 sta $14d1
|
|
+00006e 9a6e: a9 a5 lda #$a5
|
|
+000070 9a70: 85 d3 sta SEEKWAIT
|
|
+000072 9a72: a0 00 ldy #$00
|
|
+000074 9a74: b9 b1 9b L9A74 lda L9BB1,y
|
|
+000077 9a77: 91 d0 sta ($d0),y
|
|
+000079 9a79: 45 d3 eor SEEKWAIT
|
|
+00007b 9a7b: 85 d3 sta SEEKWAIT
|
|
+00007d 9a7d: c8 iny
|
|
+00007e 9a7e: c0 0a cpy #$0a
|
|
+000080 9a80: 90 f2 bcc L9A74
|
|
+000082 9a82: 91 d0 sta ($d0),y
|
|
+000084 9a84: ad d0 ff lda Z_REG
|
|
+000087 9a87: 48 pha
|
|
+000088 9a88: ad df ff lda E_REG
|
|
+00008b 9a8b: 48 pha
|
|
+00008c 9a8c: 09 80 ora #$80
|
|
+00008e 9a8e: 8d df ff sta E_REG
|
|
+000091 9a91: a0 14 ldy #$14
|
|
+000093 9a93: 8c d0 ff sty Z_REG
|
|
+000096 9a96: ad 70 c0 lda CLOCK
|
|
+000099 9a99: 30 48 bmi L9AE3
|
|
+00009b 9a9b: a2 12 ldx #$12
|
|
+00009d 9a9d: 8e d0 ff stx Z_REG
|
|
+0000a0 9aa0: a9 ff lda #$ff
|
|
+0000a2 9aa2: 8d 70 c0 sta CLOCK
|
|
+0000a5 9aa5: 8d 70 c0 sta CLOCK
|
|
+0000a8 9aa8: a2 01 ldx #$01
|
|
+0000aa 9aaa: e8 L9AAA inx
|
|
+0000ab 9aab: 08 php
|
|
+0000ac 9aac: 78 sei
|
|
+0000ad 9aad: 8e d0 ff L9AAD stx Z_REG
|
|
+0000b0 9ab0: ad 70 c0 lda CLOCK
|
|
+0000b3 9ab3: bd b1 9b lda L9BB1,x
|
|
+0000b6 9ab6: 8d 70 c0 sta CLOCK
|
|
+0000b9 9ab9: ad 70 c0 lda CLOCK
|
|
+0000bc 9abc: 8c d0 ff sty Z_REG
|
|
+0000bf 9abf: ad 70 c0 lda CLOCK
|
|
+0000c2 9ac2: d0 e9 bne L9AAD
|
|
+0000c4 9ac4: 28 plp
|
|
+0000c5 9ac5: e0 07 cpx #$07
|
|
+0000c7 9ac7: 90 e1 bcc L9AAA
|
|
+0000c9 9ac9: a2 0e ldx #$0e
|
|
+0000cb 9acb: 8e d0 ff stx Z_REG
|
|
+0000ce 9ace: ad b9 9b lda L9BB9
|
|
+0000d1 9ad1: 09 cc ora #$cc
|
|
+0000d3 9ad3: 8d 70 c0 sta CLOCK
|
|
+0000d6 9ad6: ee d0 ff inc Z_REG
|
|
+0000d9 9ad9: ad b9 9b lda L9BB9
|
|
+0000dc 9adc: 4a lsr A
|
|
+0000dd 9add: 4a lsr A
|
|
+0000de 9ade: 09 cc ora #$cc
|
|
+0000e0 9ae0: 8d 70 c0 sta CLOCK
|
|
+0000e3 9ae3: 68 L9AE3 pla
|
|
+0000e4 9ae4: 8d df ff sta E_REG
|
|
+0000e7 9ae7: 68 pla
|
|
+0000e8 9ae8: 8d d0 ff sta Z_REG
|
|
+0000eb 9aeb: 60 rts
|
|
|
|
+0000ec 9aec: ad df ff L9AEC lda E_REG
|
|
+0000ef 9aef: 09 40 ora #$40
|
|
+0000f1 9af1: 8d df ff sta E_REG
|
|
+0000f4 9af4: 60 rts
|
|
|
|
+0000f5 9af5: 20 ec 9a jsr L9AEC
|
|
+0000f8 9af8: ad d0 ff lda Z_REG
|
|
+0000fb 9afb: 48 pha
|
|
+0000fc 9afc: ad df ff lda E_REG
|
|
+0000ff 9aff: 48 pha
|
|
+000100 9b00: 09 80 ora #$80
|
|
+000102 9b02: 8d df ff sta E_REG
|
|
+000105 9b05: a9 00 lda #$00
|
|
+000107 9b07: 8d e0 16 sta $16e0
|
|
+00010a 9b0a: a0 14 ldy #$14
|
|
+00010c 9b0c: 8c d0 ff sty Z_REG
|
|
+00010f 9b0f: ad 70 c0 lda CLOCK
|
|
+000112 9b12: 30 70 bmi L9B84
|
|
+000114 9b14: a9 10 lda #$10
|
|
+000116 9b16: 8d bb 9b sta L9BBB
|
|
+000119 9b19: a2 08 L9B19 ldx #$08
|
|
+00011b 9b1b: 08 php
|
|
+00011c 9b1c: 78 sei
|
|
+00011d 9b1d: ca L9B1D dex
|
|
+00011e 9b1e: 30 19 bmi L9B39
|
|
+000120 9b20: 8e d0 ff stx Z_REG
|
|
+000123 9b23: ad 70 c0 lda CLOCK
|
|
+000126 9b26: 9d d4 18 sta $18d4,x
|
|
+000129 9b29: 8c d0 ff sty Z_REG
|
|
+00012c 9b2c: ad 70 c0 lda CLOCK
|
|
+00012f 9b2f: f0 ec beq L9B1D
|
|
+000131 9b31: 28 plp
|
|
+000132 9b32: ce bb 9b dec L9BBB
|
|
+000135 9b35: 10 e2 bpl L9B19
|
|
+000137 9b37: 30 4b bmi L9B84
|
|
|
|
+000139 9b39: 28 L9B39 plp
|
|
+00013a 9b3a: a2 0f ldx #$0f
|
|
+00013c 9b3c: 8e d0 ff stx Z_REG
|
|
+00013f 9b3f: ad 70 c0 lda CLOCK
|
|
+000142 9b42: 38 sec
|
|
+000143 9b43: 2a rol A
|
|
+000144 9b44: 2a rol A
|
|
+000145 9b45: ce d0 ff dec Z_REG
|
|
+000148 9b48: 2d 70 c0 and CLOCK
|
|
+00014b 9b4b: 8d dc 18 sta $18dc
|
|
+00014e 9b4e: a2 09 ldx #$09
|
|
+000150 9b50: bd d4 18 L9B50 lda $18d4,x
|
|
+000153 9b53: 9d b1 9b sta L9BB1,x
|
|
+000156 9b56: ca dex
|
|
+000157 9b57: 10 f7 bpl L9B50
|
|
+000159 9b59: a9 19 lda #$19
|
|
+00015b 9b5b: 8d ba 9b sta L9BBA
|
|
+00015e 9b5e: a0 11 ldy #$11
|
|
+000160 9b60: a2 00 ldx #$00
|
|
+000162 9b62: bd b1 9b L9B62 lda L9BB1,x
|
|
+000165 9b65: 4a lsr A
|
|
+000166 9b66: 4a lsr A
|
|
+000167 9b67: 4a lsr A
|
|
+000168 9b68: 4a lsr A
|
|
+000169 9b69: 09 30 ora #$30
|
|
+00016b 9b6b: 99 e0 16 sta $16e0,y
|
|
+00016e 9b6e: e8 inx
|
|
+00016f 9b6f: 88 dey
|
|
+000170 9b70: 30 12 bmi L9B84
|
|
+000172 9b72: bd b1 9b L9B72 lda L9BB1,x
|
|
+000175 9b75: 29 0f and #$0f
|
|
+000177 9b77: 09 30 ora #$30
|
|
+000179 9b79: 99 e0 16 sta $16e0,y
|
|
+00017c 9b7c: 88 dey
|
|
+00017d 9b7d: c0 07 cpy #$07
|
|
+00017f 9b7f: d0 e1 bne L9B62
|
|
+000181 9b81: e8 inx
|
|
+000182 9b82: d0 ee bne L9B72
|
|
+000184 9b84: 68 L9B84 pla
|
|
+000185 9b85: 8d df ff sta E_REG
|
|
+000188 9b88: 68 pla
|
|
+000189 9b89: 8d d0 ff sta Z_REG
|
|
+00018c 9b8c: 60 rts
|
|
|
|
+00018d 9b8d: 48 L9B8D pha
|
|
+00018e 9b8e: 4a lsr A
|
|
+00018f 9b8f: 4a lsr A
|
|
+000190 9b90: 4a lsr A
|
|
+000191 9b91: 4a lsr A
|
|
+000192 9b92: a8 tay
|
|
+000193 9b93: 68 pla
|
|
+000194 9b94: 29 0f and #$0f
|
|
+000196 9b96: 18 clc
|
|
+000197 9b97: 79 9b 9b adc L9B9B,y
|
|
+00019a 9b9a: 60 rts
|
|
|
|
+00019b 9b9b: 00 L9B9B .dd1 $00
|
|
+00019c 9b9c: 0a .dd1 $0a
|
|
+00019d 9b9d: 14 .dd1 $14
|
|
+00019e 9b9e: 1e .dd1 $1e
|
|
+00019f 9b9f: 28 32 3c 46+ .str “(2<FP”
|
|
+0001a4 9ba4: 5a L9BA4 .dd1 $5a
|
|
+0001a5 9ba5: 08 .dd1 $08
|
|
+0001a6 9ba6: 0b .dd1 $0b
|
|
+0001a7 9ba7: 0b .dd1 $0b
|
|
+0001a8 9ba8: 07 .dd1 $07
|
|
+0001a9 9ba9: 09 .dd1 $09
|
|
+0001aa 9baa: 0c .dd1 $0c
|
|
+0001ab 9bab: 07 .dd1 $07
|
|
+0001ac 9bac: 0a .dd1 $0a
|
|
+0001ad 9bad: 0d .dd1 $0d
|
|
+0001ae 9bae: 08 .dd1 $08
|
|
+0001af 9baf: 0b .dd1 $0b
|
|
+0001b0 9bb0: 0d .dd1 $0d
|
|
+0001b1 9bb1: 00 00 00 00+ L9BB1 .fill 5,$00
|
|
+0001b6 9bb6: 00 L9BB6 .dd1 $00
|
|
+0001b7 9bb7: 00 L9BB7 .dd1 $00
|
|
+0001b8 9bb8: 00 L9BB8 .dd1 $00
|
|
+0001b9 9bb9: 00 L9BB9 .dd1 $00
|
|
+0001ba 9bba: 00 L9BBA .dd1 $00
|
|
+0001bb 9bbb: 00 L9BBB .dd1 $00
|
|
|
|
+0001bc 9bbc: 20 ec 9a jsr L9AEC
|
|
+0001bf 9bbf: 20 1e 9c jsr L9C1E
|
|
+0001c2 9bc2: 90 03 bcc L9BC7
|
|
+0001c4 9bc4: 20 5e 1a jsr $1a5e
|
|
+0001c7 9bc7: ad e0 16 L9BC7 lda $16e0
|
|
+0001ca 9bca: 29 04 and #$04
|
|
+0001cc 9bcc: d0 0a bne L9BD8
|
|
+0001ce 9bce: ad 62 c0 lda READSW2
|
|
+0001d1 9bd1: ae 60 c0 ldx READSW0
|
|
+0001d4 9bd4: a0 01 ldy #$01
|
|
+0001d6 9bd6: d0 08 bne L9BE0
|
|
|
|
+0001d8 9bd8: ad 61 c0 L9BD8 lda READSW1
|
|
+0001db 9bdb: ae 63 c0 ldx READSW3
|
|
+0001de 9bde: a0 03 ldy #$03
|
|
+0001e0 9be0: 84 d0 L9BE0 sty $d0
|
|
+0001e2 9be2: a0 00 ldy #$00
|
|
+0001e4 9be4: 0a asl A
|
|
+0001e5 9be5: 90 01 bcc L9BE8
|
|
+0001e7 9be7: 88 dey
|
|
+0001e8 9be8: 8e e1 16 L9BE8 stx $16e1
|
|
+0001eb 9beb: 8a txa
|
|
+0001ec 9bec: a0 00 ldy #$00
|
|
+0001ee 9bee: 0a asl A
|
|
+0001ef 9bef: 90 01 bcc L9BF2
|
|
+0001f1 9bf1: 88 dey
|
|
+0001f2 9bf2: 8e e2 16 L9BF2 stx $16e2
|
|
+0001f5 9bf5: 4e e0 16 lsr $16e0
|
|
+0001f8 9bf8: 90 06 bcc L9C00
|
|
+0001fa 9bfa: 20 57 9c jsr L9C57
|
|
+0001fd 9bfd: 8d e3 16 sta $16e3
|
|
+000200 9c00: e6 d0 L9C00 inc $d0
|
|
+000202 9c02: 4e e0 16 lsr $16e0
|
|
+000205 9c05: 90 06 bcc L9C0D
|
|
+000207 9c07: 20 57 9c jsr L9C57
|
|
+00020a 9c0a: 8d e4 16 sta $16e4
|
|
+00020d 9c0d: ad df ff L9C0D lda E_REG
|
|
+000210 9c10: 29 3c and #$3c
|
|
+000212 9c12: 8d df ff sta E_REG
|
|
+000215 9c15: a9 0f lda #$0f
|
|
+000217 9c17: a2 48 ldx #$48
|
|
+000219 9c19: a0 9c ldy #$9c
|
|
+00021b 9c1b: 4c 5e 1e jmp $1e5e
|
|
|
|
+00021e 9c1e: a9 0f L9C1E lda #$0f
|
|
+000220 9c20: a2 48 ldx #$48
|
|
+000222 9c22: a0 9c ldy #$9c
|
|
+000224 9c24: 20 05 1e jsr $1e05
|
|
+000227 9c27: 90 03 bcc L9C2C
|
|
+000229 9c29: a9 00 lda #$00
|
|
+00022b 9c2b: 60 rts
|
|
|
|
+00022c 9c2c: ad df ff L9C2C lda E_REG
|
|
+00022f 9c2f: 29 7f and #$7f
|
|
+000231 9c31: 09 43 ora #$43
|
|
+000233 9c33: 8d df ff sta E_REG
|
|
+000236 9c36: 08 php
|
|
+000237 9c37: 78 sei
|
|
+000238 9c38: ad db ff lda D_ACR
|
|
+00023b 9c3b: 29 df and #$df
|
|
+00023d 9c3d: 8d db ff sta D_ACR
|
|
+000240 9c40: 28 plp
|
|
+000241 9c41: 2c dc c0 bit CLRENSEL
|
|
+000244 9c44: 2c de c0 bit CLRENSIO
|
|
+000247 9c47: 60 rts
|
|
|
|
+000248 9c48: 0c .dd1 $0c
|
|
+000249 9c49: 00 .dd1 $00
|
|
+00024a 9c4a: 00 .dd1 $00
|
|
+00024b 9c4b: 00 .dd1 $00
|
|
+00024c 9c4c: 00 .dd1 $00
|
|
+00024d 9c4d: 0d .dd1 $0d
|
|
+00024e 9c4e: 00 .dd1 $00
|
|
+00024f 9c4f: 00 .dd1 $00
|
|
+000250 9c50: 00 .dd1 $00
|
|
+000251 9c51: 00 .dd1 $00
|
|
+000252 9c52: 0e .dd1 $0e
|
|
+000253 9c53: 00 .dd1 $00
|
|
+000254 9c54: 00 .dd1 $00
|
|
+000255 9c55: 00 .dd1 $00
|
|
+000256 9c56: 00 .dd1 $00
|
|
|
|
+000257 9c57: a5 d0 L9C57 lda $d0
|
|
+000259 9c59: 4a lsr A
|
|
+00025a 9c5a: 2c 58 c0 bit CLRPDL0
|
|
+00025d 9c5d: 90 03 bcc L9C62
|
|
+00025f 9c5f: 2c 59 c0 bit SETPDL0
|
|
+000262 9c62: 4a L9C62 lsr A
|
|
+000263 9c63: 2c 5e c0 bit CLRPDL1
|
|
+000266 9c66: 90 03 bcc L9C6B
|
|
+000268 9c68: 2c 5f c0 bit SETPDL1
|
|
+00026b 9c6b: 4a L9C6B lsr A
|
|
+00026c 9c6c: 2c 5a c0 bit CLRPDL2
|
|
+00026f 9c6f: 90 03 bcc L9C74
|
|
+000271 9c71: 2c 5b c0 bit SETPDL2
|
|
+000274 9c74: 08 L9C74 php
|
|
+000275 9c75: 58 L9C75 cli
|
|
+000276 9c76: 2c 5c c0 bit CLRPDLEN
|
|
+000279 9c79: a9 f4 lda #$f4
|
|
+00027b 9c7b: 8d d8 ff sta D_TIMER2C_L
|
|
+00027e 9c7e: a9 01 lda #$01
|
|
+000280 9c80: 8d d9 ff sta D_TIMER2C_H
|
|
+000283 9c83: a9 20 lda #$20
|
|
+000285 9c85: 2c dd ff L9C85 bit D_IFR
|
|
+000288 9c88: f0 fb beq L9C85
|
|
+00028a 9c8a: 78 sei
|
|
+00028b 9c8b: 38 sec
|
|
+00028c 9c8c: a9 68 lda #$68
|
|
+00028e 9c8e: 8d d8 ff sta D_TIMER2C_L
|
|
+000291 9c91: a9 01 lda #$01
|
|
+000293 9c93: 2c 5d c0 bit SETPDLEN
|
|
+000296 9c96: 20 a8 f4 jsr ANALOG
|
|
+000299 9c99: 90 0c bcc L9CA7
|
|
+00029b 9c9b: 58 L9C9B cli
|
|
+00029c 9c9c: 78 sei
|
|
+00029d 9c9d: 2c 66 c0 bit JOYRDY
|
|
+0002a0 9ca0: 10 d3 bpl L9C75
|
|
+0002a2 9ca2: 20 ab f4 jsr ANLOG1
|
|
+0002a5 9ca5: b0 f4 bcs L9C9B
|
|
+0002a7 9ca7: 28 L9CA7 plp
|
|
+0002a8 9ca8: 49 ff eor #$ff
|
|
+0002aa 9caa: 30 13 bmi L9CBF
|
|
+0002ac 9cac: 85 d1 sta $d1
|
|
+0002ae 9cae: 98 tya
|
|
+0002af 9caf: 49 ff eor #$ff
|
|
+0002b1 9cb1: 46 d1 lsr $d1
|
|
+0002b3 9cb3: 6a ror A
|
|
+0002b4 9cb4: 46 d1 lsr $d1
|
|
+0002b6 9cb6: 6a ror A
|
|
+0002b7 9cb7: 46 d1 lsr $d1
|
|
+0002b9 9cb9: d0 07 bne L9CC2
|
|
+0002bb 9cbb: 6a ror A
|
|
+0002bc 9cbc: 69 00 adc #$00
|
|
+0002be 9cbe: 60 rts
|
|
|
|
+0002bf 9cbf: a9 00 L9CBF lda #$00
|
|
+0002c1 9cc1: 60 rts
|
|
|
|
+0002c2 9cc2: a9 ff L9CC2 lda #$ff
|
|
+0002c4 9cc4: 60 rts
|
|
|
|
; main entry - floppy?
|
|
+0002c5 9cc5: ad df ff lda E_REG
|
|
+0002c8 9cc8: 48 pha
|
|
+0002c9 9cc9: 29 df and #$df ;drop screen bit
|
|
+0002cb 9ccb: 8d cf 9f sta VBLSAVE-1 ;environment save
|
|
+0002ce 9cce: 68 pla
|
|
+0002cf 9ccf: 29 ef and #$ef
|
|
+0002d1 9cd1: 09 03 ora #$03 ;enable rom I/O space
|
|
+0002d3 9cd3: 8d df ff sta E_REG
|
|
+0002d6 9cd6: ad d8 c0 lda CLRSCR ;disable smooth scroll
|
|
+0002d9 9cd9: 08 php ;IF ALREADY SEI'D, THEN WE
|
|
+0002da 9cda: 68 pla ; STAY THAT WAY...
|
|
+0002db 9cdb: 6a ror A
|
|
+0002dc 9cdc: 6a ror A
|
|
+0002dd 9cdd: 6a ror A
|
|
+0002de 9cde: 6a ror A
|
|
+0002df 9cdf: 85 d4 sta IRQMASK ;'I' bit into bit7
|
|
;
|
|
+0002e1 9ce1: ad db 16 lda D_BUFL ;dest pointer lsb
|
|
+0002e4 9ce4: 85 9b sta BUF ;rom diskio buf lsb
|
|
+0002e6 9ce6: ad dc 16 lda D_BUFH ;dest pointer msb
|
|
+0002e9 9ce9: 85 9c sta BUF+1 ;rom diskio buf msb
|
|
+0002eb 9ceb: ad dd 16 lda D_BUFX ;dest pointer xbyte
|
|
+0002ee 9cee: 8d 9c 14 sta $149c ;rom diskio buf xbyte
|
|
+0002f1 9cf1: ad df ff lda E_REG ;down to 1MHz
|
|
+0002f4 9cf4: 09 80 ora #$80
|
|
+0002f6 9cf6: 8d df ff sta E_REG
|
|
+0002f9 9cf9: 20 57 9e jsr UNITSEL
|
|
+0002fc 9cfc: 20 14 9f jsr L9F14
|
|
+0002ff 9cff: d0 22 bne L9D23
|
|
+000301 9d01: ae da 16 ldx D_UNITNUM ;unit?
|
|
+000304 9d04: bd d9 9f lda DRVTRACK,x
|
|
+000307 9d07: 38 sec
|
|
+000308 9d08: e9 02 sbc #$02
|
|
+00030a 9d0a: b0 02 bcs L9D0E
|
|
+00030c 9d0c: 69 04 adc #$04
|
|
+00030e 9d0e: 20 8f 9f L9D0E jsr MYSEEK2
|
|
+000311 9d11: 20 14 9f jsr L9F14
|
|
+000314 9d14: d0 0d bne L9D23
|
|
+000316 9d16: a9 00 lda #$00
|
|
+000318 9d18: ac da 16 ldy D_UNITNUM
|
|
+00031b 9d1b: 99 d1 9f sta DRIVESEL,y
|
|
+00031e 9d1e: a9 28 lda #$28
|
|
+000320 9d20: 4c f0 9d jmp L9DF0
|
|
|
|
+000323 9d23: ad de 16 L9D23 lda D_COMMAND
|
|
+000326 9d26: 4a lsr A
|
|
+000327 9d27: b0 0b bcs SECTORIO ;branch if its a read
|
|
+000329 9d29: ad df ff lda E_REG ;back to 2Meg
|
|
+00032c 9d2c: 29 7f and #$7f
|
|
+00032e 9d2e: 8d df ff sta E_REG
|
|
+000331 9d31: 20 b9 19 jsr $19b9 ;prenib monitor routine
|
|
; ********************************************************
|
|
; NAME : SECTORIO
|
|
; FUNCTION: READ OR WRITE A SECTOR
|
|
; INPUT : IBSTRK, IBSECT, MONTIME,
|
|
; RETURNS : CARRY CLEAR IF OK (AC=00)
|
|
; : CARRY SET IF ERROR (AC=ERRCODE)
|
|
; : SEEKWAIT ALL SETUP
|
|
; DESTROYS: ALL REGISTERS
|
|
; ********************************************************
|
|
;
|
|
+000334 9d34: a9 01 SECTORIO lda #$01
|
|
+000336 9d36: 85 d2 sta RECALCNT
|
|
+000338 9d38: ac da 16 ldy D_UNITNUM ;ARE WE ON-TRACK?
|
|
+00033b 9d3b: ad d8 16 lda D_TRACK
|
|
+00033e 9d3e: d9 d9 9f cmp DRVTRACK,y
|
|
+000341 9d41: f0 1a beq SOUGHT
|
|
+000343 9d43: 24 d3 bit SEEKWAIT
|
|
+000345 9d45: 10 10 bpl L9D57
|
|
+000347 9d47: 46 d3 lsr SEEKWAIT
|
|
+000349 9d49: a9 04 lda #$04
|
|
+00034b 9d4b: 20 42 9f jsr L9F42
|
|
+00034e 9d4e: a8 tay
|
|
+00034f 9d4f: a9 00 SEEKDEL lda #$00
|
|
+000351 9d51: 20 56 f4 jsr MSWAIT
|
|
+000354 9d54: 88 dey
|
|
+000355 9d55: d0 f8 bne SEEKDEL
|
|
;
|
|
; ISSUE THE SEEK:
|
|
;
|
|
+000357 9d57: ad d8 16 L9D57 lda D_TRACK ;GET DESTINATION TRACK
|
|
+00035a 9d5a: 20 8f 9f jsr MYSEEK2
|
|
+00035d 9d5d: a5 d4 SOUGHT lda IRQMASK
|
|
+00035f 9d5f: 85 8b sta IMASK
|
|
+000361 9d61: a9 06 lda #$06
|
|
+000363 9d63: 85 8f sta $8f
|
|
+000365 9d65: a9 04 lda #$04
|
|
+000367 9d67: 85 d1 sta $d1
|
|
;
|
|
; DELAY FOR ANY REMAINING MOTOR-UP TIME:
|
|
;
|
|
+000369 9d69: a5 9a MDELAY lda MONTIMEH
|
|
+00036b 9d6b: 10 0d bpl FINDIT
|
|
+00036d 9d6d: a9 01 lda #$01
|
|
+00036f 9d6f: 20 42 9f jsr L9F42
|
|
+000372 9d72: a9 00 lda #$00
|
|
+000374 9d74: 20 56 f4 jsr MSWAIT
|
|
+000377 9d77: 4c 69 9d jmp MDELAY
|
|
|
|
;
|
|
; FIND THE DESIRED SECTOR:
|
|
;
|
|
; NOTE: FINDSECT RETURNS WITH
|
|
; IRQ INHIBITED!
|
|
;
|
|
+00037a 9d7a: 08 FINDIT php
|
|
+00037b 9d7b: 78 sei
|
|
+00037c 9d7c: ad ee ff lda E_IER
|
|
+00037f 9d7f: 29 18 and #$18
|
|
+000381 9d81: 8d ee ff sta E_IER
|
|
+000384 9d84: 09 80 ora #$80
|
|
+000386 9d86: 8d d0 9f sta VBLSAVE
|
|
+000389 9d89: 28 plp
|
|
+00038a 9d8a: 20 10 9e jsr L9E10
|
|
+00038d 9d8d: b0 3b bcs TRYRECAL
|
|
+00038f 9d8f: a2 60 ldx #$60
|
|
+000391 9d91: ad de 16 lda D_COMMAND
|
|
+000394 9d94: 4a lsr A
|
|
+000395 9d95: 90 1d bcc SIOWRITE
|
|
; ****************************************************
|
|
; READ A SECTOR:
|
|
;
|
|
+000397 9d97: 20 48 f1 jsr READ16
|
|
+00039a 9d9a: 20 c7 9f jsr FIXIRQ
|
|
+00039d 9d9d: ad d0 9f lda VBLSAVE
|
|
+0003a0 9da0: 8d ee ff sta E_IER
|
|
+0003a3 9da3: b0 1f bcs BADIO
|
|
+0003a5 9da5: ad df ff lda E_REG
|
|
+0003a8 9da8: 29 7f and #$7f
|
|
+0003aa 9daa: 8d df ff sta E_REG
|
|
+0003ad 9dad: 20 c2 19 jsr $19c2 ;postnib
|
|
+0003b0 9db0: b0 14 bcs IORETRY
|
|
+0003b2 9db2: 90 3a bcc L9DEE
|
|
|
|
; ******************************************************
|
|
; WRITE A SECTOR:
|
|
;
|
|
+0003b4 9db4: 20 16 f2 SIOWRITE jsr WRITE16
|
|
+0003b7 9db7: 20 c7 9f jsr FIXIRQ
|
|
+0003ba 9dba: ad d0 9f lda VBLSAVE
|
|
+0003bd 9dbd: 8d ee ff sta E_IER
|
|
+0003c0 9dc0: 90 2c bcc L9DEE
|
|
+0003c2 9dc2: 50 27 bvc L9DEB ;=>GOOD WRITE
|
|
+0003c4 9dc4: 70 b4 BADIO bvs FINDIT ;=>WRITE PROTECTED
|
|
+0003c6 9dc6: c6 d1 IORETRY dec $d1
|
|
+0003c8 9dc8: d0 b0 bne FINDIT
|
|
+0003ca 9dca: ad d0 9f TRYRECAL lda VBLSAVE
|
|
+0003cd 9dcd: 8d ee ff sta E_IER
|
|
+0003d0 9dd0: c6 d2 dec RECALCNT
|
|
+0003d2 9dd2: 30 14 bmi SIOERR
|
|
+0003d4 9dd4: 20 5e 9f jsr L9F5E
|
|
+0003d7 9dd7: ac da 16 ldy D_UNITNUM
|
|
+0003da 9dda: ad d8 16 lda D_TRACK
|
|
+0003dd 9ddd: d9 d9 9f cmp DRVTRACK,y
|
|
+0003e0 9de0: d0 03 bne NOTSAME
|
|
+0003e2 9de2: 4c 5d 9d jmp SOUGHT
|
|
|
|
+0003e5 9de5: 4c 57 9d NOTSAME jmp L9D57
|
|
|
|
+0003e8 9de8: a9 27 SIOERR lda #$27
|
|
+0003ea 9dea: 2c bit ▼ $2ba9
|
|
+0003eb 9deb: a9 2b L9DEB lda #$2b
|
|
+0003ed 9ded: 2c bit ▼ a:$00a9
|
|
+0003ee 9dee: a9 00 L9DEE lda #$00
|
|
+0003f0 9df0: 48 L9DF0 pha
|
|
+0003f1 9df1: a9 01 lda #$01
|
|
+0003f3 9df3: 20 42 9f jsr L9F42
|
|
+0003f6 9df6: ad df ff lda E_REG
|
|
+0003f9 9df9: 29 20 and #$20
|
|
+0003fb 9dfb: 0d cf 9f ora VBLSAVE-1
|
|
+0003fe 9dfe: 8d df ff sta E_REG
|
|
+000401 9e01: 20 c7 9f jsr FIXIRQ
|
|
+000404 9e04: ad e8 c0 lda MOTORON-1
|
|
+000407 9e07: 68 pla
|
|
+000408 9e08: d0 02 bne FINDSECT
|
|
+00040a 9e0a: 18 clc
|
|
+00040b 9e0b: 60 rts
|
|
|
|
+00040c 9e0c: 38 FINDSECT sec
|
|
+00040d 9e0d: 20 5e 1a jsr $1a5e
|
|
+000410 9e10: a9 30 L9E10 lda #$30
|
|
+000412 9e12: 85 d0 sta $d0
|
|
+000414 9e14: 46 d5 lsr $d5
|
|
+000416 9e16: a2 60 L9E16 ldx #$60
|
|
+000418 9e18: 20 b9 f1 jsr RDADR16
|
|
+00041b 9e1b: b0 20 bcs L9E3D
|
|
+00041d 9e1d: ad d8 16 lda D_TRACK
|
|
+000420 9e20: c5 99 cmp MONTIMEL
|
|
+000422 9e22: d0 28 bne L9E4C
|
|
+000424 9e24: ad d9 16 lda D_SECTOR
|
|
+000427 9e27: c5 98 cmp SECT
|
|
+000429 9e29: f0 26 beq L9E51
|
|
+00042b 9e2b: a5 d5 lda $d5
|
|
+00042d 9e2d: 30 0e bmi L9E3D
|
|
+00042f 9e2f: ad d9 16 lda D_SECTOR
|
|
+000432 9e32: 38 sec
|
|
+000433 9e33: 66 d5 ror $d5
|
|
+000435 9e35: e5 98 sbc SECT
|
|
+000437 9e37: 29 0f and #$0f
|
|
+000439 9e39: 4a lsr A
|
|
+00043a 9e3a: 20 42 9f jsr L9F42
|
|
+00043d 9e3d: 20 c7 9f L9E3D jsr FIXIRQ
|
|
+000440 9e40: c6 d0 dec $d0
|
|
+000442 9e42: f0 08 beq L9E4C
|
|
+000444 9e44: a0 c8 ldy #$c8
|
|
+000446 9e46: 88 L9E46 dey
|
|
+000447 9e47: d0 fd bne L9E46
|
|
+000449 9e49: 4c 16 9e jmp L9E16
|
|
|
|
+00044c 9e4c: 20 c7 9f L9E4C jsr FIXIRQ
|
|
+00044f 9e4f: 38 sec
|
|
+000450 9e50: 24 bit ▼ $18
|
|
+000451 9e51: 18 L9E51 clc
|
|
+000452 9e52: a9 00 lda #$00
|
|
+000454 9e54: 85 9a sta MONTIMEH
|
|
+000456 9e56: 60 rts
|
|
|
|
+000457 9e57: ac da 16 UNITSEL ldy D_UNITNUM ;get drivenum
|
|
+00045a 9e5a: 46 d3 lsr SEEKWAIT
|
|
+00045c 9e5c: 85 99 sta MONTIMEL
|
|
+00045e 9e5e: 85 9a sta MONTIMEH
|
|
+000460 9e60: 20 14 9f jsr L9F14
|
|
+000463 9e63: d0 11 bne SPINNING
|
|
+000465 9e65: ae d5 c0 ldx SETEN1INT
|
|
+000468 9e68: a9 00 lda #$00
|
|
+00046a 9e6a: 8d d1 9f sta DRIVESEL
|
|
+00046d 9e6d: 8d d5 9f sta L9FD5
|
|
+000470 9e70: 20 00 9f jsr L9F00
|
|
+000473 9e73: 4c a5 9e jmp SETTIME ;(SETTIME) go setup motor delay
|
|
|
|
+000476 9e76: b9 d1 9f SPINNING lda DRIVESEL,y
|
|
+000479 9e79: d0 1a bne GOFORIT
|
|
+00047b 9e7b: c0 00 cpy #$00
|
|
+00047d 9e7d: f0 26 beq SETTIME
|
|
+00047f 9e7f: a9 00 lda #$00
|
|
+000481 9e81: 0d d4 9f ora DRIVESEL+3
|
|
+000484 9e84: 0d d3 9f ora DRIVESEL+2
|
|
+000487 9e87: 0d d2 9f ora DRIVESEL+1
|
|
+00048a 9e8a: f0 19 beq SETTIME
|
|
+00048c 9e8c: 38 sec
|
|
+00048d 9e8d: 66 d3 ror SEEKWAIT
|
|
+00048f 9e8f: 20 00 9f jsr L9F00
|
|
+000492 9e92: 4c a5 9e jmp SETTIME
|
|
|
|
+000495 9e95: ae de 16 GOFORIT ldx D_COMMAND
|
|
+000498 9e98: bd dc 9f lda DRVTRACK+3,x
|
|
+00049b 9e9b: 38 sec
|
|
+00049c 9e9c: f9 d5 9f sbc L9FD5,y
|
|
+00049f 9e9f: b0 0f bcs SELECT
|
|
+0004a1 9ea1: a9 00 lda #$00
|
|
+0004a3 9ea3: f0 0b beq SELECT
|
|
|
|
+0004a5 9ea5: a9 00 SETTIME lda #$00
|
|
+0004a7 9ea7: 99 d5 9f sta L9FD5,y
|
|
+0004aa 9eaa: ae de 16 ldx D_COMMAND
|
|
+0004ad 9ead: bd dc 9f lda DRVTRACK+3,x
|
|
+0004b0 9eb0: 49 ff SELECT eor #$ff
|
|
+0004b2 9eb2: 18 clc
|
|
+0004b3 9eb3: 69 01 adc #$01
|
|
+0004b5 9eb5: 85 9a sta MONTIMEH
|
|
+0004b7 9eb7: c0 01 cpy #$01
|
|
+0004b9 9eb9: b0 09 bcs SELEXT
|
|
+0004bb 9ebb: ad ea c0 lda IS_EXT-1
|
|
+0004be 9ebe: ad d4 c0 lda CLREN1INT
|
|
+0004c1 9ec1: 4c e5 9e jmp UNITRET ;=>ALL DONE!
|
|
|
|
+0004c4 9ec4: ad eb c0 SELEXT lda IS_EXT ;I/O SELECT EXTERNAL
|
|
+0004c7 9ec7: c0 02 cpy #$02 ;ARE WE 2, 3, OR 4 ?
|
|
+0004c9 9ec9: b0 09 bcs NOTD2
|
|
+0004cb 9ecb: ad d2 c0 lda MD_EXT1
|
|
+0004ce 9ece: ad d1 c0 lda MS_EXT2
|
|
+0004d1 9ed1: 4c e5 9e jmp UNITRET ;=>ALL DONE!
|
|
|
|
+0004d4 9ed4: d0 09 NOTD2 bne ISD4
|
|
+0004d6 9ed6: ad d3 c0 lda MS_EXT1
|
|
+0004d9 9ed9: ad d0 c0 lda CLRDSA0
|
|
+0004dc 9edc: 4c e5 9e jmp UNITRET ;=>ALL DONE!
|
|
|
|
+0004df 9edf: ad d3 c0 ISD4 lda MS_EXT1 ;MOTOR SELECT
|
|
+0004e2 9ee2: ad d1 c0 lda MS_EXT2 ; ONLY .D4
|
|
+0004e5 9ee5: ad e9 c0 UNITRET lda MOTORON ;PROVIDE MOTOR POWER
|
|
+0004e8 9ee8: a9 01 lda #$01 ;SAY WE'VE SELECTED
|
|
+0004ea 9eea: 99 d1 9f sta DRIVESEL,y ; THIS DRIVE
|
|
+0004ed 9eed: a5 9a lda MONTIMEH
|
|
+0004ef 9eef: 10 22 bpl L9F13
|
|
+0004f1 9ef1: a0 05 ldy #$05
|
|
+0004f3 9ef3: a9 64 L9EF3 lda #$64
|
|
+0004f5 9ef5: 20 56 f4 jsr MSWAIT
|
|
+0004f8 9ef8: 88 dey
|
|
+0004f9 9ef9: d0 f8 bne L9EF3
|
|
+0004fb 9efb: a9 02 lda #$02
|
|
+0004fd 9efd: 4c 42 9f jmp L9F42
|
|
|
|
+000500 9f00: ad d2 c0 L9F00 lda MD_EXT1
|
|
+000503 9f03: ad d0 c0 lda CLRDSA0
|
|
+000506 9f06: a2 03 ldx #$03
|
|
+000508 9f08: a9 00 lda #$00
|
|
+00050a 9f0a: 9d d1 9f L9F0A sta DRIVESEL,x
|
|
+00050d 9f0d: 9d d5 9f sta L9FD5,x
|
|
+000510 9f10: ca dex
|
|
+000511 9f11: d0 f7 bne L9F0A
|
|
+000513 9f13: 60 L9F13 rts
|
|
|
|
+000514 9f14: a2 03 L9F14 ldx #$03
|
|
+000516 9f16: ad ec c0 L9F16 lda $c0ec
|
|
+000519 9f19: cd ec c0 cmp $c0ec
|
|
+00051c 9f1c: d0 1f bne L9F3D
|
|
+00051e 9f1e: cd ec c0 cmp $c0ec
|
|
+000521 9f21: d0 1a bne L9F3D
|
|
+000523 9f23: cd ec c0 cmp $c0ec
|
|
+000526 9f26: d0 15 bne L9F3D
|
|
+000528 9f28: cd ec c0 cmp $c0ec
|
|
+00052b 9f2b: d0 10 bne L9F3D
|
|
+00052d 9f2d: cd ec c0 cmp $c0ec
|
|
+000530 9f30: d0 0b bne L9F3D
|
|
+000532 9f32: cd ec c0 cmp $c0ec
|
|
+000535 9f35: d0 06 bne L9F3D
|
|
+000537 9f37: cd ec c0 cmp $c0ec
|
|
+00053a 9f3a: d0 01 bne L9F3D
|
|
+00053c 9f3c: 60 rts
|
|
|
|
+00053d 9f3d: ca L9F3D dex
|
|
+00053e 9f3e: d0 d6 bne L9F16
|
|
+000540 9f40: ca dex
|
|
+000541 9f41: 60 rts
|
|
|
|
+000542 9f42: 48 L9F42 pha
|
|
+000543 9f43: a0 04 ldy #$04
|
|
+000545 9f45: b9 d0 9f L9F45 lda VBLSAVE,y
|
|
+000548 9f48: f0 0f beq L9F59
|
|
+00054a 9f4a: 68 pla
|
|
+00054b 9f4b: 48 pha
|
|
+00054c 9f4c: 18 clc
|
|
+00054d 9f4d: 79 d4 9f adc DRIVESEL+3,y
|
|
+000550 9f50: c9 29 cmp #$29
|
|
+000552 9f52: 90 02 bcc L9F56
|
|
+000554 9f54: a9 28 lda #$28
|
|
+000556 9f56: 99 d4 9f L9F56 sta DRIVESEL+3,y
|
|
+000559 9f59: 88 L9F59 dey
|
|
+00055a 9f5a: d0 e9 bne L9F45
|
|
+00055c 9f5c: 68 pla
|
|
+00055d 9f5d: 60 rts
|
|
|
|
+00055e 9f5e: a9 02 L9F5E lda #$02
|
|
+000560 9f60: 48 L9F60 pha
|
|
+000561 9f61: a2 60 ldx #$60
|
|
+000563 9f63: 20 b9 f1 jsr RDADR16
|
|
+000566 9f66: 90 09 bcc L9F71
|
|
+000568 9f68: 20 b9 f1 jsr RDADR16
|
|
+00056b 9f6b: 90 04 bcc L9F71
|
|
+00056d 9f6d: a9 30 lda #$30
|
|
+00056f 9f6f: d0 05 bne L9F76
|
|
|
|
+000571 9f71: a5 99 L9F71 lda MONTIMEL
|
|
+000573 9f73: 18 clc
|
|
+000574 9f74: 69 03 adc #$03
|
|
+000576 9f76: ac da 16 L9F76 ldy D_UNITNUM
|
|
+000579 9f79: 99 d9 9f sta DRVTRACK,y
|
|
+00057c 9f7c: 20 c7 9f jsr FIXIRQ
|
|
+00057f 9f7f: a9 00 lda #$00
|
|
+000581 9f81: 85 9a sta MONTIMEH
|
|
+000583 9f83: 85 99 sta MONTIMEL
|
|
+000585 9f85: 20 8f 9f jsr MYSEEK2
|
|
+000588 9f88: 68 pla
|
|
+000589 9f89: a8 tay
|
|
+00058a 9f8a: 88 dey
|
|
+00058b 9f8b: 98 tya
|
|
+00058c 9f8c: d0 d2 bne L9F60
|
|
+00058e 9f8e: 60 rts
|
|
|
|
+00058f 9f8f: 85 9e MYSEEK2 sta TRKN
|
|
+000591 9f91: ac da 16 ldy D_UNITNUM
|
|
+000594 9f94: b9 d9 9f lda DRVTRACK,y
|
|
+000597 9f97: 0a asl A
|
|
+000598 9f98: 85 8c sta CURTRK
|
|
+00059a 9f9a: a2 60 ldx #$60
|
|
+00059c 9f9c: a5 9a lda MONTIMEH
|
|
+00059e 9f9e: 85 d5 sta $d5
|
|
+0005a0 9fa0: 08 php
|
|
+0005a1 9fa1: 78 sei
|
|
+0005a2 9fa2: ad ee ff lda E_IER
|
|
+0005a5 9fa5: 29 18 and #$18
|
|
+0005a7 9fa7: 8d d0 9f sta VBLSAVE
|
|
+0005aa 9faa: 8d ee ff sta E_IER
|
|
+0005ad 9fad: 28 plp
|
|
+0005ae 9fae: a5 9e lda TRKN
|
|
+0005b0 9fb0: 99 d9 9f sta DRVTRACK,y
|
|
+0005b3 9fb3: 0a asl A
|
|
+0005b4 9fb4: 20 00 f4 jsr SEEK
|
|
+0005b7 9fb7: ad d0 9f lda VBLSAVE
|
|
+0005ba 9fba: 09 80 ora #$80
|
|
+0005bc 9fbc: 8d ee ff sta E_IER
|
|
+0005bf 9fbf: a5 9a lda MONTIMEH
|
|
+0005c1 9fc1: 38 sec
|
|
+0005c2 9fc2: e5 d5 sbc $d5
|
|
+0005c4 9fc4: 4c 42 9f jmp L9F42
|
|
|
|
; **************************************************
|
|
; NAME : FIXIRQ
|
|
; FUNCTION: ENABLE IRQ IF APPROPRIATE
|
|
; INPUT : NONE
|
|
; DESTROYS: NOTHING
|
|
; **************************************************
|
|
+0005c7 9fc7: 48 FIXIRQ pha
|
|
+0005c8 9fc8: a5 d4 lda IRQMASK ;SHOULD IRQ BE ENABLED?
|
|
+0005ca 9fca: 30 01 bmi L9FCD ;=>NO, LEAVE IT ALONE
|
|
+0005cc 9fcc: 58 cli ;ENABLE IRQ
|
|
+0005cd 9fcd: 68 L9FCD pla
|
|
+0005ce 9fce: 60 rts
|
|
|
|
+0005cf 9fcf: 00 .dd1 $00
|
|
+0005d0 9fd0: 00 VBLSAVE .dd1 $00
|
|
+0005d1 9fd1: 00 DRIVESEL .dd1 $00
|
|
+0005d2 9fd2: 00 .dd1 $00
|
|
+0005d3 9fd3: 00 .dd1 $00
|
|
+0005d4 9fd4: 00 .dd1 $00
|
|
+0005d5 9fd5: 00 L9FD5 .dd1 $00
|
|
+0005d6 9fd6: 00 .dd1 $00
|
|
+0005d7 9fd7: 00 .dd1 $00
|
|
+0005d8 9fd8: 00 .dd1 $00
|
|
+0005d9 9fd9: 00 DRVTRACK .dd1 $00
|
|
+0005da 9fda: 00 .dd1 $00
|
|
+0005db 9fdb: 00 .dd1 $00
|
|
+0005dc 9fdc: 00 .dd1 $00
|
|
+0005dd 9fdd: 08 .dd1 $08
|
|
+0005de 9fde: 27 .dd1 $27
|
|
+0005df 9fdf: 00 00 00 00+ .fill 33,$00
|