test/controllermap.c


Log

Author Commit Date CI Message
Sam Lantinga a395a907 2017-01-20T16:40:11 Fixed mapping the PG-9021 which, on Linux, emits a button partway through the trigger press along with axis motion all along the pull
Sam Lantinga 4938c505 2017-01-04T10:28:07 Added SDL_JoystickGetAxisInitialState() to get a joystick axis' initial value. This is useful for controller mapping programs to determine an axis' zero state
Sam Lantinga 1ddff75c 2017-01-04T05:09:02 Some controllers have trouble getting out to 20000
Sam Lantinga 082132a7 2017-01-03T23:39:28 Fixed binding the D-pad on some Super NES style controllers Fixed a case where partial trigger pull could be bound to another button There is a fundamental problem not resolved by this commit: Some controllers have axes (triggers, pedals, etc.) that don't start at zero, but we're guaranteed that if we get a value that it's correct. For these controllers, the current code works, where we take the first value we get and use that as the zero point and generate axis motion starting from that point on. Other controllers have digital axes (D-pad) that assume a zero starting point, and the first value we get is the min or max axis value when the D-pad is moved. For these controllers, the current code thinks that the zero point is the axis value after the D-pad motion and this doesn't work. My hypothesis is that the first class of devices is more common and that we should solve for that, and add an exception to SDL_JoystickAxesCenteredAtZero() as needed for the second class of devices.
Sam Lantinga 45b774e3 2017-01-01T18:33:28 Updated copyright for 2017
Philipp Wiesemann de79828b 2016-12-28T20:11:12 Fixed warning about unused variable in controllermap program.
Sam Lantinga 21cb42d7 2016-12-27T09:51:58 Make sure we go all the way back (within the XBox controller dead zone) to prevent accidentally binding axes inverted
Sam Lantinga 6d7da088 2016-12-27T01:39:07 Split controller axes into positive and negative sides so each can be bound independently. Using this a D-Pad can be mapped to a thumbstick and vice versa. Also added support for inverted axes, improving trigger binding support
Philipp Wiesemann 0a3f9d0c 2016-12-16T22:58:16 Fixed warning about unused variable in controllermap program.
Sam Lantinga 0c5e7a10 2016-12-15T14:27:22 Fixed handling joysticks that send multiple events for a single control, e.g. both a button and axis event for a trigger. Tested with the 8Bitdo NES30 Pro on Linux
Sam Lantinga c406f649 2016-11-10T18:53:50 Added USB VID/PID information to the SDL test programs
Philipp Wiesemann 826508b6 2016-10-15T20:01:30 Removed unused constants in controllermap program.
Sam Lantinga cb7b823c 2016-10-13T02:09:37 Fixed black screen on Steam Link
Philipp Wiesemann 929b965c 2016-09-21T23:06:38 Fixed compiling of three test programs with C++.
Sam Lantinga 42065e78 2016-01-02T10:10:34 Updated copyright to 2016
Sam Lantinga 7b680a2a 2015-12-18T18:49:23 Fixed mapping third party XBox controllers that have the trigger axis all the way in until they are pulled and get updated values.
Philipp Wiesemann 11d98995 2015-11-25T21:39:28 Replaced tabs with spaces in test programs.
Philipp Wiesemann 0e45984f 2015-06-21T17:33:46 Fixed crash if initialization of EGL failed but was tried again later. The internal function SDL_EGL_LoadLibrary() did not delete and remove a mostly uninitialized data structure if loading the library first failed. A later try to use EGL then skipped initialization and assumed it was previously successful because the data structure now already existed. This led to at least one crash in the internal function SDL_EGL_ChooseConfig() because a NULL pointer was dereferenced to make a call to eglBindAPI().