C board · sheet 3/3 · manual page 22

The scroll ROM sheet

Six EPROMs holding the grass, the water, the huts and the sandbags, and the pipeline that turns them into three bits of colour per dot.

This sheet is part ofHow the background scrolls

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

What this sheet is for

The previous sheet worked out which tile is being drawn. This sheet holds what that tile looks like and streams it out.

The background is three bits per pixel, and those three bits live in three separate ROMs read simultaneously - 5A/6A for the first, 7A/8A for the second, 9A/10A for the third, each pair being a low and high bank of tile numbers.

Eight pixels are fetched at a time and pushed out one per dot clock by the six '194 shift registers at 5B through 10B, with 10C telling them when to grab a fresh eight and which way to march.

THREE BITS PER PIXEL, THREE ROMS READ AT ONCE5A - 10Asix 27128s5B - 10Bsix '194 shifters7C'157 directionSCRX/Y/Zto the mixer

The background is eight colours deep, so three bits come from three ROMs read in parallel, doubled into two banks for capacity. Six chips, six shift registers.

Mirroring, one more time

The same idea appears here for the third time in the machine. 6E reads a tile's rows from the bottom up when the map says it is upside down, and 7C chooses which end of the shift registers to listen to so a mirrored tile comes out reversed. 7E picks which half of a tile's row is wanted and swaps them when mirrored.

Between per-tile flips and the whole-cabinet flip, the artwork in these six ROMs covers four times as many appearances as it stores. On a board where a single 27128 was a real cost, that is not a flourish, it is the reason the world can be as varied as it is.

Out of here comes a three-bit pixel that goes to the colour mixer on the A board and loses every argument it has. The background is the bottom layer: any sprite or character pixel that is not transparent covers it.

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