The Model 100 does not have a hardware character generator. It paints the
characters to the display via software. The Model 100 supports one font,
which is programmed into the ROM.

Characters as rendered to the screen are 6x8. 6 pixels wide by 8 high.

To save space in the ROM, there are two ranges... raster data for ASCII 32
to 127 is 5 columns (bytes) wide. 128 to 255 are the full 6 columns (bytes)
wide. Each column of each character is represented by a byte. A '1' bit in
the byte means black, and a 0 means white (er... gray).  The tables start
at address $7711 = 30,481.

When characters are actually rendered to the screen by the ROM, it renders
them 6 pixels wide, with an added blank column for the printable ASCII
range.

Here is a BASIC program that PEEKs the font data, shifting 1 bit out at a
time, and paints each character in large format to the screen. It waits for
you to hit a key before moving on to the next character.

5 DEFINTA-Z
10 B=30481:D=32:W=5
15 CLS
20 FOR I=1 TO W
30 C=PEEK(B)
35 B=B+1
40 FOR J=1TO8
50 L=C AND 1:C=C/2
60 P=(J-1)*40+I:IF I=1 THEN PRINT@P-1,CHR$(47+J);
65 IF L=1 THEN PRINT@P,CHR$(239);:ELSE PRINT@P,CHR$(255);
70 NEXT J:NEXT I:D=D+1:IFD=128THENW=6
90 I$=INKEY$:IF I$="" THEN 90
95 BEEP
96 IF D=256 THEN END
100 GOTO 15

-- John.

Reply via email to