A board · sheet 7/8 · manual page 9

The character generator sheet

Seven chips that turn a character code into actual pixels, at the exact moment the beam needs them.

Draft. This sheet was read from the original 1985 drawing and cross-checked against MAME, but it has not yet been walked pin by pin against a physical board. The logic described here is what the drawing shows.
This sheet is part ofHow a frame is drawn

The subsystem followed end to end, across every sheet that builds it.

What this sheet is for

The video RAM sheet said which character. This sheet says what it looks like. 11E, a 27128, holds the shapes; the shift registers at 10D and 11D turn each fetched row into a stream of pixels.

It is the smallest sheet on the board, and it runs at the highest sustained rate of anything on it.

Parallel in, serial out

A ROM gives you eight bits at once. A screen wants them one at a time, in order, on the dot clock. The 74LS194 shift registers bridge that: load eight bits in parallel, then clock them out one per pixel while the next byte is already being fetched.

This is the entire trick of every character generator ever built, and it is why the ROM only has to be fast enough to keep up with one fetch per eight pixels rather than one per pixel.

The exclusive-ORs

9D and 9E, two 74LS86 packages, sit in the address path. An XOR gate with one input tied to FLIP is a controllable inverter: pass the address through unchanged, or mirrored, depending on one line.

That is how the screen flip reaches the character shapes. Two cheap gate packages, no software involvement, and the characters come out the right way round for whichever side of the cabinet you are standing on.

Every chip on this sheet

Click any of them to open the schematic with that chip selected in both panels.

← open the schematic for this sheet