I Have Made A D-pad Work For The Gp2x !


moz posted on Mar 25 2006 at 10:21 AM said:
agree with above post maybe its a mis understanding and this has been bugging me since the original post.

my atari2600/c64/spectrum/amiga joystick only had 4 blisterswitch/microswitch for movement.

up,down,left,right

but they allowed diagonals ie when you pressed top left diagonal you pressed left and up.

bacteria is this how your pad works?

APOLOGIES!

I was convinced that the way a direction key worked was like a computer does - it looks for each key-press in order, the first one it registers it uses, so you can't for example press "up" and "right" and get diagonal - one key takes presidence over the other.

IT APPEARS I MADE A MISTAKE - actually, my design DOES do diagonals - although I knew that when I pressed two keys together the GP2x showed the two keys illuminated, I assumed a game would not accept this as the GP2x has specific diagonals.

I WAS WRONG - my design IS 8 way - just played StarForce (MAME) on it, and it is fantastic.

You don't need to buy an intrusive design - my solution works.

I thank everyone for their comments, interestingly enough, I got rattled enough to try and prove my point, to realise that I was in error (I am man enough to admit it).

Right, below are some pics to prove the point - thanks guys!

As the debate on this topic started off poorly, I will start a new thread in the Forum in the next few days (as I need to test my pad for robustness), with a better description, pics, etc - to start with a clean sheet!

I need to extensively test the gamepad before I formally sell it, and make a final product (will take a few days yet to perfect).

Anyway: picture below proves I do have diagonals after all!!!

buttons.jpg


Just to wet your appetite.
 
Last edited by a moderator:
primeris posted on Mar 25 2006 at 11:33 AM said:
Very cool! So what's the point of the solely diagonal directions? Are there games that will not respond to two ordinals?
Test away, b.

I agree - one assumes that having special direction keys for diagonals is there for a reason, and this is what threw me. It appears that this is not the case - my experiment has proved you get diagonals from the 4 direction keys absolutely fine.

I have testing to do, and have opened a new forum topic, as you may have noticed by now.

This is exciting!
 
Last edited by a moderator:
daclassicgamingmaster posted on Mar 25 2006 at 03:25 PM said:
will those register as diagonals in the handheld? It seems the corner buttons wont light up........

Yes, on DrMD, MAME, Nintendo emulators, etc. 4 way gives 8 way in games (ie diagonals) - shouldn't do, but it does!
 
Last edited by a moderator:
bacteria posted on Mar 25 2006 at 04:48 PM said:
daclassicgamingmaster posted on Mar 25 2006 at 03:25 PM said:
will those register as diagonals in the handheld? It seems the corner buttons wont light up........

Yes, on DrMD, MAME, Nintendo emulators, etc. 4 way gives 8 way in games (ie diagonals) - shouldn't do, but it does!
I think that is done by the emu author.
 
Last edited by a moderator:
qarteth - Yes, as Left+Up = top left diagonal - which is what Q*Bert (to give it its proper title) wants. YES!

Hans - so what, the result is the same - it works. I know you are biast, but all eggs being equal, both solutions do the same job...
 
bacteria posted on Mar 25 2006 at 07:29 PM said:
qarteth - Yes, as Left+Up = top left diagonal - which is what Q*Bert (to give it its proper title) wants. YES!

Hans - so what, the result is the same - it works. I know you are biast, but all eggs being equal, both solutions do the same job...
Not all programmers have done this though.
 
Last edited by a moderator:
Hi,

bacteria posted on Mar 25 2006 at 03:48 PM said:
Yes, on DrMD, MAME, Nintendo emulators, etc. 4 way gives 8 way in games (ie diagonals) - shouldn't do, but it does!

It makes sense, because all of these games are designed to generate the diagonals in code, i.e. the controls they were designed for were 4-way controls.

The only drawback with the way you have implemented it is that on GP2X-specific programs, which 'know' that the only way to get a diagonal is to get the diagonal signal from the 8-way stick, they might not respond to a 4-way diagonal code.

Some GP2X software might work, some might not, it depends on how the programmer implemented the control code.

I think Radek's point regarding all of this is that the onus should not be on the programmer to cater for esoteric, third-party additions, which is why your modification could benefit from the addition of the circuit he has proposed, for only a few euros extra. I don't think he's said your d-pad is not as good as his, it's that your pad could be given added value and universality by allowing it to provide the diagonal signals to the newer programs which are hard-coded to expect only these signals.

When the GP2X first came out, it would make sense to program your movement code and not take into account the possibility of pressing (for example) up plus right, as this is impossible with the stock controller. So, I would expect that most people converted their old diagonal code to the new, rather than adding in the new code as an addition.

In the last few months it seems that the GP2X has picked up enough new users that the number of people pissed off about GPH's decision on the controller has reached the critical mass needed to make alternative input methods desirable.

The reason it works in the emulators is that while the games running in the emulator are expecting things to work the old way, the emulator has interpreted the GP2X diagonal inputs, and passed the relevant two separate directions on to the code under emulation. So, in MAME, for example, when you press UP and LEFT, the GP2X joystick generates a single UP-LEFT signal, MAME sees this UP-LEFT signal, separates that into UP and LEFT signals, and tells the game that these are the directions that have been pressed. The game itself then recombines those two directions in its code to realise the diagonal intent.

For what it's worth, I'm glad you've come out with your version, as the more options there are to choose from, the better chance there is that people will find a solution that suits their personal preference.

I think it's unfortunate that you had so much negativity thrown your way at the start, and I'm glad to see you're forging ahead. It always does seem to be the case that people are a lot quicker to tell others that they're doing something wrong, and say nothing when they do something right.

I myself am working on a version using ultra-miniature microswitches or tactile key switches to achieve similar ends. Whether it turns out better or worse is anybody's guess, but my own personal preference is to have a 'clicky' feedback from the controller. I will mostly likely try Radek's pad with the n-gage QD controller on my stock GP2X, and work ahead on my own version on my development GP2X.

Eventually, we will end up with a better console, and everybody will benefit.
 
Last edited by a moderator:
Hanz™ posted on Mar 25 2006 at 06:57 PM said:
bacteria posted on Mar 25 2006 at 07:29 PM said:
qarteth - Yes, as Left+Up = top left diagonal - which is what Q*Bert (to give it its proper title) wants. YES!

Hans - so what, the result is the same - it works. I know you are biast, but all eggs being equal, both solutions do the same job...
Not all programmers have done this though.
it doesnt mean that they cant implement it if they want to, unless they have lost the source.
 
Last edited by a moderator:
moz posted on Mar 25 2006 at 07:03 PM said:
it doesnt mean that they cant implement it if they want to, unless they have lost the source.
What if they don't want to? It's your loss because you can't play the games you want to.

"Fullspeed Xbox 360 emulator!"
"Oh wow, must try this."
"PLEASE PRESS UP-LEFT TO START"
"Shit."
 
Last edited by a moderator:
nickspoon posted on Mar 25 2006 at 07:15 PM said:
moz posted on Mar 25 2006 at 07:03 PM said:
it doesnt mean that they cant implement it if they want to, unless they have lost the source.
What if they don't want to? It's your loss because you can't play the games you want to.

"Fullspeed Xbox 360 emulator!"
"Oh wow, must try this."
"PLEASE PRESS UP-LEFT TO START"
"Shit."

then whoever actually mods thier unit without knowing is taking a risk.

lets face it most people would wait for confirmation that the mod works in certain programs and that the coder of the program is nice and will keep the compatibility or use a sdk that is "mod friendly"

i cant understand the hostility there is towards this mod.

nick i think you will have to wait a long time to get a full speed xbox 360 emulator, so sont worry about up-left.
 
Last edited by a moderator:
Bacteria - I for one would be very interested in your solution. My soldering is poor but acceptable, and I probably be a little reluctant to cut my gp2x as that would make it rather hard to reverse. Or at least not until the guarantee ran out.

Which brings me to my question.... the details so far have been a little sketchy, but if I understand you correctly it should be perfectly feasible to 'rollback' from this mod and revert to the stock stick (well DaveC stick ;-). Is that correct?
 
@radek/bacteria - Do you think it would be possible to adapt the pad from the gp32 to work on the gp2x? I was considering having a look into it, but am a little sceptical as i'll probably brick both handhelds!
 
x68000 posted on Mar 25 2006 at 08:02 PM said:
@Radek/bacteria - Do you think it would be possible to adapt the pad from the gp32 to work on the gp2x? I was considering having a look into it, but am a little sceptical as i'll probably brick both handhelds!

Definately - the issue is mounting a pcb D-pad - getting the switches working properly and reliably on such a flat surface will be very hard. Mounting it in the GP2x would be hard, and would require specially moulded plastic (which can fluctuate in quality). My D-pad is a self-contained, external unit, so doesn't suffer from this - which is why it is so easy to install, and requires almost no skill to install.
 
Last edited by a moderator:
andyB911 posted on Mar 25 2006 at 07:51 PM said:
Bacteria - I for one would be very interested in your solution. My soldering is poor but acceptable, and I probably be a little reluctant to cut my gp2x as that would make it rather hard to reverse. Or at least not until the guarantee ran out.

Which brings me to my question.... the details so far have been a little sketchy, but if I understand you correctly it should be perfectly feasible to 'rollback' from this mod and revert to the stock stick (well DaveC stick ;-). Is that correct?

Thanks for your comments. This is the product for you. You only have to undo 4 screws on the GP2x to do what needs doing. If you want to revert back to the way it was, you only have to unsolder 6 wires, and literally pull my D-pad off, and put your old joystick cap back on - if you removed all the solder from the joints, no-one would even know you had gone into the GP2x.

Sometimes the simple ideas approach (as mine) is the best, most effective and logical solution!
 
Last edited by a moderator:
nickspoon posted on Mar 25 2006 at 07:15 PM said:
moz posted on Mar 25 2006 at 07:03 PM said:
it doesnt mean that they cant implement it if they want to, unless they have lost the source.
What if they don't want to? It's your loss because you can't play the games you want to.

"Fullspeed Xbox 360 emulator!"
"Oh wow, must try this."
"PLEASE PRESS UP-LEFT TO START"
"Shit."

LOL :D

Anyway, no chance of Xbox on the GP2x!

So, if you have access to over 2000+ games on the GP2x via the fantastic emulators (MAME, DrMD and others), and someone programs a single homebrew program to use a control the other 2000+ games available can't - humm - let me see - which scenario is going to win?? I guess the homebrew game is likely to be recoded in preference no? Anyway, fantastic games like TileMatch benefit wonderfully from my D-pad!
 
Last edited by a moderator:
Back
Top