Dieser Baustein ist Funktions- und Pinkombatibel zum MOS6526 und wird in der C1581 eingesetzt.
Reg. 0 | PRA | Peripheral Data Reg. A | 7   0=Diskettenwechsel 6 1=Laufwerks-LED an 5 1=Fehler-LED 4 DIP-Schalter High 3 DIP-Schalter Low 2 0 Motor an 1 1=keine Diskette eingelegt 0 Side Select
|
Reg. 1 | PRB | Peripheral Data Reg. B | 7 ATN IN 6 0=Schreibschutz aktiv 5 Datenrichtung vom FSM-Bus (0=In, 1=Out) 4 automatisches ATN-Response 3 Clock Out 2 Clock In 1 Data Out 0 Data In |
Reg. 2 | DDRA | Data Direction Reg. A | Datenrichtung von Port PA (0=In, 1=Out) |
Reg. 3 | DDRB | Data Direction Reg. B | Datenrichtung von Port PB (0=In, 1=Out) |
Reg. 4 | TA Lo | Timer A Low Register | Startwert für C1581: $06 |
Reg. 5 | TA Hi | Timer A High Register | Startwert für C1581: $00 |
Reg. 6 | TB Lo | Timer B Low Register | Startwert für C1581: $20 |
Reg. 7 | TB Hi | Timer B High Register | Startwert für C1581: $4a |
Reg. 8 | | TOD Low-Byte | 24-Bit-Zähler (Bits 0 bis 7) |
Reg. 9 | | TOD Middle-Byte | 24-Bit-Zähler (Bits 8 bis 15) |
Reg. A | | TOD High-Byte | 24-Bit-Zähler (Bits 16 bis 23) |
Reg. B | | TOD Flag | bei C1581: nicht verwendet |
Reg. C | SDR | Serial Data Register | FSM Input-/Outputregister |
Reg. D | ICR | Interrupt Control Register | 7 bei Lesezugriff: 1 = Interrupt aufgetreten 7 bei Schreibzugriff: 1 = Interrupt-Flags setzen, 0 = löschen 4 Flag1 IRQ (ATN aufgetreten) 3 Serial Port IRQ (FSM fertig) 2 TOD Alarm Interrupt 1 Timer B Interrupt 0 Timer A Interrupt |
Reg. E | CRA | Control Register A | 7 nicht verwendet 6 Serial Port Mode: 0=In, 1=Out 5 Timer A Counts: 0= Systemtakt, 1=CNT Signale 4 Force Load Timer A: 1=Sofort 3 Timer A Rund Mode: 0=laufend, 1=einmalig 2 Timer A Output Mode: 0=Pulse, 1=Toggle 1 Timer A Output: 0=Nein, 1 =Ja 0 0=Timer A starten, 1=stoppen |
Reg. F | CRB | Control Register B | 7 0=Clock, 1=Alarm 5..6 Timer B Mode: 00 = Systemtakt zählen 01 = positive CNT-Inputs zählen 10 = Timer A Underflows zählen 11 = Timer A Underflows bei CNT zählen 4 Force Load Timer A: 1=Sofort 3 Timer A Rund Mode: 0=laufend, 1=einmalig 2 Timer A Output Mode: 0=Pulse, 1=Toggle 1 Timer A Output: 0=Nein, 1 =Ja 0 0=Timer A starten, 1=stoppen |