Jump to content
doubledown

Atari Joystick Controller with 2600 & 7800 2-Button Compatibility

Recommended Posts

So it seems like everybody and their mothers are making Atari 2600 and/or 7800 “arcade joystick” controllers these days.  And why not, they can greatly improve your game-play experience, and they’re beyond simple to wire for those attempting their first custom controller builds.  The ones I most often come across are either built with 1 button as a 2600 controller, or with 2 buttons…usually for 7800 compatibility (while still maintaining 2600 1-button compatibility).  But as 2600 fans are of course aware, several vintage games have now been hacked, and new homebrew games are being programmed…to make use of 2 “2600” buttons…which are wired very differently from their “7800” counterparts.  But what surprises me, and what I’ve not yet seen, is anybody building a custom joystick controller that offers both, 2600 and 7800, 2-button compatibility in one controller.  So I decided to take it upon myself to make this happen, "for the greater good":

 

exci9P.png

 

I originally built this controller about a year ago, as a 2-button, 7800-wired joystick controller…for use mainly with my 2600 & XEGS.  As I grew up with a 2600 in the early 80s, I decided to “theme” the controller with aesthetics inspired by the CX2600 console, and the CX-40 joystick…hence the wood grain CPO, the orange segmented ring surrounding the joystick, and the black-body w/ orange plunger concave push-buttons.  At the time I built it, I’ll admit, I wasn’t really aware of these new-fangled 2-button 2600 games, as I honestly don’t pay much attention to any of the new 2600 stuff.  I mostly concentrate on and around, the original 2600 games I grew up with, and the ColecoVision.  But then some months after I built this, I built my buddy and me, each, new dedicated 7800 controllers; and then I re-wired this one, for use with 2-button 2600 games.  But that got me thinking…why does it only have to work for the 2600 or the 7800?  Why not simply make it work both ways?  So I re-wired it once again, and added a side-mounted push-button switch with a mechanical indicating cap, that allows me to simply press the switch for 2600 2-button games…and press it again for 7800 2-button games:

 

ezrSuS.png

 

2YRcYP.png

 

As originally assembled, the controller was built into a Hori HSS-09 donor controller.  The donor was completely gutted of its original components, and it required minor modification to some of its internal structure, as well as machining the top steel plate for installation of the new components.  From there I chose a Seimitsu LS-32 joystick (which allows for 8-way square/round/octagon, 4-way clover, and 2-way horizontal/vertical gates), and 2 Ultimarc GoldLeaf push-buttons.  I installed new, stiffer than standard, Cherry micro-switches into the joystick to firm up its throw and feel, as well as significantly quiet down the audible “clicking.”  The new push-button switch on the controller's right side that “re-wires” the buttons, is a simple multi-pole switch that allows me to change all of the necessary lines in and out of the buttons, from one wiring scheme to another…all without the use of any magic, witchcraft, or powered components.  So there you have it…proof that both 2-button, 2600 & 7800 compatibility, can be achieved in 1 controller, with 1 set of buttons, with 1 controller cable, and no active electronics.  This may be a world's first.

 

W.F.S.T.Y.A.M.A.

  • Like 23

Share this post


Link to post
Share on other sites
On 11/11/2020 at 6:18 PM, Prizrak said:

That sir is amazing

Sent from my SM-N960U using Tapatalk
 

Thank you, 

9 hours ago, 7800Knight said:

That does look gorgeous!  The woodgrain finish on there is a nice touch and gives it a retro feel. 

...and thank you.  

 

The wood grain did come out really well...and I've used the same concept for a couple other controllers.  I had originally gotten some adhesive-backed wood grain vinyl for a controller I was working on, and after I used it for that one, I scanned a large 11 x 17 section of it, so that now I can simply print, laminate, and use it whenever I need/want to.  Technically to match the CX2600 more authentically, it probably should just be on the front face, but it looked so good on the full CPO that I used it that way instead.  One change I'm going to make, is the mechanical indicating button on the side.  The "normal" version of this cap is black when the button is un-pressed, then green when pressed.  That's the version that is stocked by the few vendors who carry them, but they do offer the indicating cap with different colors, including orange.  So I ordered one of those to replace the green one with, and I'll re-print the side artwork with an orange capped legend (versus the green one), once it arrives and I have time to change it out.

  • Like 2

Share this post


Link to post
Share on other sites
Just now, hizzy said:

I would love to see a wiring schematic :)

I'll bet a lot of people would.  When I get a chance I might be able to get one drawn up and posted.  Basically all you're doing is this:

 

Bring in your 9 conductor cable, and take wires 1/2/3/4 directly to the joystick contacts, and take wires 5/6/7/8/9 to the COMs of a DT switch, with at least 5 poles (the one I used has 6, as they only sell these in even-paired numbers 2, 4, 6, 8, and 10).  Take an additional ground wire directly from the COM of the switch...to the joystick switches...which completes the joystick.  Then wire each set of output terminals of the switch, for wires 5/6/7/8/9 as you would for either wiring scheme.  I used the N.C. set for 2600 wiring and the N.O. set for the 7800 wiring.  Then where any interference occurs, i.e. a wire to Button 1's contact coming from both the 2600 & 7800 sides, add diodes to keep them separated.  Attach the wires from the switch to the anode of the diode when it's a signal line, then combine the cathodes and connect them to the contacts of the button.  And reverse this with ground wires.  Its really very simple...which is kind of why I was so surprised that I couldn't find where anybody else had done this before.  

  • Like 2

Share this post


Link to post
Share on other sites
2 hours ago, doubledown said:

I'll bet a lot of people would.  When I get a chance I might be able to get one drawn up and posted.  Basically all you're doing is this:

 

Bring in your 9 conductor cable, and take wires 1/2/3/4 directly to the joystick contacts, and take wires 5/6/7/8/9 to the COMs of a DT switch, with at least 5 poles (the one I used has 6, as they only sell these in even-paired numbers 2, 4, 6, 8, and 10).  Take an additional ground wire directly from the COM of the switch...to the joystick switches...which completes the joystick.  Then wire each set of output terminals of the switch, for wires 5/6/7/8/9 as you would for either wiring scheme.  I used the N.C. set for 2600 wiring and the N.O. set for the 7800 wiring.  Then where any interference occurs, i.e. a wire to Button 1's contact coming from both the 2600 & 7800 sides, add diodes to keep them separated.  Attach the wires from the switch to the anode of the diode when it's a signal line, then combine the cathodes and connect them to the contacts of the button.  And reverse this with ground wires.  Its really very simple...which is kind of why I was so surprised that I couldn't find where anybody else had done this before.  

Brilliant! And beautiful work!

Share this post


Link to post
Share on other sites
2 hours ago, 0078265317 said:

nice as always.

Thank you...

1 hour ago, hizzy said:

Brilliant! And beautiful work!

...and thank you.  By the by, this same concept works for making other "hybrid" controllers.  I previously made these:

 

1ETOdR.png

 

...as Genesis (& Atari 2600 2-button) / ColecoVision (& Atari 2600 1-button) controllers.  Originally designed and built for the amazing port of Gauntlet for the Sega Genesis, and built with "arcade-accurate" controls...the addition of the push-button switch, added joystick & 2-button compatibility with the ColecoVision...for it's port of Gauntlet (which only requires these controls...no keypad necessary).  

 

I'm currently contemplating making a new hybrid controller that would have 3 switches for compatibility with Atari 2600 2-button / Atari 7800 2-button / ColecoVision 2-button (with keypad):

 

Switch 1 - will toggle between Coleco & Atari

 

Switch 2 - will toggle between Atari 2600 2-button, and Atari 7800 2-button (applicable for when Switch 1 is set to Atari)

 

Switch 3 - will flip/flop the buttons from left=left / right=right to left=right / right=left for games where I'd like to flip/flop the button functions, such as the ColecoVision port of Cosmic Avenger, which Coleco completely botched from the arcade layout (left Fire / right Bomb) to the ColecoVision port (left Bomb / right Fire).  

 

Also since all of these consoles use the same DE-9 connector, only one installed cable is required, and only the push of 1 or 2 switches is required to make it 100% compatible with whichever of these systems I'd want to use it with.  I would probably design a custom PCB if I decide to make this one.  They're pretty inexpensive to have made, and it would save hours of time with the wiring, especially since the multi-pole switches I'm using, have both solder lugs and PCB pins.  Just have to wait and see if I decide to make this hybrid one or not.  

  • Like 4

Share this post


Link to post
Share on other sites
On 11/13/2020 at 8:46 AM, doubledown said:

I'll bet a lot of people would.  When I get a chance I might be able to get one drawn up and posted.  Basically all you're doing is this:

 

Bring in your 9 conductor cable, and take wires 1/2/3/4 directly to the joystick contacts, and take wires 5/6/7/8/9 to the COMs of a DT switch, with at least 5 poles (the one I used has 6, as they only sell these in even-paired numbers 2, 4, 6, 8, and 10).  Take an additional ground wire directly from the COM of the switch...to the joystick switches...which completes the joystick.  Then wire each set of output terminals of the switch, for wires 5/6/7/8/9 as you would for either wiring scheme.  I used the N.C. set for 2600 wiring and the N.O. set for the 7800 wiring.  Then where any interference occurs, i.e. a wire to Button 1's contact coming from both the 2600 & 7800 sides, add diodes to keep them separated.  Attach the wires from the switch to the anode of the diode when it's a signal line, then combine the cathodes and connect them to the contacts of the button.  And reverse this with ground wires.  Its really very simple...which is kind of why I was so surprised that I couldn't find where anybody else had done this before.  

 

Very nice!

 

I have been planning something similar, and was also surprised that nobody else had done it, but haven't gotten around to it yet. My idea is to use a use a DPDT switch, one pole selecting whether button 1 goes to pin 5 or 6, the other pole selecting the active level of the buttons, and an inversion circuit (off of the active-level signal) to pull pins 5 and 9 inactive. More complicated than yours but doesn't need that 6-pole switch.

Share this post


Link to post
Share on other sites

I am sure there are a vast number of ways to achieve this result.  As I specialize in controllers for the ColecoVision, and the ColecoVision console provides no power at the controller ports (like the Atari's do), I'm always looking for passive solutions whenever possible.  Since I had already done something similar, and I have found a 10/8/6/4/2 Pole - DT switch that I really like (mostly due to the color changing, mechanical indicating cap), I just decided to keep it simple and re-use the idea.  Plus, less chance for failure without using any powered components... at least, in my mind anyways.

  • Like 2

Share this post


Link to post
Share on other sites

I am hoping you folks that create the amazing controllers can throw us untalented folks a thread illustrating how you all create those amazing graphical decks (what you make them out of , which programs you use to create them, how you get them so shiny , etc)

 

As usual amazing work people!  I love looking at custom controller works!

  • Like 1

Share this post


Link to post
Share on other sites

@doubledown What is the 2600/7800 switch for? The two button joysticks / pads that came with the 7800 worked perfectly on both 2600 and 7800 systems, so replicating that wiring should eliminate the need for the switch, or is there something I'm missing?

Share this post


Link to post
Share on other sites
4 minutes ago, SvOlli said:

@doubledown What is the 2600/7800 switch for? The two button joysticks / pads that came with the 7800 worked perfectly on both 2600 and 7800 systems, so replicating that wiring should eliminate the need for the switch, or is there something I'm missing?

There are 2600 games that use two buttons, mainly homebrews and hacks. 

Share this post


Link to post
Share on other sites

And they use a different wiring for this? Why? The trick with connecting the buttons also to the paddles has to work on a 2600 as well.

Share this post


Link to post
Share on other sites

Would you have prefered a stick on the right and buttons on the left? When I play Atari, I always want my right hand on the joystick.

Share this post


Link to post
Share on other sites
1 hour ago, SvOlli said:

And they use a different wiring for this? Why? The trick with connecting the buttons also to the paddles has to work on a 2600 as well.

The 2600 can't read both buttons on a 7800 controller. The controller was designed to fall-back to dual single-button operation when plugged into a 2600, or when the 7800 console is in 2600 mode.

 

The 2600 two-button hacks and homebrew are based on genesis controllers, where two buttons can be read in 2600 mode.

 

Why? I guess Atari thought that making the gamer solely use one of the buttons in 2600 mode was confusing. This leaves the genesis pad as the only unmodified/un-adapted controller with two button support on the 2600.

  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites
2 minutes ago, RevEng said:

The 2600 can't read both buttons on a 7800 controller. The controller was designed to fall-back to dual single-button operation when plugged into a 2600, or when the 7800 console is in 2600 mode.

 

The 2600 two-button hacks and homebrew are based on on genesis controllers, where two buttons can be read in 2600 mode.

 

Why? I guess Atari thought that making the gamer solely use one of the buttons in 2600 mode was confusing. This left the genesis pad as the only unmodified/un-adapted controller with two button support on the 2600.

And booster grip for Omega Race, which uses the other paddle pot. In theory you could have three fire buttons on the 2600 and make 3-base Missile Command if you had an Atari/Amiga mouse or trackball with the L/M/R three buttons which I think some were. Never happened AFAIK. 

  • Like 2

Share this post


Link to post
Share on other sites
9 minutes ago, Swami said:

And booster grip for Omega Race, which uses the other paddle pot. In theory you could have three fire buttons on the 2600 and make 3-base Missile Command if you had an Atari/Amiga mouse or trackball with the L/M/R three buttons which I think some were. Never happened AFAIK. 

Technically an add-on or adapter, but fair enough. I always forget about booster grip. 👍

 

 

Share this post


Link to post
Share on other sites
2 hours ago, SvOlli said:

And they use a different wiring for this? Why? The trick with connecting the buttons also to the paddles has to work on a 2600 as well.

 

34 minutes ago, RevEng said:

Technically an add-on or adapter, but fair enough. I always forget about booster grip. 👍

 

 

If I’m not mistaken, the ports of the 2600 and 7800 are the same, it is the  controllers that are different: 7800 controller provides two unique fire buttons for 7800 (and ColecoVision, but not simultaneous) and dual fire 1 buttons for 2600 and 7800 with 2600 games, seeing as only omega race used two buttons at the time. 7800 games are programmed to use pins 5 and 9 and 2600 games are programmed to use pin 6 and possibly different voltage thresholds. Never tried it, but would omega race fire both buttons on a 7800 with a 7800 controller?

Share this post


Link to post
Share on other sites
32 minutes ago, Swami said:

If I’m not mistaken, the ports of the 2600 and 7800 are the same, it is the  controllers that are different: 7800 controller provides two unique fire buttons for 7800 (and ColecoVision, but not simultaneous) and dual fire 1 buttons for 2600, seeing as only omega race used two buttons at the time. 

It's the same physical port, but there's a circuit within the 7800 that effectively changes how those 7800 controller fire buttons are connected, via a couple RIOT port B bits.  Loosely speaking, half of the 7800 controller two button functionality is in the controllers, and half is in the console. So both it's the console and controllers that are different.

 

Not sure about omega race. Genesis controllers muck up with the 7800 two-button scheme, and omega race just has one button inverted from two-button genesis, so I wouldn't hold out a lot of hope.

 

[edit] also, technically if a game is in 7800 2-button mode, and it reads the regular 1-button fire button as being pressed, the game is supposed to disable 2-button mode. Otherwise it's allowing a short in the previously mentioned 2-button console circuit.

Share this post


Link to post
Share on other sites
4 hours ago, SvOlli said:

@doubledown What is the 2600/7800 switch for? The two button joysticks / pads that came with the 7800 worked perfectly on both 2600 and 7800 systems, so replicating that wiring should eliminate the need for the switch, or is there something I'm missing?

 

I think it's been mostly addressed, but here it is as I understand it, and maybe more plainly:  The 2600 can only read 1 "button".  The 7800 can read 2 "buttons".  When using a 7800 controller on a 2600, both buttons do the same thing...the 1 2600 button.  Old 2600 games have been hacked (and new homebrew games have been programmed) to allow for the reading of a 2nd button, using the paddle lines, which is radically different from how the 7800 reads 2 buttons.  So if you wire a controller for 2600 2-button compatibility, it won't work right on 7800 games that need 2 buttons, and the 7800's 2 buttons, don't work correctlyfor hacks/homebrews that can use the 2600 2-button method.  So the option was, wire your controller for 7800 2-button compatibility or 2600 2-button compatibility....my wiring scheme allows for both.  I'm sure this is not a complete list, but these are some/most of the 2600 games that can use 2 2600 buttons that I know of:

 

Asteroids

Bump 'n' Jump

Defender

Defender Arcade

Dfender

Double Dragon

Enduro

Ghostbusters

H.E.R.O.

Kangaroo

Kung Fu Master

Last Starfighter

Mission Survive

Montezuma's Revenge

Moon Patrol

Moon Patrol Arcade

Mouser Trap

Omega Race

Plaque Attack

Pole Position

Princess Rescue

Quist for Quintana Roo

Radar Lock

Sea Hawk

Solaris

Space Rocks

Spy Hunter

Star Voyager

Starmaster

Star Trek

Super Cobra

Tomarc The Barbarian

Yar's Revenge

 

3 hours ago, hizzy said:

Would you have prefered a stick on the right and buttons on the left? When I play Atari, I always want my right hand on the joystick.

 

I grew up playing Galaga (cocktail table) at a Pizza Hut in my youth, and it was only playable as joystick left / fire button right...so that's what I played the most, and to this day, it's my preferred setup.  Conversely, I also grew up with a 2600 and CX-40 and WICO Command Control joysticks, so I'm also very adapt using my right hand for the joystick, and my left hand to hold the controller base.  So for me, if it's a lap or table top controller, I prefer left joystick / right buttons.  If it's a controller I hold in my hand (CX-40, WICO), then I always hold it in my left hand, manipulate the button with my left thumb, and operate the stick with my right.  But for those who prefer the "wrong orientation", I have made a few right joystick / left button configuration controllers:

 

This Lady Bug controller was specifically made for the hand preference of it's new owner:

 

5c5Zj0.png

 

And this Mouse Trap controller was made to replicate it's arcade counterpart:

 

123cO8.png

 

2 hours ago, Battlefish said:

Very cool! There's got to be a way to shrink this mechanism down to a gamepad form factor.

I'm sure its entirely possible...but I'll let someone else handle that...as I have zero interest in such a thing.  I like to play my vintage joystick games with a joystick...not a gamepad...just my personal preference. 

  • Like 2

Share this post


Link to post
Share on other sites

I finally got around to finishing this one, by replacing the Black/Green indicating cap with a Black/Orange version (along with replacing the legend artwork) so that it better fits with the aesthetics of the controller:

 

e1LtsO.png

 

And to make my life easier with regards to the wiring, I decided to design a custom PCB for this feature/option, for any future use I may have for it:

 

m2A9y2.png

 

I'll probably retrofit my 7800 Commando arcade controller with this feature as well, since I've got a couple of PCBs left over from the prototype order.  

  • Like 3

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...