    Zugriffsart feststellen und File zum Lesen oeffnen ($d940)

    Einsprung von $975B:

    97ED: AD 97 02  LDA $0297        Tracknummer des 1. Blocks holen
    97F0: D0 05     BNE $97F7        > 0 (File gefunden) ? ja, ==>
    97F2: A9 62     LDA #$62         62, File not found
    97F4: 4C 7C 80  JMP $807C

    Einsprung von $97F0:

    97F7: AD A7 02  LDA $02A7        Ist die Zugriffsart = 'M' (Modify) ?
    97FA: C9 03     CMP #$03
    97FC: F0 0B     BEQ $9809        ja, ==>
    97FE: A9 20     LDA #$20         b5=1: ist die Datei offen ?
    9800: 24 F4     BIT $F4
    9802: F0 05     BEQ $9809        nein, ==>
    9804: A9 60     LDA #$60         60, Write File open
    9806: 4C 7C 80  JMP $807C

    Einsprung von $97FC, $9802:

    9809: A5 F4     LDA $F4          Typ der Datei
    980B: 29 07     AND #$07
    980D: CD 2D 02  CMP $022D        = gesuchter Typ ?
    9810: F0 05     BEQ $9817        ja, ==>

    Einsprung von $9825, $97A9, $97AD:

    9812: A9 64     LDA #$64         64, File type mismatch
    9814: 4C 7C 80  JMP $807C

    Einsprung von $9810:

    9817: A0 00     LDY #$00         Anzahl der Dateinamen = 1
    9819: 8C 30 02  STY $0230
    981C: AE A7 02  LDX $02A7        Zugriffsart holen
    981F: E0 02     CPX #$02         = Append ?
    9821: D0 1A     BNE $983D        nein, ==>
    9823: C9 04     CMP #$04         Filetyp = REL ?
    9825: F0 EB     BEQ $9812        ja, (Fehler) ==>
    9827: B1 64     LDA ($64),Y      b7=0: Flag 'File offen' im Directory setzen
    9829: 29 4F     AND #$4F
    982B: 91 64     STA ($64),Y
    982D: A5 52     LDA $52          aktuelle SA merken
    982F: 48        PHA
    9830: A9 11     LDA #$11         internen Lesekanal aktivieren
    9832: 85 52     STA $52
    9834: 20 79 9D  JSR $9D79        T&S der aktuellen Datei holen
    9837: 20 C1 93  JSR $93C1        Puffer schreiben
    983A: 68        PLA
    983B: 85 52     STA $52          SA zurueckholen

    Einsprung von $9821:

    983D: 20 4D 98  JSR $984D        File zum Lesen oeffnen
    9840: AD A7 02  LDA $02A7        Zugriffsart
    9843: C9 02     CMP #$02         = Append ?
    9845: D0 4F     BNE $9896        nein, ==>
    9847: 20 CC 98  JSR $98CC        Append-Befehl aufrufen
    984A: 4C 4C 80  JMP $804C

        Previous Page / Next Page