Burst-Memory-Read/Write

Einsprung von $AA5F:

AAA8: 78        SEI
AAA9: A5 76     LDA $76          b2=0: Burst-Clock initialisieren
AAAB: 29 FB     AND #$FB
AAAD: 85 76     STA $76
AAAF: A0 00     LDY #$00         Memory-Adresse setzen
AAB1: 84 46     STY $46
AAB3: AD 05 02  LDA $0205        ($xx00)
AAB6: 85 47     STA $47
AAB8: AD 04 02  LDA $0204        Befehl
AABB: C9 57     CMP #$57
AABD: F0 18     BEQ $AAD7        U0>MW, ==>
AABF: C9 52     CMP #$52         U0>MR ?
AAC1: D0 3D     BNE $AB00        nicht R/W ==> 31, Syntax Error
Memory-Read

AAC3: 20 D4 AC  JSR $ACD4        FSM-vorbereiten (auf Ausgabe schalten)

Einsprung von $AACC, $AAD3:

AAC6: B1 46     LDA ($46),Y      Byte aus Memory holen
AAC8: 20 86 BF  JSR $BF86        und auf FSM-Bus ausgeben
AACB: C8        INY              naechste Adresse
AACC: D0 F8     BNE $AAC6        ganze Speicherseite ausgeben, ==>
AACE: E6 47     INC $47          naechste Seite auswaehlen
AAD0: CE 06 02  DEC $0206        noch eine Seite ausgeben ?
AAD3: D0 F1     BNE $AAC6        ja, ==>
AAD5: F0 26     BEQ $AAFD        nein ==>

Memory-Write

Einsprung von $AABD, $AAF4, $AAFB:

AAD7: AD 01 40  LDA $4001        'Naechstes Byte bitte'
AADA: 49 08     EOR #$08         (Clock-Ausgang kippen)
AADC: 2C 0D 40  BIT $400D        Schieberegister vorbereiten
AADF: 8D 01 40  STA $4001
AAE2: A9 08     LDA #$08

Einsprung von $AAEC, $AB06:

AAE4: 2C 01 40  BIT $4001        ATN aufgetreten?
AAE7: 30 1A     BMI $AB03        Ja, ==>
AAE9: 2C 0D 40  BIT $400D        b3=1: ist das Byte uebertragen ?
AAEC: F0 F6     BEQ $AAE4        nein, ==>
AAEE: AD 0C 40  LDA $400C        ja, Byte holen
AAF1: 91 46     STA ($46),Y      und abspeichern
AAF3: C8        INY
AAF4: D0 E1     BNE $AAD7        ganze Seite einlesen
AAF6: E6 47     INC $47
AAF8: CE 06 02  DEC $0206        ($0206) Seiten uebertragen
AAFB: D0 DA     BNE $AAD7        noch nicht fertig, ==>

Einsprung von $AAD5:

AAFD: 4C 4C 80  JMP $804C        Ende ==>

Einsprung von $AAC1:

AB00: 4C 83 AA  JMP $AA83        31, Syntax Error

Einsprung von $AAE7:

AB03: 20 15 AD  JSR $AD15        ATN testen und bearbeiten ==>
AB06: 4C E4 AA  JMP $AAE4

    Previous Page / Next Page