Game booted to a solid purple screen with no sounds so it seemed the game was not running as well as likely graphics problems (with graphics working and dead CPU the game should show character tiles garbage).
Usual checks with a logic probe didn’t show anything obviously wrong – CPU lines were pulsing away as were ROM and RAM. I started by trying to debug the character display part of the board to see why no tiles were displaying. Again, nothing seemed wrong here – graphics ROMs were pulsing away – both data and address lines – so data was coming out but where was it going?
I traced back to a LS157 chip – this is a multiplexor that selects between 2 four-bit sources. One source is the tiles, one is the sprites – so this is really what handles the priority between sprites & tiles in the game. When I used the logic probe to short some of the pins on this chip – tiles appeared! In fact they were proper game tiles so the CPU program was clearly running. The main fault on the board was now clear – the sprite output was jammed on for every pixel – so the priority selection always chose the sprites which gave the solid purple screen – the tiles and CPU program were actually running fine underneath the solid output.
So I traced the LS157 sprite input back looking for dead chips – in fact I traced back about 10 linked chips without finding anything before giving up and starting again at the other side of the chain – the sprite RAM. On that address lines were pulsing but data pins were not – so nothing was being written into the RAM. Traced back to a Fujitsu LS244 latch.. dead Replaced that and graphics worked!
Weirdly though – the game was running at least double speed. This game, like many, regulates speed through periodic vertical blank interrupts – 60 a second give or take. The logic probe showed the IRQ pin on the CPU was stuck low – this traced back to another Fujitsu LS244 – dead. When replaced game speed was correct.
However, still no sounds – I spent quite some time debugging the sound (top) board but nothing seemed wrong – the IRQ pin on the sound CPU pulsed whenever a sound was requested by the main CPU. Eventually I went back to the main board looking for where the main CPU writes the sound command data to the audio board – a Fujitsu LS245 with dead outputs.
With all that done a new battery was installed and high scores cleared to fix the bad score graphics and the game good to go.