Log in

View Full Version : Joystick Action



PaulyWally
January 15th, 2010, 22:42
I've been searching for similar questions on this, and haven't found much.

I've been emulating with gamepads for a number of years now. I finally got irritated with the "inaccurate" action of gamepads and got myself a (cheaper) USB arcade stick. For what it is, it's not bad - I'm actually pretty impressed for the price. But it (like all other USB joysticks/gamepads) has one major problem: It doesn't have traditional arcade stick action.

In MAME, For example...

If I'm holding the stick RIGHT, and then push UP/RIGHT, it does not trigger UP. The emulator continues to 'read' it as RIGHT. I have to push the stick completely (and solely) UP for it to trigger the UP 'command'.

I tried some remappings in the configuration, and also tried downgrading the driver to a basic game controller. No luck. I also verified the same action on a USB gamepad.

Finally, I tried using the keyboard as the controller, and it worked the way it should. i.e. - hold down RIGHT arrow, add the UP arrow, and it triggers UP even though RIGHT is still pressed.

Anywho... I was wondering if anyone had any solutions or insight or ideas on where to look to remedy this. Short of buying a cheap keyboard and wiring the arcade stick to that... I don't really know what else to do.

Thanks in advance!

Edit for update: I've discovered this is mostly a problem with MAME... not so much other emulators. I've also tried using a Joystick-to-Keyboard mapper, to no avail. To avoid MAME confusing the keyboard/joystick commands, I tried running MAME with -nojoystick. Then, the joystick would not respond at all, even WITH it being mapped to keystrokes (and working with other apps). I've also tried -multikeyboard, -nomultikeyboard, and even tried mapping the joystick "HotRod" style and used MAME's built-in HotRod config file. Still nothing.

It appears to me that MAME is completely intercepting keyboard and joystick commands when the program is running. I say this because the Joystick is completely dead while running the Joystick-To-Keyboard mapper and run MAME with -nojoystick.

Right now, I'm trying to use the MAME Joystick map... but there is very little documentation on it, and I get errors.

Anyway... that's where I'm at for now. If you have any input, I'd really appreciate it! Thanks!

ulaoulao
January 16th, 2010, 18:10
If I'm holding the stick RIGHT, and then push UP/RIGHT, it does not trigger UP. The emulator continues to 'read' it as RIGHT. I have to push the stick completely (and solely) UP for it to trigger the UP 'command'. - When I first read this I figure it was a joystick limitation, but further reading you say its only with mame? Something dose not sound right, did you program the diagonals.

Try x-padder (http://xpadder.com/) if you want to do key mappings, its the best out there.

You can try my ctrl editor (http://spawnlinux.dyndns.org/ctrlr_editor/ctrlr_editor_v2.exe) if you want. It allows you to edit the controls out side of mame.

IMO, ditch the computer joystick crap and get an original console joystick. Personally I like the Sega Saturn virtua stick
http://t1.gstatic.com/images?q=tbn:sHhl6AUyEBvBuM:http://www.gaminggenerations.com/store/images/satrun_fightstick_front.jpg

It works with any sega adapter, I make them here here (http://spawnlinux.dyndns.org/Bliss-Box/). You dont need the all in one, but its hard to resist..

FatTrucker
January 20th, 2010, 22:10
If your joystick or gamepad runs with a third party driver (rather than being a pure HID USB device) then that's likely to be the issue with Mame why any controller should need a windows compatible driver nowadays is beyond me and usually indicates questionable build quality.

I have to date used numerous USB joypads, pad converters, self built arcade control panels, commercial arcade controls panels and various other controls with dozens of different builds of mame on several different PC's over the last 10 years on windows 98\ME\XP and Vista without a single issue. The problem is far more likely to be cheap and not particularly good controllers with badly written drivers causing your problems.

Why not grab a few buttons and an Ipac from Ultimarc and make yourself a controller box out of MDF. Will cost about ?30 - ?40 and take about an hour.