mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-07-03 21:41:26 +12:00
Logitech G27 update bit 86 shifter_pressed behavior
This commit is contained in:
parent
5deb0fcbc6
commit
c5e40dde74
1 changed files with 10 additions and 2 deletions
|
@ -751,8 +751,16 @@ void usb_device_logitech_g27::interrupt_transfer(u32 buf_size, u8* buf, u32 endp
|
||||||
set_bit(buf, 82, true);
|
set_bit(buf, 82, true);
|
||||||
// shifter connected
|
// shifter connected
|
||||||
set_bit(buf, 83, true);
|
set_bit(buf, 83, true);
|
||||||
// shifter stick down
|
/*
|
||||||
set_bit(buf, 86, shifter_press);
|
* shifter pressed/down bit
|
||||||
|
* mechanical references:
|
||||||
|
* - G29 shifter mechanical explanation https://youtu.be/d7qCn3o8K98?t=1124
|
||||||
|
* - same mechanism on the G27 https://youtu.be/rdjejtIfkVA?t=760
|
||||||
|
* - same mechanism on the G25 https://youtu.be/eCyt_4luwF0?t=130
|
||||||
|
* on healthy G29/G27/G25 shifters, shifter is mechnically kept pressed in reverse, the bit should be set
|
||||||
|
* the shifter_press mapping alone captures instead a shifter press without going into reverse, ie. neutral press, just in case there are games using it for input
|
||||||
|
*/
|
||||||
|
set_bit(buf, 86, shifter_press | shifter_r);
|
||||||
|
|
||||||
buf[3] = (steering << 2) | buf[3];
|
buf[3] = (steering << 2) | buf[3];
|
||||||
buf[4] = steering >> 6;
|
buf[4] = steering >> 6;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue