Wenn die BAM geaendert wurde, dann
BAM auf Fehler pruefen und wenn Ok., abspeichern ($eef4)

Einsprung von $872C, $997D, $9996, $99C2, $9C7C, $A41D, $B280, $B633, $DBEE:

B515: A5 35     LDA $35          wurde BAM geaendert ?
B517: F0 28     BEQ $B541        nein, ==>
B519: AD 2C 02  LDA $022C        letzter Track der Partition
B51C: 85 66     STA $66
B51E: 20 52 B6  JSR $B652        Zeiger auf 1. BAM-Puffer setzen

Einsprung von $B53B:

B521: A9 10     LDA #$10         Bei 1. Track des BAM-Puffers anfangen

Einsprung von $B531:

B523: 85 31     STA $31
B525: 20 5E B7  JSR $B75E        BAM-Eintrag pruefen
B528: C6 66     DEC $66          noch ein Track zu pruefen ?
B52A: F0 12     BEQ $B53E        nein, ==>
B52C: 18        CLC
B52D: A5 31     LDA $31          Naechsten Track auswaehlen
B52F: 69 06     ADC #$06
B531: 90 F0     BCC $B523        Ende des Bampuffer ? nein, ==>
B533: A5 32     LDA $32          aktuelle Puffer-Nummer testen
B535: C9 0B     CMP #$0B         war schon der 2. Bampuffer dran ?
B537: F0 05     BEQ $B53E        ja, ==>
B539: E6 32     INC $32          auf 2. Puffer schalten
B53B: 4C 21 B5  JMP $B521        und pruefen

Einsprung von $B52A, $B537:

B53E: 20 12 B6  JSR $B612        BAM auf Diskette schreiben

Einsprung von $B517:

B541: A9 00     LDA #$00         Flag fuer 'BAM geaendert' loeschen
B543: 85 35     STA $35
B545: 60        RTS
    Previous Page / Next Page