Dragon 32 Joystick adapater
The Dragon 32 (aka the Welsh Tandy TRS-80 Color Computer clone) has many features that were advanced for its time. Unfortunately amongst these are two analogue joystick ports. Capable of six-bit resolution on each axis they are quite nice, except for playing games with. The vast majority of Dragon 32/TRS-80 games were ports from other systems and designed for digital controls. Luckily it’s possible to create an adapter that allows digital controls to be used with the Dragon 32. Very luckily in fact; as it’s basically impossible to find a working Dragon 32 analogue joystick these days.
The adapter accepts a standard 9-pin Atari (or Kempston for old Spectrum owners) joystick plug and converts the digital signals in to the analogue input required by the Dragon 32. It does this by acting as two voltage splits, one for each axis. Taking the X (left-right) axis as an example. When neither direction is selected (the joystick is central) the voltage is split equally between ground and the Dragon’s X pin. This 50% voltage (actually 2.5v) is handled as centred by the games. When left is selected the voltage is shorted to ground and the Dragon’s X pin registers 0% (0v); this is handled as full left by the games. Finally when right is selected the connection with ground is broken and 100% (5v) goes to the Dragon’s X pin; which is handled as full right by games. The same applies to the vertical axis.
The achieve this in a compact form a 4066 IC is used. This contains the required four switches (two for each axis). A resistor goes before the positive input to the two switches and after the ground output. The Dragon’s pin is connected between the two switches. Additional resistors are required for the inputs to the switches. See the schematic for details.
The directions (and fire button) in an Atari joystick short to ground when activated. Thus the control voltage to the switches are cut when a certain direction is selected, resulting in the desired voltage split. The fire button works identically for both Atari and Dragon 32 standards and so is a direct connection.
Atari and Dragon 32 joystick pinouts:
Any reasonably high resistance will do (I used 100K-Ohm) as long as all the resistors have an identical value. The Dragon 32 uses a 240 degree, 5 pin DIN plug which can be tricky to find these days. I found one being sold on eBay. The Atari socket is standard 9 pin D-Sub and can be found almost anywhere.
The same circuit can be used for the two button TRS-80 machines (using a Master System controller for example). The extra fire button pin on the Atari socket should be attached to the central pin that’s present on such plugs (240 degree, six pin DIN).