Replacing Bipolar PROMs

Back in the 1970s and 1980s, digital electronics made quite a lot of use of Bipolar PROM chips. They are a memory device, which can be programmed just once, holding only a few hundred or a few thousand bits of information. They were used for various tasks: address decoding, state machines, and video colour palettes, for example. They are very commonly seen in vintage arcade games and in other electronic devices too. Like any electronic component, they sometimes fail. They can be hard to replace, because they are no longer manufactured, and they are not supported by many low-cost device programmers. In addition, the legs seem to fall off them. Here’s a dud one which came from a Super Pacman PCB:

IMG_3552

 

These things carry part numbers like MB7051, 74S288, AM27LS09, HM7603, 82S123 and 82S129. Some are available secondhand but they’re expensive, and programming them is a pain. My EPROM programmer (A cheap USB GQ-4X) doesn’t support them. This one needed replacing. What to do?

Apart from coming in small packages, these things have another attribute: speed. They typically respond in around 40-50ns or less, which is much faster than most EPROMs or Flash memory chips. However, whilst investigating alternatives, I found that fast PROMs still exist, just about, in the form of one-time programmable ROMs. I chose an Atmel 27C512 because it’s compatible with my programmer, readily available (thousands were in stock at the distributor I use) and very cheap – less than £2. It also has a 45ns access time, making it a worthy substitute for the dead MB7051 in the picture. It’s a bit big, coming in a 28-pin DIL package, but it has more than enough memory space: 512kbit. That’s 2000 times bigger than the original chip!

To adapt it to the Super Pacman PCB, I first programmed it (or the first few bytes of it, anyway) with the correct data, obtained from a MAME ROM dump of Super Pacman. Then I made a little carrier board out of some stripboard and PCB pin strips (Harwin pins, Farnell part number 1022218, are thin enough to go into chip sockets without damaging them) and wired the whole lot up with fine polyurethane-insulated wire. The wiring went like this, noting that many of the address pins are unused and therefore grounded:

82S123 27C512
O1 1 O0 11
O2 2 O1 12
O3 3 O2 13
O4 4 O3 15
O5 5 O4 16
O6 6 O5 17
O7 7 O6 18
GND 8 GND 14, 1,2,3,4,5,21,22,23,24,25,26,27
O8 9 O7 19
A0 10 A0 10
A1 11 A1 9
A2 12 A2 8
A3 13 A3 7
A4 14 A4 6
nCE 15 nCE 20
VCC 16 VCC 28

and the result looked like this:

IMG_3554 IMG_3553

Switching the game on, I was greeted with a display with the correct colours and plausible-looking characters!

IMG_3556

 

Shame it doesn’t actually run yet, but it’s much better than the green and blue splodges it used to produce. Onwards and upwards.

Advertisements

7 thoughts on “Replacing Bipolar PROMs

  1. Pingback: Super Pacman repair log | martinjonestechnology

  2. Some old arcade tech

    In a former life I repaired arcade games so I know exactly what you’re trying to do.
    The problem is that bipolar ROMs of the types you’re replacing have different timing than an EPROM has (PROMs are generally faster) which is probably why you’re getting the poor results you’re getting. Try seeing if you can design what you need into a PAL chip like a 16L8 (although you’ll probably have to use a GAL16V8, or something similar/newer). They’re essentially combinatorial logic and will be more than fast enough to emulate a PROM.

    Reply
    1. martinjonestechnology Post author

      Thanks for reading the article, and thanks for the note about timing. It turned out that the speed of the modern PROM (about 40ns in this case) was plenty fast enough for this application. The Super Pacman board had a couple of other faults which were stopping it running. Once I’d sorted those out, the colour palette from my replacement PROM was absolutely fine.

      Reply
  3. Jpx72

    I am just solving a similar problem with Galaxian board, your last comment encouraged me that it can work with an eprom, so I am going to try it. Wish me luck, will let you know the result.

    Reply
    1. martinjonestechnology Post author

      Good luck! The Atmel PROM I used is pretty fast, faster than most EPROMs. Check the access time of the chip you’re planning to use. If it’s much more than 100ns or so, it might be too slow and you’d see poor image quality or colour fringing. It might work fine, though, so give it a try!

      Reply

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s