UnleashedRecomp icon indicating copy to clipboard operation
UnleashedRecomp copied to clipboard

Add support for SXS (DualShock 3)

Open CheezyFriez12 opened this issue 11 months ago • 2 comments

Dshidmini, an application that makes it easier to connect PlayStation 3 controllers to PC, has the option to use SXS instead of Xinput, which behaves like the official DualShock 3 drivers. This is mainly used by Steam and RPCS3, where Steam can identify that it is a DualShock 3, and RPCS3 can use some of the unique functions of the controller, such as pressure sensitive buttons. I don't always use my DS3, but when I do, I use it with SXS for convenient operation alongside steam big picture mode. I just think it would be neat if Unleashed Recomp could detect SXS devices and use the proper button glyphs automatically.

CheezyFriez12 avatar Mar 09 '25 16:03 CheezyFriez12

I've done a bit of research regarding this. This project does use SDL_HINT_JOYSTICK_HIDAPI_PS3 to handle PS3 Controller Support-- but it won't work on Windows due to driver limitations, this might work on Linux.

But: that issue has been overcome in SDL3, it is possible to include a SDL_HINT_JOYSTICK_HIDAPI_PS3_SIXAXIS_DRIVER for it, which will allow sixaxis.sys support (also compatible with DsHidMini's version). For that to occur: it requires the entire project upgrade to SDL3.

In the meantime: I've been working on improving Button prompt detection so that it'll play nicely with Steam Input (and grabbing Device ID in general), which should remedy your issue for the time being. https://github.com/hedge-dev/UnleashedRecomp/pull/1086

AL2009man avatar Mar 09 '25 18:03 AL2009man

In the meantime: I've been working on improving Button prompt detection so that it'll play nicely with Steam Input (and grabbing Device ID in general), which should remedy your issue for the time being. https://github.com/hedge-dev/UnleashedRecomp/pull/1086

Honestly, I had no idea that non Steam games could even interact with Steam Input. Cool!

CheezyFriez12 avatar Mar 10 '25 15:03 CheezyFriez12