[Bug 18424] Mac OS X Joystick support doesn't work

wine-bugs at winehq.org wine-bugs at winehq.org
Thu Jun 16 10:25:19 CDT 2011


http://bugs.winehq.org/show_bug.cgi?id=18424

--- Comment #37 from Mr Nobody <limited_choice at hotmail.com> 2011-06-16 10:25:17 CDT ---
(In reply to comment #35)
> I looked into this last night after buying Duke Nukem: Manhattan Project from
> GOG and trying to play it with a Playstation 3 controller. The game saw and
> correctly identified the controller, but did not react to any button presses.
> Nevertheless the wine/dlls/dinput/tests/joystick.c test worked fine and did
> detect all button presses in interactive mode.
> 
> The problem with that game is unrelated to xinput. xinput is also still stubbed
> on all platforms, as far as I can tell.
> 
> The problem was that while the Mac OS X joystick support code detects all
> (HID-supported) joysticks, button presses and stick movements, it does not
> actually put any events into the DirectInput queue. As a result, not even pure
> DirectInput games work with joysticks on Mac OS X right now. To prevent such
> problems in the future, maybe the dinput joystick test should be extended to
> also test the dintput event queue (but doing so is beyond my abilities).
> 
> After fixing that bug the controller worked fine! There are two minor issues,
> but they're not show stoppers:
> a) the game is only able to identify the first 12 buttons found by the HID
> code. It does recognise presses of the other buttons in the configuration
> screen, but is not able to attach any name to them and they also don't work
> during gameplay. Maybe that's due to wine identifying the controller as a
> joystick rather than as a gamepad (I don't know whether simply changing the
> identification from joystick to gamepad is safe, or whether you have to use a
> different interface in that case)
> b) the buttons are mislabeled in the game: the dpad buttons are recognised as
> buttons 5-6-7-8, and the buttons on the right hand side are identified as a
> dpad. It also detects moving one of the two sticks as equivalent to pressing
> the corresponding "dpad" button (which, as mentioned before, are not actually
> the dpad buttons), which is a bit more annoying.
> 
> I'll attach the patch to fix the event queue problem tonight when I'm back
> home.

Hi Jonas, thanks for taking a look at it. I did the same set of tests and
confirm what you've found -- I'll be eager to test out your patch, as I've 5
different kinds of HID to throw at it, so I can get a bit of device checking
done...I somehow still expect to see curveballs =)...

...wrt pads, there is some mirky ground ...ie; the linux xpad.ko driver will
see the xbox 360 & 'S' type controllers equally, but in OSX these two are chalk
and cheese ; you have to use a different OS driver for each last time I looked.
Also, there's this other thing I've noticed (seems app dependent) wherein the
analog 'trigger' controls (which one might map to throttle/brake) are inverted,
and this is common to both platforms. It makes one wonder why some win32 apps
are currently seeing things 'as is' and others aren't ...

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list