prueft, ob gesuchtes File durch eine SA angesprochen wird ($ddb7)

Einsprung von $869A:

9CF5: A2 00     LDX #$00         mit SA = 0 anfangen

Einsprung von $9D04:

9CF7: 86 42     STX $42
9CF9: B5 A8     LDA $A8,X        ist ein Kanal zugeordnet ?
9CFB: C9 FF     CMP #$FF
9CFD: D0 08     BNE $9D07        ja, ==>

Einsprung von $9D1C, $9D23, $9D2A:

9CFF: A6 42     LDX $42          naechste SA probieren
9D01: E8        INX
9D02: E0 10     CPX #$10         wurde letzte SA getestet ?
9D04: 90 F1     BCC $9CF7        nein, ==>
9D06: 60        RTS              c=1: File ist nicht geoeffnet

Einsprung von $9CFD:

9D07: 86 42     STX $42
9D09: 29 3F     AND #$3F         Kanalnummer isolieren
9D0B: A8        TAY
9D0C: B9 F9 00  LDA $00F9,Y      Drivenummer des Kanals holen
9D0F: 29 01     AND #$01
9D11: 85 41     STA $41
9D13: AE 6D 02  LDX $026D        Nummer des gefundenen Files holen
9D16: B5 EF     LDA $EF,X        mit Drivenummer des Files vergleichen
9D18: 29 01     AND #$01
9D1A: C5 41     CMP $41
9D1C: D0 E1     BNE $9CFF        ungleich, (nicht gefunden) ==>
9D1E: B9 7D 02  LDA $027D,Y      Directory-Block des Kanals mit
9D21: D5 E5     CMP $E5,X        Directory-Block des Files vergleichen
9D23: D0 DA     BNE $9CFF        ungleich, ==>
9D25: B9 84 02  LDA $0284,Y      Position im Dir-Block des Kanals mit
9D28: D5 EA     CMP $EA,X        Position im Dir-Block des Files vergleichen
9D2A: D0 D3     BNE $9CFF        ungleich, ==>
9D2C: 18        CLC
9D2D: 60        RTS              c=0: File ist geoeffnet

    Previous Page / Next Page