After a few hours of pre-show testing the game developed a double graphics problem and the game PCB was removed for repair.
Closer inspection on the bench found the sprite graphics working OK so the problem was with the background graphics. Testing "RAM Check All" with the Arduino ICT reported "E: 85 a800 00 04" and passed all other ROM & RAM. Replacing IC 85 (2114) fixed the test failure and the game ran OK on the bench.
Pre-show testing of the spare Frogger PCB also failed. The sprites had issues, the
background had issues and the colours were wrong. Testing on the bench with the Arduino
ICT passed both ROM and RAM OK. The RAM pattern was set to address = data with "RAM Write
All AD". Jumping in with the scope on IC 71 (LS161) output pins 11-14 all looked OK.
Similarly, IC 82, 95, 84 (LS161) output pins 11-14 were all active OK. Close inspection
of the graphics indicated potential horizontal row doubling. Inspecting IC 51 (2114), a
write-only RAM, found:
pin 1 | clock | pin 18 | hi |
pin 2 | clock with pulses | pin 17 | lo |
pin 3 | clock | pin 16 | lo |
pin 4 | clock | pin 15 | lo |
pin 5 | clock | pin 14 | floating |
pin 6 | clock | pin 13 | floating |
pin 7 | clock | pin 12 | floating |
pin 8 | lo | pin 11 | floating |
pin 9 | lo | pin 10 | hi |
According to MAME, the lower 3 bits of a portion of the sprite RAM were used to set the
colour attributes of the background characters. Starting with a "RAM Write All AD" and
inspecting the colour attribute latch IC 43 (LS175) found:
There were still problems with the game. Though the DIP switches were set for 3 frogs and 1 coin 1 play, the game didn't play that way and gave 7 frogs. Further, player 2 down appeared to be stuck on causing the frog to immediately jump backwards into the time bar. Checking the input port reads using the Arduino ICT found the same - player 2 down was stuck and the DIP switch read wasn't correct. I suspected IC 7 (8255) was bad and replacing it fixed the inputs on both ICT and game play.
Whilst on the bench, the game had lost sound. Using the Arduino ICT (using "Hustler (ZS2)", support for Frogger sound had not yet been added to the ICT) found RAM and AY8910 sound output working OK. The two ROM CRCs read consistently 5C=79326efe and 5D=7380a48f, matching MAME. Replacing the Z80 CPU brought the sound back.