Multicolor Bitmap-Modus

Aus C64-Wiki
Zur Navigation springenZur Suche springen

Der Multicolor Bitmap-Modus ist ein Standard Grafikmodus des Commodore 64. Dieser Bitmap-Modus kann Bilder mit einer Auflösung von bis zu 160 × 200 Pixeln in 16 Farben darstellen. Pro Kachel sind dabei bis zu vier Farben darstellbar. Drei Farben dürfen in jeder Kachel anders sein, eine - die Hintergrundfarbe - ist für das gesamte Bild gleich.

Einschalten[Bearbeiten | Quelltext bearbeiten]

In VICs Kontrollregister 1 ($D011) muss Bit 5 (Bitmap ↔ Text) gesetzt und Bit 6 (Erweiterter Hintergrundfarbenmodus) gelöscht sein. Im Kontrollregister 2 ($D016) muss Bit 4 (Multicolor) gesetzt sein.

VIC-II Kontrollregister im Hires Bitmap-Modus
Adresse hex. Adresse dez. Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
$D011 53265 0 1
$D016 53270 - - - 1

Multicolormodus ein/ausschalten in BASIC:

  • Ein: POKE 53265,PEEK(53265) OR 32 : POKE 53270,PEEK(53270) OR 16
  • Aus: POKE 53265,PEEK(53265) AND 223 : POKE 53270,PEEK(53270) AND 239

Achtung bei Nutzung von Rasterzeilen-Interrupts, diese POKEs verstellen ggf. auch die Zeile, in der ein IRQ ausgelöst wird.

Eigenschaften[Bearbeiten | Quelltext bearbeiten]

In diesem Grafikmodus werden Bilder mit hoher Farbvielfalt dargestellt. Allerdings reduziert sich dabei die horizontale Auflösung gegenüber dem Hires Bitmap-Modus auf die Hälfte, da jeder Punkt des Bildes aus zwei Bits der Bitmap besteht.

Bitpaar und Farbe[Bearbeiten | Quelltext bearbeiten]

Ein Bild im Multicolor Bitmap-Modus besteht aus einer Bitmap und drei Farbspeichern. Die Farben 1 und 2 werden aus dem Bildschirmspeicher genommen, die Farbe 3 aus dem Farb-RAM und die Farbe 0 aus dem Speicher für die Hintergrundfarbe. Jedem Bitpaar in der Bitmap ist eine der vier Farben zugeordnet:

Bitpaar Farbe Speicheradresse (hex.)
00 Hintergrundfarbe 53281 ($D021)
01 Obere vier Bits vom Bildschirmspeicher-Byte 1024-2023 ($0400-$07E7), konfigurierbar
10 Untere vier Bits vom Bildschirmspeicher-Byte 1024-2023 ($0400-$07E7), konfigurierbar
11 Farbspeicher 55296-56295 ($D800-$DBE7)

Bei gleichzeitiger Darstellung der Multicolor-Grafik mit einem Sprite, bestimmen die Bitpaare 00 und 01 den Hintergrund, die Bitpaare 10 und 11 den Vordergrund in Bezug auf die Sprite/Hintergrund-Priorität.

Speicher[Bearbeiten | Quelltext bearbeiten]

Die Speicherbelegung ist im Artikel Bitmap-Modus erklärt.

Die Bitmap belegt einen Speicherbereich von 8000 Byte, also knapp 8 KByte. Der Bildschirmspeicher und das Farb-RAM belegen je 40×25 = 1000 Bytes, die Hintergrundfarbe ein Byte.

Vierfarb-Multicolor[Bearbeiten | Quelltext bearbeiten]

Wird nur die Bitmap berücksichtigt, kann man analog zum monochromen Hires Bitmap-Modus eine Multicolor-Grafik mit vier Farben (bestimmt durch den Inhalt 00, 01, 10, 11 des Doppelbits) erstellen, die für den ganzen Schirm gleich sind. Da die Farbinformationen nicht im Bild enthalten sind, muss ein Programm, das ein solches Bild anzeigen will, diese selbst setzen.

Beispielbilder[Bearbeiten | Quelltext bearbeiten]

Pf.-Auge-Analyse

Weblinks[Bearbeiten | Quelltext bearbeiten]

Programmierung und Dokumentation

Bilder