Dremeling and ripping out the brain of a 25-year old vintage machine – I was so Frankenstein yesterday. Luckily, it worked, being the first step to a much improved Oberheim Matrix-1000 running with – at least – doubled system clock, and patched firmware. This takes up the work of Gligli who was the first to hack a faster CPU into the Matrix, and tries to take it one step further.
Hacking a vintage instrument – my favourite guitar player calls this cruelty. Yet there are good reasons to do it: As I’ve mentioned before, the Matrix’ CPU is actually too slow for what it tries to achieve, but the 8-bit 6809 chip could only be clocked to 2 MHz in its fastest version, and this is it.
So Gligli, a hacker from France known for his Prophet-600 firmware rewrite/retrofit, had the idea of using a 6309 CPU, a chip from the same era that, while maintaining drop-in compatibitily, offered faster instructions and could be overclocked to 4 MHz. So he replaced the CPU and the main oscillator, patched the firmware and – it worked.
Yet there are some issues with Gligli’s solution, in my humble opinion. The Matrix’ peripheral chips are designed to work at 2 MHz; by doubling the CPU clock, they have only half the time to read or write data to the bus. Not all of the hardware is up to this; Gligli’s solution is simply writing everything twice, and that seems to work, but it’s not very trustworthy.
So I’m planning to install a CPU with a custom clock generator that is using asymmetrical cycles to give the peripherals more time to read and write. (I’ll have to build in new oscillator circuitry anyway, as I happened to buy 63C09E CPUs, which rely on external clock generation.) And there’s always the possibility to go even further and replace the CPU by a modern programmable logic chip, an FPGA, that can be loaded with a 6809-compatible core clocked even higher and has proper slowing-down logic to interface the old hardware. More on that later, suffice it to say that I simply want my Matrix’s CPU in a socket. And be it only to be able to revert to the original chip.
Ripping out an 8-bit brain
This is what the unmodded Matrix CPU looks like – as you can see, they did not bother to put in a socket; the only socketed parts in the synth are the ROMs, the four DCO clock counters – important for later hacks and replacements – and the CEM3396 Curtis chips, the analog hearts of the synthesizer. Even the battery has been soldered in, and I’ve got that funny feeling that it may be high time to replace it after a quarter of a century of uninterrupted service.
So the first thing is to get the old CPU out. I visited our local hackerspace to do this; and one of the guys there had the idea to actually cut the chip out with a Dremel rather than cutting off each of its 40 legs with a clipper.
I decided to keep the CPU; as mentioned above the 6309E chips I got are no drop-in replacements, which a standard 63C09 is supposed to be. I soldered it to two 20-pin pinstripes, and although it does not look to nice, it is still usable.
To install a CPU socket, the remains of the CPU legs have to be removed. I learned that it’s better to use a medium-sized soldering iron rather than a fine SMD solderer, together with a hand-operated vacuum desolder pump and a bit of desoldering wick to clean up. It is also a good idea to remove the main board from the housing to get to its underside.
It was a messy job, but in the end, it worked. Testing all connections found no fault, and as you can see from the first picture in this post, the Matrix-1000 is still running, awaiting further upgrades. They should be possible now avoiding further brain surgery.
- The battery still has to be replaced with a battery holder; I think it’s the easiest to use a standard type and drill two little holes for it.
- A hacker friend of mine thinks that it’s a good opportunity to replace the quarter-century-old electrolytic capacitors too to keep them from dying onstage.
- What has actually died in these past 25 years is not the battery, not a capacitor, but one of the rare CEM3396 chips. One of its two generators is no longer working; moving around the chip in the synth makes the problem move as well so I think there’s really no alternative to replace it. A couple of them are still around, maybe I’m lucky, maybe I’ll have to buy one of the wide-body variant and adapt the Matrix-1000 to it.
- Oberheim Matrix-6 and Matrix-1000 firmware update on eBay (Wednesday, 13. April 2016; Schlagworte: Bob Grieb, Firmware, Matrix-1000, Matrix-6, Oberheim, Update)
- Resetting a Matrix-1000 with a new battery (Sunday, 10. January 2016; Schlagworte: battery, factory reset, Firmware, Matrix-1000, Oberheim, real time control)
- Oberheim Matrix-6 source code file available (Tuesday, 28. April 2015; Schlagworte: Firmware, Matrix-1000, Matrix-6, Oberheim, Source Code)