$DAC0/56000: Close routine
Jump from $E8CE:
DAC0: A9 00 LDA #$00
DAC2: 8D F9 02 STA $02F9
DAC5: A5 83 LDA $83 ; secondary address
DAC7: D0 0B BNE $DAD4 ; not zero?
DAC9: A9 00 LDA #$00 ; secondary address 0, LOAD
DACB: 8D 54 02 STA $0254
DACE: 20 27 D2 JSR $D227 ; close channel
Jump from $DADF:
DAD1: 4C DA D4 JMP $D4DA ; close internal channels 17 & 18
Jump from $DAC7:
DAD4: C9 0F CMP #$0F ; 15
DAD6: F0 14 BEQ $DAEC ; yes, close all channels
DAD8: 20 02 DB JSR $DB02 ; close file
DADB: A5 83 LDA $83 ; secondary address
DADD: C9 02 CMP #$02
DADF: 90 F0 BCC $DAD1 ; smaller than 2?
DAE1: AD 6C 02 LDA $026C
DAE4: D0 03 BNE $DAE9
DAE6: 4C 94 C1 JMP $C194 ; termination
Jump from $DAE4:
DAE9: 4C AD C1 JMP $C1AD
Jump from $DAD6:
DAEC: A9 0E LDA #$0E ; 14
DAEE: 85 83 STA $83 ; secondary address
Jump from $DAF5:
DAF0: 20 02 DB JSR $DB02 ; close file
DAF3: C6 83 DEC $83 ; next secondary address
DAF5: 10 F9 BPL $DAF0
DAF7: AD 6C 02 LDA $026C
DAFA: D0 03 BNE $DAFF
DAFC: 4C 94 C1 JMP $C194 ; termination
Jump from $DAFA:
DAFF: 4C AD C1 JMP $C1AD
Previous Page / Next Page