Reverse Engineering An Ancient SBC With An Apple ][

We spend a lot of time in our community discussing the many home computers from the 8-bit era, while almost completely ignoring their industrial equivalents. While today a designer of a machine is more likely than not to reach for a microcontroller, four decades ago they would have used a single-board computer which might have shared a lot of silicon with the one you used to play Pac Man.

[Epooch] recently came into possession of a CMS 9619A Advanced Single Board Microcomputer, a rather unique Programmable Logic Controller intended for industrial applications. It’s powered by a Motorola 6809 CPU and features the usual array of peripheral chips. To unlock its secrets he reached not for an array of tools from 2019 but for a venerable Apple ][e microcomputer.

In this type of 8-bit machine the various peripherals are enabled through address decoding logic that toggles their chip select line when a particular I/O address is called. Sometimes this task is performed by a set of 74 or similar logic chips, but in the case of the CMS 9619A it falls upon a Programmable Array Logic (PAL). These chips, which could be thought of as a simple precursor to today’s FPGAs, were ideal for creating custom decoding logic.

As you might expect though, a PAL is an opaque device, so to deduce the address map it was necessary to reverse engineer it using the Apple ][‘s printer card and a bit of BASIC code. It then remained to do some ROM disassembly work and wire up the serial ports, before some ROM patching with the Apple ][ as an EPROM programmer to finally access the machine’s debugger.

The 6809 is famous as the brains of Radio Shack’s CoCo and the Dragon computers, but this isn’t the first time we’ve seen it in an SBC.

4 thoughts on “Reverse Engineering An Ancient SBC With An Apple ][

  1. He could add stepper motor and 3D printed gears to that PLC – it would make a very geeky automatic toilet seat closing system. The only problem would be pieces of fecal matter stuck between IC pins but that can be fixed with conformal coating.

  2. Been there, done something similiar. A friend runs a print shop and the oooold machine he uses to cut paper to the specified size uses such a single board computer with an 6809. The Firmware is in a number of 2732 EPROMs. A few years ago we decided that it’s time to copy them before they forget their contents. So now he has a second set of freshly programmed 2732A EPROMs in case the machine stops working. Everything on the board is standard TTL or I/O (6821) with just one old PROM in a 16pin DIP. We hope it never fails. :)

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.