Grafikmodus

Aus C64-Wiki
Zur Navigation springenZur Suche springen

Der Grafikmodus eines Computers gibt an, in welcher Auflösung und Farbtiefe und in welchen Kombinationen aus Grafiken, Zeichen und Objekten (z.B. Sprites) die Bildschirmanzeige auf dem Monitor dargestellt wird. Beim C64 wird dies durch den Grafikchip VIC-II gesteuert. Der Grafikmodus wird hier bestimmt durch die Werte in drei Bits der beiden VIC-II Kontrollregister 1 ($D011) und 2 ($D016):

  • $D011 Bit 5 BMM = Bitmap-Modus
  • $D011 Bit 6 ECM = Erweiterter Hintergrund-Farbmodus (Extended Color Mode)
  • $D016 Bit 4 MCM = Multicolor-Modus


Standardmodi[Bearbeiten | Quelltext bearbeiten]

Grafikmodi: VIC-II Bit-Kombinationen
Modus ECM BMM MCM Grafikmodus Art
0 0 0 0 Standard Textmodus Textmodus
1 0 0 1 Multicolor Textmodus Textmodus
2 0 1 0 Hires Bitmap-Modus Bitmap-Modus
3 0 1 1 Multicolor Bitmap-Modus Bitmap-Modus
4 1 0 0 Erweiterter Hintergrund-Farbmodus Textmodus

Bei jeder der drei weiteren möglichen Kombinationen 101, 110 und 111 kann man zwar Sprite-Kollisionen auslesen, jedoch wird kein sichtbares Bild angezeigt, weshalb sie nicht benutzt werden.

Die fünf Standardmodi lassen sich auch unter BASIC nutzen und sind offiziell von Commodore dokumentiert. Die Anzeige von Sprites kann mit jedem dieser Modi kombiniert werden.

Benutzerdefinierte Modi[Bearbeiten | Quelltext bearbeiten]

Neben den Standardmodi wurden ab Ende der 1980er Jahre trickreiche Programmiertechniken entwickelt, mit denen entweder die Auflösung oder die Anzahl gleichzeitig darstellbarer Farben erhöht werden konnte, oft in Kombination mit Rasterzeilen-Interrupts, Interlace oder Sprites. Diese neuen Grafikmodi lassen sich nur per Assembler nutzen.

Beispiele:

  • Advanced Hires (mehr Farben durch Interlace)
  • MCI (Multicolor Interlace, höhere Auflösung) bei retroprogramming.de (Webarchiv)
  • FLI (Flexible Line Interpretation, mehr Farben pro Kachel)
  • AFLI (Advanced FLI, FLI bei Hires-Auflösung)
  • IFLI (Interlaced FLI, mehr Farben - bis zu 136 - und mehr Auflösung)

Beispiele mit Sprites:

Es gibt noch mehr Darstellungstricks, die aber nicht besonders große Verbreitung gefunden haben. Besonders die Demogruppe Crest betrieb zahlreiche und intensive Experimente, um dem VIC neue Grafkmodi zu entlocken. Auch für den VDC Videochip des C128 wurden benutzerdefinierte Modi entwickelt: VDC-FLI und VDC-INFLI.

Neue Grafikmodi in erstmaliger Verwendung sind in der Zeittafel der C64-Demos aufgeführt.


Weblinks[Bearbeiten | Quelltext bearbeiten]

Benutzerdefinierte Grafikmodi[Bearbeiten | Quelltext bearbeiten]

Bilder[Bearbeiten | Quelltext bearbeiten]