Commodore 128 Programmer's Reference Manual page 314

Hide thumbs Also See for 128:
Table of Contents

Advertisement

304
COMMODORE 128
register 9 is less than 16, each character is defined by 16 bytes in character storage.
Therefore, each character set requires a total of 4096 bytes of 8563 RAM. If the value
U
u
of the lower five bits of register 9 is greater than or equal to 16, each character is
] j
defined by 32 bytes of 8563 character RAM. In this case, each character set occupies
U
8192 bytes (8K) of 8563 character RAM memory and the defined characters are
displayed using more than 16 scan lines each. This occupies the full 16K of 8563 RAM
\ ?
and leaves no space for attributes. These taller characters are rarely used, however,
[J
because the characters are twice as tall as they are wide and seem out of proportion.
The first byte of each character definition in memory represents the top horizontal
scan line of the character displayed on the screen. Depending on the value of the lower
I
five bits of register 9, a character will have either 16 or 32 scan lines, each being 8 bits
'-I
(pixels) wide.
Although the character definitions in 8563 character RAM are defined by either 16
or 32 8-bit bytes stacked one on top of another, the Display Data Bus is only 8 bits
i_
wide, which limits the actual image of the character to 8 horizontal pixels. The total
width of the character including the horizontal intercharacter spacing may exceed 8
, ,
pixels. See the definition of a character in the beginning of the chapter and the
j
register-by-register description at the end of this chapter for details.
ADDRESSING THE
CHARACTER SET PATTERNS
jj
The default location of the character definition start at address $2000 in 8563 RAM, and
since the starting location is programmable, you may change it. The starting location of
the character set definitions is determined by bits 5 through 7 of register 28. These are
^
the most significant three bits of the 16-bit address that points to the start of the
character definitions in 8563 RAM. Bits 4 through 0 of register 9 make up the five least
] (
significant bits for theyaddress that points to the start of the 8563 character definitions.
u
However, if the value of bits 4 through 0 in register 9 is greater than or equal to 16, only
bits 7 through 5 are significant, since the characters are made up of 32 bytes each and
; ,
the full 16K of 8563 RAM memory is allocated for the two character sets, 8K for each
11
set.
READING 8563
(RAM AND) REGISTERS
j
As you know, the 8563 chip has its own 16K of RAM and its own set of registers.
Neither of these appear in the standard Commodore 128 memory map. The only
j
memory locations that apply to the 8563 chip in Commodore 128 memory are the locations
*—'

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents