Das Schneider CPC Systembuch

Anhang

Die Bildausgabe

Die Kodierung der Tintennummern in den Bildschirm-Bytes

In den folgenden Grafiken ist der Zusammenhang zwischen einem Datentypen: Bytes
Datenbreite: Bytes
Byte
und den Tintennummern der darin enthaltenen Pixel dargestellt. Der obere Balken symbolisiert die dargestellten Pixel, der untere Balken jeweils ein Datentypen: Bytes
Datenbreite: Bytes
Byte
mit 8 Datenbreite: Bits
Port B - Input: &F5xx: Bit 0:
Port B - Input: &F5xx: Bit 4:
Port B - Input: &F5xx: Bit 5:
Port B - Input: &F5xx: Bit 6:
Port B - Input: &F5xx: Bit 7:
Port C - Output: &F6xx: Bit 4:
Port C - Output: &F6xx: Bit 5:
Bits
. Die Ziffergruppen 'in den Pixeln' gibt dabei jeweils an, wie welche Datenbreite: Bits
Port B - Input: &F5xx: Bit 0:
Port B - Input: &F5xx: Bit 4:
Port B - Input: &F5xx: Bit 5:
Port B - Input: &F5xx: Bit 6:
Port B - Input: &F5xx: Bit 7:
Port C - Output: &F6xx: Bit 4:
Port C - Output: &F6xx: Bit 5:
Bits
des Datentypen: Bytes
Datenbreite: Bytes
Bytes
gruppiert werden müssen, um die Tintennummer dieses Pixels zu bestimmen.

Mode 2:
          +---+---+---+---+---+---+---+---+
          ! 7 ! 6 ! 5 ! 4 ! 3 ! 2 ! 1 ! 0 !    <-- 8 Punkte im Bildschirm
          +---+---+---+---+---+---+---+---+
            ^   ^   ^   ^   ^   ^   ^   ^
            |   |   |   |   |   |   |   |
            |   |   |   |   |   |   |   |
          +---+---+---+---+---+---+---+---+
          ! 7 ! 6 ! 5 ! 4 ! 3 ! 2 ! 1 ! 0 !    <-- Datenbreite: Bits
Port B - Input: &F5xx: Bit 0:
Port B - Input: &F5xx: Bit 4:
Port B - Input: &F5xx: Bit 5:
Port B - Input: &F5xx: Bit 6:
Port B - Input: &F5xx: Bit 7:
Port C - Output: &F6xx: Bit 4:
Port C - Output: &F6xx: Bit 5:
Bits
0...7 eines Datentypen: Bytes
Datenbreite: Bytes
Bytes
+---+---+---+---+---+---+---+---+
Mode 1:
          +-------+-------+-------+-------+
          !  37   !  26   !  15   !  04   !    <-- 4 Punkte im Bildschirm
          +-------+-------+-------+-------+
            ^   ^   ^   ^   ^   ^   ^   ^
            |   |   |   |   |   |   |   |
            +---+---+---+---+---+---+---+
            |   |   |   |   |   |   |   |
            |   |   |   |   |   |   |   |
          +---+---+---+---+---+---+---+---+
          ! 7 ! 6 ! 5 ! 4 ! 3 ! 2 ! 1 ! 0 !    <-- Datenbreite: Bits
Port B - Input: &F5xx: Bit 0:
Port B - Input: &F5xx: Bit 4:
Port B - Input: &F5xx: Bit 5:
Port B - Input: &F5xx: Bit 6:
Port B - Input: &F5xx: Bit 7:
Port C - Output: &F6xx: Bit 4:
Port C - Output: &F6xx: Bit 5:
Bits
0...7 eines Datentypen: Bytes
Datenbreite: Bytes
Bytes
+---+---+---+---+---+---+---+---+
Mode 0:
          +---------------+---------------+
          !     1537      !     0426      !    <-- 2 Punkte im Bildschirm
          +---------------+---------------+
            ^   ^   ^   ^   ^   ^   ^   ^
            |   |   |   |   |   |   |   |
            +---+---+---+---+---+---+---+
            |   |   |   |   |   |   |   |
            |   |   |   |   |   |   |   |
          +---+---+---+---+---+---+---+---+
          ! 7 ! 6 ! 5 ! 4 ! 3 ! 2 ! 1 ! 0 !    <-- Datenbreite: Bits
Port B - Input: &F5xx: Bit 0:
Port B - Input: &F5xx: Bit 4:
Port B - Input: &F5xx: Bit 5:
Port B - Input: &F5xx: Bit 6:
Port B - Input: &F5xx: Bit 7:
Port C - Output: &F6xx: Bit 4:
Port C - Output: &F6xx: Bit 5:
Bits
0...7 eines Datentypen: Bytes
Datenbreite: Bytes
Bytes
+---+---+---+---+---+---+---+---+
Pixelmasken

Da diese Zuordnungen auch für Einleitung: Die Grafikdie Grafik- und Textroutinen nur schwer zu verdauen sind, benutzt auch das Betriebssystem Tabellen, mit denen es sich das Leben leichter macht.

Eine davon enthält Datentypen: Bytes
Datenbreite: Bytes
Bytes
, die immer ein Pixel aus einem Datentypen: Bytes
Datenbreite: Bytes
Byte
herausfiltern:

Die Kodierung der Tintennummern in den Bildschirm-Bytes: Mode 2:
Die Kodierung der Tintennummern in den Bildschirm-Bytes: Mode 1:
Die Kodierung der Tintennummern in den Bildschirm-Bytes: Mode 0:
Mode
2: Pixel 7 -> Datentypen: Bytes
Datenbreite: Bytes
Byte
: &X10000000 = &80 = 128 (links) Pixel 6 -> Datentypen: Bytes
Datenbreite: Bytes
Byte
: &X01000000 = &40 = 64 Pixel 5 -> Datentypen: Bytes
Datenbreite: Bytes
Byte
: &X00100000 = &20 = 32 Pixel 4 -> Datentypen: Bytes
Datenbreite: Bytes
Byte
: &X00010000 = &10 = 16 Pixel 3 -> Datentypen: Bytes
Datenbreite: Bytes
Byte
: &X00001000 = &08 = 8 Pixel 2 -> Datentypen: Bytes
Datenbreite: Bytes
Byte
: &X00000100 = &04 = 4 Pixel 1 -> Datentypen: Bytes
Datenbreite: Bytes
Byte
: &X00000010 = &02 = 2 Pixel 0 -> Datentypen: Bytes
Datenbreite: Bytes
Byte
: &X00000001 = &01 = 1 (rechts)   Die Kodierung der Tintennummern in den Bildschirm-Bytes: Mode 2:
Die Kodierung der Tintennummern in den Bildschirm-Bytes: Mode 1:
Die Kodierung der Tintennummern in den Bildschirm-Bytes: Mode 0:
Mode
1: Pixel 3 -> Datentypen: Bytes
Datenbreite: Bytes
Byte
: &X10001000 = &88 = 136 (links) Pixel 2 -> Datentypen: Bytes
Datenbreite: Bytes
Byte
: &X01000100 = &44 = 68 Pixel 1 -> Datentypen: Bytes
Datenbreite: Bytes
Byte
: &X00100010 = &22 = 34 Pixel 0 -> Datentypen: Bytes
Datenbreite: Bytes
Byte
: &X00010001 = &11 = 17 (rechts)   Die Kodierung der Tintennummern in den Bildschirm-Bytes: Mode 2:
Die Kodierung der Tintennummern in den Bildschirm-Bytes: Mode 1:
Die Kodierung der Tintennummern in den Bildschirm-Bytes: Mode 0:
Mode
2: Pixel 1 -> Datentypen: Bytes
Datenbreite: Bytes
Byte
: &X10101010 = &AA = 170 (links) Pixel 0 -> Datentypen: Bytes
Datenbreite: Bytes
Byte
: &X01010101 = &55 = 85 (rechts)
Farbmasken (encoded Inks)

Bei Jeder Zuordnung von Die Bildausgabe: Tinten und FarbenTinten zu Vorder- oder Hintergrund für die Text- und Grafik-Ausgabe wird ein Datentypen: Bytes
Datenbreite: Bytes
Byte
berechnet, das vollständig mit dieser Die Bildausgabe: Tinten und FarbenTinte 'eingefärbt' ist:

Die Kodierung der Tintennummern in den Bildschirm-Bytes: Mode 2:
Die Kodierung der Tintennummern in den Bildschirm-Bytes: Mode 1:
Die Kodierung der Tintennummern in den Bildschirm-Bytes: Mode 0:
Mode
2: Die Bildausgabe: Tinten und FarbenTinte 00 -> &X00000000 = &00 = 0 Die Bildausgabe: Tinten und FarbenTinte 01 -> &X11111111 = &FF = 255 Die Kodierung der Tintennummern in den Bildschirm-Bytes: Mode 2:
Die Kodierung der Tintennummern in den Bildschirm-Bytes: Mode 1:
Die Kodierung der Tintennummern in den Bildschirm-Bytes: Mode 0:
Mode
1: Die Bildausgabe: Tinten und FarbenTinte 00 -> &X00000000 = &00 = 0 Die Bildausgabe: Tinten und FarbenTinte 01 -> &X11110000 = &Der Zeichensatz des Schneider CPC: &F0 = 240F0 = 240 Die Bildausgabe: Tinten und FarbenTinte 02 -> &X00001111 = &0F = 15 Die Bildausgabe: Tinten und FarbenTinte 03 -> &X11111111 = &FF = 255 Die Kodierung der Tintennummern in den Bildschirm-Bytes: Mode 2:
Die Kodierung der Tintennummern in den Bildschirm-Bytes: Mode 1:
Die Kodierung der Tintennummern in den Bildschirm-Bytes: Mode 0:
Mode
0: Die Bildausgabe: Tinten und FarbenTinte 00 -> &X00000000 = &00 = 0 Die Bildausgabe: Tinten und FarbenTinte 01 -> &X11000000 = &Der Zeichensatz des Schneider CPC: &C0 = 192C0 = 192 Die Bildausgabe: Tinten und FarbenTinte 02 -> &X00001100 = &0C = 12 Die Bildausgabe: Tinten und FarbenTinte 03 -> &X11001100 = &CC = 204 Die Bildausgabe: Tinten und FarbenTinte 04 -> &X00110000 = &30 = 48 Die Bildausgabe: Tinten und FarbenTinte 05 -> &X11110000 = &Der Zeichensatz des Schneider CPC: &F0 = 240F0 = 240 Die Bildausgabe: Tinten und FarbenTinte 06 -> &X00111100 = &3C = 60 Die Bildausgabe: Tinten und FarbenTinte 07 -> &X11111100 = &FC = 252 Die Bildausgabe: Tinten und FarbenTinte 08 -> &X00000011 = &03 = 3 Die Bildausgabe: Tinten und FarbenTinte 09 -> &X11000011 = &C3 = 195 Die Bildausgabe: Tinten und FarbenTinte 10 -> &X00001111 = &0F = 15 Die Bildausgabe: Tinten und FarbenTinte 11 -> &X11001111 = &CF = 207 Die Bildausgabe: Tinten und FarbenTinte 12 -> &X00110011 = &33 = 51 Die Bildausgabe: Tinten und FarbenTinte 13 -> &X11110011 = &F3 = 243 Die Bildausgabe: Tinten und FarbenTinte 14 -> &X00111111 = &3F = 63 Die Bildausgabe: Tinten und FarbenTinte 15 -> &X11111111 = &FF = 255

Valid HTML   Valid CSS