Commit Graph

2644 Commits

Author SHA1 Message Date
Sawkez
295ca921c4 implement joystick hotplugging
(cherry picked from commit 9dcc2e48fa)
2026-09-02 11:52:56 -07:00
Sam Lantinga
2ca5446cd4 Fixed reading the factory stick calibration for Nintendo Switch controllers
(cherry picked from commit 8d6c456fb3)
2026-08-27 11:43:42 -07:00
sxvlsl
7fc7c9b0e8 joystick: Add VKB Gladiator NXT Evo to the flight stick device list
(cherry picked from commit 6a3062fd6c)
2026-08-26 07:44:28 -07:00
Sam Lantinga
8b7cf83909 Added a Windows mapping for the Gamesir-G5
Fixes https://github.com/libsdl-org/SDL/issues/16190

(cherry picked from commit 6648b7966c)
2026-08-24 13:19:30 -07:00
Sam Lantinga
15fff4770a Added detection for Turtle Beach Xbox 360 controllers
(cherry picked from commit 05a0cb5894)
2026-08-24 13:09:52 -07:00
Eri the Switch
98e0329ad9 joystick: Accept partial user calibration for sticks on Switch controllers
This allows user stick calibration to be applied on JoyCons and possibly
partially user calibrated Pro controllers.

(cherry picked from commit fb8a32cc75)
2026-08-24 09:54:37 -07:00
zuiki_inn
095ac35986 add EVOTOP AXIS controller support (#16117)
(cherry picked from commit f1c274038b)
2026-08-05 07:29:48 -07:00
Sanjay Govind
f16d4e81ea Add support for GIP instruments via hidapi, and drums via gameinput (#16009)
(cherry picked from commit 7010faef34)
2026-08-02 16:28:28 -07:00
Sam Lantinga
1fc5a58e3a GameInput: don't say the device is present if we won't handle it
(cherry picked from commit 71d0d069ed)
2026-08-02 15:57:17 -07:00
Alynne
c9ad296376 Add Retro Fighters D6 mappings (#16048)
(cherry picked from commit 091261b3bd)
2026-07-23 11:35:56 -07:00
Alynne
6fefc36b21 Support for Retro Fighters Defender Pro (#16045)
(cherry picked from commit b9d64c45a9)
2026-07-23 10:17:44 -07:00
Sam Lantinga
dcea23748a Corrected the name of the Razer Raiju V3 Pro controller
Fixes https://github.com/libsdl-org/SDL/issues/16028

(cherry picked from commit c70f111295)
2026-07-21 07:48:05 -07:00
Sam Lantinga
558f62eb07 Don't accidentally switch the Horipad Mini into Switch report mode
The PS3 probing switches the HORI Horipad Mini into Nintendo Switch report mode, which we don't recognize since it's still using the Xbox 360 endpoint.

(cherry picked from commit 2d7f300783)
2026-07-14 15:37:05 -07:00
Nintorch
5311486a9a Emscripten: Convert joystick axis 9 to a hat
(cherry picked from commit d11e3e087a)
2026-07-11 08:01:54 -07:00
Sam Lantinga
dcb3da5489 Revert "Cygwin: Reduce warning"
This reverts commit 3eb9b5e49a.
2026-07-09 09:14:38 -07:00
Tim Stahlhut
3eb9b5e49a Cygwin: Reduce warning
[sdl-ci-filter cygwin]
[sdl-ci-filter msys2-*]
[sdl-ci-filter msvc-*]

(cherry picked from commit bb74b618ac)
2026-07-09 09:04:00 -07:00
ExtremelyLazyCat
4f629701fb Add Mayflash N64 Controller Adapter mapping
(cherry picked from commit 5403934fd3)
2026-07-07 14:05:17 -07:00
Sam Lantinga
ffc7381337 Only skip the Flydigi driver when checking to see if a device is handled by HIDAPI
(cherry picked from commit cf6a235a41)
2026-07-07 09:30:49 -07:00
Sam Lantinga
b18591f4a0 Fixed the 8BitDo Pro 3 controller showing up twice on macOS
Fixes https://github.com/libsdl-org/SDL/issues/15890

(cherry picked from commit 03f81ab4aa)
2026-07-06 17:04:42 -07:00
8BitDo
1ac361c3fe support 8bitdo ultimate 3 (#15927)
(cherry picked from commit efa0e2d5ed)
2026-07-06 05:51:06 -07:00
BZL
03d17f40bf Add Void GENESIS controller support
Add AndGAMER/Void Gaming USB IDs for Void GENESIS.

Recognize the Void GENESIS SInput VID/PID pair and set its device name.
Add DirectInput gamepad mappings for the wired and dongle DirectInput modes.

(cherry picked from commit 111bb79bf8)
2026-06-27 20:12:20 -07:00
Vicki Pfau
3bbbc946de Fix discrete Joy-Con mappings on Linux
(cherry picked from commit ca67f19c8f)
2026-06-17 20:49:55 -07:00
Pierre de La Morinerie
f53ea45d43 SDL_joystick: add Austgame adapter to gamecube devices
"Austgame GameCube to USB converter" is an GameCube-to-USB adapter.

(cherry picked from commit 51e214a012)
2026-06-14 08:44:01 -07:00
Nintorch
b7c986a164 Add normalized name for Emscripten joysticks
(cherry picked from commit 7bbd9d5c2c)
2026-06-13 07:20:53 -07:00
Nintorch
6cdec7ac09 Fix Xbox One controller detection on the web
(cherry picked from commit 4f031ea5da)
2026-06-12 09:04:16 -07:00
Nintorch
1731bb0d8e Fix web crash for joystick without vibration
(cherry picked from commit 4a0d66116f)
2026-06-12 08:53:45 -07:00
Nintorch
fdab62170e Fix JoyCon pair type detection on the web
(cherry picked from commit 5e54decf53)
2026-06-12 07:44:56 -07:00
Nintorch
d4d6f50736 Don't modify the driver signature on the web
(cherry picked from commit 95dafa2bcd)
2026-06-12 07:43:29 -07:00
Sam Lantinga
fcb29e4fb4 Added support for Xbox controllers via libusb on macOS
A number of third party Xbox controllers are not supported by macOS, but work with libusb and the SDL HIDAPI driver.

(cherry picked from commit 18fc4d931a)
2026-06-10 13:12:29 -07:00
Alejandro Perez
dd1032282e Add Corsair as valid PS controller
(cherry picked from commit 14b0e9d922)
2026-06-09 19:50:04 -07:00
Sam Lantinga
7cb03cfdc5 Fixed a hang reading the Xbox report descriptor on macOS
(cherry picked from commit 64998d2bc8)
2026-06-09 11:13:20 -07:00
Sam Lantinga
94ba53758f Fixed the Xbox 360 Controller showing as a Steam Virtual Gamepad on macOS
(cherry picked from commit c62cc657a2)
2026-06-09 10:34:15 -07:00
QwertyChouskie
c3fda242fd SDL_hidapi_xbox360.c: Fix Y axis inversion on macOS (#15792)
Originally, macOS had opposite Y axis inversion as every other platform, likely to correct for an issue with the virtual gamepad reported by the old 360Controller driver.

Wired Xbox 360 controllers using native macOS drivers were first reported to be broken in https://github.com/libsdl-org/SDL/issues/11002.  The inversion was removed in 7da728a642, presumably breaking 360Controller usage, but fixing wired 360 controller using the new native support in macOS 15 and above.  However, this change was reverted without explanation in d7b1ba1bfc which added explicit support for the Steam Virtual Gamepad.  Presumably, Steam on macOS reports inverted Y axes to match what SDL expected on the platform.  However, this reversion broke the native macOS controller support.  The incorrect inversion also breaks using off-brand 360-class gamepads via the libusb backend of HIDRAW.

(cherry picked from commit 157c839139)
2026-06-09 10:15:20 -07:00
QwertyChouskie
3ca28ce521 Respect SDL_HINT_JOYSTICK_MFI
(cherry picked from commit 0bd95b0430)
2026-06-09 07:34:40 -07:00
Sanjay Govind
43fa2bdcad Add GIP vids and pids for stage tour instruments (#15788)
(cherry picked from commit 3f80c0b82a)
2026-06-08 22:08:53 -07:00
Sanjay Govind
218522e123 Add PID for red octane games, as they support sony detection
(cherry picked from commit 205777210e)
2026-06-08 20:24:23 -07:00
Nintorch
0ccd792a5d Add mappings for NES Switch controllers on Linux
(cherry picked from commit 2fd15d9e0d)
2026-06-05 08:56:45 -07:00
Zizin13
3b6f122830 Fix DirectInput POV handling for devices with extra hats
(cherry picked from commit 7341f04a12)
2026-06-04 12:23:49 -07:00
Thad House
b152feee3f Enable extra player LED sets for PS5 Controllers
(cherry picked from commit 0c8feecce6)
2026-06-04 08:05:59 -07:00
Nintorch
c2567e5db5 Fix web joystick vibration (again)
(cherry picked from commit 96c03dc66e)
2026-05-31 14:28:04 -07:00
Nintorch
825d6f8232 Fix web joystick vibration on Safari
(cherry picked from commit e0eb40f65f)
2026-05-31 14:27:52 -07:00
Cameron Gutman
6dbdb94cae joystick: Fix conflicting rumble and LED on Sony PS4 gamepads
(cherry picked from commit 189877b1d3)
2026-05-30 17:21:03 -07:00
Vicki Pfau
30c2648fbe joystick: Fix underflow with 0 delta timestamp
Some sensors will occasionally report two identical timestamps in a row.
This leads to the timestamp wrapping calculation to underflow, subtracting
0x80000000 from the timestamp whenever it happens. By adjusting the wrap
test, we can just directly add zero to the timestamp, fixing the underflow.

(cherry picked from commit 687a59f277)
2026-05-29 21:48:44 -07:00
replicacoil
11cb97888b Added rumble to Gamecube Adapter PC_Mode (#15431)
(cherry picked from commit c43ab978fd)
2026-05-29 17:29:19 -07:00
Sam Lantinga
f38994c15c Fixed Steam Controller not detected on macOS under Steam
(cherry picked from commit 8a701808a6)
2026-05-29 12:13:54 -07:00
tmkk
5e55c12d78 Detect steam virtual gamepads more accurately on macOS
(cherry picked from commit bbcc205de9)
2026-05-29 12:13:49 -07:00
tmkk
cefdc61f5e Bring back support for 360Controller driver on macOS
(cherry picked from commit 50d0e2ede2)
2026-05-29 12:13:10 -07:00
Sam Lantinga
bfdd7ee8b4 Fixed detecting the Steam virtual gamepad when HIDAPI is disabled
(cherry picked from commit ec0066aa0b)
2026-05-29 10:56:38 -07:00
Sam Lantinga
45c28b2eb9 Added HIDAPI support for the PDP Afterglow Wave Wireless Controller for Switch
(cherry picked from commit ed6e03436e)
2026-05-29 09:56:21 -07:00
Sam Lantinga
6675ea9147 Added DEBUG_STEAM_PROTOCOL for the new Steam Controller
(cherry picked from commit 634dff3725)
2026-05-28 19:51:56 -07:00