
LM1247 Address Map (Continued)
TABLE 5. Character ROM Read Data
Register
Address
D7
D6
D5
D4
D3
D2
D1
D0
Fonts - 2 Color
0x0000–0x2FFE
PIXEL[7:0]
+1
XXXX
PIXEL[11:8]
Fonts - 4 Color
0x3000–0x3FFE
PIXEL[7:0]
+1
XXXX
PIXEL[11:8]
Fonts - 2 Color
0x4000–0x6FFE
PIXEL[7:0]
+1
XXXX
PIXEL[11:8]
Fonts - 4 Color
0x7000–0x7FFE
PIXEL[7:0]
+1
XXXX
PIXEL[11:8]
DISPLAY PAGE RAM
This address range (0x8000–0x81FF) contains the 512 characters which comprise the displayable OSD screens. There must be
at least one End-of-Screen code (0x00) in this range to prevent unpredictable behaviour. NOTE: To avoid any unpredictable
behaviour, this range should be cleared by writinga0tobit3ofthe FRMCTRL1 Register, 0x8400, immediately after power up.
There may also be one or more pairs of End-of-Line and Skip Line codes. The codes and characters are written as 8 bit bytes
but are stored with their attributes in groups of 12 bits. When writing, one byte describes a displayed character (CC), Attribute
Code (AC), End-of-Screen (EOS), End-of-Line (EOL) or Skip Line (SL) code. The type of code is determined by the write
sequence, which must conform to the allowable sequences shown in
Table 6. To simplify the table, CC represents one or more
character codes in sequence. A single write operation is enclosed in brackets [], and the both bytes of the Page Ram Address are
shown as one symbol, ADDR.
TABLE 6. Page RAM Write Sequences
OSD Image Consists of
Write Sequence(s)
One Line of Characters Only.
[ADDR-AC-SL-CC-EOS]
One Line of Characters with Attribute Change.
[ADDR-AC-SL-CC] [ADDR-AC-CC-EOS]
Two Lines of Characters with one Attribute.
[ADDR-AC-SL-CC-EOL-SL-CC-EOS]
Two Lines of Characters Separated with Skip Line.
[ADDR-AC-SL-CC-EOL-AC-SL-EOL-AC-SL-CC-EOS]
Two Lines of Characters, each with its own Attribute.
[ADDR-AC-SL-CC-EOL] [ADDR-AC-SL-CC-EOS]
Changing a Character String in a Displayed Screen.
[ADDR-AC-CC]
Changing Only an Attribute in a Displayed Screen.
[ADDR-CC] (CC is the currently displayed character)
When reading characters from RAM, bit 1 of the Character Font Access Register (0x8402) determines whether the character
code or its attribute code is returned.
Table 7 gives the character code format read when bit 1 of the Character Font Access
Register is a 0.
Table 8 gives the attribute format read when this bit is set to a 1.
TABLE 7. Page RAM Character Read Data
Address Range
D7
D6
D5
D4
D3
D2
D1
D0
0x8000–0x81FF
CHAR_CODE[7:0]
TABLE 8. Page RAM Attribute Read Data
Address
D7
D6
D5
D4
D3
D2
D1
D0
0x8000–0x81FF
xxxx
ATTR_CODE[3:0]
RAM DATA FORMAT
Each of the 512 locations in the page RAM is comprised of a 12-bit code consisting of an 8-bit character or control code, and a
4-bit attribute code. Each of the characters are stored in sequence in the page RAM in bits 7:0. Special codes are used between
lines to show where one line ends and the next begins, and also to allow blank (or “skipped”) single scan lines to be added
between character lines.
Table 9 shows the format of a character stored in RAM. Note that even though this is a 12 bit format,
reading and writing characters and codes is done in 8 bytes.
LM1247
www.national.com
23