Kategorie

A B C D E
F G H I J
K L M N O
P Q R S T
U V W X Y
Z 0      

mos technologies vic ii

ma mb mc md me mf mg mh mi mj mk ml mm
mn mo mp mq mr ms mt mu mv mw mx my mz

MOS Technologies VIC II

Der VIC (Video Interface Controller) II von MOS Technologies, Nachfolger des VIC, ist ein Videochip, der im Commodore-Heimcomputer C64 und (als leicht erweiterter VIC III) im C128 zum Einsatz kam. Er wurde in NTSC- (MOS 6567/MOS 8562) und PAL-Versionen (MOS 6569/MOS 8565) produziert. Eine Besonderheit des VIC II sind seine 8 Hardware-Spritess mit Kollisionsabfrage.

Table of contents
1 Technische Daten
2 Programmierung des VIC II
3 Weblinks

Technische Daten

  • Erzeugung des Systemtakts für die anderen Chips
  • automatischer Refresh für dynamische RAMs (DRAM).
  • Bus und Speicher kann mit Prozessoren der 6502-Familie ohne große Verlangsamung eines der beiden Chips geteilt werden, beide Chips greifen abwechselnd darauf zu.
  • 16 KiB Adreßbereich (DMA) für Video- und Zeichensatzspeicher
  • separater 1 KiB (nur 4 Bit je Byte) Farbspeicher, mit statischem RAM (SRAM) realisiert.
  • 16 Farben
  • Textmodus mit 25 Zeilen zu 40 Zeichen
  • 3 Textmodi:
    • Normal mit 8 x 8 Pixel pro Zeichen, einer aus 16 Vordergrundfarben je Zeichen und einer festen Hintergrundfarbe
    • Extended-Color mit einer aus 16 Vordergrundfarben und einer von 4 (aus 16) Hintergrundfarben je Zeichen, Zeichensatz auf 64 Zeichen eingeschränkt
    • Multi-Color mit 4 x 8 Pixel pro Zeichen, je Zeichen eine aus 8 Vordergrundfarben, und 3 bildschirmweit festzulegende weiteren Farben aus 16. Normale Zeichen und Multicolor-Zeichen können dabei beliebig gemischt werden; aber die normalen Zeichen sind in diesem Fall auf 8 Vordergrundfarben beschränkt.
  • 2 Grafikmodi:
    • Hires mit 320 x 200 Pixeln, und einer frei wählbaren Vorder- und Hintergrundfarbe pro 8 x 8 Pixel-Feld
    • Multi-Color mit 160 x 200 Pixeln, 3 frei wählbaren Farben je 4 x 8 Pixel-Feld sowie 1 bildschirmweit einstellbaren Farbe.
  • Hardware-Scrolling
  • 8 Hardware-Spritess von 24x21 Pixeln mit Kollisionsabfrage, Multicolor-Möglichkeit, getrennte Vergrößerbarkeit auf das jeweils Doppelte in X- und Y-Richtung.
  • Optionale Interrupts bei Sprite-Sprite- und Sprite-Grafik-Kollisionen
  • Rasterzeilen-Interrupts
  • Lightpen-Funktion mit Interrupts

Programmierung des VIC II

Die Funktionen des VIC II werden über 47, die des VIC III über 49 Register kontrolliert (bei C64 bzw. C128 im Adreßbereich $D000 bis $D02F bzw. $D031). Durch Ausnützung verschiedener Tricks ist es möglich, Effekte zu erzielen, die weit über die ursprünglich geplanten Fähigkeiten des Chips hinausgehen. Beispielsweise ermöglicht das gesteuerte Umschalten des Adressraumes eine bis zu vierfache Nutzung des VICs. So ist es möglich, (vertikal) vier Bildschirmbereiche abzutrennen, die separat von einander gesteuert werden können. Schlüssel hierzu sind die Hardware-Interrupts, welche z.B. Videoereignisse mit dem Zentralprozessor (CPU) koordinieren. Beim Eintreten einer vorher festgelegten Bedingung kann so ein Maschinenspracheprogramm zur "richtigen" Zeit gestartet werden, welches die Registerinhalte dynamisch manipuliert.

Siehe auch: DYCP

Weblinks

  • Der MOS 6567/6569 Videocontroller (VIC-II) und seine Anwendung im Commodore 64 [1]

Impressum

Datenschutzerklärung