[Bug 51824] New: TrueDrive, SimHub, Fanaleds,etc.: Non smooth movement tracking with severe skipping/jumping of the steering wheel/controller axis
WineHQ Bugzilla
wine-bugs at winehq.org
Fri Oct 1 08:11:58 CDT 2021
https://bugs.winehq.org/show_bug.cgi?id=51824
Bug ID: 51824
Summary: TrueDrive, SimHub, Fanaleds,etc.: Non smooth movement
tracking with severe skipping/jumping of the steering
wheel/controller axis
Product: Wine
Version: 6.18
Hardware: x86-64
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: hid
Assignee: wine-bugs at winehq.org
Reporter: logos128 at gmail.com
CC: rbernon at codeweavers.com
Regression SHA1: 325984ded50b354686e5a454aa5aca3aafa81432
Distribution: ArchLinux
Created attachment 70711
--> https://bugs.winehq.org/attachment.cgi?id=70711
0001-hidclass.sys-Fix-writing-all-new-reports-at-the-last.patch
All the mentioned applications use raw HID access (through HidD/HidP calls) to
the devices they controll, so the movement tracking problems appear only there.
DirectInput works well.
After further investigation, found that the simpler ring buffer
(hidclass.sys/device.c) introduced with the mentioned regression commit is
causing the issues. Appeared that all new reports are pushed at the last
available ring buffer slot, due to reaching the end of the buffer before the
reading has started. Usually such devices as joysticks, controllers, steering
wheels, etc., use constant stream of INPUT reports to report their axis
movement, so any report skipping or change of the sequence, while the
interested apps are reading, would lead to such issues.
Attached a patch which fixes the issue (based on the current master
aa629c4c7225166f4ee46476d98702df2e142711).
--
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