Commodore SX-64 Restoration

Two years ago, I got my hands on a machine that I’d been after for quite some time: a 1984 Commodore SX-64 portable computer – “portable” is hardly the optimal word, given that these machines weigh in around 10.5KG, but this was a revolutionary concept for the time.

My Commodore SX-64.

The SX-64 is effectively a Commodore 64 8-bit computer, a Commodore 1541 5.25″ FDD, and a 5″ colour CRT display shoehorned into a luggable case with built-in power supply.

There is speculation that Commodore were planning on fitting the SX-64 with some form of battery supply, as it has no 9 Vac power rail or cassette port, and the time-of-day (TOD) clock is derived from its own (very expensive) oscillator circuit as opposed to just using the frequency of the mains AC input.

This product was a bit of a market flop – not many were produced, and they are now very collectible and difficult to ship, meaning it can be hard to get hold of one in any condition.

After a lot of searching, I ended up buying a 220V PAL machine from Germany, in complete but non-working condition – apparently, the computer would not boot up. I hadn’t worked on an SX-64 before, but given its similarities with other Commodore hardware, I felt up to the challenge of repairing it.

The SX-64 arrived safely despite its long journey to the UK. Upon arrival, I wanted to check that the issue was as described – the original owner claimed that the disk drive would initialise normally but the computer would only output a black screen (i.e. video output was present, but the screen was blank).

The original owner had investigated the issue to some extent, and apparently testing with a Check64 cartridge indicated that RAM IC UA6 was faulty – the computer came with a set of spares including a PLA, CPU, SX-64 Kernal ROM, and a full set of 4164 DRAM.

Sure enough, on power-on the internal CRT would show a white screen (a black screen on full contrast) and the external video output would show a black screen.

I decided to dismantle the computer for further investigation.

The SX-64 is crammed full of a large amount of electronics, so working on it is quite difficult – the system is divided into several modules comprising various PCBs, which are interconnected with various ribbon cables and held in place by plastic and metal fixings.

As the CRT, power supply, and disk drive all seemed to be OK based on the initial testing, I decided to pull the logic boards for the computer section and test any socketed ICs in my Commodore 64 test board.

All of the major ICs (CPU, VIC-II, PLA, SID, Kernal ROM, BASIC ROM, Character ROM, CIAs) were socketed, meaning that pulling them for testing was straightforward – I cleaned the sockets with contact cleaner whilst doing so.

All of the major ICs are compatible for testing with the Commodore 64 except for the SX-64 Kernal ROM, which is a 28-pin ROM. After testing all the ICs that I could, all seemed to be working OK except for the BASIC ROM (part number 901226-01).

After installing a known-good BASIC ROM into the SX-64, and testing temporarily with a known-good Commodore 64 Kernal ROM, the computer booted up correctly. Yay!

Working with a Commodore 64 Kernal ROM installed.

As shown above, the SX-64 will work with a Commodore 64 Kernal ROM – however, the SX-64 ROM has minor changes, including keyboard shortcuts, lack of cassette routines, and funky screen border colours. As such, I reinstalled the original EPROM, and it seemed to work fine.

Working with a Commodore SX-64 Kernal ROM installed.

This was a much simpler repair than I’d anticipated – no soldering required.

It’s probable that the diagnostic cartridge used by the original owner during their investigation diagnosed a stuck data bit, which is often caused by a bad RAM IC, but can also be caused by a faulty ROM with a bad output driver holding the corresponding data line. This is an important lesson, which I’ve learnt on past repairs – a dead-test cartridge flash code does not necessarily indicate faulty RAM, as any IC that is connected to the data bus or involved in addressing (i.e. ROMs, PLA) could theoretically be responsible for a stuck data line. Always check the easy stuff first!

Following further testing, the SX-64 seemed to be working perfectly, including the internal disk drive which reads and writes disks reliably and quietly.

The final step was a thorough clean inside and out, using compressed air initially, then Cillit Bang and a microfibre cloth (or toothbrush for small crevices).

Another successful restoration. Happy days!

Published by themightymadman

A conscientious, intelligent and committed graduate engineer, with excellent interpersonal skills, an eye for detail and a keen interest in hardware design, mathematics, and software development.

Leave a Reply

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

WordPress.com Logo

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

Google photo

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

Twitter picture

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

Facebook photo

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

Connecting to %s

%d bloggers like this: