Memory Map Display Instructions

Data in memory (addressed by the Memory Scan Counter) is displayed directly when executing a memory (bit) map display instruction. As data is being displayed it is also stored in a shift register so that it can be redisplayed for as many TV lines as required by the instruction.

Shift register data is displayed for four TV scan lines in this example.

In Instruction Register (IR) display modes 8 through F, one or two bits of memory are used to specify what is to be displayed on each pixel of the screen. Pixel sizes range from 1/2 clock by 1 TV line to 4 clocks by 8 TV lines. The OS and BASIC support most of these graphics modes (BASIC GRAPHICS command). Two modes, C and E, are not supported by the OS. These modes have rectangular pixels, which are approximately twice as wide as they are high.

In IR mode F, only one color (COLPF2) can be displayed. Two different luminances are available. If a bit is a zero, then the luminance of the corresponding pixel comes from COLPF2. If the bit is a one, them the luminance is determined by the contents of COLPF1 (abbreviated to PF1).

In IR modes 9,B, and C, two different colors can be displayed. A zero indicates background color and a one indicates PF0 color. The difference between the various modes is in the size of the pixels.

In IR modes 8,A,D, and E, two bits are used to specify the color of each pixel. This allows four different colors to be displayed. However, only four pixels can be packed into each byte, instead of eight as in the previous modes. The bit assignments are shown below.

SHIFT REGISTER 76 54 32 10 76 54 32 10  
  2 bits form one pixel  

Memory Map Display Modes

OS and
BASIC
modes
Instr.
reg.
HEX
Colors
per
mode
Pixel
pers.
std.
line
Bytes
per.
std.
line
Scan
lines
per pixel
Colour
clocks
per pixel
Bits
per
pixel
  Color
reg
select
3 8 4 40 10 8 4 2 00
01
10
11
BAK
PF0
PF1
PF2
4 9 2 80 10 4 2 1 0
1
BAK
PF0
5 A 4 80 20 4 2 2 00
01
10
11
BAK
PF0
PF1
PF2
6 B 2 160 20 2 1 1 0
1
BAK
PF0
- C 2 160 20 1 1 1 0
1
BAK
PF0
7 D 4 160 40 2 1 2 00
01
10
11
BAK
PF0
PF1
PF2
- E 4 160 40 1 1 2 00
01
10
11
BAK
PF0
PF1
PF2
8 F 1.5 320 40 1 0.5 1 0
1
BAK
PF0