DiagROM, if you’re not aware, is one of the most useful tools in an Amiga repairer’s arsenal. It replaces the Kickstart ROM(s) and runs diagnostic checks directly from, and on, hardware. No working floppy drive? No problem! For most tests all you need is a mainboard and a mouse or keyboard, and many faults that would stop your normal Kickstart from working will be worked around by DiagROM so it’s able to run on partially working machines.
For most Amigas, all you need is the DiagROM chip (or chips in the case of A1200, 3000 and 4000) and either a display, or a serial cable and another computer running a terminal program. Everything you’d normally see on screen is also piped out of the serial port so even if your Amiga is suffering to the point that the video output isn’t working, you can still run tests.
Except… the CD32 doesn’t have a serial port. Does it? Well, yes, but you won’t recognise it and it’s not exactly the same. Instead of the 25-pin RS232 DSub that most Amigas (and many older PCs) use, it’s a TTL connection buried in the Keyboard/Aux port on the left hand side. The difference between 12V RS232 and 5v TTL is important as incorrect wiring will damage something, probably the CD32 as all the logic inside that is expecting 5V suddenly gets more than twice that barrelling towards it.
I recently offered to diagnose some issues with a friend’s CD32 and struggled to find the exact details of how to use this Aux port for DiagROM, so after getting it working after a bit of trial and error I thought it worthwhile recording what needs to be done for prosperity.
What you’ll need is
- A PC with USB port and a terminal program
- A USB-TTL adaptor such as this Prolific based item
- A 6-pin MiniDIN male to male cable, fully wired
- Solder, soldering iron and heatshrink
- Multimeter or continuity checker
The USB TTL adaptor will convert the 5V signals the CD32 will use into a COM port for the PC to talk to. It should present as COM1 or something in Windows – if you’re on a Mac, or Linux then I’m sure you can translate these instructions into something suitable for your OS. The first step is to install the drivers it came with, and make sure you see a new COM port on your computer. They’re notoriously picky so feel free to purchase one that has good reviews – anything that says “USB to TTL” and has Red/Black/White/Green wires will be fine.
With that working, we need to connect the TxD and RxD (Transmit and Receive) wires on that adaptor to the CD32. For that, you need a 6-pin MiniDIN connector with wires soldered on, and the easiest way is to buy a 6-pin male to male lead. Make sure the description says it’s fully wired to ensure the two connections we need will be available. And then…. chop it in two. Keep the connector and enough cable to stretch to your PC, but keep it as short as you can as it’ll easily pick up interference.
Strip the end of the six wires inside the MiniDIN cable, and plug it into the CD32 Aux port with the machine turned off. We’re going to find the two wires you need, which are the ones that go to pin 6 and pin 2 of the connector. Note, don’t pay too much attention to the CD32 schematics you may find online, the connector symbol is a placeholder and not accurate. Pin 6 is the top one on the side nearest the mouse port, and 2 is the bottom on the same side.
To find which wires connect to these two pins, check continuity between the pads shown here and the end of each wire. When you get a solid, low resistance signal (bearing in mind there is a resistor there so it won’t be perfectly zero) note the colour of the wire.
The wire that connects to the Yellow area on D644 is TxD, the wire that connects to the red pad on D643 is RxD.
You can chop the other wires off, making sure they’re not shorting together or to the shield of the cable.
Now all you need to do is connect these two wires on your MiniDIN cable, to the white and green cables on your TTL adaptor. The easiest way to do this is to chop and solder, remembering to put heatshrink on the cables first. We won’t be connecting anything to red and black. These should be cut short, and insulated to stop them shorting. For me, white was RxD meaning it connected to TxD on the Amiga side, and green was TxD meaning it connected to RxD on the Amiga. They’re swapped as when the PC is Receiving on RxD, the Amiga needs to be Transmitting which it does on TxD, and vice versa.
There’s no harm caused if you get them the wrong way around though, so don’t heatshrink them until you’ve tested it.
As a reminder, only connect two cables. We don’t need any power. Check none of your chopped wires can short – especially the black and red on the TTL adaptor as this could burn out your USB controller.
Pop the DiagROM into the CD32 (remembering it needs to be a specific version – it’s the same software, but on a 27C800 1MB EPROM so twice the size of the regular version), connect the cables, choose the right COM port in your terminal program and power up. All being well, you should see text and if your CD32 is working well, be able to control the menu via serial port.
Thanks for sharing this valuable information.
Can’t we just use the pins in the expansion slot directly?
Pin 127 = _RxD
Pin 128 = _TxD
+ 1 for GND
without any ttl or soldering to achieve RS-232 null modem stuff?
Probably, yes, although these are hard to connect to without a riser and then you’ll need to solder to that… But it’s a valid alternative!