|
7708bf0f
|
2022-09-01T08:18:58
|
|
Try matching game controller mappings on CRC and version and fall back to no CRC and no version, in that order.
We do exact match when adding mappings, but loose matching everywhere else we look up a mapping for a GUID.
|
|
7861f924
|
2022-08-31T13:34:43
|
|
Removed debug print statements
|
|
62f2379e
|
2022-08-31T13:24:23
|
|
Try up to 20 times to read the controller type
It takes a while for Joy-Cons to initialize when plugged in via the Nintendo Joy-Con Charging Grip.
|
|
e5f161bd
|
2022-08-30T19:12:22
|
|
Restored accidentally removed code to guess XInput device
|
|
973a677a
|
2022-08-31T02:32:28
|
|
SDL_xinputjoystick.c: commented out GuessXInputDevice()
Not used since commit 277b033e78235d6ffad7525a1fb9acfef3a43433.
|
|
42d09a8f
|
2022-08-30T13:54:32
|
|
wgi: refcount the delegate objects
|
|
ca915b18
|
2022-08-30T13:54:58
|
|
WGI_JoystickUpdate: bounds-check array sizes
|
|
cdaafcec
|
2022-08-30T14:56:11
|
|
The Kinvoca Joy-Cons are handled by the Joy-Con driver, not the Switch Pro driver.
|
|
b2c3237b
|
2022-08-30T14:14:38
|
|
Added support for the Kinvoca Joy-Cons
These report their VID/PID as a Nintendo Switch Pro controller, but they are actually left/right Joy-Cons. We'll fix up the joystick GUID so applications can handle them appropriately.
|
|
92d3fc48
|
2022-08-30T12:58:38
|
|
Fixed deadlock when shutting down the Windows joystick system
|
|
0e4baf1c
|
2022-08-30T12:39:23
|
|
Don't crash if SDL functions are passed a closed joystick or gamecontroller
|
|
675d90c7
|
2022-08-30T12:09:07
|
|
Revert "wgi: refcount the delegate objects"
This reverts commit ff233fe3060e51706937a7b366438403bce774a4.
This doesn't compile cleanly with Visual Studio and I don't want to introduce any subtle issues because we're passing the wrong types of pointers to WGI functions.
|
|
40bd4fee
|
2022-08-30T11:42:13
|
|
Revamped joystick locking
This makes the joystick locking more robust by holding the lock while updating joysticks.
The lock should be held when calling any SDL joystick function on a different thread than the one calling SDL_PumpEvents() and SDL_JoystickUpdate().
It is now possible to hold the lock while reinitializing the joystick subsystem, however any open joysticks will become invalid and potentially cause crashes if used afterwards.
Fixes https://github.com/libsdl-org/SDL/issues/6063
|
|
ff233fe3
|
2022-08-28T22:20:58
|
|
wgi: refcount the delegate objects
assert if calls become unbalanced.
|
|
2f08bf23
|
2022-08-29T22:15:35
|
|
Added the share button to the Linux mapping for the third party Nintendo Switch Pro controllers
|
|
b2ac758f
|
2022-08-29T17:33:00
|
|
Added support for the Hori Fighting Stick Alpha to the HIDAPI driver
|
|
e8cb4da7
|
2022-08-26T12:28:33
|
|
Add utility function to detect if SDL is inside a sandbox
Refactor the previous sandbox check in a standalone function that also
includes Snap support.
Signed-off-by: Ludovico de Nittis <ludovico.denittis@collabora.com>
|
|
1153aaae
|
2022-08-29T00:15:56
|
|
Fixed compiling with USB_GET_DEVICEINFO on DragonFly BSD
Although the ioctl() currently fails on this platform...
|
|
57cbec10
|
2022-08-28T23:18:40
|
|
Added controller mappings for Xbox 360, PS4, and PS5 controllers on OpenBSD
Removed the axis flipping hack for Xbox controllers which would actually apply to any controller with a full 16-bit range.
Fixes https://github.com/libsdl-org/SDL/issues/6143
|
|
0b8b321f
|
2022-08-28T23:01:30
|
|
Allow the product version to be different when trying to find a controller mapping
This is in the hope that revving the product version doesn't change the mapping, which is the case for some devices. In cases where it does, we just need to provide a mapping for each version of the product.
|
|
761b9d1e
|
2022-08-28T22:33:17
|
|
Use the HID usage for the button as the button number
|
|
bac8df4a
|
2022-08-28T17:55:49
|
|
Fixed memory leak when out of memory
|
|
ffbad361
|
2022-08-28T16:21:05
|
|
Use the correct type for the device_instance
|
|
4a800ae1
|
2022-08-28T16:11:12
|
|
Created a consolidated define enabling BSD gameport joystick support
|
|
42f90c62
|
2022-08-28T16:01:03
|
|
Removed unused path variable
|
|
a9d3935a
|
2022-08-28T18:17:50
|
|
Improved code to get the name and guid for joysticks on OpenBSD and NetBSD
Also dynamically allocate joysticks to reduce static memory usage
|
|
32700294
|
2022-08-28T17:56:11
|
|
Don't crash if SDL_CreateJoystickGUID() is passed a NULL name
|
|
b7c1fbf9
|
2022-08-28T17:38:02
|
|
WGI: Fix a couple of reference leaks
|
|
0db18130
|
2022-08-28T07:27:01
|
|
Applied OpenBSD patch
http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/ports/devel/sdl2/patches/patch-src_joystick_bsd_SDL_bsdjoystick_c?rev=1.5&content-type=text/plain&hideattic=1
|
|
3cbfd75d
|
2022-08-27T18:55:55
|
|
Re-added the CRC to the joystick guid
This is now used as a crc field in the mapping rather than directly in mapping guids, for better mapping compatibility between versions of SDL.
Added SDL_GetJoystickGUIDInfo() to get device information encoded in a joystick GUID, so that mapping programs can clear the CRC from the GUID when generating mappings.
sort_controllers.py has been updated to extract the CRC from mappings created by older mapping programs and convert it into the new crc field. It will also take the CRC into account when checking for duplicate mappings.
Also regenerated the GUIDs for the PS2/PSP/Vita controller mappings, fixing https://github.com/libsdl-org/SDL/issues/6151
|
|
b188a916
|
2022-08-27T09:46:28
|
|
Fixed uhid device name for non-OpenBSD platforms
|
|
3f93ec47
|
2022-08-26T20:52:56
|
|
Add support for OpenBSD's ujoy(4)
|
|
9a01eac5
|
2022-08-26T13:45:05
|
|
Temporarily disable joystick GUID CRCs
|
|
f6c2c22d
|
2022-08-25T22:25:25
|
|
Don't try to use the charging port for the PowerA wireless controller as an input device
|
|
f1aa8434
|
2022-08-25T21:51:20
|
|
Don't report rumble capability for Nintendo Online controllers
|
|
babaa7d2
|
2022-08-24T16:10:47
|
|
Fixed PS3 accelerometer values on little endian systems
|
|
05983fb8
|
2022-08-24T15:03:12
|
|
Add Mayflash PC043 adapter
|
|
e7332cd8
|
2022-08-24T15:28:56
|
|
Fixed zero CRC matching in the controller mapping database
|
|
97034471
|
2022-08-24T09:39:01
|
|
Fixed the Nintendo Switch Pro mappings on iOS/tvOS
|
|
1fc7f681
|
2022-08-24T06:38:36
|
|
Document that it's not possible to use the HIDAPI driver for PS3 controllers on Windows
|
|
645b0f6a
|
2022-08-24T01:30:29
|
|
Enable HIDAPI PS3 support by default on macOS
|
|
3d62ebdb
|
2022-08-24T00:34:30
|
|
Fixed HIDAPI PS3 support on macOS
|
|
aaee6e24
|
2022-08-23T22:56:32
|
|
Added missing file
|
|
b6f96b69
|
2022-08-23T22:45:37
|
|
Initial HIDAPI driver support for the PS3 controller
|
|
b6a3d762
|
2022-08-23T07:24:21
|
|
Look up mappings by GUID in two passes: first with CRC, second without
|
|
277b033e
|
2022-08-22T19:28:21
|
|
Refactor joystick GUID creation
|
|
c1e08739
|
2022-08-22T16:46:55
|
|
Added the CRC of the joystick name to the GUID
This will make it possible to have mappings for different controllers
that have the same VID/PID. This happens frequently with some generic
controller boards that have been reused in many products.
Fixes https://github.com/libsdl-org/SDL/issues/6004
|
|
b2819e43
|
2022-08-22T13:10:57
|
|
Send SDL_CONTROLLERDEVICEREMOVED for all joysticks because we don't know after the fact whether it was a game controller.
Fixes https://github.com/libsdl-org/SDL/issues/2092
|
|
5a3adbfd
|
2022-08-19T11:11:25
|
|
Added the hint SDL_HINT_JOYSTICK_HIDAPI_XBOX_360_PLAYER_LED to control whether the player LED is set on Xbox 360 controllers
|
|
52b6899a
|
2022-08-19T11:11:23
|
|
Added hints for more fine grained control over HIDAPI Xbox controller support
|
|
9670d2bb
|
2022-08-15T17:27:33
|
|
Make sure we hold the joystick lock when disconnecting a HIDAPI joystick
This prevents crashes when calling SDL joystick API functions from a different thread while disconnection is happening.
See https://github.com/libsdl-org/SDL/issues/6063 for a more thorough review of joystick locking.
|
|
c6c688ab
|
2022-08-14T14:55:32
|
|
Add SDL_JOYBATTERYUPDATED event to SDL_JoystickEventState()
|
|
cfbeb438
|
2022-08-12T21:05:37
|
|
fix a bug if XINPUTGETBATTERYINFORMATION is nullptr
|
|
bf925b9e
|
2022-08-11T14:41:48
|
|
Fixed build
|
|
24f97dd7
|
2022-08-11T14:39:49
|
|
Added an SDL error to SDL_GameControllerMapping* functions
|
|
879af7b5
|
2022-08-10T14:01:23
|
|
Fixed mapping for paired Joy-Con controllers on iOS
|
|
e49321ce
|
2022-08-10T08:20:54
|
|
Fixed double-free in combined HIDAPI controller code
|
|
9ff498e7
|
2022-08-10T06:00:30
|
|
Make HIDAPI_JoystickOpen() more robust against internal logic errors
Fixes https://github.com/libsdl-org/SDL/issues/6030
|
|
8e782876
|
2022-08-09T21:30:11
|
|
Fixed spamming the controller with reset IMU commands when they are failing
|
|
eab27b90
|
2022-08-09T17:58:42
|
|
Make sure Switch controller initialization is synchronous and start the input timeout then
|
|
1db7d33d
|
2022-08-09T17:04:26
|
|
Recover from Bluetooth devices temporarily out of range
|
|
6d012b2a
|
2022-08-09T16:54:11
|
|
Better fix for rescanning devices after read failure
|
|
483a010f
|
2022-08-09T15:39:39
|
|
Fixed accidentally deadlocking the rumble thread with combined Joy-Cons
Also added more accurate check for sensor data. At least one axis will always have acceleration because of gravity.
|
|
5d63a3d4
|
2022-08-09T14:06:49
|
|
Re-enumerate devices if a read fails
This allows combined Joy-Con devices to immediately separate if one of them is disconnected
|
|
da50f1bd
|
2022-08-09T14:05:43
|
|
Bluetooth devices can recover from over a second of dropped reports
|
|
824f2d46
|
2022-08-09T13:41:58
|
|
Added a second hint SDL_HINT_JOYSTICK_HIDAPI_JOYCON_HOME_LED to control the Home button LED on Nintendo Joy-Con controllers separately from Nintendo Switch Pro controllers
|
|
8aa6922f
|
2022-08-09T13:25:52
|
|
Fixed detecting Bluetooth disconnection on Nintendo Switch controllers
|
|
201484ff
|
2022-08-09T09:03:28
|
|
Don't duplicate the serial number twice if a child doesn't set one
|
|
d90c0d41
|
2022-08-09T09:00:29
|
|
Include the child serial numbers in the serial number for a HIDAPI combined device
|
|
55882e43
|
2022-08-09T00:19:02
|
|
Fixed invalid read when SDL_GameControllerSetPlayerIndex() is passed a negative player_index
|
|
df537a7c
|
2022-08-09T00:18:19
|
|
SDL_GameControllerSetPlayerIndex(gamecontroller, -1) means turn off the player LED if possible
|
|
5545be85
|
2022-08-08T23:44:50
|
|
The player LED index wraps for PS5 controllers, like it does for other controller types
|
|
593d20d9
|
2022-08-08T20:11:43
|
|
Removed debug logging
|
|
6204ae50
|
2022-08-08T20:09:49
|
|
Restart the IMU if the controller stops sending gyro/accel data
|
|
d58bec72
|
2022-08-08T17:19:12
|
|
Fixed Joy-Con gyro axes in mini-gamepad mode
|
|
5aa438e8
|
2022-08-08T14:52:19
|
|
WGI: fix interop with applications that have their own WGI code
QI for Added/Removed events need to handle IAgileObject
|
|
ada55c69
|
2022-08-08T15:38:19
|
|
Fixed Joy-Con type detection for the Nintendo Joy-Con Charging Grip
|
|
47ebf008
|
2022-08-08T08:35:56
|
|
Fixed shadow variable warning
|
|
0a307628
|
2022-08-08T13:14:48
|
|
Fix wrong mapping in some ps2 controller keys
|
|
8f05b4f8
|
2022-08-08T08:26:21
|
|
Fixed iOS/tvOS build
|
|
87825972
|
2022-08-08T08:22:20
|
|
Added SDL_GameControllerType enumeration for Nintendo Switch Joy-Con controllers
|
|
4f19421e
|
2022-08-07T20:17:40
|
|
Fixed build
|
|
29265d07
|
2022-08-07T18:49:30
|
|
Use SDL_GetStringBoolean() to parse the hint value
|
|
198d62d8
|
2022-08-06T23:53:18
|
|
joystick: remove unused Xbox Controller Keyboard VID/PID.
0x045e, 0x0b02 - is actually virtual keyboard that is generated by XboxGip drivers for Xbox One Controllers.
Closes https://github.com/libsdl-org/SDL/pull/5121
|
|
52bf5b1d
|
2022-08-06T10:34:19
|
|
Added the hint SDL_HINT_JOYSTICK_HIDAPI_SWITCH_PLAYER_LED to control whether the player LED is set on Nintendo Switch controllers
|
|
f810dede
|
2022-08-06T09:50:13
|
|
Fixed comment so script processing works correctly
|
|
3da131c1
|
2022-08-05T21:07:54
|
|
Check if port if closed and open it again
|
|
d6a8b43c
|
2022-08-05T10:37:38
|
|
Added support for the HORIPAD FPS for Nintendo Switch
|
|
4a9ceb7b
|
2022-08-04T11:33:36
|
|
The HORIPAD S uses the Xbox 360 protocol on all platforms and shows up as multiple styles of controller, depending on what model you have.
|
|
28c01955
|
2022-08-04T10:46:37
|
|
Fixed button mapping for the HORIPAD S
This controller actually comes in at least two flavors: a GameCube controller and an arcade pad, neither of which should have the face buttons remapped.
|
|
40b71431
|
2022-08-04T10:24:03
|
|
Fixed button mapping for the HORIPAD S controller
This controller looks like a GameCube controller, is actually a Nintendo Switch controller, and shows up as an XInput device on Windows with the buttons already in the correct location.
|
|
43b90484
|
2022-08-04T00:40:38
|
|
Retry a little longer when writing to the Nintendo Joy-Con Charging Grip
|
|
dfd2c574
|
2022-08-03T22:27:43
|
|
Removed unused variable
|
|
a2b4f440
|
2022-08-03T22:27:42
|
|
The Nintendo Wii Remote Pro Controller respects the SDL_GAMECONTROLLER_USE_BUTTON_LABELS hint
|
|
c84dea09
|
2022-08-03T22:12:21
|
|
Fixed detecting the controller type of controllers over USB
|
|
ba297f12
|
2022-08-03T21:46:01
|
|
Use the Nintendo controller type to determine whether to always use button labels
|
|
946f4777
|
2022-08-03T21:33:38
|
|
Don't set Bluetooth controllers to wired power level
|
|
57c3b2c9
|
2022-08-03T21:31:12
|
|
Don't rely on the device VID/PID to get the Nintendo controller type
The Nintendo Online Sega Genesis controller reports the SNES VID/PID over Bluetooth. This is a more robust way of handling future controllers as well, so let's go with this instead.
Also use full reports over Bluetooth, and don't report gyro for Nintendo Online classic controllers.
|
|
b6aadb16
|
2022-08-03T20:38:33
|
|
Added k_eSwitchDeviceInfoControllerType_N64 to ESwitchDeviceInfoControllerType
|
|
bdfb32de
|
2022-08-03T20:30:58
|
|
Added some additional Nintendo controller types to ESwitchDeviceInfoControllerType
|