🎨Bildschirm, Modi & Farben
16 KB Bildschirmspeicher, drei Modi, 27 Farben: Beim CPC bestimmt der Modus, wie viele Pixel in einem Byte stecken – und in welchen Bits. Mehr Pixel pro Byte heißt weniger Bits pro Pixel und damit weniger Tinten.
📺Die drei Modi
| Modus | Auflösung | Zeichen | Tinten | Pixel/Byte | Bits/Pixel | Typische Nutzung |
|---|---|---|---|---|---|---|
| 0 | 160 × 200 | 20 × 25 | 16 | 2 | 4 | Spiele (bunt, breite Pixel) |
| 1 | 320 × 200 | 40 × 25 | 4 | 4 | 2 | Standard nach dem Einschalten |
| 2 | 640 × 200 | 80 × 25 | 2 | 8 | 1 | Text mit 80 Spalten, Textverarbeitung |
🔬Pixel-Bitkodierung zum Anklicken
Farben = Standardtinten nach dem Einschalten (SOFT 968, Appendix V).
Modus 0: linkes Pixel = Bits 1,5,3,7 (höchstwertiges Tintenbit zuerst), rechtes = Bits 0,4,2,6 – die Bits sind verschränkt.
🧮Adressrechner
Adresse = &C000 + (Y mod 8)·&800 + (Y div 8)·80 + X div 4
= &C000 + 5·&800 + 4·80 + 25
= &E959 Maske = &88 (Pixel 0 im Byte)| Pixelzeile | Adresse | Block |
|---|---|---|
| 0 | &C000 | 0 (&C000–&C7FF) |
| 1 | &C800 | 1 (&C800–&CFFF) |
| 2 | &D000 | 2 (&D000–&D7FF) |
| 3 | &D800 | 3 (&D800–&DFFF) |
| 4 | &E000 | 4 (&E000–&E7FF) |
| 5 | &E800 | 5 (&E800–&EFFF) |
| 6 | &F000 | 6 (&F000–&F7FF) |
| 7 | &F800 | 7 (&F800–&FFFF) |
| 8 | &C050 | 0 (&C000–&C7FF) |
| 9 | &C850 | 1 (&C800–&CFFF) |
Die acht Pixelzeilen einer Zeichenzeile liegen in acht verschiedenen 2-KB-Blöcken. So braucht die Hardware (CRTC) für jede Zeichenzeile nur eine Startadresse; die Zeilennummer 0–7 im Zeichen wählt den Block. Am Ende jedes Blocks bleiben 48 Bytes (2048 − 25 · 80) ungenutzt.
🌈Die 27 Farben
🖌️Standardtinten nach dem Einschalten
| Tinte | Farbe(n) | Firmware-Nr. |
|---|---|---|
| 0 | Blau | 1/1 |
| 1 | Hellgelb | 24/24 |
| 2 | Hellcyan | 20/20 |
| 3 | Hellrot | 6/6 |
| 4 | Leuchtweiß | 26/26 |
| 5 | Schwarz | 0/0 |
| 6 | Hellblau | 2/2 |
| 7 | Hellmagenta | 8/8 |
| 8 | Cyan | 10/10 |
| 9 | Gelb | 12/12 |
| 10 | Pastellblau | 14/14 |
| 11 | Rosa | 16/16 |
| 12 | Hellgrün | 18/18 |
| 13 | Pastellgrün | 22/22 |
| 14 | Blau / Hellgelb (blinkend) | 1/24 |
| 15 | Himmelblau / Rosa (blinkend) | 11/16 |
| Rand | Blau | 1/1 |
SCR SET INK (&BC32) färbt sofort alle Pixel dieser Tinte um, ohne ein Byte im Speicher zu ändern.SCR SET FLASHING (Standard: je 10 Bildwechsel = 1/5 s).LD BC,&7F00 : OUT (C),C wählt Tinte 0, LD C,&4B : OUT (C),C setzt Leuchtweiß (HW 11). Die Firmware stellt ihre Farben beim nächsten Blinktakt wieder her – dauerhaft also über SCR SET INK.Quellen: SOFT 968 Abschnitt 6 und Appendix V; Gate-Array-Farbcodes nach K. Thacker „Amstrad CPC Gate-Array“ (cpctech). RGB-Werte idealisiert (0 %, 50 %, 100 %). Die Pixelkodierung ist dieselbe wie in VisualBoulderDash (Modus-0-Sprites).