DB9-Joystick

From IndividualComputers
Jump to: navigation, search

Contents


See also DB9-Mouse, DB9-Lightpen, DB9-Paddle

Pinout

Pin Chameleon Atari 800
Atari VCS
Atari 7800
(*1)
Atari ST
VIC-20
C-64
C64GS
(*2)
Amiga CD32
(*3)
Amstrad
CPC
MSX
X68000
Mastersystem
(*4)
Megadrive
(Genesis)
(*4)
Saturn
(*4)
Sinclair
(*6)
1 /Up /Up /Up /Up /Up /Up /Up /Up /Up /Up /Up Ground unused
2 /Down /Down /Down /Down /Down /Down /Down /Down /Down /Down /Down Down common
3 /Left /Left /Left /Left /Left /Left /Left /Left /Left /Left 1Y (-, /Left) Up unused
4 /Right /Right /Right /Right /Right /Right /Right /Right /Right /Right 2Y (-, /Right) VCC Button
5 /Button 3 Paddle B Button Right /Button 3 Button 3 (POTY) /Button 3 (POTX) Shift Load OUT /Button 3 VCC VCC (+5V) VCC (+5V) Select OUT 1 Up
6 /Button 1 /Button Button common /Button 1 /Button 1 /Button 1 /Fire, Clock OUT /Button 2 /Button 1 TL (/A) TL (/A, /B) Select OUT 2 Right
7 VCC (+5V) VCC (+5V) VCC (+5V) VCC (+5V) VCC (+5V) VCC (+5V) VCC (+5V) /Button 1 /Button 2 TH (unused) TH (Select OUT) Right Left
8 GND GND GND GND GND GND GND GND (Row 9) (*5) Strobe OUT GND GND Left common
9 /Button 2 Paddle A Button Left /Button 2 Button 2 (POTX) /Button 2 (POTY) Serial Data IN GND (Row 6) (*5) GND TR (/B) TR (/Start, /C) VCC Down

(*1) The Atari 7800 buttons require special wiring (Atari FAQ)

(*2) For the second button/right mouse button the POT X line is used (and for 3rd button/middle mouse button POTY), which - different to the other lines - must be pulled to VCC via the button.

(*3) The CD32 supports "game pad mode" and uses pin 5 to switch to it (it is pulled to active high by the CD32). Actual CD32 controllers have active components. Regular "atari" joysticks will work at the CD32, but CD32 controllers will not work at eg a C-64 (see here and here)

(*4) The "SEGA" controllers can not be converted into "Atari" Joysticks simply by rewiring them. Unlike regular "Atari sticks" they contain pull-up resistors for each signal line (which might interfere with scanning the keyboard on C64) and some controllers may contain active circuits and will not work without the VCC. The Megadrive controllers use an active circuit. (see here or here). The Saturn controllers also contain an active circuit and are wired up completely non standard.

(*5) The respective GND lines are pulled low to select the respective "row". Regular Joystick uses row 9.

(*6) Pinout refers to the "Interface Two" ("Sinclair" aka "+3")

The Apple-II uses analog joysticks and can not use the common digital joystick with the pinout shown above, see here.

Like Sega Saturn controllers, the ColecoVision and IntelliVision II controllers work entirely different. (see eg here and here)

The Sinclair-QL has completely different controller ports. (The US and German versions of the QL later made by Samsung both had standard 9 pin serial and joystick ports, meaning that any Atari standard joystick could then be used.)

2/3 Button modification

(thumbnail)
Schematic

Most traditional DB9 "Atari" Joysticks are wired for one button only, however some - such as the Competition Pro - have more than one button, so it is tempting to rewire them so the additional buttons can be used separately. This is supported by some classic Amiga and C64GS games (second button at the POTX line), and also supported by some Chameleon cores.

There have been two different ways to handle the additional buttons:

  • The classic C64GS two button joystick ("Cheetah Annihilator") uses the POTX line, which when the button is pressed is connected to VCC. For a third button, the same can be done with the POTY line. These two buttons can then be read from the paddle inputs: When the button is not pressed the POT line is floating, which equals a large resistance to VCC, and will read as $FF. When the button is pressed the POT line is connected to VCC, which equals no resistance to VCC, and will read as $00.
  • For use with the Amiga or the Chameleon docking station the above would not work, as their button inputs are low active (rather than "high active" as the POT lines are). So to be able to use the modified joystick with that, the respective lines must be pulled to GND rather than VCC.

Fortunately there is a switch contained in the Competition Pro Retro which is normally wired to disable the small switches. We can rewire this switch so we can toggle between pulling the POT lines to either GND for the docking station, or VCC for the C64. As a safety precaution, it is recommended to not connect the POT lines directly to VCC or GND, but to use a small resistor that acts as a current limiter in series. (Note that the classic joysticks usually do not have these)

After this modification, do NOT use the joystick on any other equipment than an Amiga, the chameleon docking station or a C-64 (or C64GS)! For this reason we recommend to somehow clearly mark it as modified (eg with a permanent marker).

Detailed instructions for modifying the Competition Pro Retro

  • First open the Joystick and find out if the required wires are available in the joystick cable (if not you will have to install a new one).
In the current (second and third) batch of the Competition Pro Retro this is the case and looks like this: (confirm this using a continuity tester / multimeter before proceeding, as it may change without notice)
Pin Signal Wire colour
9 POT X (second button) green
5 POT Y (third button) blue
7 VCC (+5V) grey
  • Pull out the small PCB that carries the switch, detach the small piece of plastic foam and desolder all wires from it.
  • Carefully pull out the mounting plate for the four directional micro switches
  • Disconnect the (green) wires that come from the small buttons from the micro switches at the normal fire buttons
  • Remove the (green) wires that come from the small buttons also from the small buttons
  • Connect the POTX (blue) and POTY (green) lines that come from the joystick cable to the small buttons where the (green) wires were
  • Get the switch PCB again, connect one end of the 270Ohm resistor to both of the two (orange) wires that come from the small buttons, and the other end of the resistor to the middle pin of the switch. (you may use a slightly larger resistor too, i used 330Ohm here because that was the closest i could find in my drawer :))
  • cut a small piece of electrical tape and wrap it around the resistor and the blank solder point to the cable
  • Connect the VCC line (grey) from the joystick cable to one side (eg left) and the leftover free (orange) cable (which is connected to GND) to the other (eg right) pin of the switch
  • Now check with a continuity tester that VCC at the switch has no shortcut with any other wires. Under no circumstances it should make contact to any other lines except the POT lines (when a button is pressed and the switch is in the respective position). Double check if you are not sure.
  • Attach the small piece of plastic foam to the back of the switch PCB, and reassemble the joystick in reverse order. Putting the back cover on can be a bit fiddly - very little force is needed - if it doesnt go back together easily, you may have to open the joystick again and relocate some cables slightly.

Games that support additional buttons

Many early home computers and game consoles came with the classic one button joystick, and supporting more than that was rare. The following list omits the later released systems where controllers with two or more buttons became standard. (like MSX, SEGA Mastersystem, etc)

C64

Only the C64GS had some games which officially supported a second joystick button, and since the C64GS came out very late in the C64's lifespan, it never became common

  • Chase HQ2 (C64GS Cartridge)
  • Double Dragon (Ocean)
  • Last Ninja Remix (C64GS Cartridge)
  • Myth (C64GS Cartridge)
  • Paradroid Redux
  • Robocop 2 (C64GS Cartridge)
  • Spacegun
  • Turrican II (Rainbow Arts)

Amiga

On the Amiga supporting two buttons became much more common (also due to the popular WHDLoad that allows patching games accordingly):

  • 1943 (WHDLoad)
  • ADoom
  • Agony (WHDLoad/original?)
  • Aladdin
  • Alien 3
  • Alien Breed 2
  • Alien Breed - Tower Assault
  • Apidya
  • Arabian Nights
  • Banshee
  • Battle Squadron (WHDLoad)
  • BC Kid
  • Black Viper
  • Brutal Sports Football
  • Bubba'n'Stick
  • Bubble and Squeak
  • Cool Spot
  • Dennis
  • Desert Strike (WHDLoad)
  • Dragonstone
  • Fifa International Soccer
  • Fightin' Spirit
  • Fire and Ice
  • Flashback
  • Football Glory
  • The Great Giana Sisters (jump only)
  • Hybris (WHDLoad)
  • Joe & Mac: Caveman Ninja
  • John Madden American Football
  • Leander
  • Lionheart
  • Lollypop
  • Mega Typhoon
  • Mercs
  • Mega Twins (WHDLoad)
  • Midnight Resistance (WHDLoad)
  • Mortal Kombat
  • Mortal Kombat 2
  • Mr Nuts
  • Nigel Mansell's World Championship
  • Pegasus (WHDLoad)
  • Powder
  • Project X
  • Puggsy
  • R-Type
  • R-Type 2
  • Rainbow Islands (WHDLoad)
  • Ruff'n'Tumble (WHDLoad)
  • Shadow Fighter (CD32)
  • Skeleton Krew
  • Snow Bros
  • Soccer Kid (?)
  • Street Fighter 2
  • Super Street Fighter 2
  • Tony & Friends In Kellogg's Land
  • Total Football
  • Turrican
  • Turrican II
  • Turrican 3
  • Virocop
  • Xtreme Racing
  • Yo! Joe!

Links

Personal tools