Commodore 64 GAL PLA Replacement

Back in March, Adrian at Adrian’s Digital Basement posted a video (and a later follow up) on a cheap PLA replacement made with some still accessible GAL chips. When I saw it I picked up 5 of the required GAL chips. You need two chips to make a PLA replacement from them. The actual chips are GAL20V8B chips, preferably the -25LP but with an alternate programing of the one chip you can use the faster -15LP chips instead. The chips can be programmed by downloading the .jed files from the Daniel’s project website:

While the GAL20V8B chips are no longer manufactured, they are in Daniel’s words still rather easy to get and cheap. The chips are able to be programmed in the popular TL866 programmers. I have the newer TL866ii Plus that I purchased for programming EPROMs. There are the older TL866 programmers and those work too, which is why he choose that model of chip rather than a similar still in production chip. This indicates that if someone wanted to they could likely recreate this project with that still in production chip at some point, but unless there is a shortage on these chips I doubt it will happen.

I happen to look around for parts and projects, so I had the chips laying around, but I have never pulled the trigger and ordered any manufactured PCBs from any of the providers out there. If you read my other posts you will see I have designed a couple of my own and etched them at home. That is a lot of work. These premade designs are not meant for that level of prototype work, the tolerances are too tight for me to make the way I made my other ones. Double sided and very small traces, a lot of through holes that need plated etc.. My one design being a single sided board, with wider gaps on the traces, also the lack of solder mask. The other design being wider gaps yet between traces to help with the lack of solder mask and it is difficult to manually align both sides and get them transferred to the board properly. I also designed my double sided board specifically to having to use vias between the sides.

So, how did I come about making progress after eight months? Well in looking for some parts for my TI99/4a, I found the PCBs for the GAL PLA for sale at what I felt was a reasonable price and ordered two. It turned out to be a very easy project. Since it is a manufactured board, all it really amounted to was installing the pin headers for everything. Adrian used Machined Sockets for the GALs and Machined Pin headers for the legs, in my case I used Machined Pin Headers for everything. Beyond that I did the same thing as he had.

Keep in mind what order you want to solder the headers up. If you use sockets, then you must put the underside legs on first. If you use all Pin Headers like I did, I found it easiest to put on the inner pin headers for the GALs on the top side, then the lower “legs” and finished up with the outer pin headers for the GALs. It turned out great. I certainly do NOT recommend using the larger square pin headers.. They damage sockets badly as they are far to large. The “turned pin”/”machine/machined pin” headers can be problematic as well especially in old single wipe sockets.

The Left are “square” pin headers like on Arduino boards, rpi etc. The right though is the machined pin headers

Above you can see the more popular Square Pin Headers. Those are not what should be used for the legs, you should use the Machined Pins instead. These are for the legs, the shorter pins going into the circuit board and soldered on there. The longer legs sticking down and those insert in the IC Sockets on the mainboard.

Machine Pin Sockets. I used these instead of IC Sockets for the GAL chips to insert into.

Above are the Machine Pin Sockets that I used in place of standard IC Sockets. I generally prefer Machine Pin Sockets to the single or double wipe standard ones. They machine type sockets are more flexible than standard sockets as they don’t go all the way into the PCB. These Machine Pin Headers though are almost identical to the Machine Pin IC Sockets, but can be made any required length. I didn’t have sockets of the size of these GAL chips, so I used the header strips. I also used these for the ATMEGA in my Pi1541, as I needed a Machine Pin Socket and the standard double wipe socket wouldn’t work on my homemade pcb.

The bottom with the round Machine Pin Headers.

A side note on the Machine Pin Headers and Machine Pin Sockets that I used. They fit together just like they are made for each other. With a little careful work and some heat shrink on the ends you can make them into inline connections for wiring. Sometimes it is useful like when I make lighting in models and such. They fit fairly well, it is a little like using those DUPONT Male and Female cables that use the “square” pins as seen further above. I think these kind of click in a little more securely, they also make a shorter connector in the end.

Unfortunately, before programing the GALs, I tried to program an EPROM for a cartridge I had assembled. A bit over half way through programming the EPROM the programmer failed, now it says it has a short of VCC problem, and fails the self test on the first VCC test.. That meant I had to order a new TL866ii Plus and wait on it to come in. I wasn’t very happy as I did not get very much use out of the first one even though I had it about a year and a half. I tried downloading the new software and putting on the lasted firmware, but the same result.. I have mostly given up on that programmer, but I certainly will keep it around incase I have an issue with the new one, or find a solution on repairing it.

The new programmer arrived the other day, and since I had the latest software and all the files already, it didn’t take long to program up the GALs. Still out of the 5 GALs two of them didn’t want to program successfully. I did program a pair then used the fifth one to start another set. I cleaned the legs on one of the two that didn’t want to program initially and it seemed to program properly that time around. I should have the chips ready to go for a second replacement if I need it in the future. I haven’t tried cleaning the other GAL and programming it again, I can’t do anything with just 1 GAL anyway at this point, but I did keep it incase I can get it working. I generally don’t do much during the week as far as pulling the Commodore apart, so I didn’t test it until today.

GAL PLA Replacement installed. I like Sharpie Oil Paint Markers for marking stuff like this. Standard Sharpie fades or rubs off over time..

Here it is installed in one of my Commodore 64s. If you read my other posts on this one where I cleaned up and repaired it, you may know I have a PLAnkton PLA in it normally. I am just testing this one. The board has a Machined Socket installed in it already which properly accepts the Machined Pin Headers, which the PLAnkton also uses. The PLA in my other Commodore 64 is also socketed, but it has a the factory single wipe socket. Installing the round Machined Pin Headers into that may damage the socket which wasn’t a great quality when it was new 40 years ago. That Commodore 64 still has an original working PLA in it, if I damage the socket it may not make good contact. If the PLA had failed, I wouldn’t be so concerned. In this case I am just testing that it works, so I know it is ready to go if needed. I doubt the PLAnkton will fail me anytime soon, but the factory PLA in the other 64 may.

I also have an ARM SID in this Commodore, I found the SID that was in this one had an issue. It may have been damaged all along, or it may have been when some traces were shorted by the unclipped legs on it.. The original SID was directly installed into the mainboard, and the legs were never trimmed at the factory. That left them sticking through quite a bit, and having the board sitting on the workbench ended up folding them over onto traces, and cut into the solder mask causing a short. The ARM SID wasn’t cheap, but I felt it was the best replacement if I wanted full function SID in the board. I am quite happy with it, but I do need to get the firmware update installed which fixes some issues.

I did not do exhaustive testing of the GAL PLA, but I did some testing here with the Dead Test and a short run of the Diag cartridge without the harness before that. I let the Dead Test run 8 full cycles without any issues.

I certainly like how easy this worked out. It looks well modified, but fits very well and is nicely built. I don’t have Super Zaxxon or anything to really stress this out that I know of. I have reinstalled my PLAnkton and closed the ole girl up. The GAL PLA is going to be packed safely in some EDS conductive foam for a rainy day.

Below is a link for Adrian’s first video on the GAL PLA. He did a follow up testing the Epyx Fast load as well.

Thanks for reading. I hope something here is helpful. I do most of these posts to kind of pull together different sources and include little things that I came across in doing these projects that may not have been mentioned in the other source material that I had when doing the project. This was a quick and easy project even though I kind of started thinking about it quite a while ago.

Due to getting these boards in and a couple others, I have finally made a customized board that I have ordered from JLCPCB. I know I see a lot more advertisements for PCBWay. Maybe I would try them at some point. JLC seemed more strait forward to get the initial order in and seemed a bit cheaper. Provided those boards work out, I expect that I will be putting together a post on that project after they come in. I have worked on a few things that I haven’t gotten around to posting. Mostly simple stuff that doesn’t take much in the way of a post and may not be of much value to post.

In the end I really don’t like waiting on things, or I may have ordered some of these PCBs myself. Then of course I waited 9 months to find some that someone else went to the trouble to order…. It really showed me how easy it is to put together a simple project like this when you have a properly made PCB compared to trying to wire up some sort of adapter from Pin Headers or IC Sockets and jumper wires. My Pi1541 was very time consuming to build. Sure there was a good bit of planning and construction, but had I ordered in the PCB, it would have been so much easier to assemble. It would have also been a bit easier to design the board when I didn’t have to take into account making VIAs by hand, dealing with lack of solder mask etc.. The Pi1541/Tapuino board did initially have a number of mistakes, and that would have kind of sucked to have ordered in and have to fix that, but it would have been possible. The board is kind of specific too, I didn’t want 4-9 laying around forever.. How many people want a Pi1541 the size of an original 1541 anyways? If I were to redo the project and it turned out possible to design it to be the proper layout and size to be a Pi Hat type but fit the original 1541, as well as maybe a break away Tapuino board section that could be stand alone.. I may have seen a use for more of the boards. That was far beyond ever doing with my hobby level board etching ability. I have since made a second Pi1541 (without a Tapuino), that one was a lot of hand wiring and would have been so much easier with a PCB or two.. Still what am I going to do with 5-10 of a board.. Most of my projects I only need one or two of.


Leave a Reply

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

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

Facebook photo

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

Connecting to %s