|*| MIGL'S MOUSE MODIFIER |*|
|*| by Michael Hadley |*|
(Reprinted from the Puget Sound Atari News, July 1990)
Let me first admit that I would rather figure out how to do some things
myself than pay someone else to do them for me. Maybe it comes from
being brought up in a technical (read Air Force brat) environment. I'll
leave proving that conjecture to the social scientists and
psychologists; I know I like doing technical stuff for myself. I did my
own memory upgrade (with a minor checkout from Bud at Xanth) and
installed PC Ditto II (how many of them worked the first time???) on my
ST. I also built my own Hard Drive system and added two floppies
(switchable and the topic for a later article) so I have been inside my
1040 ST frequently.
This being the history of the moment, I bring to the fore a way to build
a sort of Mouse Master. I say "sort of" not to say it is funky or semi-
functional, but rather that the real "Mouse Master" is a copyrighted
product from Practical Solutions. Since I have never been inside a
"Mouse Master" I can only say from conjecture that what I made is "Mouse
Master"-like in its function. It allows you to switch from the mouse to
a joystick without constantly unplugging either one. It also keeps you
from having to lift up your keyboard to replug anything. That is one of
the few features of the ST that I dislike, but I understand the mouse
and joystick port placement from the "functionality" viewpoint.
Atari has the keyboard microprocessor right there in my ST and probably
thought it efficient to place the ports close to the processor. Be that
as it may, this Mouse Modifier project fixes that port placement
"feature" and allows switching between mouse and joystick at the same
When I decided to fix this "feature" I had fought with the ports for a
couple years and finally added "the last straw" to the pile. My current
Mouse Modifier has been installed for over two years and seven moves (I
got tired of moving, too!) and has never had or caused any problems. I
like it a lot. It hides behind my ST and is easily switched from mouse
to joystick. If I were a true mouse freak, I would probably have two
different joystick ports on the joystick side to allow me to use either
a control stick type (competition style) or a standard one for my three
year old nephew. It is possible, using the simple trick I use here,
with two switches for four ports. But enough of the B.S. and on with
In case you did not know, the Atari joystick is a group of four switches
each set 90 degrees apart in a single plane. To make some signal when
these switches close, there is also a 5 volt line tied to one side of
each of these switches. When you move the joystick in some direction,
it closes one or two of these switches, sending the 5 volt signal
through the switch and along any line to the Joystick port.
For example, moving the stick Up and Right closes the Up and Right
switches, sending a signal along those two conductors to the Joystick
port. These signals are read by the microprocessor and the appropriate
commands are passed to the ST's Motorola 68000 CPU, if the programmer
has done her stuff right.
In the case of the mouse, the signals are supplied by a different
mechanism. The wheels against which the mouse ball rolls are each
connected to a larger wheel and aligned at 90 degrees to each other.
The larger wheels have a series of slots in them that interrupt the
light beam from an LED (Light Emitting Diode) which is sensed by a photo
diode. This pulses the beam, allowing the mouse to tell that it is
being moved. The direction of movement is determined by the the timing
of the pulses - as the two sensors are not evenly spaced along the edge
of the wheel. This makes it possible to determine which direction the
mouse is moving because the timing between the pulses varies from one
direction to another.
So what is the trick, you ask? When is he going to explain the Mouse
The trick is very simple. To switch between the mouse and the joystick
in the same port, all you have to do is switch both the 5 volt line and
the ground at the same time. Turn off the power to the mouse and apply
power to the joystick (or the other way around) and you have the fix.
Since the 5 volt line is pin 7 and the ground is pin 8, you need a DPDT
(read Double Pole, Double Throw) switch to switch between the new ports.
I'll describe it in more detail, though, to clarify the project. A
parts list follows at the end of the article. All part numbers in the
text are for JDR parts because they are shorter. Male parts have the
pins showing, though they have a skirt that fits around the female part,
which has holes into which the pins fit. Vaguely confusing, that!
Note that the procedures are a bit different, depending on whether you
use solder-on or clamp-on connectors. I designate the steps with a
label "Solder:" or "Clamp:" if the steps are distinctly different, and
"Both:" if they are identical. If I seem to ramble, I am being
redundant. Not everyone conceives of something in the same way. I have
tried to describe the project in a way that can be easily recognized.
The drawing is admittedly quasi-schematic.
Both: I used a 33 inch piece of 25 lead ribbon cable for two reasons.
One was that I had some in stock and the other was that with the two
plugs attached to the end, the spacing for the joystick ports under the
keyboard was just right. The first step is to split the cable at one
end, making a 25 lead ribbon cable into two 9 lead and one 7 lead stub.
Count nine leads in from each side and split the cable (between the
ninth and tenth lead) leaving a seven strand flap in the middle. One or
two inches is plenty of flap. Trim if you want to, though they are
Clamp: Now squeeze a one of the nine pin female IBD09S "plugs" onto
each nine lead ribbon. Make sure that they are aligned the same; when
you look at them from the front, both have the narrow part up (or down)
so the ribbon will lay flat UNDER your keyboard.
Solder: Before soldering the connections, look closely at the plugs on
the bottom of the keyboard. Note their orientation. Remember that the
cable will lie flat underneath the machine. The object is to have the
ribbon cable that leaves the plugs leave at a right angle and go under
the machine. Mark the outer lead on each plug. In one case the outer
pin will be pin 1; in the other it will be pin 5. Make that your first
solder joint on the respective plug. For example, if the plug to port
P0 is on the right, solder the outside lead to pin 1 on the plug. The
inner-most lead of the 9 lead ribbon will be soldered to pin 5 on the
plug. The joystick plug would be just the opposite, with the outer
(other side of the cable, remember) lead soldered to pin 5 and the inner
one soldered to pin 1. Make sure that the plugs are both oriented the
same way before soldering any more leads in place. Check that the plugs
leads are leaving the solder joints turning away from the bottom of the
Now split the leads and solder them alternately to the bottom then top
posts; the order from the above Mouse port example would be to start at
pin 1 and solder the leads inward in the order 6, 2, 7, 3, 8, 4, 9, 5
Both: Split back the other end of the ribbon cable in the same way, but
split it back about eight inches on the Mouse side of the cable. Clip
off the excess on the Joystick side, so the Joystick side is 8 inches
shorter. Now comes the "make sure" step. Plug a male connector into
each female already attached to the cable. This is the simplest way to
assure correct cable connections.
Clamp: Make a loop with the cable, making sure it does not twist, and
mark the respective positions of the male plugs. Clamp the Joystick
side male first. Now slide a male onto the longer Mouse side, even with
the Joystick connector. Make sure the connector is oriented like the
in-place connector. Clamp it into place. The tail extends about eight
inches beyond this connector. Clamp the other male onto the end of the
tail, making sure the orientation is the same as first Mouse connector.
Clamp it in place.
Now carefully split the ribbon Mouse side ribbon cable at the first NEW
Mouse port. This must happen on the long side, between the male and
female, not the two males. Split the fourth and sixth leads (from the
outside) about an inch back from the connector. Clip the leads close to
the edge of the connector. This will isolate pins 7 and 8 from the main
cable. You can also split the same leads on the ribbon between the two
males, but do not clip them at this point. Leave about a half inch of
ribbon unsplit close to each connector. Strip these two leads and
solder a four to six inch piece of 26 or 28 gauge wire to each lead.
Strip the unsoldered end of each lead, then fold these leads back along
the ribbon cable.
Solder: Strip the leads for soldering. Split the Mouse side ribbon,
separating the fourth and sixth leads (from the outside) about eight
inches back. Fold these two leads back along the ribbon and tape them
for now. Solder the male connectors on the ends of the cables now
stripped. Leave them plugged into the females while you solder. Solder
the cables onto the connectors as I described above, and remember to
skip pins 7 and 8 as you solder across the connector. Now carefully
strip the cable at the point where you are mounting the inner Mouse
port, at about the same position on the cable as the Joystick connector.
If you strip these carefully, you will not break the ribbon leads and
can simply bend them and solder them into place without handling two
separate leads for each pin. Remember to skip leads 7 and 8 on this
connector as well.
Now get some scraps of wire, about 26 or 28 gauge, and solder an eight
inch piece between the respective pins 7 and 8 of the male connectors;
all the pins should now be connected and you should have two leads
folded and taped back onto the ribbon cable.
Both: efore you go further, plug the cables into the Mouse/Joystick
ports under the keyboard. Now run the cable under the machine and back
to the project box. Mark the location where the Mouse port (P0) edge of
the cable intersects the edge of the box. (Note that the box I
specified has a metal lid. I simply screwed the lid down gently onto
the cable, after making a shallow notch in the box side where the cable
crosses it, clamping it in place. The cable stays flat.) This will
show the male jack placement. Mark the position for the holes in the
Start by cutting holes for the male plugs into the project box. I
stacked the two Port P0 (a & b) ports on the right side, facing the box;
the first just below the top, the other spaced a quarter-inch below the
bottom edge of the top connector. Make sure you have clearance between
them, mostly for ease in assembly.
You can now mount them after you drill the mounting hardware holes.
Checking carefully and proceeding slowly will yield you a nicer looking
Now that you have the jacks mounted in the box, drill a hole in the top
for the DPDT switch. Make sure it is not in a direct line with the
point where the ribbon cable enters the box, but not too far away, as
you will have only about four inches of leads for the connections to the
switch. Go ahead and mount the switch in its hole now, so that you can
easily support the stuff as you are soldering. From here on, the
project requires soldering, so I make no further distinctions between
Take the leads that you taped back along the ribbon cable and solder
each to one of the middle terminals on the switch. These two are the
source of the 5 volt and ground for both the Mouse and Joystick. Pick
one pair of leads from one of the male connectors and solder them to one
end of the switch. Make sure you solder the lead to the proper side of
the switch; check with an ohmeter. Pin 7 on the male must connect to
pin 7 of the female. If you have any doubts, check again. Consult the
diagram. You should be able to read continuity from the male to the
female for each lead. Check them ALL at this point. Now flip the
switch and check again. Pins 7 and 8 should be open. Solder the
remaining wires from the other male connector and perform the same
checks. Make sure that you have no shorts between any leads on the
cable. Each lead should connect to only one pin on the connector.
If you have checked all connections and are sure it will be okay, plug
the jacks in to the Mouse and Joystick ports on the ST. Now plug the
mouse into one P0 port and the Joystick into the other P0 port. Boot up
the computer. Below is a checklist for "debugging" the Mouse Modifier:
Check to see if the Mouse works:
___Yes, it works. Mark the current switch position as the Mouse
position. Try a Joystick game. Remember to switch to the Joystick
position. Go back to the top and replace Joystick for each mention
___No, it does not work. Check the cursor by holding down the Alternate
key and using the Arrow keys.
___The Pointer moves now. Flip the switch and try the mouse. Go back
to the top of the checklist.
___The Pointer does not move. WORST CASE! Turn off the machine and
double check all connections. Go back to the top.
Now assemble the box, carefully tucking in all the leads. Make sure the
respective Mouse and Joystick positions are marked at the switch. This
should now eliminate all Mouse/Joystick replugging and the associated
Reach your left arm out in front of yourself. Move your arm upward in
an arc until it is above your shoulder. Bend your arm at the elbow and
reach behind you until you can pat yourself on the back.
Congratulations! You have built a successful Mouse Modifier!
Below is the table of parts needed to build the Mouse Modifier. I have
shown at least one source for many parts and you might find them
elsewhere as well. I could not find the 9 pin Mini D ribbon connectors
at Radio Shack, so try some place like Radar Electronics in Seattle or
a specialized electronic outlets for them. The Rad Shak part listed
here is a solder type connector. JDR Micro is a big mail order house in
San Jose; they have most anything you might want but ask for a minimum
$10.00 order. Their order phone is 800-538-5000.
Source Part Num. Description Quan. Cost ea.
Radio Shack 275-666 DPDT switch 2 $ 1.59
JDR Micro DP/DT DPDT switch 2 $ 1.50
JDR Micro IDB09S 9 pin Sub D
Ribbon Female 2 $ 1.45
Radio Shack 276-1428 9 pin Sub D
Solder Female 2 $ 1.19
JDR Micro IDB09P 9 pin Sub D
Ribbon Male 3 $ 1.39
Radio Shack 276-1427 9 pin Sub D
Solder Male 3 $ .99
JDR Micro RC25 25 pin Ribbon
Cable (grey) 3 ft $ .38
Radio Shack 270-233 Box for project 1 $ 2.19
Nuts and bolts to hold things together .........$ .??
Pieces of 26 or 28 guage wire: 2 @ 8" .........$ .??