     $D8F5/55541:   Open a file with overwriting (@)

    Jump from $D8E6:

    D8F5: A5 E7     LDA $E7         ; file type
    D8F7: 29 07     AND #$07        ; isolate
    D8F9: CD 4A 02  CMP $024A
    D8FC: D0 67     BNE $D965       ; file type different?
    D8FE: C9 04     CMP #$04        ; rel-file?
    D900: F0 63     BEQ $D965       ; 64, 'file type mismatch'
    D902: 20 DA DC  JSR $DCDA
    D905: A5 82     LDA $82
    D907: 8D 70 02  STA $0270       ; save channel number
    D90A: A9 11     LDA #$11
    D90C: 85 83     STA $83
    D90E: 20 EB D0  JSR $D0EB       ; open read channel
    D911: AD 94 02  LDA $0294
    D914: 20 C8 D4  JSR $D4C8       ; set buffer pointer for directory
    D917: A0 00     LDY #$00
    D919: B1 94     LDA ($94),Y     ; file type
    D91B: 09 20     ORA #$20        ; set bit 5, open file
    D91D: 91 94     STA ($94),Y
    D91F: A0 1A     LDY #$1A
    D921: A5 80     LDA $80         ; track
    D923: 91 94     STA ($94),Y
    D925: C8        INY
    D926: A5 81     LDA $81         ; and sector
    D928: 91 94     STA ($94),Y     ; for open with at-sign
    D92A: AE 70 02  LDX $0270       ; channel number
    D92D: A5 D8     LDA $D8
    D92F: 9D 60 02  STA $0260,X     ; pointer to directory block
    D932: A5 DD     LDA $DD
    D934: 9D 66 02  STA $0266,X
    D937: 20 3B DE  JSR $DE3B       ; get track and sector number
    D93A: 20 64 D4  JSR $D464       ; write block
    D93D: 4C EF D9  JMP $D9EF       ; prepare track, sector, and drive number

        Previous Page / Next Page