Cachepuffer auf Diskette schreiben
E: x: zu verwendender Jobspeicher

Einsprung von $FF6C:

BFE3: A9 A2     LDA #$A2         TRKWRT_DV (Cache schreiben)
BFE5: 9D 72 02  STA $0272,X
BFE8: A5 95     LDA $95          Track im Cache
BFEA: 85 4D     STA $4D          = aktueller Track
BFEC: A5 94     LDA $94          1. Sektornummer auf Track
BFEE: 85 4E     STA $4E          = aktuelle Sektornummer
BFF0: 86 6C     STX $6C          Jobnummer merken
BFF2: 8A        TXA
BFF3: 20 88 95  JSR $9588        T&S an DC uebergeben
BFF6: A6 6C     LDX $6C          Jobnummer
BFF8: A5 30     LDA $30          Anzahl Schreibversuche
BFFA: 29 3F     AND #$3F
BFFC: 85 28     STA $28          in Zaehler
BFFE: 20 1D C0  JSR $C01D        Schreibjob ausfuehren
C001: 90 15     BCC $C018        kein Fehler, ==>

Einsprung von $C00A:

C003: 20 19 C0  JSR $C019        Schreibflag setzen, neuer Versuch
C006: 90 10     BCC $C018        kein Fehler, ==>
C008: C6 28     DEC $28          Naechster Versuch
C00A: D0 F7     BNE $C003
C00C: 24 81     BIT $81          Fehlermeldung unterdruecken (Burst) ?
C00E: 30 08     BMI $C018        ja, ==>
C010: 2C A8 02  BIT $02A8        Fehlermeldung unterdruecken (DOS-Flag) ?
C013: 30 03     BMI $C018        ja, ==>
C015: 4C 2F 95  JMP $952F        Fehlermeldung ausgeben

Einsprung von $C001, $C006, $C00E, $C013:

C018: 60        RTS

Einsprung von $C003:

C019: A9 80     LDA #$80         Flag: 'Cache veraendert' setzen
C01B: 85 87     STA $87

Einsprung von $BFFE:

C01D: A5 4D     LDA $4D          aktuellen Track
C01F: 85 95     STA $95          als Track im Cachepuffer setzen
C021: A0 01     LDY #$01         1 Schreibversuch
C023: 4C 69 95  JMP $9569        Cache schreiben
    Previous Page / Next Page