https://bugs.winehq.org/show_bug.cgi?id=45688
Bug ID: 45688 Summary: Gamepad appears both as dinput and xinput (eg. Valkyria Chronicles) Product: Wine Version: 3.11 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: directx-dinput Assignee: wine-bugs@winehq.org Reporter: gabriel.corona@enst-bretagne.fr Distribution: ---
AFAIU, on Windows a gamepad appears either on DirectInput or on XInput.
Some games are helpful and automatically work with both. For example, Valkyria Chronicles apparently automatically switches between DirectInput and Xinput based on the latests input.
On Wine >= 3.3, every gamepad appears both on DirecrInput and XInput. This is useful because the gamepad can work both on DirectInput and XInput gamed.
However, on Valkyria Chronicles (for example) the effect is that the game switches randomly between the two modes because it apparently sees the same gamepad from both APIs. This can be seen because the buttons displayes on screen change from numbered key labels ("1", "2", "3", etc.) and XInput based key labels ("A", "B", "C", "D").
In order to sucessfully run the game, I has to disable the gamepad from DirectInput (using "wine control"). This works, but prevents running DirectInput only games without reconfiguration.
A possible workaround would be to have an option to disable DirectInput gamepads if both libraries are mapped in the same process.