[Bug 52841] Leverless arcade controller SOCD cleaning does not work

WineHQ Bugzilla wine-bugs at winehq.org
Tue Jun 7 19:12:51 CDT 2022


https://bugs.winehq.org/show_bug.cgi?id=52841

--- Comment #2 from Nam Nguyen <namtsui at gmail.com> ---
I tested wine 7.10, and the regression is still present. I attached a fresh
proposed fix that applies cleanly to 7.10.

One detail I forgot to include was that there are at least two forms of SOCD
cleaning. Horizontal axis: Last input wins and left + right = neutral.
Vertical axis: down + up = up

With last input wins:
hold left then hold right. the controller will output right, even though both
left and right are held.
hold right then hold left. the controller will output left, even though ""

With left + right = neutral:
hold left then hold right. neutral is output.
hold right then hold left. neutral is output.

My hitbox controller has left + right = neutral style. My hitbox controller
also has down + up = up. I don't have a way to test for last input wins, but my
patch attempts to account for all these variants. The patch makes sure that
release event on a button does not just reset to 0 without checking the
opposite direction first.

-- 
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