On 4/21/06, Roy J. Tellason <rtellason at blazenet.net> wrote:
On Friday 21 April 2006 12:35 am, Ethan Dicks
wrote:
The two most common failures in my experience are
the PLA (82S100 -
identical to the one in a standard C-64) and the keyboard.
If I understand this stuff right, "82S100" is the part number for that chip
in generic, unprogrammed form. They had a different number for it,
906114-01 or something like that.
Yes. Someone did work out the fuse map at one point, so if you had a
suitable programmer and a blank 82S100, you could crank out fresh
PLAs.
Given the fuse map and the 82S100 data sheet, it's easy to work out the
logic equations. It should be possible to program some more modern CPLD
to replace this chip, I would have thought.
The basic architecture of the 82S100 is that there are 16 inputs. These,
and their inverses, can be ANDed in any combination to make 48 'product
terms'. The 8 outputs are produced by ORing any combination of the
product terms (note you can use the same product term in more than 1
output if you want). Each output can also be inverted if desired.
Note that unlike a PAL or GAL, you program both the AND and OR matricies.
And the device is a lot faster than most traditional EPROMs.
-tony