8-button joystick for Neo Geo

Started by MKL, July 05, 2004, 08:50:21 PM

Previous topic - Next topic

MKL

I was asked to adapt an 8-button joystick for use among other things with the Neo Geo home system. However, I'm reluctant to do it for the following reason: an 8-button joystick uses all 15 pins of a DB15 cable: 4 directions, 8 action buttons, select, start, ground. This means that once the stick is plugged into a NG joy port, one of the buttons will be connected to the 5V pin and since all buttons are grounded, pressing that button will make a short between 5v and ground on the system itself which should be avoided.

martianviking

#1
You could always just add a "safety" switch on the controller that would disable the button that is on pin 8.  "Neo Geo mode" would be when the button is disabled.  If you set the switch to "Neo Geo," it would work fine with a Neo Geo, and then if you ever want to plug it back into the system you had it on first, you could just flick the switch back to "8-Button" and you'd be fine.

Check out the "Super" Neo Geo Controller Pinout for some good suggestions on how to lay out the buttons for 8-button controllers using the Neo Geo pinout.  (EDIT: Bear in mind that early planning for this and similar button layout circuits showed +5v on the "common" pin rather than on "pin 8," so you should plan your wiring accordingly.)

Martin

Once I accidently shorted 5V and Ground together on My Sega Saturn, there was a puff of smoke.
So I switched it off, fixed the problem, and was relieved to see that it still worked B)

The smoke was just from the insulation on one of the wires... Im lucky I turned it off when I did as the scortching was almost up to the power supply! :o  
[span style=\'font-size:14pt;line-height:100%\']barenakedladies[/font][/span]

MKL

My point is precisely that the "super neo geo controller pinout" is potentially harmful for the Neo Geo itself. Since all the pins of the DB15 port are wired to a switch it doesn't matter where +5v is: it's there, period. And if the button that has ground and +5v wired to its microswitch is (accidentally) pressed when the stick is plugged into the Neo Geo it will cause a short that could damage the machine. It's like soldering together the vcc and gnd legs of an IC...

Martianviking's idea of a "safety" switch is not viable because the people I'm building this for will no doubt forget about switching it sooner or later. Guess who they're gonna put the blame on when something bad happens to their beloved Neo...

martianviking

#4
Ah, I see what you mean.  You can't always trust the user to do things right (even when the user is yourself).

Maybe you could make a circuit that would disconnect pin 8 if more than a small amount of current tried to flow through it.  This would act as a temporary low-current breaker that automatically "breaks," then resets itself whenever the user presses, then lets go of the button connected to pin 8.

But, if the Neo Geo system is outputting +5v on that pin, isn't the system expecting that current to be returned sometimes?  Could you perhaps put some sort of "resistor" circuit on the line to be sure that it never gets completely shorted?  What really happens to an AES or MVS when pin 8 is shorted to ground, and how much current can you really pass from pin 8 to ground before any damage occurs?  I admit, I'm probably completely missing something here.

NFG

Dammit, if no one tells me these pages are dangerously incorrect I'll never notice it and fix it.  =/

Page updated.

Darklegion

QuoteOnce I accidently shorted 5V and Ground together on My Sega Saturn, there was a puff of smoke.
So I switched it off, fixed the problem, and was relieved to see that it still worked B)

The smoke was just from the insulation on one of the wires... Im lucky I turned it off when I did as the scortching was almost up to the power supply! :o
I did the same thing on my somewhat expensive pc,from wiring up a controller adapter a long time back.I was using  very thin wires and the tape that I was using must of come loose......scared the hell out of me when I smelled smoke and saw it coming out the back of my PC! I rewired it properly with thick wires and quality tape and no issues since :)

Oh and nothing to add on the topic,never had a neo-geo....too expensive back in the day,probably still are too.

martianviking

#7
Another possible (but still risky and inelegant) solution would be to use the outside of the connector to carry the signal for the 8th button (as mentioned in this thread).  Neo Geo AES and CD systems should not be damaged by this, since all that button would do is short ground to ground (although it might be prudent to verify that there is no "hot" connection on the outside of the connector on an AES/CD machine).

Your only issue should be if, when using the controller on a system that was trying to use that 8th button, something conductive touched the outside of the connector.  If it got shorted to the system ground, it should be as if you pressed the 8th button when you didn't mean to.  If some other signal came into it, it might be more dangerous.

One nice detail is that only PlayStation, Xbox, N64, and Saturn systems should actually be affected by this.  The Neo Geo AES/MVS/CD, SNES, GameCube, Genesis, Dreamcast, TurboGrafx/PCE/Duo, and SuperGun setups all should not need that 8th button.  So, if you wired the outside of the connector to ground inside of a those machines/converters, you could still use this same controller with it (since all the button wired to that connection would be doing is shorting ground to ground).  This would mean that your clients could safely use your controller on regular Neo systems, SuperGuns, and on any other console that you build an appropriate adapter/encoder for.  There would be zero danger except on PlayStation, Xbox, N64, and Saturn systems (and hopefully even then the danger would be minimal).

Does that sound reasonable?  Can you think of another solution?

(SOMEWHAT MASSIVE EDIT)

martianviking

#8
Another possible (and safer) solution:

Just make your controller end in a DB-25 connector.  This will give more than enough pins, even if you wire multiple, discrete "common" lines (as suggested by JHendrix for strict compatibility with Sony DualShock 2 controller hack converters).  It sounds like DB-25 is what JHendrix uses (look at the "costs" post a few posts down in that thread).

Using a DB-25 on the stick itself would mean that you would also need to build a DB-25 to DB-15 converter for use with Neo Geo systems, but this converter would be a simple direct-connection converter with no messy encoders or components inside, and you would be completely safe from the "+5v on pin 8" and "using the outside connector as a signal line" issues.

When you build controller hack converters to use the stick on other consoles, you would just use a DB-25 connector on the converter housing.  And, if you use official Sony brand DualShock 2 controllers to make a pair of converters (warning: it would seem that this is no small feat), then all official "PlayStation to XXXX" controller converters should work to convert the sticks to other consoles.  (Apparently PlayStation-to-Xbox controllers don't like to function with digital-only and some 3rd party PlayStation controllers.)


MKL

#9
QuoteAnother possible (but still risky and inelegant) solution would be to use the outside of the connector to carry the signal for the 8th button (as mentioned in this thread).  Neo Geo AES and CD systems should not be damaged by this
This would never work as you would need a cable like this, with the metal frame around the plug:

http://www.stsi.com/Merchant3/graphics/00000001/22114mf.jpg

Well, such a plug would never fit the deeper Neo Geo ports, thus making the stick totally unusable on that system...

The only solution is to add an extension cord where pin 8 (+5v) is left unconnected. Basically what you suggests in your last post, only it doesn't necessarily have to be a DB25-to-DB15 extension, it may well be DB15-to-DB15 (with the stick's own DB15 of the type that does not fit the Neo ports).

martianviking

#10
QuoteThis would never work...

...such a plug would never fit the deeper Neo Geo ports, thus making the stick totally unusable on that system...
You're completely right.  I didn't even think about that.


Quote...The only solution is to add an extension cord where pin 8 (+5v) is left unconnected. Basically what you suggests in your last post, only it doesn't necessarily have to be a DB25-to-DB15 extension, it may well be DB15-to-DB15 (with the stick's own DB15 of the type that does not fit the Neo ports).
But even if you use the type of DB-15 that doesn't fit straight into the Neo ports, you still run the risk of someone trying to force it in and damaging the sockets.  Also, some people have stated that even though they don't fit "correctly," you can still get many of those kinds of plugs to fit in far enough to work, so you still wouldn't be completely safe by simply using a non-Neo-friendly DB-15.  (And why use a DB-15 at all if it doesn't even fit into a Neo Geo?)

If you use a DB-25 on the stick, it will be very obvious to any user that it won't fit without the adapter.  This will make it a little closer to idiot-proof.

And besides solving the "8th button" issue, DB-25 ports will also give you the extra pins for the multiple ground leads that JHendrix claims some controller hacks need.  I am pretty sure that the DB-25 is what he uses for his "JHendrix's Universal Sticks" that are pictured at sgrepository.com and mentioned at neo-geo.com in the forums.  Now if we only had the pinout that he uses...

MKL

QuoteBut even if you use the type of DB-15 that doesn't fit straight into the Neo ports, you still run the risk of someone trying to force it in and damaging the sockets.  Also, some people have stated that even though they don't fit "correctly," you can still get many of those kinds of plugs to fit in far enough to work, so you still wouldn't be completely safe by simply using a non-Neo-friendly DB-15.

The extensions I linked above make no contact whatsoever when plugged into the ports of a Neo Geo (I tried) and there's nothing you can do to make them go any deeper into the ports because of the metal frame: what you say about getting the plug to fit better the Neo ports only holds for those extensions where the plug is completely made of plastic that you can trim with a cutter or something until the plug is long enough to fit in. But you can't do this with the "metal" extensions...

Quote(And why use a DB-15 at all if it doesn't even fit into a Neo Geo?)

Because the sticks I build are also to be used on my superguns which are very compact and the bigger DB25 sockets just don't fit especially since I use to install 4 joy ports on my superguns.


sleepless

QuoteAnd if the button that has ground and +5v wired to its microswitch is (accidentally) pressed when the stick is plugged into the Neo Geo it will cause a short that could damage the machine.

You could use the unwanted 5v to activate a relay - disconnecting button eight and swapping in the 5v supply when present.