If you've ever had to work on the circuit boards inside a pinball machine, one of the great resources on the web is the Flipper-Pinball-Fan website.

Run by Leon from Ghent in Belgium, the site has a vast array of circuits and diagnostic techniques for a wide range of games from different manufacturers including a test circuit for the famous WPC power driver board.

While a fraction of this is information might be available elsewhere in various forms, one thing you certainly wont find anywhere else is Leon's range of test EPROMs.

These are chips you can plug into your suspect CPU or sound board which run tests to isolate any faults the board may have.

In this article Leon describes one of the most important tests in his EPROMs, the memory test.

Many among you are familiar with the free test eproms from the website . The tests executed with these EPROMs are basic tests specially for CPU boards that will no longer boot at power up. Every CPU test chip also has a memory test , this memory test is basically the same for all sorts of CPU boards - Williams, Stern, Bally, Zaccaria and Data East . Here is a short description of how this memory test works. An inside view!

Basically it is very simple, we write something in the memory and read it back, what we read back must be equal to what we wrote. As simple as that. Or is it not that simple ?

Indeed it is NOT that simple. First we will write in the highest address position of the memory chip, that way we need ALL the address lines to reach that highest position, not one may fail. BUT what about if one does fail? (for example, a bad contact in the socket of the memory chip) If one fails we write in a different address to the intended one. When we read back, the same failure is still there and we read at the same “wrong” place. The result is the the write and read are equal , the memory tests OK , but nevertheless did fail!!! ( Read and write at the wrong place)

We will write a pattern 55 (hex) at the highest address position. Suppose we have memory with 10 address lines. We write 55 in A0+A1+A2+A3+A4+A5+A6+A7+A8+A9 but before we read that back we will write 00 at every position of the memory minus one of the address lines. First in position A1+A2+A3+A4+A5+A6+A7+A8+A9 (i.e. all address lines except A0), then all positions except A1 and so on, in 9 different positions we write that 00 pattern. When reading back now the position where one address line was missing is overwritten with 00. No match between write and read back is found.

This works also if there are two or more address lines missing ! Every address fault is covered.

We always use the pattern 55 an AA in hex because as binary in the memory this give 01010101 and 10101010 - alternating “ones” and “zeros” . Every data line is tested that way. Any other signal coming to the memory chip MUST be right or the memory cannot work. If read/write is missing or stays “low” or “high” we can not read or write and when the selection signal is missing the memory cannot respond. Every case is covered that way. The test is ok and complete.

It is at the site that you will find how to use the test EPROM, how to launch the memory test and the image of the (free to download) test eprom.

There are many different EPROMs you can download from Leon's site so just head to the main page, choose your favourite language and find the tests for your type of board.

Back to the learn page

Back to the front page

© Pinball News 2005