Map a Character Code to a Fixed Pixel Pattern with a Charactergenerator Rom
# Map a Character Code to a Fixed Pixel Pattern With a Character-Generator ROM
## 1. Store One Fixed Glyph Pattern per Character Code
A character-generator ROM stores, at each address corresponding to a character code, a fixed set of bits describing that character's glyph as a small pixel pattern — commonly a grid such as five pixels wide by seven or eight pixels tall for an early display terminal, with each row of the glyph grid read out as a separate stored word. The character code supplied by a terminal's own logic (which letter, digit, or symbol is being displayed) forms part of the address; a row counter supplies the rest, selecting which horizontal strip of that character's glyph to output next as the display scans down the character cell. Because the glyph pattern is mask-fixed, the font a terminal displayed was permanently set by which character-generator ROM it was built with — exactly the same fixed-at-fabrication property already told in `microprocessor_1971_step06`, applied here to pixels instead of instruction words.
## 2. Scan a Full Row of Text by Repeating the Lookup
A terminal's display logic worked through a line of text by repeatedly addressing the character-generator ROM: for each character position, present that character's code and the current scan-line number, read out the resulting pixel strip, and shift it onto the screen; then move to the next character position with the same scan-line number, and repeat across the whole line before advancing to the next scan line. The row-select addressing shape from Steps 2–4 is exactly what makes this workable at video speed — one decoded address, one row of bits out, on every lookup, with no write-back to slow the cycle down.
Step 9 names the actual display-terminal and printer products that relied on character-generator ROMs this way.