** 1 page regular / 975 words ** Xav presents a few final ideas... When I wrote my first article for AC, back in the very first issue, it was intended purely as a one-off. It was a simple DIY article taken straight from my own work on EJPs purely to help kick-start the magazine. Little did I realise that it would lead directly to such a long-running series of articles. In this series I have extensively covered a number of pieces of hardware based around the standard Atari joypad. There's been a comprehensive discussion of the joypad itself, DIY construction details for a Team Tap clone, and enough information for the intrepid experimenter to build a Tempest 2000 compatible rotary controller. Where appropriate, there has also been programming information so that even if you are not the sort of person who can safely wield a soldering iron, you can still write software to suit people who can. Whilst these articles have (I hope) proved informative, they only scratch the surface of the EJPs. For instance, everything I have covered to date has been digital in nature, but each EJP also includes two analogue-to-digital converters, enabling you to readily interface temperature or pressure sensors, analogue paddles or PC joysticks to your computer. Furthermore, these inputs coexist alongside the digital inputs, so it would be entirely feasible to construct an analogue joystick with joypad style fire buttons. In fact it could also be possible to convert an N64 joypad, complete with its analogue controller, into a device suitable for use with an EJP. If you'd like to try messing around with analogue inputs, a simple circuit like one of those in figure 1, using nothing more than a variable resistor, some wires and a plug, should be enough to get you started. To read the input, simply look at memory locations 0xff9210/2/4/6, which correspond to EJP A, X and Y co-ordinates, then EJP B, X and Y co-ordinates. You'll notice hat the values don't drop right down to zero, nor do they reach 255. Also, different variable resistors will yield different ranges. If you write a program that allows an analogue input, don't forget to include a calibration routine to take this into account - you just need to read the values for the extreme positions of the resistor and map your output range accordingly. Another project idea may prove invaluable to players of Theme Park on the Jaguar, or anyone who uses one of the programs which allow the joypad to control the GEM mouse cursor. Basically it's a circuit which converts the output from a mouse into a series of up/down and left/right joypad button presses. I have found a rather elegant circuit idea in a hefty electronics book, which might do the job. It simply uses a pair of D-type flip-flops, which are available pre-packaged as a 74HC74, to convert from the mouse's quadrature signal to a series of pulses. Because of the way a joypad works, it may be necessary to use these pulses to drive relays, which will then fit into the joypad circuit in place of the D-pad. If anyone wants to play around with the idea, the basic circuit is shown in Figure 2. Don't be too scared to experiment, the EJPs are quite robust ports, and it's highly unlikely that you'll permanently damage them with these sorts of projects. Power without the price Besides which, STes are available quite cheaply on the second-hand market, and they represent remarkable value for money, given their flexibility. If you learn even just a little C programming, you can use an STe to perform the sort of real-time data manipulation which would cost a fortune if purchased as a standalone solution. Let's suppose you wish to keep track of temperature changes in a greenhouse. You could buy a dedicated temperature sensor with a printer output and the ability to save the data to disk for several hundred pounds. Or you could hook a thermistor to an EJP, write a bit of code which doesn't even use GEM, and put it in the AUTO folder of a floppy so that you don't even need a monitor. Total cost: less than œ100, including the computer. If data logging and greenhouses seem a little far-fetched, how about the more down to earth example of a musician using MIDI. A dedicated patch change unit will set you back over forty pounds for very limited functionality. Use a joypad in an EJP, however, and you can have patch changes, panic buttons, volume controls or anything else you care to program. And MIDI programming on the ST is a breeze, so yet again you could write an auto-booting TOS program and forego the monitor. Then why not add a couple of foot pedals hooked into the analogue pins, and maybe a Team Tap so that you can include more digital inputs for additional foot switches. You could even write the code so that it copies the MIDI messages from the input to output, modifying them according to what's happening on the EJPs. There you go: real-time transposition, one-finger-chording, or any other MIDI effect. The point is that this series was always intended to give you ideas for you to take further. The hardware's cheap, there's more than enough power for the price, why not give it a go? If you need more help, or if you have any success stories to tell, you can always email me. My own experiments will be continuing for some time yet, so if you're not the adventurous kind, but you do want to build some tried-and-tested EJP projects, keep an eye on my EJP FAQ - then follow the Atari link. www.compsoc.man.ac.uk/~xav/index.php3 Email: xav@compsoc.man.ac.uk ** Images/captions ** ** analogue.gem ** Figure 1: Hooking up a variable resistor ** flipflop.gem ** Figure 2: Mouse to joystick circuit idea