https://bugs.winehq.org/show_bug.cgi?id=39540
Bug ID: 39540 Summary: DirectInput, Xinput, Overall Controller support messed up on OS X Product: Wine Version: 1.7.54 Hardware: x86 OS: Mac OS X Status: UNCONFIRMED Severity: major Priority: P2 Component: directx-dinput Assignee: wine-bugs@winehq.org Reporter: adrian.koehres@gmx.net
I've tried many games now and nothing really works. I tried a PS3 Dualshock Controller and also a Xbox360 controller. If the game doesn't handle controller support by itself then there is no chance to get it to work. Dinput breaks controller input completely in most cases and xinput doesn't do anything at all.
I had games where the buttons were recognized, and the axes not. And games where absolutely nothing was recognized. The controllers I testet worked perfectly with native controller supporting games on OS X. As soon as I'm using wine and the game isn't handling the controller by itself, its a pain.
For example Volgarr the Viking (I know there is a OS X port) works perfectly when porting the Windows version with wine. The Controller gets detected flawlessly without any problems. There is no need to install dinput/xinput through winetricks as the game is doing that somehow by itself. There is a game called TowerClimb when portet with wine on OS X, only the buttons work. The axes and throttlers absolutely don't work. No matter if I install dinput/xinput through winetricks. I tried mapping the controller myself through regkey values but you need the name of the divice for doing that. So using "WINEDEBUG=+dinput wine game.exe 2>&1 | grep joydev_enum_device" results in "fixme:dinput:IDirectInputDevice2AImpl_EnumEffects (this=0x7043d00,0x26c1a60,0x2702fb8,0x00000000): stub!" Then I tried PrinceOfPersia: Sands Of Time where it was not possible to get any controller working with it's wine port. Installed dinput/xinput. Nothing seems to work though.
The Wine Control Panel Gamecontroller utility seems to recognize the controllers though. Also different Windows Gamecontroller utilities seem to recognize the controllers flawlessly when ported with wine. Programs which handle the controller by themselves with their own dinput/xinput.dll's seem to work well. It's getting problematic when you have to use dinput/xinput through winetricks as they don't seem to work. I've tried many different versions on wine. Nothing works.