Empfangene Daten in Record schreiben ($e0ab)

Einsprung von $8E8C:

A033: A9 A0     LDA #$A0         Record voll/nicht vorhanden ?
A035: 20 E4 9C  JSR $9CE4        (b5,7 testen)
A038: D0 27     BNE $A061        ja, ==>

Einsprung von $A078:

A03A: A5 54     LDA $54          Datenbyte holen
A03C: 20 FC 9F  JSR $9FFC        und in Record schreiben
A03F: A5 51     LDA $51          EOI empfangen ?
A041: F0 0D     BEQ $A050        ja, ==>
A043: 60        RTS

Teil der Error-Routine (Record uebergelaufen & EOI vom Computer empfangen)

Einsprung von $A067:

A044: A9 20     LDA #$20         b5=1: Ist das Flag: 'Record voll' gesetzt ?
A046: 20 E4 9C  JSR $9CE4        [Deshalb sind wir ja hier !!!]
A049: F0 05     BEQ $A050        nein, (wird nie ausgefuehrt) ==>
A04B: A9 51     LDA #$51         51, Overflow in Record
A04D: 8D AB 02  STA $02AB        Fehlernummer merken

Arbeit mit dem aktuellen Record beenden

Einsprung von $A041, $A049:

A050: 20 7B A0  JSR $A07B        Rest des Records mit $00 auffuellen
A053: 20 E1 A0  JSR $A0E1        naechsten Record lesen
A056: AD AB 02  LDA $02AB        Ist ein Fehler aufgetreten ?
A059: F0 03     BEQ $A05E        nein, ==>
A05B: 4C 7C 80  JMP $807C        Fehler ausgeben

Einsprung von $A059:

A05E: 4C 62 A8  JMP $A862        00, Ok,00,00

Laut Dateistatus liegt ein Fehler vor

Einsprung von $A038:

A061: 29 80     AND #$80         Record nicht vorhanden ?
A063: D0 05     BNE $A06A        ja, ==>
A065: A5 51     LDA $51          (Record ist voll ) EOI empfangen ?
A067: F0 DB     BEQ $A044        ja, ==>
A069: 60        RTS              ueberzaelige Daten vergessen

Einsprung von $A063:

A06A: A5 54     LDA $54          Datenbyte zwischenspeichern
A06C: 48        PHA
A06D: 20 D6 A2  JSR $A2D6        neuen Block mit Records an die Datei haengen
A070: 68        PLA
A071: 85 54     STA $54
A073: A9 80     LDA #$80         b7=0: Record existiert
A075: 20 DB 9C  JSR $9CDB        Status loeschen
A078: 4C 3A A0  JMP $A03A        Byte in den neuen Record schreiben

    Previous Page / Next Page