CmdError: Error-Routine des DOS ($e645)

A7F1: 20 6D A8  JSR $A86D        Fehlertext generieren

Einsprung von $A7ED:

A7F4: 20 71 80  JSR $8071        INPUT-Puffer loeschen
A7F7: A9 00     LDA #$00         BAM nicht schreiben
A7F9: 85 35     STA $35
A7FB: 20 F1 81  JSR $81F1        LED-Blinken aktivieren
A7FE: 20 34 94  JSR $9434        interne Schreib-/Lesekanaele freigeben
A801: A9 00     LDA #$00
A803: 85 CD     STA $CD          Zeiger in INPUT-Puffer loeschen
A805: A6 4F     LDX $4F          Stackpointer initialisieren
A807: 9A        TXS
A808: A5 53     LDA $53          Sekundaeradresse vom Bus
A80A: 29 0F     AND #$0F
A80C: 85 52     STA $52          als aktuelle Sekundaeradresse setzen
A80E: C9 0F     CMP #$0F         = Fehlerkanal
A810: F0 29     BEQ $A83B        ja, Ende
A812: 78        SEI
A813: 24 76     BIT $76          Uebertragungsmodus holen
A815: 70 17     BVS $A82E        LISTEN ? ==>
A817: 30 0F     BMI $A828        TALK ? ==>
A819: A6 52     LDX $52
A81B: B5 A8     LDA $A8,X
A81D: C9 FF     CMP #$FF         War SA geschlossen ?
A81F: F0 1A     BEQ $A83B        ja, Ende
A821: 29 0F     AND #$0F         entsprechende Kanalnummer holen
A823: 85 50     STA $50
A825: 4C 31 A8  JMP $A831

Fehlerbehandlung bei Talk

Einsprung von $A817:

A828: 20 27 90  JSR $9027        Kanal zum Lesen holen
A82B: 4C 31 A8  JMP $A831
Fehlerbehandlung bei Listen

Einsprung von $A815:

A82E: 20 42 90  JSR $9042        Kanal zum Schreiben holen

Einsprung von $A825, $A82B:

A831: 20 5F 90  JSR $905F        Filetyp holen
A834: C9 04     CMP #$04         REL-Datei oder Direktzugriff ?
A836: B0 03     BCS $A83B        ja, (Kanal nicht freigeben) ==>
A838: 20 9E 91  JSR $919E        Kanal freigeben

Einsprung von $A810, $A81F, $A836:

A83B: 4C 00 FF  JMP $FF00        Zur Haupt-Warteschleife

DOS 6

    Previous Page / Next Page