This pcb was dirty with signs of corrosion, booted to garbage on-screen and didn’t play. First problem was very obvious – two RAM chips had been removed from the game board and a lot of traces had been pulled up and ruined. Hippodrome isn’t the greatest game, but it deserves better than that so I installed some sockets and repaired the traces via wires on the underside. I have another working Hippodrome for reference so it wasn’t too hard to figure out what was what, but schematics are available anyway. (The RAM pretty much goes directly to the custom tilemap ASIC on the game board).
I swapped the game board onto the working main-board and the game ran and played. At first there was a problem with 1 layer of tilemap graphics – an address line fault that caused tiles to appear in the wrong places, but that was just a problem with my trace repair and easily fixed.
The main board continued to boot to garbage which is usually a sign the CPU program is not running. A logic probe showing the CPU had activity on the data and address pins so was trying to execute something at least. I removed and tested the main RAM (TMM2063 which are known for going bad). One failed the test. When replaced the game booted!
But not so fast.. although the title screen was correct no sprites or background graphics were visible, just the top text layer. Usually bad RAM would be the first port of call for missing tilemaps and sprites, but one layer comes from the game-board and I’d just repaired and tested it with the working main-board so why wasn’t it showing up here?
I suspected the priority mixing circuit – this is how the game decides what pixels from the 3 tilemap layers and sprite layer are above or below each other and also how transparency between layers works. A lookup PROM is the core of this system – for every pixel on screen each of the 4 layers signals whether it contains a non-transparent pixel. The PROM then contains a set of fixed rules that determine which of the 4 layers ‘wins’. A logic probe seemed to show the inputs to the PROM were all pulsing but the outputs were stuck low (which would mean only a single layer would ever be selected – in this case the text layer).
The PROM was removed and replaced with one from a parts board, and all graphics were working again. It’s quite rare for these kinds of PROMs to fail, I assume it was physical corrosion.