hax0kartik / rehid

HID module rewrite(button remapping and more)
104 stars 7 forks source link

fix turbo, maybe #29

Open underscoreevelyn opened 10 months ago

underscoreevelyn commented 10 months ago

Consider this a bug report, as well as a proposed fix.

The current turbo implementation is buggy, or at least confusing. Holding down a turbo combo causes the state field on the turbo object to cycle with each poll, which causes the rapidly firing button to become locked on seemingly at random each time you press the combo. The turbo button is also only marked as pressed for a single poll, which causes problems with some games.

This PR addresses both issues. Pressing and holding the combo in the press field of a turbo object will cause the combo in the get field to fire rapidly as before, and releasing it will always stop the firing. The duty cycle of the button presses has also been increased to 50%, which solves the presses not being registered in some games. If the locking behavior of the original implementation was intentional, I'd at least like this behavior to be toggleable, just because I prefer it like this.

underscoreevelyn commented 10 months ago

Hmm, I commited a clangd formatting by accident and it changed all the indenting, whoops. Feel free to ignore 214224b, all it does is change macro names.

eku commented 10 months ago

Hmm, I commited a clangd formatting by accident and it changed all the indenting, whoops. Feel free to ignore 214224b, all it does is change macro names.

So please redo you PR.