Thursday, May 13, 2021

Repair : Commodore 128 blackscreen repair - part 2

This is a continuation of the Commodore 128 blackscreen repair.

Ohh Ohhhhh . . . We're half way there . . . 

Just before I started recapping the C128 I suddenly had a thought. I had only run the C64 diagnostics, was that really enough? 

It turns out that the C128 mode of a C128 does not check it's memory on startup and the C64 dead test cartridge only tests the 64K of RAM in the LOW Bank and ignores the HIGH Bank.

However do not fear there is also a C128 dead test cart available.  I went to the World of Jani and downloaded an image from the collection he has amassed in this awesome blog post : Diagnostic Carts and Manuals.

Making a C128 diagnostic cart

I downloaded a cart from from the World of Jani on to a 8K EPROM 27C64 and tried it with one of the many VersaZif64 carts that I had made quite a while ago.

No matter what I tried I could not get it to work.  I read Jani's blog on making C128 carts and decided that even though the ROM image was only 4K, a 16K cart was probably required for it to work.

So I tried using the 785260 image on a 16K EPROM 27C128 and it worked first go.  For the VersaZif64 cart you need to set the all DIPs to OFF and then turn the selector to 16K

Where's the rest of the RAM?

Running the C128 Diagnostic Cart it brought up the unseen memory issues lurking in the background.
** You can ignore the other errors, I do not have a test harness installed. **
 

I tried putting RAM dips over the existing dips and it didn't change.  Then I replaced both U46 and U47 and it still did not change.  That's really weird.  I thought maybe the Diag Cart is wrong so I downloaded memtest64 from this article.  However it also told me there was a memory issue.  Interestingly when I loaded it, it would sometimes just start the machine code monitor and on one occasion the  Diagnostic Cart also started the Machine Code monitor when it was running.

This is one of the symptoms of the C128 Kernel ROM being bad ( the low one I think ).  I pulled both the High and Low Kernel ROM's, tested them and they were both completely fine.

My next thought was that one of more of the logic chips had failed.  There are a lot of chips so I thought I'd probe around with my Oscilloscope to try to find the culprit, rather than just trying pot luck replacing the chips one by one.
 
However in the end it was just bad RAM and I replaced the entire high ram bank and it fixed the issue.

Recapping

I find it a chore looking at the motherboards to get a parts list for recapping.  Luckily there's always someone whose compiled a list already ( and may even sell you kits ).

I used the parts list from here https://console5.com/wiki/Commodore_128 but I sourced the caps myself as I wanted to do quite a few machines.

The caps in the machine overall looked in pretty good condition, until I popped open the shielding on the video chips.  One of the caps had a nasty burn mark on it.