     $EC9E/60574:   Load dir

    Jump from $DAA7:

    EC9E: A9 00     LDA #$00
    ECA0: 85 83     STA $83         ; secondary address 0
    ECA2: A9 01     LDA #$01
    ECA4: 20 E2 D1  JSR $D1E2       ; find channel and buffer
    ECA7: A9 00     LDA #$00
    ECA9: 20 C8 D4  JSR $D4C8       ; initialize buffer pointer
    ECAC: A6 82     LDX $82         ; channel number
    ECAE: A9 00     LDA #$00
    ECB0: 9D 44 02  STA $0244,X     ; pointer to end = zero
    ECB3: 20 93 DF  JSR $DF93       ; get buffer number
    ECB6: AA        TAX
    ECB7: A5 7F     LDA $7F         ; drive number
    ECB9: 9D 5B 02  STA $025B,X     ; bring in table
    ECBC: A9 01     LDA #$01        ; 1
    ECBE: 20 F1 CF  JSR $CFF1       ; write in buffer
    ECC1: A9 04     LDA #$04        ; 4, start address $0401
    ECC3: 20 F1 CF  JSR $CFF1       ; write in buffer
    ECC6: A9 01     LDA #$01        ; 2 times 1
    ECC8: 20 F1 CF  JSR $CFF1
    ECCB: 20 F1 CF  JSR $CFF1       ; write in buffer as link address
    ECCE: AD 72 02  LDA $0272       ; drive number
    ECD1: 20 F1 CF  JSR $CFF1       ; write in buffer as line number
    ECD4: A9 00     LDA #$00        ; line number hi
    ECD6: 20 F1 CF  JSR $CFF1       ; in buffer
    ECD9: 20 59 ED  JSR $ED59       ; directory entry in buffer
    ECDC: 20 93 DF  JSR $DF93       ; get buffer number
    ECDF: 0A        ASL
    ECE0: AA        TAX
    ECE1: D6 99     DEC $99,X       ; decrement buffer pointer
    ECE3: D6 99     DEC $99,X
    ECE5: A9 00     LDA #$00
    ECE7: 20 F1 CF  JSR $CFF1       ; 0 as line end in buffer

    Jump from $ED0B, $ED7F:

    ECEA: A9 01     LDA #$01
    ECEC: 20 F1 CF  JSR $CFF1       ; 2 times 1 as link address
    ECEF: 20 F1 CF  JSR $CFF1
    ECF2: 20 CE C6  JSR $C6CE       ; directory entry in buffer
    ECF5: 90 2C     BCC $ED23       ; another entry?
    ECF7: AD 72 02  LDA $0272       ; block number lo
    ECFA: 20 F1 CF  JSR $CFF1       ; in buffer
    ECFD: AD 73 02  LDA $0273       ; block number hi
    ED00: 20 F1 CF  JSR $CFF1       ; in buffer
    ED03: 20 59 ED  JSR $ED59       ; directory entry in buffer
    ED06: A9 00     LDA #$00
    ED08: 20 F1 CF  JSR $CFF1       ; zero as end marker in buffer
    ED0B: D0 DD     BNE $ECEA       ; buffer full? no

    Jump from $ED56:

    ED0D: 20 93 DF  JSR $DF93       ; get buffer number
    ED10: 0A        ASL
    ED11: AA        TAX
    ED12: A9 00     LDA #$00
    ED14: 95 99     STA $99,X       ; buffer pointer to zero
    ED16: A9 88     LDA #$88        ; set READ flag
    ED18: A4 82     LDY $82         ; channel number
    ED1A: 8D 54 02  STA $0254
    ED1D: 99 F2 00  STA $F2,Y       ; flag for channel
    ED20: A5 85     LDA $85         ; data byte
    ED22: 60        RTS

        Previous Page / Next Page