Put together an implementation. Works good on my hardware. Here were the required changes
dinput
�� - always DIERR_ACQUIRED if trying to set autocenter��and acquired
�� - send a stop to all effects on acquire if autocenter is off
bus{sdl,udev}
�� - enable autocenter��on reset
�� - disable autocenter��on stop all effects
https://gitlab.winehq.org/wine/wine/-/merge_requests/4830
The prior code didn't DIERR_ACQUIRED if it was in exclusive mode, but Windows does. This behaviour is what makes it easy to implement as it means you only have to deal with��autocenter during an acquire��where you can just do a stop all effects as only autocenter is running.