Sam Lantinga
80021c21b6
Speculatively disable rumble on the Razer Panthera Evo, which doesn't have rumble motors and probably hangs in the same way the Panthera does.
2018-09-05 15:28:06 -07:00
Sam Lantinga
96259f1f85
Don't overwrite the default binding when changing the binding for a controller that was using the default.
2018-09-05 12:16:01 -07:00
Sam Lantinga
963e74d68c
Added binding for Mad Catz FightStick TE S+ (PS3) on Mac OS X
2018-09-05 11:24:23 -07:00
Sam Lantinga
c152e380be
Added support for the Razer Panthera Fightstick
...
Fixed bindings for the Mad Catz FightStick TE S+
2018-09-05 11:18:50 -07:00
Sam Lantinga
34237b80f4
Better fix to make sure we're only returning controllers from the HIDAPI joystick API
2018-08-31 18:10:21 -07:00
Sam Lantinga
4ffcd88ca2
Removed VID/PID 0x1532/0x0037, which was listed in the Linux kernel as a Razer Sabertooth, because at least one variant of the Razer DeathAdder mouse shows up with this VID/PID.
2018-08-31 17:47:34 -07:00
Sam Lantinga
5ef8eb49be
Don't show the Razer Raiju sound interface as a game controller
2018-08-29 20:55:02 -07:00
Sam Lantinga
207428b444
Don't rumble Bluetooth PS4 controllers by default, as that switches the controller into extended input report mode, which breaks games that use DirectInput.
2018-08-29 20:23:39 -07:00
Sam Lantinga
16ccff3c56
Fixed whitespace
2018-08-29 20:23:36 -07:00
Sam Lantinga
fda14741ac
Fixed Xbox One S Bluetooth support on Mac OS X
2018-08-29 18:56:54 -07:00
Sam Lantinga
708ad1fd8d
Fixed updating the rumble parameters on Linux
2018-10-16 14:58:07 -07:00
Sam Lantinga
62f806ed6c
This device gets Xinput driver loaded on windows.
2018-10-08 19:46:01 -07:00
Sam Lantinga
f01cdcedbc
It turns out HIDAPI for Xbox controllers doesn't allow background input, so we won't enable it by default on Windows.
2018-10-05 01:41:59 -07:00
Sam Lantinga
41ee51b9a8
Fixed updating bindings for controllers using the wildcard mappings
2018-10-04 15:23:42 -07:00
Sam Lantinga
1944556171
Make sure we don't read and write to HIDAPI at the same time, it's not thread-safe on Windows
2018-10-02 20:51:33 -07:00
Sam Lantinga
6b3f11e2a3
Fixed code style
2018-08-20 21:18:56 -07:00
Ozkan Sezer
90454b1ece
SDL_hidapi_ps4.c: define NTDDI_VISTA / _WIN32_WINNT_VISTA if not defined
...
it still needs a Vista or newer Platform SDK to build, though.
2018-08-16 11:01:02 +03:00
Sam Lantinga
7d3a7ef827
Use a single hint for both Xbox 360 and Xbox One controllers, since they are often the same driver.
2018-08-15 23:35:54 -07:00
Sam Lantinga
a2add1f683
Use the HIDAPI driver for Xbox controllers on Windows, and determine the XInput mapping at runtime for extended functionality like rumble and guide button.
2018-08-15 23:14:45 -07:00
Sam Lantinga
3f5ff751fe
Use a unified name list for Xbox 360 and Xbox One controllers for drivers that can handle both
2018-08-15 23:14:43 -07:00
Sam Lantinga
aad340eb86
Added Windows Xbox controller state packet handling, for completeness.
2018-08-15 19:53:36 -07:00
Sam Lantinga
63107524f6
Fixed input from the Steam Virtual Gamepad on Mac OS X
2018-08-15 19:53:34 -07:00
Sam Lantinga
0903e83553
Use SDL specific window class to avoid conflicting with Steam
2018-08-15 19:53:31 -07:00
Sam Lantinga
c88666580e
Catch device removal as well as device arrival on Windows
2018-08-15 19:53:30 -07:00
Sam Lantinga
641c674f2a
Turned off debug messages
2018-08-15 19:53:28 -07:00
Sam Lantinga
51902010c6
Remove the HIDAPI device if we get a read error from it
...
This fixes detecting PS4 controller disconnect on Mac OS X, where there isn't any device removed notification
2018-08-15 19:53:26 -07:00
Sam Lantinga
dfbd7f65a9
Fixed Mac OS X build
2018-08-15 19:53:24 -07:00
Sam Lantinga
ec74c318b9
Polling hid_enumerate() every 3 seconds causes freezes and stutters on some USB audio devices and mice.
...
We'll only enumerate devices when we get notification that the system devices have changed
2018-08-15 19:53:22 -07:00
Ryan C. Gordon
67a48ad13a
haiku: Patched to compile with new joystick interfaces.
2018-08-10 15:04:08 -04:00
Ryan C. Gordon
e1ac643b32
bsd: Patched to compile.
...
(I think.)
2018-08-10 14:54:26 -04:00
Ryan C. Gordon
67764070f0
bsd: Update joystick code for new interfaces.
...
(this is an untested push to see if buildbot likes it.)
2018-08-10 14:42:40 -04:00
Ryan C. Gordon
b692c35237
emscripten: Patched to compile with new joystick interfaces.
2018-08-10 14:32:30 -04:00
Ryan C. Gordon
941f8ecffd
joystick: define inline to SDL_INLINE
2018-08-10 14:10:47 -04:00
Ryan C. Gordon
0b2863d45e
joystick: #if 0'd out some things that aren't currently used.
...
Fixes some compiler warnings.
2018-08-10 14:09:44 -04:00
Ozkan Sezer
a7c3d2af81
SDL_hidapi_ps4.c: lowercase windows header names.
2018-08-10 11:50:55 +03:00
Sam Lantinga
4f41f07d43
Added missing files from previous commits
2018-08-09 16:05:48 -07:00
Sam Lantinga
31b0224397
Added notes that this code was contributed by Valve
2018-08-09 16:04:45 -07:00
Sam Lantinga
99759bac82
There's no controller that's supported by both XInput and HIDAPI
2018-08-09 16:04:34 -07:00
Sam Lantinga
ab07ce1166
Don't update the device list for devices we know aren't supported
...
This should reduce HID enumeration (hitting the USB bus) if for some reason we're getting spammed with false device insert/removal events
2018-08-09 16:04:30 -07:00
Sam Lantinga
28e0c0eef7
Sam Lantinga <slouken@libsdl.org> 2018-08-06 13:00 -0700
...
Backed out changeset 794a209b2270
http://hg.libsdl.org/SDL/rev/2e2ecdac957c
2018-08-09 16:04:21 -07:00
Sam Lantinga
25a952e76f
Sam Lantinga <slouken@libsdl.org> 2018-08-06 11:58 -0700
...
Removed mapping for VID/PID 0x0079/0x0006, which is a generic PCB used in many different devices
http://hg.libsdl.org/SDL/rev/794a209b2270
2018-08-09 16:04:18 -07:00
Sam Lantinga
888bf1af69
Worked around bug with Sony PS Now PS3 controller where DirectInput polling will continue to return success after the controller is unplugged.
...
The code is now reliant on SDL_PrivateJoystickAdded() and SDL_PrivateJoystickRemoved() being called correctly when devices are added or removed on Windows
2018-08-09 16:03:50 -07:00
Sam Lantinga
f35e97ba8a
Fixed Windows build
2018-08-09 16:03:29 -07:00
Sam Lantinga
d2042e1ed4
Added HIDAPI joystick drivers for more consistent support for Xbox, PS4 and Nintendo Switch Pro controller support across platforms.
...
Added SDL_GameControllerRumble() and SDL_JoystickRumble() for simple force feedback outside of the SDL haptics API
2018-08-09 16:00:17 -07:00
Sam Lantinga
a37d3e0b1e
Backed out changeset 794a209b2270
...
It turns out the mapping is correct, just the name was confusing
2018-08-06 13:00:11 -07:00
Sam Lantinga
cc682f2013
Removed mapping for VID/PID 0x0079/0x0006, which is a generic PCB used in many different devices
...
Different device with same vid/pic that is kind of a Saitek shape:
https://www.trust.com/en/product/17416-gxt-24-runa-compact-gamepad
n64 with same ID
https://bbs.archlinux.org/viewtopic.php?id=163488
PS shaped with numbers for buttons
https://pineight.com/mw/index.php?title=USB_game_controller#DragonRise_Inc._Generic_USB_Joystick
fightstick with same vid/pid
https://retropie.org.uk/forum/topic/7594/bartop-2-player-zero-delay-encoders-not-working
2018-08-06 11:58:08 -07:00
Ryan C. Gordon
862aa4b47d
windows: Fixed some Visual Studio warnings about shadowed variables.
...
Fixes Bugzilla #4118 .
2018-07-22 19:28:27 -04:00
Sam Lantinga
48f7e7f34d
Corrected PS4 controller entry
2018-09-30 22:43:12 -07:00
Ozkan Sezer
5454765a22
replace bool stuff in controller_type.h with SDL_bool.
...
remove bool<->SDL_bool dance in SDL_joystick.c:SDL_IsJoystickSteamController()
after the controller_type.h change.
2018-09-28 17:01:24 +03:00
Ozkan Sezer
fde82e5972
SDL_hidapi_ps4.c: add HAVE_ENDPOINTVOLUME_H check to win32 volume code.
...
this makes it build with my old toolchain with mingw-w64 1.0.10 headers
2018-09-28 14:01:40 +03:00
Sam Lantinga
9aa8a75d26
Fixed building with Xcode 10.0
2018-09-28 01:18:54 -07:00
Sam Lantinga
f964ce03b4
Fixed mingw-w64 build
2018-09-28 01:00:47 -07:00
Sam Lantinga
aa9683bb6f
Added 8bitdo SF 30 PRO controller support for Linux / DInput mode (thanks Frank Hartung)
2018-09-25 19:41:33 -07:00
Ozkan Sezer
870c44bfed
safer this way, just in case..
2018-09-25 09:20:56 +03:00
Sam Lantinga
cd90e2ca58
Fixed bug 4267 - linkage failure with --enable-hidapi because of missing libudev symbols
...
Ozkan Sezer
hidapi dynamic udev initial patch
2018-09-24 16:33:14 -07:00
Sam Lantinga
5febdfcece
Fixed whitespace
2018-09-24 11:49:25 -07:00
Sam Lantinga
d07fe7ad95
Removed button logging message
2018-09-21 09:41:21 -07:00
Sam Lantinga
e8b0859f17
Added missing call to WindowsDeleteString()
2018-09-20 15:55:52 -07:00
Sam Lantinga
600126c90e
Added experimental support for Windows.Gaming.Input
2018-09-19 10:03:40 -07:00
Sam Lantinga
59a2d12cc3
Fixed creating an Android game controller mapping for HIDAPI devices on initialization
2018-09-17 11:35:22 -07:00
Sam Lantinga
6a7b0c27af
Fixed crash launching under Steam on Mac OS X
2018-09-14 12:41:29 -07:00
Ozkan Sezer
33381d3d10
hidapi/SDL_hidapijoystick.c: fix build in C90 mode:
...
src/joystick/hidapi/SDL_hidapijoystick.c: In function 'HIDAPI_InitializeDiscovery':
src/joystick/hidapi/SDL_hidapijoystick.c:281: error: 'true' undeclared (first use in this function)
src/joystick/hidapi/SDL_hidapijoystick.c:281: error: (Each undeclared identifier is reported only once
src/joystick/hidapi/SDL_hidapijoystick.c:281: error: for each function it appears in.)
src/joystick/hidapi/SDL_hidapijoystick.c: In function 'HIDAPI_UpdateDiscovery':
src/joystick/hidapi/SDL_hidapijoystick.c:339: error: 'true' undeclared (first use in this function)
src/joystick/hidapi/SDL_hidapijoystick.c:341: error: ISO C90 forbids mixed declarations and code
2018-09-07 11:03:24 +03:00
Sam Lantinga
864b8f89fa
Merged in community contributed controller mappings from https://raw.githubusercontent.com/gabomdq/SDL_GameControllerDB/master/gamecontrollerdb.txt
2018-06-12 01:04:26 -07:00
Sam Lantinga
1205978244
Added common controllers used with Steam Big Picture
...
These are entirely untested
Several USB ids refer to multiple packaged products. In those cases I tried to use the most common name, or a general name (e.g. PS3 Controller), or a completely generic name (e.g. USB gamepad) if it wasn't clear what type of controller it was.
Patches welcome!
2018-06-12 00:18:10 -07:00
Sam Lantinga
db86e7a633
Added support for the PS3 controller driver in PlayStation Now
2018-06-07 10:54:54 -07:00
Sam Lantinga
ff6aebc4a1
Added a new GUID for DS3 controller connected over bluetooth, for both Sony and Shanwan (thanks William!)
2018-05-29 08:03:44 -07:00
Sam Lantinga
b3173d9d3b
Added support for the NVIDIA SHIELD handheld gaming device
2018-05-23 17:15:37 -07:00
Sam Lantinga
361043a5f6
Actually left trigger is motion axis 17 and right trigger is motion axis 18, which will map in that order to SDL axes.
2018-05-23 17:15:33 -07:00
Sam Lantinga
4d9a346927
Added additional supported Android controllers
2018-05-23 16:00:21 -07:00
Sam Lantinga
c07656dbcb
Fixed default mapping for Android controller triggers (they were reversed)
2018-05-23 16:00:19 -07:00
Sam Lantinga
999af8099b
Merged latest changes from Steam Link app
2018-05-18 13:09:30 -07:00
Sam Lantinga
b7228bc51f
Added support for the GameSir G3w
2018-04-11 18:28:03 -07:00
Sam Lantinga
b41b9d34c7
Fixed return value
2018-03-19 14:52:53 -07:00
Sam Lantinga
8e062f6925
Generalized the handling of instantaneous guide button presses so there's a minimum of 100 ms between guide button press and release.
...
This happens with at least the following controllers: All Apple MFI controllers, ASUS Gamepad, XiaoMi Bluetooth Controller
2018-03-19 14:42:51 -07:00
Sam Lantinga
d529b001bc
Added mapping for the ASUS Gamepad removing the guide button, which doesn't generate events even though it's reported in the Android APIs.
2018-03-19 13:16:11 -07:00
Sam Lantinga
129431b4f4
Delay delivery of the pause button release on MFI controllers so it doesn't happen in the same frame as the button press
2018-03-08 16:32:22 -08:00
Sam Lantinga
92847022f5
Added a mapping for the latest firmware for the Xbox One S controller on Android
2018-03-07 18:10:01 -08:00
Sam Lantinga
a2c1d83c02
Include a USB VID/PID for Apple MFI controllers
...
This is just placeholder VID/PID, but allows code that works with VID/PID to identify the MFI controllers easily.
2018-03-07 18:09:58 -08:00
Sam Lantinga
a8ac588549
Added SDL_GameControllerMappingForDeviceIndex() to get the mapping for a controller before it's opened
2018-03-07 13:30:40 -08:00
Sam Lantinga
9e651b6915
Try to dynamically create a default Android game controller mapping based on the buttons and axes on the controller.
...
Include the controller USB VID/PID in the GUID where possible, as we do on other platforms.
2018-03-06 14:51:50 -08:00
Sam Lantinga
003c0dce9c
Use the real controller name for game controllers on iOS and Apple TV
2018-03-02 10:56:21 -08:00
Ethan Lee
6e3d0a133c
Use new XInput mapping for Win10+ (Bugzilla #3960 )
2018-02-21 12:42:30 -05:00
Sam Lantinga
7c36002739
Fixed compiler warning on Android
2018-02-09 16:01:11 -08:00
Sam Lantinga
965c11f38a
Fixed bug 4060 - Alternative DualShock 4 v2 controller GUID
...
ayer.3d
I have a DualShock 4 v2 controller with a GUID that's not in the database. There is an existing GUID that is almost identical, with the only difference that I can tell being the reported version string (mine being 8001, database is 8100).
Existing GUID: 050000004c050000cc09000000810000
New GUID: 050000004c050000cc09000001800000
When connected via USB, the GUID matches an existing entry: 030000004c050000cc09000011810000
2018-02-07 14:07:54 -08:00
Sam Lantinga
73c26c204c
Send Apple TV remote input as key events unless it's opened as a joystick, to match Android behavior.
2018-02-06 16:43:31 -08:00
Sam Lantinga
f59b9c8b13
Replaced SDL_HINT_APPLE_TV_REMOTE_SWIPES_AS_ARROW_KEYS with SDL_HINT_TV_REMOTE_AS_JOYSTICK which controls whether remotes on iOS and Android are interpreted as joysticks (the default) or as return/escape/arrow keys.
2018-02-06 15:03:38 -08:00
Sam Lantinga
2b441ec6c4
SDL Changes to support clean reads
...
CR: saml
2018-02-05 11:40:39 -08:00
Ryan C. Gordon
e99daaf8b5
android: Fixed compiler warning about nested '/*' comments.
2018-01-22 09:45:16 -05:00
Sam Lantinga
e3cc5b2c6b
Updated copyright for 2018
2018-01-03 10:03:25 -08:00
Sam Lantinga
fee2469c65
Fixed bug 4005 - Android, SDL_IsGameController() crashes is index is out of range
...
Sylvain
On Android, if you give an invalid index to SDL_IsGameController(), it will crash in SDL_SYS_IsDPAD_DeviceIndex().
2017-12-19 10:48:29 -08:00
Sam Lantinga
e5cfa24182
Fixed default Android D-PAD mapping so the back button is treated as B
2017-12-16 10:40:47 -08:00
Sam Lantinga
255362a3ed
Fixed handling of the Apple TV remote buttons
...
The menu button on the remote is the back button
2017-12-16 10:40:45 -08:00
Sam Lantinga
cc30e1eb3d
Added support for the ASUS TV500BG Android gamepad
2017-12-16 10:40:43 -08:00
Ethan Lee
688bc2858a
Steam Virtual GamePad config for macOS
2017-11-20 13:59:43 -05:00
Sam Lantinga
c954b53830
Fixed bug 3935 - Not find joysticks if android run 24-48 days.
...
Alexander Orefkov
In src\joystick\android\SDL_sysjoystick.c in SDL_SYS_JoystickDetect when SDL_GetTicks return number grater 2147483648 (after 24.85 days uptime) SDL_TICKS_PASSED(SDL_GetTicks(), timeout) return FALSE and Android_JNI_PollInputDevices is never calling.
And in JoystickByDeviceId - when search for newly added joystic - after SDL_SYS_JoystickDetect item not reinitilized, and always stay NULL, cause return NULL instead of added joystick.
2017-11-02 08:48:14 -07:00
Sam Lantinga
a7d2d12c64
Fixed building on non-Android platforms
2017-11-01 10:07:04 -07:00
Sam Lantinga
a90be440e8
Added controller mapping for Android TV remotes
...
Also fixed the back button on the remote exiting the application
2017-11-01 10:06:58 -07:00
Sam Lantinga
556a854438
Fixed compiler warning on iOS
2017-10-16 15:22:40 -07:00
Sam Lantinga
b647bd0692
The event filter and event watch functions are now thread-safe
2017-10-10 17:41:41 -07:00
Sam Lantinga
d90fce3c9e
Exposed the joystick locking functions for multi-threaded access to the joystick API
2017-10-10 11:10:15 -07:00
Sam Lantinga
2657dfae49
Fixed crash in SDL_IsGameController() on Windows if called when a controller is being removed
2017-10-09 11:45:15 -07:00
Sam Lantinga
b120fb879a
Fixed bug 3865 - [PATCH] Support for GreenAsia Inc. PSX to USB converter as SDL_GameController
...
Manuel
I would like this small patch merged that adds support for my GreenAsia Inc. PSX to USB converter, so SDL_IsGameController() returns true when using this adaptor.
It's interesting because PSX/PS2 controllers connected using this model won't be detected as gamecontrollers otherwise, only as joysticks.
2017-10-08 10:59:03 -07:00
Sam Lantinga
2fd5235145
Added stubs for simple Steam Controller support
2017-09-22 08:32:31 -07:00
Sam Lantinga
d828647944
Added stubs for simple Steam Controller support
2017-09-22 08:30:52 -07:00
Sam Lantinga
5ab5c9b767
Avoid duplicate joystick axis events
2017-09-22 08:56:09 -07:00
Sam Lantinga
eaab6098eb
Only apply the jitter filter to prevent unexpected motion on axes that haven't been touched.
2017-09-21 10:29:17 -07:00
Patrice Mandin
46ec130528
Fix for 3829. Revert adding GameSir G4s, uses same GUID as PS3 controller.
2017-09-14 21:45:14 +02:00
Patrice Mandin
73c85e986c
Readd support for GameSir G4s, lost with changeset 11431
2017-09-14 19:33:32 +02:00
Sam Lantinga
ac782d7122
Added support for the PDP Battlefield One Xbox One controller on Linux
2017-09-12 05:53:47 -07:00
Sam Lantinga
0ddac338b0
keep joystick thread from waking unnecessarily, and from possibly blocking for 300ms at shutdown if a joystick was just plugged in
...
CR: SamL
2017-09-08 07:15:47 -07:00
Alex Szpakowski
20207abf80
macOS: Update controller mapping of Steelseries Stratus XL to account for reversed thumbstick y-axis values (bug #3483 ).
2017-08-31 22:07:28 -03:00
Sam Lantinga
b54bcb34d0
Fixed bug 3483 - Steelseries Nimbus MFi controller reversed Y-axis analog stick
...
benjamin.feng
Probable underlying cause: https://bugzilla.libsdl.org/show_bug.cgi?id=3124#c5
"If you download and build the HID Calibrator sample you can see that these are totally legitimate HID devices (except for inverting the Y-axis of joysticks, which is contrary to the HID specification but does make them more compatible with games compiled expecting XBOX controllers)."
2017-08-30 23:30:24 -07:00
Sam Lantinga
8e160a34a7
Convert tabs to spaces in game controller database entries
2017-08-30 23:02:39 -07:00
Sam Lantinga
2a945b44cb
Fixed bug 2361 - [Android] Joysticks do not have unique IDs
...
David Brady
When I attempted to make a mapping file for Android gamepads, I quickly discovered that most of the ones that I have here show up as the same device (Broadcom Bluetooth HID), meaning that it was impossible to make mappings on Android, since every device looked the same.
This patch will check for the existence of the getDescriptor function added in Jelly Bean, and use it if it's there. The Android Dashboard says that the majority of Android phones should support this function, and doing it this way will not force us to bump up our API version.
2017-08-28 10:03:39 -07:00
Sam Lantinga
0d011ec66d
Renaming of guard header names to quiet -Wreserved-id-macro
2017-08-28 00:22:23 -07:00
Patrice Mandin
bbd9acdddb
Add support for GameSir G4s
2017-08-26 21:20:20 +02:00
Sam Lantinga
de91b1248f
Fixed bug 3745 - specify SDLCALL as the calling convention for API callbacks
...
Patches contributed by Ozkan Sezer
2017-08-14 06:28:21 -07:00
Sam Lantinga
ca5c304814
Fixed bug 3744 - missing SDLCALL in several functions
...
Ozkan Sezer
The attached patch adds missing SDLCALL to several functions, so that
they properly match the headers as intended.
2017-08-13 21:06:52 -07:00
Sam Lantinga
ddeaa6016c
Fixed bug 3299 - DirectInput: Incorrect joystick mapping when attaching new joysticks
...
Jimb Esser
Note: This is using DirectInput, I have to disable XInput as that causes all but the first 4 controllers to be completely ignored by SDL (I can find no way to reconcile XInput devices with DirectInput devices, otherwise I would make a patch that accepts the fifth and later controllers with DirectInput...). XInput does not seem to have the problem below, only DirectInput.
I plug in 3 identical wireless Xbox 360 controllers, call them J1, J2, J3. Direct Input shows them as having GUIDs G1, G2, G3. I unplug J1, then J2 and J3 show up as having GUIDs G1 and G2! Not so "unique"... I start my SDL app when just J2 and J3 are plugged in, and open J2 and J3. Then I plug in a new controller, SDL sees that now G3 exists, assigns that a new SDL joystick instance ID, which I request to be opened, but G3 at this point is J3, which I already had opened! So I end up with two instances of J3 opened, and none of J1. "Re-"opening G1 would get the actual handle to the newly attached controller, but there's no current way to know this. This is clearly a bug or poor design in DirectInput or my wireless receiver drivers, but is a showstopping bug for my 8-20 player games (as soon as any one controller runs out of battery or goes to sleep and gets turned back on, suddenly things are busted requiring a restart (or, at least, a reinitialization of all controllers - the game can't go on)).
The solution I found is to use HID paths instead of GUIDs to uniquely identify joysticks. GUIDs are still needed to open a controller, however I have added code to re-find the GUIDs for all joysticks whenever a new joystick is attached or removed. This does now require opening of all joysticks (instead of just enumerating them), though if your app, like mine, is opening all of them anyway so that any can press a button to join, that doesn't change much (although perhaps they joysticks should be kept open in this case, instead of closed and re-opened). If your app only ever opens one joystick, this will do more work at startup than it did previously.
2017-08-13 20:42:41 -07:00
Sam Lantinga
ea9bc659f5
Added check for XBOX in addition to Xbox and X-Box
2017-08-13 20:39:00 -07:00
Sam Lantinga
059d9e4627
Fixed bug 2950 - wrong axes values are set on joystick initialization
...
Edward Rudd
Device: Logitech Rumble Gamepad F510 in Xinput mode.
Upon opening the joystick the values of the axes are queried via PollAllValues are not actually set on the device all the time.
This can easily be seen in the testjoystick or testgamecontroller test programs,as the testjoystick shows all axes in the center until one 'tickles' the triggers., and the testgamecontroller will show the triggers as 'on' until on 'tickles' the triggers.
Upon further research the culprit is the SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS hint. In the default value events are ignored until there is an active window, Thus in cases where the joystick system is initialized and controllers opened before the initial window is created & focuses, the initial values will be incorrect.
Here is my current workaround in the game I'm working on porting..
SDL_SetHint(SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS, "1");
SDL_GameController* gamepad = SDL_GameControllerOpen(index);
SDL_SetHint(SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS, "0");
2017-08-12 17:41:59 -07:00
Sam Lantinga
0a52db54bd
Fixed bug 3191 - haptic system on android?
...
Patch provided by jintiao and Milan Nikolic, thanks!
2017-08-12 08:15:09 -07:00
Sam Lantinga
b425050baf
Fixed compiler warnings on Visual Studio 2013
2017-08-12 00:04:46 -07:00
Sam Lantinga
af44a5953a
Fixed bug 3672 - Add joystick to controllerdb
...
Moritz M-H
The following entry needs to be added to the gamecontrollerdb for the Qanba fighter stick under linux
2017-08-09 20:20:35 -07:00
Sam Lantinga
03250690d6
Added a private hint for Steam to bypass the controller filtering for the Steam virtual gamepad
2017-08-09 12:38:20 -07:00
Sam Lantinga
f15dbc8f63
Fixed Linux build
2017-08-09 12:11:59 -07:00
Sam Lantinga
c49fa37c5b
Added SDL hints to filter the set of game controllers reported by SDL
2017-08-09 11:59:29 -07:00
Sam Lantinga
4e43c631b8
Re-added missing entry for the Steam Virtual Gamepad (was Valve Streaming Gamepad)
2017-08-08 20:38:23 -07:00
Patrice Mandin
c544d2b954
Add support for Saitek P990 Dual Analog Pad
2017-08-02 23:42:08 +02:00
Philipp Wiesemann
84aeab17a2
haiku: Changed header paths to be more compatible.
2017-07-29 23:00:14 +02:00
Sam Lantinga
49f846f113
Added support for an XBox One wired controller for Leo L?nnenm?ki
2017-07-11 19:27:50 -07:00
Philipp Wiesemann
22c221f3b0
linux: Changed internal functions to be static.
2017-06-11 22:30:58 +02:00
Philipp Wiesemann
871d43a839
Removed unused hint includes.
2017-06-08 22:40:09 +02:00
Philipp Wiesemann
4b47fa38c3
Removed duplicate includes.
2017-06-04 23:15:47 +02:00
Philipp Wiesemann
cc5b4f450a
emscripten: Changed internal functions to be static.
2017-05-12 23:01:17 +02:00
Philipp Wiesemann
60f2848421
haiku: Fixed crash on quit if max number of joysticks was connected.
2017-05-07 21:02:46 +02:00
Sam Lantinga
d7cd653737
Added Steam Controller mappings for Linux and iOS
2017-04-27 15:52:37 -07:00
Sam Lantinga
27023ed2b3
Added support for the Cyborg V.3 Rumble Pad and the Mad Catz FightPad PRO
2017-04-07 03:39:43 -07:00
Sam Lantinga
1eb92f6342
Implemented Linux joystick blacklist
...
Based on https://raw.githubusercontent.com/denilsonsa/udev-joystick-blacklist/master/generate_rules.py
This fixes a few devices that are not actually joysticks showing up as such in SDL
2017-04-06 06:30:43 -07:00
Sam Lantinga
53f3786bc0
Added support for a number of game controllers, including the Nintendo Switch Pro Controller
2017-04-04 08:43:44 -07:00
Sam Lantinga
00da0824f5
Updated axis/button mapping for Dualshock 3, for upcoming Sony driver changes
2017-03-23 13:53:09 -07:00
Sam Lantinga
763e138903
Added an API to get the joystick instance ID before opening the device: SDL_JoystickGetDeviceInstanceID()
2017-03-09 16:09:16 -08:00
Ryan C. Gordon
ca0bf151d5
Fix some more compiler warnings on armcc.
2017-03-03 16:38:17 -05:00
Sam Lantinga
a9762551cd
Added config for the Razer Wildcat on Mac OS X
2017-02-20 11:02:35 -08:00
Sam Lantinga
9428ff19a9
Added support for the Razer Wildcat on Linux
2017-02-17 17:46:58 -08:00
Philipp Wiesemann
8eee82cd84
Windows: Fixed warning about unused variable.
...
Found by buildbot.
2017-02-03 23:30:43 +01:00
Sam Lantinga
8f78f5bb94
Fixed build on Apple TV
2017-02-02 16:56:02 -08:00
Sam Lantinga
710ae62a79
Remember XInput controllers that we've already seen, so when the raw device list changes we don't assign the old device to the new XInput userid.
...
This isn't perfect, but at least we won't report the same device twice.
2017-02-02 17:33:40 -08:00
Sam Lantinga
be28d7c88c
Added support for the Saitek Pro Flight X-56 Rhino
2017-01-31 12:30:55 -08:00
Sam Lantinga
6717a3d38d
Added support for the HOTAS Warthog throttle
2017-01-31 12:23:29 -08:00