NGX stick driver

SetaSouji??

There Can be Only One
Joined
Mar 31, 2009
Posts
4,158
So I've heard mixed results about people trying to plug n' play the stick, so I decided to just straight up write a driver for it. I've run into a problem though..

I have the driver functioning, in the stick properties VIA windows, you can test the inputs and the stick inputs and see it's fully functioning.

When you use it in let's say a console emulator (I used NES for my test run). The emulator detects the button inputs no problem, however it will not detect joystick input no matter how I configure it. So there's that.

In every MAME build I could think of, it tells me to eat a dick and just doesn't detect the damn thing. At all. (and yes, I do have enable joystick set) so it's frustrating.

Thinking I did something wrong, I tried it in an engine that I've actually built code for, and it detects both the stick inputs (detects directional input as JOY1H-LEFT/RIGHT/UP/DOWN).

So anyone got any ideas how I can fix this so I can start a 64 bit conversion and release this bitch?
 

opd897

n00b
Joined
Dec 29, 2012
Posts
11
So I've heard mixed results about people trying to plug n' play the stick, so I decided to just straight up write a driver for it. I've run into a problem though..

I have the driver functioning, in the stick properties VIA windows, you can test the inputs and the stick inputs and see it's fully functioning.

When you use it in let's say a console emulator (I used NES for my test run). The emulator detects the button inputs no problem, however it will not detect joystick input no matter how I configure it. So there's that.

In every MAME build I could think of, it tells me to eat a dick and just doesn't detect the damn thing. At all. (and yes, I do have enable joystick set) so it's frustrating.

Thinking I did something wrong, I tried it in an engine that I've actually built code for, and it detects both the stick inputs (detects directional input as JOY1H-LEFT/RIGHT/UP/DOWN).

So anyone got any ideas how I can fix this so I can start a 64 bit conversion and release this bitch?

Thanks for your efforts and while I do not have a fix, I did download and try a couple of joystick programs, Xpadder and Joycur. Neither one of them would allow me to change the stick from POV to axis. Buttons work fine though. I'm running Vista too and that in itself could be a problem.
 

TurboRotary13b

Crossed Swords Squire
Joined
Dec 27, 2012
Posts
187
I'm on Windows 8 and it detects the buttons and joystick but in any emulator it either doesn't work or the joystick is stuck in the up position.
 

SetaSouji??

There Can be Only One
Joined
Mar 31, 2009
Posts
4,158
I'm on Windows 8 and it detects the buttons and joystick but in any emulator it either doesn't work or the joystick is stuck in the up position.

Hell, if I could get it to be stuck in up position that would be awesome because I can fix that.
 

SetaSouji??

There Can be Only One
Joined
Mar 31, 2009
Posts
4,158
bumpity bamp! After reading some material and seeing that the stick works in a PS3 I facepalmed. So what I ended up doing was hacking the HID driver into thinking the stick wasn't actually a POV. I've also learned Eightman one-handed is hard as fuck.

So mods, am I allowed to upload it since it's technically hacked microsoft data?



 
Last edited:
Joined
Jan 3, 2013
Posts
12
Hmm. I'm not sure why we need drivers for this, the buttons show up normally and the joystick is merely mapped up to the first POV Hat. Any sensible program you run with proper joystick support will work with it immediately, and as its a standard USB HID joystick, Windows knows how to work with it anyway.

Now, if you're trying to make a bitchy game behave with the stick's POV mapping... there is always Joy2Key http://www.electracode.com/4/joy2key/JoyToKey English Version.htm - and if for some reason you want to pay money to do the same thing, or do something stranger than just play games with the stick, there's always XPadder.

No need to overcomplicate this one.
 
Joined
Jan 3, 2013
Posts
12
Hmm. I'm not sure why we need drivers for this, the buttons show up normally and the joystick is merely mapped up to the first POV Hat. Any sensible program you run with proper joystick support will work with it immediately, and as its a standard USB HID joystick, Windows knows how to work with it anyway.

Now, if you're trying to make a bitchy game behave with the stick's POV mapping... there is always Joy2Key http://www.electracode.com/4/joy2key/JoyToKey English Version.htm - and if for some reason you want to pay money to do the same thing, or do something stranger than just play games with the stick, there's always XPadder.

No need to overcomplicate this one.
I'll clarify this by saying if you need to use joy2key, then you will set the game up to use the keyboard bindings you've chosen _and disable that games joystick input_ or you will get ghost inputs from the joystick press being handled by the game and joy2key firing a keyboard event for the press also. You also might need to do this if you have a shittily programmed game that doesn't notice that the joystick doesn't provide any axes and goes mad because of it (as TurboRotary13b said.)

It's a sad fact that most Windows games for the PC have very lazy and sloppy joystick implementations, despite DirectInput doing most of the work for you and providing access to all of the available inputs and readily giving you a capabailities list. It shouldn't be that a stick like the Neo Geo X (which I may add is being perfectly sensible by using a POV hat mapping for the stick - it's not an analog stick, there's no need to map an axis up) causes problems, but so it is. When you hit one of these turds, just call all bets off and map to keyboard. Especially easy as you're not losing any analog inputs here.

The fact that it was said that MAME doesn't like the stick at all is surprising because I have that working here without joy2key no problem. Sure you've got MAME set up right?
 
Joined
Jan 3, 2013
Posts
24
The joystick doesn't work correctly for me in:

* MAME
* Callus
* NeoRageX
* Nebula

on Win7 x64.

Funny thing: The windows panel for joysticks shows everything correct - button pressing and pad movement. So I guess there IS a driver problem...
 
Joined
Jan 3, 2013
Posts
12
The joystick doesn't work correctly for me in:

* MAME
* Callus
* NeoRageX
* Nebula

on Win7 x64.

Funny thing: The windows panel for joysticks shows everything correct - button pressing and pad movement. So I guess there IS a driver problem...
I doubt there's a problem with the stock Windows drivers, immensely. As I said before you could work around misbehaving programs with Joy2Key as an option, unless/until someone writes a hack driver that remaps the POV hat to an axis.

An alternative I failed to consider is that the joystick is latching down a button, direction or some other 'fake' input so that it can be identified as a stick in a roundabout sort-of way - many of the dedicated controllers in the Playstation era of games, especially the music games, did this and this would be a pain to deal with. I'm on holiday and I don't have my proper computer with me for doing proper checks...
 

StealthLurker

Naomi Yamazaki's Wingman
Joined
Oct 27, 2003
Posts
2,422
Joysticks registering directions as a POV hat isn't new. I've encountered that with my more modern joysticks... such as the Hori VLX and I believe PS3/360 HRAPs. Yes joy2key can be used to get around this issue. I use joy2key on one of my PCs with an old MAME build for my Hori VLX PS3/360 sticks. I believe xpadder only works for 360 controls (?) and isn't free like joy2key.

By the way I'm using Win7 64bit Ultimate, however I've done this stuff before on Vista Home Edition 32bit and XP SP2.

Also I've been able to get sticks using POVs to work even without joy2key.

What I've noticed is that the NGX stick is not compatible with older MAME builds (for example 118). It will immediately throw up a modal dialogue with some DirectInput error (found no way around this issue). However, if you use one of the more recent MAME builds it will just work. You can set the directions to whatever POV hat direction.

Things just work in the more up to date versions of FinalBurnAlpha (no need for joy2key or whatever other software).

.
 
Last edited:
Joined
Jan 7, 2013
Posts
1
On a whim, I just tried using the joystick on my Nexus 7 via an OTG cable this morning, and it works flawlessly with NES.EMU. It reminded me of my old days with the NES Advantage.

Android 4.2.1 has no issues using this controller. When I configure the controls in NES.EMU it reads the buttons as you would expect:
Pad A = A, Pad B = B, etc.
the joystick correctly reads as UP, DOWN, LEFT, RIGHT
START = R1, SELECT = L1

MAME4Droid Reloaded shows at least initial support, which is to say that it'll let me scroll through the menus with the joystick. I haven't tried playing a game with it yet, but I don't anticipate that it would behave differently than NES.EMU.

Given all this, I can't imagine that the Ooya would block it unless it REQUIRES analog input.
 
Joined
Dec 29, 2012
Posts
20
I tried FinalBurnAlpha on Win7 and I'm stuck in the up position. Control panel shows and tests the sick fine but in the emu it refused to work for me.
 

jrronimo

n00b
Joined
Dec 31, 2012
Posts
26
I plugged my stick into my Win8 64-bit box at home and Windows detected it just fine. I've used it with the most recent build of MAMEUI64 as well as whichever FBA is in GGPO; no problems. In MAME, I found it's more useful to set the options for the game while you're in the game: Hit Tab to bring up the menu, do the "settings for this game" option, then configure the stick. I don't have any other things running like joy2key or alternate 360 drivers. Nothing like that should be necessary.

For those of you that are getting the "stick stuck in up position" problem, do any of you have a PS3? If so, plug the stick in and see if it's also "stuck up" (i.e., scrolling up through menus). If that's the case, does it work properly with your actual NGX hardware? If so, I wonder if they're doing some BS "hardware copy protection" -- like how Guitar Hero controllers identify themselves to PS2s by always "pressing left". That doesn't really make sense to me that Tommo would do that for some sticks but not others, especially since I imagine they could sell quite a few sticks standalone for people wanting that real arcade feel on their computers, but hey, crazier things have happened... I'm just trying to spitball ideas.

SetaSouji??: Are you just modifying a .inf file or did you have to dig into the driver itself and like hex-edit it or something? I'm imagining it'd be fine if it's just a .inf, but I also don't want to speak for the mods, heh.
 

TurboRotary13b

Crossed Swords Squire
Joined
Dec 27, 2012
Posts
187
Mine does the same stuck in up position shit. I'm on windows 8. I've got another on that I haven't taken out of the box yet.. At some point I'll try it too.
 
Joined
Mar 12, 2012
Posts
46
I know it doesn't address your guys' problem, but I can confirm yhe NGX stick works flawlessly in Win Vista, MAMEUI32.
 
Top