https://bugs.winehq.org/show_bug.cgi?id=47188
Bug ID: 47188 Summary: Gamepad input no longer works in A Hat in Time (regression) Product: Wine Version: 4.8 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: sashok.olen@gmail.com Distribution: ---
When I launch the game with regular Wine 4.8, this gets spammed: 005e:err:xinput:HID_update_state Failed to get Input Report (7a)
I've run a bisect and the offending commit is 5ff326f80147f4608fd64ad37510d0cff330676e ( winebus.sys: Pack hatswitch values into button bytes by Andrew Eikum), and I can confirm that by reverting that commit, the gamepad input works again.
https://bugs.winehq.org/show_bug.cgi?id=47188
Alexandr Oleynikov sashok.olen@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |aeikum@codeweavers.com Distribution|--- |ArchLinux Keywords| |regression
https://bugs.winehq.org/show_bug.cgi?id=47188
Józef Kucia joseph.kucia@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Regression SHA1| |5ff326f80147f4608fd64ad3751 | |0d0cff330676e
https://bugs.winehq.org/show_bug.cgi?id=47188
--- Comment #1 from Andrew Eikum aeikum@codeweavers.com --- Thanks for reporting. What type of gamepad do you have?
Can you attach a (compressed) log with +tid,+pid,+plugplay,+hid,+hid_report,+hidp,+xinput,+dinput,+rawinput ? https://wiki.winehq.org/FAQ#How_do_I_get_a_debug_trace.3F
https://bugs.winehq.org/show_bug.cgi?id=47188
--- Comment #2 from Alexandr Oleynikov sashok.olen@gmail.com --- Created attachment 64440 --> https://bugs.winehq.org/attachment.cgi?id=64440 +tid,+pid,+plugplay,+hid,+hid_report,+hidp,+xinput,+dinput,+rawinput
It's a generic 360 one, specifically Logitech F310. And here's the log.
https://bugs.winehq.org/show_bug.cgi?id=47188
Alistair Leslie-Hughes leslie_alistair@hotmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |GloriousEggroll@gmail.com, | |leslie_alistair@hotmail.com
https://bugs.winehq.org/show_bug.cgi?id=47188
pattietreutel katyaberezyaka@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |katyaberezyaka@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=47188
kiwii@lytoria.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |kiwii@lytoria.de
--- Comment #3 from kiwii@lytoria.de --- Created attachment 64461 --> https://bugs.winehq.org/attachment.cgi?id=64461 output of XInputTest.exe with Wii U Pro controller
https://bugs.winehq.org/show_bug.cgi?id=47188
--- Comment #4 from kiwii@lytoria.de --- Comment on attachment 64461 --> https://bugs.winehq.org/attachment.cgi?id=64461 output of XInputTest.exe with Wii U Pro controller
This (or a related regression in 4.8) also affects the Wii U Pro controller connected via Bluetooth (only way of connecting it).
I tested it with x360ce's XInputTest.exe* in a fresh Wine prefix without any overrides, additional libraries, or input emulation tools (x360ce was *not* used).
Sometimes none of the buttons work, while on other runs of the program occasionally only the d-pad doesn't work at all, with other buttons working, but some being incorrectly reported as pressed until actually pressed once.
Actual games exhibit the same behavior with this controller in Wine 4.8 (tested GTA V).
I have attached the output of "WINEDEBUG=+tid,+pid,+plugplay,+hid,+hid_report,+hidp,+xinput,+dinput,+rawinput wine ./XInputTest.exe". This was a run where only the d-pad buttons didn't register any inputs.
This affects both wine 4.8 and wine-staging 4.8 on Arch Linux, while in 4.7 the controller works flawlessly.
* https://github.com/x360ce/x360ce/raw/master/x360ce/Support/XInputTest.exer/x...
https://bugs.winehq.org/show_bug.cgi?id=47188
--- Comment #5 from kiwii@lytoria.de --- I've gone and checked A Hat in Time in Wine 4.8 with my Wii U Pro gamepad and it exhibits the same symptoms I mentioned with XInputTest.exe, i.e. the d-pad doesn't register at all. And as expected it works in previous versions of Wine.
I also have to excuse my inability to use these forms correctly; as I'm new to bugzilla, I wasn't aware of how the attachment system works or that I couldn't edit a comment after posting it. So, sorry for the spam. Next time, I'll try to keep it to one comment.
I also somehow messed up the download link for XInputTest.exe when copy-pasting, so here is the correct one: https://github.com/x360ce/x360ce/raw/master/x360ce/Support/XInputTest.exe
https://bugs.winehq.org/show_bug.cgi?id=47188
Alexandr Oleynikov sashok.olen@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Gamepad input no longer |Gamepad input no longer |works in A Hat in Time |works (regression) |(regression) |
--- Comment #6 from Alexandr Oleynikov sashok.olen@gmail.com --- Since this affects more than just one application (and also more types of controllers than just generic 360, as evidenced by the new comments and bug 47192), I will change the name to be a bit more general.
https://bugs.winehq.org/show_bug.cgi?id=47188
--- Comment #7 from Andrew Eikum aeikum@codeweavers.com --- Created attachment 64474 --> https://bugs.winehq.org/attachment.cgi?id=64474 winebus.sys: Fix report length calculation
Alexandr, I believe this will fix your controller. If you can, please build and give it a test.
Kiwii, it may help with your issue, but I'm not 100% sure. Please test and upload a new log if it doesn't help.
https://bugs.winehq.org/show_bug.cgi?id=47188
Alistair Leslie-Hughes leslie_alistair@hotmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |042e0625695a82aa71ddf825c69 | |3680d5d8aa0dd Status|UNCONFIRMED |RESOLVED Resolution|--- |FIXED
--- Comment #8 from Alistair Leslie-Hughes leslie_alistair@hotmail.com --- Fixed by https://source.winehq.org/git/wine.git/?a=commit;h=042e0625695a82aa71ddf825c...
https://bugs.winehq.org/show_bug.cgi?id=47188
--- Comment #9 from Alexandr Oleynikov sashok.olen@gmail.com --- This patch fixed it after I applied it to 4.8 release but unfortunately latest master is still broken (by this https://source.winehq.org/git/wine.git/commit/8cd6d6163983d9ea07fb9e6eb4e263...). I will open a new bug report as it's a separate issue.
https://bugs.winehq.org/show_bug.cgi?id=47188
--- Comment #10 from Alexandr Oleynikov sashok.olen@gmail.com --- Opened bug 47209.
https://bugs.winehq.org/show_bug.cgi?id=47188
--- Comment #11 from kiwii@lytoria.de --- Created attachment 64509 --> https://bugs.winehq.org/attachment.cgi?id=64509 XInputTest.exe output wine-git first run in fresh prefix
Tested my Wii U Pro gamepad with latest git (61aea5a987) and in a fresh prefix, the pad isn't recognized at all until I restart the application a few times (seems to be random; at some point it just starts to be detected), then it works partially with the d-pad not being functional.
So overall, the behaviour seems unchanged with my device. Attached the log for the first run in a fresh prefix.
https://bugs.winehq.org/show_bug.cgi?id=47188
--- Comment #12 from kiwii@lytoria.de --- Created attachment 64511 --> https://bugs.winehq.org/attachment.cgi?id=64511 XInputTest.exe output wine-git partially working
And here's the log from a subsequent run after the gamepad started to be detected, with only the d-pad not working. I pressed only each direction of the d-pad once to keep the log size short-ish.
https://bugs.winehq.org/show_bug.cgi?id=47188
--- Comment #13 from Andrew Eikum aeikum@codeweavers.com --- Thanks kiwii. Alexandr also reported some d-pad issues over on Bug 47223. There's two patches there that I think will fix this.
https://bugs.winehq.org/show_bug.cgi?id=47188
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #14 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 4.9.