Software Compatible Joystick

Authors

Publication

Pub Details

Date

Pages

See all articles from SyncWare News v1

It’s a snap to connect an Atari-type joystick to the ZX81/TS1000; all it takes is direct connection to the keyboard lines. The problem with this is that only certain combinations are possible, and you cannot hook it up so that the joystick controls the “arrow” keys 5-8; as a result, software written for the computer, which usually uses the arrow keys, has to be modified for use with the joystick. This is especially rough if the keyboard sensing is done in machine code, but is a hassle even to change BASIC INKEY$ commands. So here is a simple (and CHEAP – about $2) way to install a joystick that activates the arrow keys, or any other keys you wish.

Atari and similar joysticks use six lines; 4 for the directions, 1 for the fire button and 1 common return, So, you could connect the common to one of the KBD lines (e.g. KBD4) and the other five lines to the diode lines (e.g. 1-5.) In this case then, the joystick will activate 5, T, 6, G, and Y. If you study Fig. 1, you’ll soon see that there’s no way to control 5-8 with this approach.

The circuit of Fig. 2 overcomes this by using garden-variety transistors to do the actual switching; the connection shown puts the joystick directions on 5-8, and the fire button on ENTER, but any other combination is possible. Just tie the emitter of the transistor to the desired DIODE line, and the collector to the desired KBD line. Almost any low-power NPN silicon transistor will work, like 2N3904, 2N4401, 2N2222, etc. You might have to experiment with the values of the resistors. Use 100K as a starting point. If nothing happens when you activate a certain direction of the stick, increase the value. If the cursor flashes but no character is generated, the resistor value is too high. On my machine, all values are 100K except for 7 (up,) which is 33K for correct operation. You only have to remove the bottom of the computer case to “hard-wire” the stick. If you’ll be installing a socket, you may have to remove the board all the way. You can glue the transistors, flat-side down, to a 1/4″ x 1″ strip of plastic, which in turn glues to the PC board near the KBD connectors. Once you’ve determined the right values for the resistors, they can be glued to the valleys between the transistors. The five lines from the joystick go to the free ends of the resistors, and the +5V for the common is available at the COMMON connection to resistor pack RP3.

Products

 

Downloadable Media

 
Scroll to Top