Apple-ize
that PC Stick
for
better play with A2 Emulators (revised:
December 1 2002)
.
by Rubywand
As most Apple II
emulator users know, there are a number of arcade style
games that just do not work like they
should running under AppleWin, Oasis,
and other popular PC programs. For instance,
you slam the stick down to
dodge a worm in Serpentine and keep going
straight-- very frustrating!
The problem is in
the routine which reads your joysick. It faithfully
emulates an Apple II; so, it treats the
joystick input as though it comes from
an Apple II joystick. Unfortunately for
you (when you want to dodge that
worm in Serpentine), the stick is
probably a standard PC type which can not
output the 150k Ohms required for recognition
of "Down" or "Right"
movement in quite a few Apple II games.
Changing the in-ROM
monitor routine which reads the joystick X and Y
inputs will help in a few cases. However,
it will have no effect upon the
operation of games which do not use the
monitor routine.
You could track
down and modify the 'stick read and/or 'stick interpret
routine in each problem game; but, that
would be a very time consuming
project.
Software Apple-izing
One good workaround
suggested by Delfs is to go to your PC Control
Panel and select "Gaming Options" (or whatever
it may be called on your
PC). For your joysticks, click on
"Properties" and pick "Settings" to
recalibrate. (Again, some of this may vary
a bit depending upon the
particular PC.)
Specifically, the
trick is to under-calibrate. So, when, told to move the
stick in a circle, do not go out as far
as you can. Instead, move it in a small
circle (2 or 3 circles is enough). Now,
when you do the "Test", you should
be able to reach the sides of the box without
going more than about half
way out with the stick in any direction.
The final step is
to check and adjust your stick using an Apple II
joystick adjustment utility running on your
Apple II emulator. The
Joystick Check program included on the TnilUtil.dsk
disk image is a good
choice.
Boot TnilUtil.dsk
on your emulator. Using the joystick's adjustments,
set centered Horizontal and Vertical values
to about 128 and check to
make sure both ranges go from 0 through
255. (If you can't get the full
range, quit the emu, go back to the PC Control
Panel, and recalibrate using
a smaller circle.)
About the only drawbacks
of this approach are 1- getting a good
small-circle calibration can be tricky with
some sticks; and 2- unless you
recalibrate, your stick will have a pretty
small active range for PC games.
(That is, it will reach extreme values with
a relatively small movement in
any direction.)
Hardware Apple-izing
A fairly easy fix
is to modifiy your PC stick so that it can look more
like an Apple II joystick. The diagram below
shows how.
What's going on
here is that capacitors are being used to increase the
RC time constant to simulate a higher R
value. When the X or Y pot outputs
zero (or nearly zero) R, you will still
get "0"; but, higher R's will, in effect,
be increased.
Each capacitor is
connected to the joysick tab connected to a non-ground
lead-- i.e. the tab with a wire going to
pin 3 or pin 6. Usually, this will be the
center tab of the pot. Another clue is that
ground leads are usually black
and a non-ground lead will typically be
some other color.
A value of 0.01
uF seems to be about right for getting the max output
possible for full-down and full-right stick
positions. Check the output
before closing up the case by running a
joystick adjustment program, like
Joystick
Check, on your Apple II emulator.
Running the adjustment
program, you should be able to set the stick-
centered value at about 128 for Horizontal
and Vertical and get an output
value of 255 for max down and max right
positions. If you do not,
try a slightly higher value capacitor (e.g.
0.15 uF or 0.02 uF).
A DPST switch (double-pole,
single-throw switch) is shown because you
may want to switch OFF the 'Apple-izing'
when you play PC games. (This
will improve the range of active control
for the PC games.) The switch
should be a small toggle or locking pushbutton
type which will mount via a
small hole in the joystick case.
Note: Whenever doing any PC Control Panel
joystick calibrations, set the
switch OFF, to the non-Apple II position.
Set the switch ON, to the Apple II
position, when checking and fine-tuning
on an Apple II emulator and for
playing Apple II games on the emulator.
Hardware Apple-izing
is more bother up-front. The advantage is that
changing between Apple II and PC modes requires
only flipping a switch and
adjusting centering. You do not have to
mess with recalibration.
Whichever approach
you choose, the acid test is a session of Serpentine,
Frogger, etc. on your emulator. As you'll
discover, games like these are a lot
more fun when you can move in all four directions!