Der MOS 6567/6569 Videocontroller (VIC-II)
und seine Anwendung im Commodore 64
Inhalt
3. Funktionsweise des VIC
3.7. Text-/Bitmapdarstellung
3.7.1. Idle-Zustand/Display-Zustand
english Vorheriger Abschnitt Nächster Abschnitt

Die Text-/Bitmap-Anzeigelogik im VIC befindet sich zu jedem Zeitpunkt in einem von zwei Zuständen: Dem Idle-Zustand oder dem Display-Zustand.

  • Im Display-Zustand finden c- und g-Zugriffe statt, die Adressen und die Interpretation der Daten sind vom gewählten Anzeigemodus abhängig.

  • Im Idle-Zustand finden nur g-Zugriffe statt. Der Zugriff erfolgt immer an Videoadresse $3fff ($39ff bei gesetztem ECM-Bit in Register $d016). Die Grafik wird vom Sequencer genau wie im Display-Zustand dargestellt, wobei aber die Videomatrix-Daten als "0"-Bits angesehen werden.

Der Übergang vom Idle- in den Display-Zustand erfolgt, sobald ein Bad-Line-Zustand auftritt (siehe Abschnitt 3.5.). Der Übergang vom Display- in den Idle-Zustand erfolgt in Zyklus 58 einer Zeile, wenn der RC (siehe nächsten Abschnitt) den Wert 7 hat und kein Bad-Line-Zustand vorliegt.

Solange an Register $d011 innerhalb des Bildes keine Veränderungen vorgenommen werden, befindet sich die Anzeigelogik innerhalb des Anzeigefensters im Display-Zustand und außerhalb davon im Idle-Zustand. Wenn man bei einem 25-Zeilen-Anzeigefenster einen anderen YSCROLL als 3 einstellt und in $3fff einen Wert ungleich Null ablegt, kann man am oberen bzw. unteren Rand des Fensters die Streifen sehen, die der Sequenzer im Idle-Zustand produziert.

In [4] werden sowohl die Idle-Zugriffe als auch die g-Zugriffe während des Idle-Zustand als "idle bus cycle" bezeichnet. Beide Phänomene haben jedoch nichts miteinander zu tun. Die in den Diagrammen in [4] mit "+" gekennzeichneten Zugriffe sind normale g-Zugriffe. Der Begriff "Idle-Zugriff" wird in diesem Artikel ausschließlich für die in den Diagrammen in Abschnitt 3.6.3. mit "i" gekennzeichneten Zugriffe benutzt, nicht jedoch für die g-Zugriffe während des Idle-Zustands.