MOS Technology VIA
aus Wikipedia, der freien Enzyklopädie
Der Versatile Interface Adapter 6522 (VIA) ist ein sehr flexibler Ein/Ausgabebaustein. Außerdem verfügt er über zwei sehr mächtige 16-Bit-Intervalltimer, ein seriell-nach-parallel/parallel-nach-seriell-Schieberegister und zwei individuell programmierbare I/O-Ports mit je 8 Bit. Um die Kontrolle über diese ganzen Fähigkeiten zu haben, gibt es ein Interruptflagregister, ein Interrupt-Enable-Register und ein Paar Funktionskontrollregister.
[Bearbeiten] Das defekte Schieberegister
Das Schieberegister des Chips sollte beim VC-20 für den seriellen Bus eingesetzt werden. Es sollte beim Datenempfang etwa so funktionieren: Wenn der Chip die richtigen Data- und Clock-Signale empfing, "sammelte" er 8 Datenbits und speicherte sie in einem seiner Register. Wenn das geschehen war, signalisierte er der CPU, dass Daten angekommen sind und des Abholens bedürfen. Das Ganze ging auf ähnliche Weise beim Datensenden.
In der Zeit des PET (also davor) wurde mittels des Schieberegisters der 6522 VIA oft Musik gemacht. Dabei stellte sich heraus, dass das Register einen Fehler aufwies, der darin bestand, dass das Register mit anderen Chip-Funktionen interferierte. Commodore wusste das nicht, da das Schieberegister damals noch nicht verwendet wurde. Beim VC-20 wurde es jedoch für den seriellen Bus verwendet, um daraus einen Byte-Schieber statt eines Bit-Schiebers zu machen. Als das Problem bekannt wurde, waren die Rechner bereits in Produktion, also musste eine Softwarelösung her. Diese Softwarelösung funktionierte zwar, hatte jedoch den Nachteil, dass die Geschwindigkeit massiv in den Keller ging.
Bei den CIAs 6526 des C64 wurde das besagte Problem zwar behoben, aber da die Floppy 1540 (und später die 1541) immer noch die 6522-Chips verwendete und die VC-20-Kompatibilität dem damaligen Commodore-Chef Jack Tramiel wichtiger war als die Floppygeschwindigkeit, wurde dieselbe Technik beibehalten. Erst beim C128 in Verbindung mit der Floppy VC1571 wurde die ursprünglich geplante Technik realisiert: der sogenannte Burst-Modus.
PET/CBM: KIM-1 | PET 2001 | CBM 3000 | CBM 4000 | CBM 8000 | MMF 9000 CBM II: CBM 500∗ | CBM 600 | CBM 700 | CBM 900∗
Heimcomputer: VC 10 | VC 20 | C64 (SX, GS♦) | 264-Reihe (C16, C116, Plus/4) | C128 | C65∗
Amiga (Übersicht): 1000 | Sidecar | 500 | 2000 | CDTV♦ | 600 | 3000/T/UX | 1200 | 4000 | CD32♦
IBM-kompatibel: PC-1 | PC-10 bis PC-60 | x86LT | A 1060
Peripherie: Laufwerke: Datasette | VC15xx (VC1540/41, VC1551, VC1570/71, VC1581) | SFD100x (SFD1001, SFD1002) | CBM 2020 bis 8250 | A570 | A3070
Drucker: MPS-Serie | MPS 801 | CBM 8000-Serie | VC1520
Sonstige Hardware: Zorro-Bus | Commodore-Maus | Monochrom- und Farb-Monitore | A10
Chips: VIC | VIC II | TED | VDC | SID | PIA | VIA | TPI | CIA | ACIA | Agnus (Blitter, Copper) | Paula | HAM-Modus Chipsätze: OCS | ECS | AGA
Software: Commodore BASIC | Commodore Basic V2 | Kernal | CBM-ASCII (PETSCII) | GEOS | Commodore DOS | AmigaOS | Kickstart | AMIX