$D075/53365: Calculate blocks free
Jump from $EEF1:
D075: 20 3A EF JSR $EF3A ; buffer address to $6D/$6E
D078: A0 04 LDY #$04 ; begin at position 4
D07A: A9 00 LDA #$00
D07C: AA TAX
Jump from $D08D:
D07D: 18 CLC
D07E: 71 6D ADC ($6D),Y ; add number of free blocks per track
D080: 90 01 BCC $D083
D082: E8 INX ; X as hi-byte
Jump from $D080, $D089:
D083: C8 INY
D084: C8 INY ; plus 4
D085: C8 INY
D086: C8 INY
D087: C0 48 CPY #$48 ; track 18?
D089: F0 F8 BEQ $D083 ; then skip
D08B: C0 90 CPY #$90 ; last track number?
D08D: D0 EE BNE $D07D ; no
D08F: 48 PHA ; lo-byte
D090: 8A TXA ; hi-byte
D091: A6 7F LDX $7F ; drive number
D093: 9D FC 02 STA $02FC,X ; hi-byte to $2FC
D096: 68 PLA ; lo-byte
D097: 9D FA 02 STA $02FA,X ; to $2FA
D09A: 60 RTS
Previous Page / Next Page