Sunday 28 May 2023

Commodore C64 Repair (with a slight cheat)

When you open up a vintage computer to repair, as far as I am concerned, the best thing you can find inside is dust.

Dust to show that it has been untouched for many years.

This one doesn't have any dust.

That's not necessarily a bad thing, but then your eyes are drawn to the bits that should not be there.

Unexpected sockets.

Two of which appear to have been fitted upside down (notches at the bottom), and all of which have signs of chips being levered out of them with a small screwdriver.

Also, random chips.

Two types of Micron Technology RAM, with and without the USA logo (most of which are likely bad - most MT RAM chips are). One NEC (different speed grade to the rest) and one Mitsubishi.

Oh, and then almost the worst thing to find inside:

Flux residue.

You can see that 7 of the RAM chips have been socketed (a C64 of this vintage is unlikely to have come out of the factory with sockets on the RAM chips, or if it did, it would have been all of them). One chip isn't socketed, but has flux residue around the pins.

On the back of the board, things get worse.

All of the big chips, the 6510, both 6526's, all the ROMs and the PLA have been desoldered and replaced.

And then there is the RAM, with probably the worst thing to find, bodge wires to repair damaged tracks.

This is not what I want to find inside a machine. It makes my job considerably more difficult.

This C64 is showing no output. It is important in these case to differentiate between no video output - no sync or picture, and a video output that does have sync but a black screen. With no video, you have to blame the VIC II chip (or the bits around it). With a black screen, it could be many things, but probably not the VIC II chip.

Power or VIC II fault
You can stop now, it's working, isn't it?

This was no video sync or output, so that is pointing at the VIC II chip.

I did some checking around. and clearly someone has been in here as they have moved all the heatsink compound from the top of the chip (although not the pins).

Before changing it for a known working chip, I did the usual checks and found that it wasn't getting 12V power (yes, it needs 5V and 12V).

The rest of the board runs on 5V, with a small separate 5V supply for the chips in the video can and 9V for the modulator and datasette motor regulator.

The 12V is generated from a voltage doubler on the 9V AC input, which the capacitor on there usually at 20-25V.

The 9V AC is fused and switched separately on the power switch, so you can get this situation when the fuse is blown or the power switch is flaky and you get 5V and no 12V. Here I was getting about 24V DC, but no 12V.

This 12V is used by the VIC II chip and the SID. I had already removed the SID for safe keeping. That and the VIC II are usually the only factory socketed chips on these boards.

I removed the VIC II as well, in case that was pulling the rail down. The 7812 regulator is getting 24V in, but even with both the SID and the VIC II removed, there was still no 12V. Faulty 7812?

I replaced that and tried again, and now the 12V rail was working.

Putting the VIC II back, I now got video sync, but a black screen. This could have been down to the VIC II, if it has been running with 5V but no 12V for a while, it may have been damaged.

I tried a known working VIC II and got the same reaction, I also tried the VIC II (and the SID) in a good board. and both chips were working.

So, we are now at known working VIC II, outputting video sync, but a black screen.

As I said before, this can be caused by many things. A bad VIC II is a possibility, but we have ruled that out, so it is more likely the PLA, RAM, CPU, ROM, etc. 

All of the chips which someone has already removed and possibly replaced (maybe trying to track down the fault that I had just repaired?)

At this point it gets tricky.

Probing around, the databus is a mess. Lots of bus conflicts, signals at various levels as multiple chips are fighting to drive the bus at the same time (even more so that a working C64 where the timing barely holds together at the best of times). Could be the PLA or a faulty ROM or RAM chip writing when they shouldn't.

It was the same with the dubious collection of RAM chips. I cannot trust any of the work that has previously been done. Have any of the tracks under the chips been damaged? Is any of the through hole plating missing? Were the replacement chips working before they were soldered in?

At this point, the next step would probably be to remove all those chips. Check all the tracks for continuity. Fit sockets and recheck continuity. Test all the chips. Put everything back and try again.

That is an awful lot of work, with no guarantee of success, there are lots of other things it might be, particularly given all the rework on this board.

If this were a rare machine, or a one with a sentimental attachment, or anything like that, then that amount of work could be justified, but this isn't a special board, or indeed a special machine, and it needs to get back to the owner fairly soon.

It's a bit of a tatty C64 with a missing key and a missing label, acquired in a job lot of other computers, and sent to me to repair along with some other boards because there was space in the box.

At this point, I needed to get the things back to their owner, so I decided to cheat.

I found a spare C64 board of a similar vintage that coincidentally was missing a SID and a VIC II.

The SID and the VIC II were in sockets on the bad board, and I had already proved that they both worked.

So time for a small cheat and swap the board out.

I clearly remember making space on the bench and arranging both boards to take a photo. However, I can now find no evidence that I actually took that particular photo, so please use your imagination.

It booted up to a ready prompt, and generally seemed to working, but when I tried to load a game, the IEC port didn't work.

So much for my quick solution.

IEC faults on a C64 often come down to the 7406, particularly it seems when it it the MOS part 7707. Sure enough, one of the inputs to the chip is wiggling up and down, but the output remains floating high.

I replaced that with a new 7406, and the IEC port was back in business. Notice the Texas Instruments branded RAM chips and Nichicon capacitors. This is a good board.

I replaced the missing key (which meant disassembling the entire keyboard to replace the stem and then finding one with a similar degree of yellowing), and put it all back together and set it up for a bit of a test.

And there we go, Ghosts'N'Goblins looking and sounding good.

One C64 ready to go back.

Do you think I was right to cheat? It is still the original VIC II and SID, the heart and soul of the machine, just the ancillary bits around them have been transplanted.

Maybe one day I will have another go at the board, but frankly, it's probably a parts board now. Giving up any remaining good chips to save other C64s.


You can support me via Patreon, and get access to advance previews of posts like this and behind the scenes updates. These are often in more detail than I can fit in here, and some of these posts contain bits from several Patreon posts. This also includes access to my Patreon only Discord server for even more regular updates.