Simple Directmedia Layer
Find a file
Sam Lantinga c377de5440 Fixed bug 4436 - [OpenBSD] fix D-pad
Thomas Frohwein

Hi,

If a gamepad lists the Dpad as 4 buttons (Dpad Up,Down, Left, Right) like with the Xbox 360 gamepad / XInput report descriptor used by OpenBSD (https://github.com/openbsd/src/blob/master/sys/dev/usb/uhid_rdesc.h#L184), this is not recognized by the SDL BSD backend and no hat or any other listing for the D-pad exists, e.g. in sdl2-jstest (https://gitlab.com/sdl-jstest/sdl-jstest).

The attached diff fixes this and makes the D-pad on my Xbox 360 and Logitech F310 controllers usable. It adds a hat to nhats when usage HUG_DPAD_UP is found, reads the state of the D-pad buttons into array dpad[], and turns the value of dpad[] into an SDL hat direction (dpad_to_sdl()).

Tested and works with Xbox 360 controller and Logitech F310 in XInput mode. Software-side tested with sdl2-jstest and Owlboy where this worked without problems or regressions.

I don't know if this would be applicable to other *BSDs and don't have an install to test it with, therefore wrapped it in __OpenBSD__ ifdefs.

Thanks,

thfr
2019-05-19 11:56:26 -07:00
acinclude Added missing PKG_CONFIG macros 2019-03-16 17:39:15 -07:00
android-project Fixed bug 4566 - Hot-plugging Bluetooth controller causes force-quit on Android 2019-04-24 12:53:15 -07:00
android-project-ant
build-scripts Updated minimum supported Android version to API 16, to match latest NDK toolchain 2019-01-12 12:11:06 -08:00
cmake
debian Updated copyright for 2019 2019-01-04 22:01:14 -08:00
docs Android: add hint SDL_HINT_ANDROID_BLOCK_ON_PAUSE 2019-04-05 09:16:30 +02:00
include test: added SDLTest_CommonDefaultArgs() 2019-05-19 01:45:15 -04:00
src Fixed bug 4436 - [OpenBSD] fix D-pad 2019-05-19 11:56:26 -07:00
test test: added SDLTest_CommonDefaultArgs() 2019-05-19 01:45:15 -04:00
VisualC Fixed Visual Studio build 2019-03-16 19:46:37 -07:00
VisualC-WinRT Added display event files to the Visual Studio projects 2018-08-23 02:48:47 -07:00
visualtest ran 'chmod -x' on many files 2018-06-12 14:00:15 +03:00
wayland-protocols
Xcode Added support for building SDL as a dynamic library on iOS 2019-03-19 07:53:33 -07:00
Xcode-iOS Created Xcode schemes for building on iOS and tvOS 2019-04-23 14:08:09 -07:00
.hgignore
Android.mk Initial Android OpenSL ES implementation, contributed by ANTA 2019-01-12 12:18:44 -08:00
autogen.sh
BUGS.txt
cmake_uninstall.cmake.in
CMakeLists.txt Use _Exit() when available 2019-04-23 07:59:31 -07:00
configure Use _Exit() when available 2019-04-23 07:59:31 -07:00
configure.ac Use _Exit() when available 2019-04-23 07:59:31 -07:00
COPYING.txt Updated copyright for 2019 2019-01-04 22:01:14 -08:00
CREDITS.txt
INSTALL.txt
Makefile.in Add a configure option allowing users to choose whether to install sdl2-config 2019-04-07 23:01:07 +10:00
Makefile.minimal
Makefile.os2 minor update to Makefile.os2, added a test/Makefile.os2. 2018-11-20 10:55:00 +03:00
Makefile.pandora
Makefile.psp
Makefile.wiz
README-SDL.txt
README.txt
sdl2-config.cmake.in
sdl2-config.in
sdl2.m4 Fixed bug 4544 - SDL2.m4 SDL2.framework patch made it impossible to fail detection 2019-03-16 18:45:10 -07:00
sdl2.pc.in
SDL2.spec.in
SDL2Config.cmake
TODO.txt
VisualC.html
WhatsNew.txt Android: add hint SDL_HINT_ANDROID_BLOCK_ON_PAUSE 2019-04-05 09:16:30 +02:00

                         Simple DirectMedia Layer

                                  (SDL)

                                Version 2.0

---
https://www.libsdl.org/

Simple DirectMedia Layer is a cross-platform development library designed
to provide low level access to audio, keyboard, mouse, joystick, and graphics
hardware via OpenGL and Direct3D. It is used by video playback software,
emulators, and popular games including Valve's award winning catalog
and many Humble Bundle games.

More extensive documentation is available in the docs directory, starting
with README.md

Enjoy!
	Sam Lantinga				(slouken@libsdl.org)