BryanMcPhail.com

Professional software development, amateur BMW tinkering, old arcade game stuff

By

Data East Hippodrome arcade pcb repair

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).

IMG_2797 IMG_2812

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.

IMG_2798IMG_2811

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!

IMG_2875 IMG_2846

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).

IMG_2850 IMG_2857

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.

IMG_2886 IMG_2885 IMG_2884 IMG_2879

 

By

Data East Bad Dudes arcade pcb repair

Quick & easy repair – the sewer level had moving ‘dots’ that looked to be every 16 pixels up & down across the screen.  In fact probably every level had these corrupt dots but the constant scrolling of the water layer in the sewer makes it more obvious.

The problem was a corrupt mask-rom for one of the tilemap layers.  The ‘transparent’ tile had a corrupt bit.  Burned a 27c512 eprom from the MAME data to fix it.  There was no corrosion or any physical problem visible on the corrupt ROM.

IMG_2821 IMG_2826