Commit Graph

735 Commits

Author SHA1 Message Date
jdgleaver 0a08437e0a Add OpenDingux Beta support 2021-03-25 16:19:42 +00:00
twinaphex 938c8f3abc Fix some tvOS warnings 2021-03-15 01:52:18 +01:00
AKuHAK 3c0633839f
(PS2) added Multitap support (up to 8 players) (#11928)
* (PS2) added Multitap support (up to 8 players)

* (PS2) revert some identation changes

* (PS2) fix for non-analog controllers
* fix for not recognized digital and other non-standart controllers
* fixed ps2_joypad_destroy
2021-01-24 00:04:04 +01:00
twinaphex 875cb06a93 (iOS) Fix signature on apple_gamecontroller_joypad_init 2021-01-16 20:05:53 +01:00
David Lawson 0bdf574cfd udev_joypad: make rumble work
Rumble was not working for me. I learnt a bit about how evdev works and it seems like you need to set a replay which defines how long the effect is (previously we set it to 0). This means there's a maximum length to the rumble effect which feels wrong.

When we do `play.value = !!strength;` we're setting the number of times for the effect to repeat, which works fine because the effect stops when we set it to 0.

It doesn't feel quite right to me playing e.g. Goldeneye but I've not played on real hardware for a while.

I'm hoping someone is more familiar with evdev and can suggest a better approach.
2020-12-31 07:55:02 +00:00
David Lawson b0de18ea12 udev_joypad: some cleanup 2020-12-30 22:07:26 +00:00
twinaphex 51f0d04569 Update 2020-12-20 16:41:44 +01:00
jdgleaver 88254d8402 (sdl_dingux_joypad) Fix typo 2020-12-01 11:28:31 +00:00
David Guillen Fandos bf48757a2e Add support for 64 buttons in udev gamepads
It seems only 16 were only really supported anyway due to the
usage of BITS_COPY16_PTR (which only copies 16 bit states)?
2020-11-18 19:29:46 +01:00
jdgleaver de146545af OpenDingux: Optimise rumble interface 2020-11-18 17:21:38 +00:00
jdgleaver e582cf9f1d OpenDingux: Add rumble support 2020-11-17 16:13:37 +00:00
jdgleaver 2dc837850f OpenDingux: Add 'sdl_dingux' input/joypad drivers and use by default 2020-10-08 13:26:45 +01:00
jdgleaver 3fa1166ec4 (udev/linuxraw/wayland) Fix return key keyboard input 2020-09-29 11:23:35 +01:00
Yoshi Sugawara f70aed431d [iOS][tvOS] Fix declaration of input driver init method 2020-09-24 07:21:08 -10:00
twinaphex 236622ffa6 (Joypad driver) Init function - return void pointer 2020-09-22 02:30:47 +02:00
twinaphex b4bbad494a (drivers_joypad) Cleanups to wiiu_joypad and xdk_joypad 2020-09-11 15:58:44 +02:00
twinaphex 99cff42988 (udev_joypad) Struct reordering, alignment 2020-09-11 15:53:18 +02:00
twinaphex 72f1ff0f4b Reorder structs, alignment 2020-09-11 12:40:19 +02:00
twinaphex 7c36e615c2 (MFI_joypad) Cleanups 2020-09-11 12:39:05 +02:00
twinaphex ab9202c0aa Cleanups 2020-09-11 12:35:14 +02:00
twinaphex 0c45135160 (ps2_joypad) Cleanups 2020-09-11 12:32:06 +02:00
twinaphex 0adee503f2 (Android) Don't do memcpy copy anymore 2020-08-31 03:11:52 +02:00
twinaphex 7b0fe59722 Get rid of duplicate dinput_hybrid_joypad.c 2020-08-30 19:41:44 +02:00
twinaphex 9fdbcae3a8 Update copyrights; person was not involved in this file 2020-08-30 19:00:44 +02:00
twinaphex 82c558e5ce Update copyrights 2020-08-30 18:59:57 +02:00
twinaphex adf1322cbb (DInput joypad) Cut down on code duplication 2020-08-30 06:53:16 +02:00
twinaphex 1e223733fc Add joypad_rumble function in Android joypad driver 2020-08-29 23:47:56 +02:00
twinaphex 71fb5ac941 Clear state in joypad_destroy 2020-08-29 23:35:11 +02:00
twinaphex b133ea3296 (XInput) add ifdef 2020-08-29 22:48:28 +02:00
twinaphex c5099a312c Reimplement XDK set_rumble function 2020-08-29 22:25:51 +02:00
twinaphex 88a93b0053 Cleanups 2020-08-28 19:59:31 +02:00
twinaphex a15a033e72 (XInput) Cleanups 2020-08-19 03:40:55 +02:00
twinaphex 5166eebcaf for loop cleanups - use space after 'for' 2020-08-19 03:06:22 +02:00
twinaphex c250b94dcf Move p_anim state to rarch_state 2020-08-14 06:29:13 +02:00
twinaphex c3d8c8661f Buildfixes for C89_BUILD --disable-menu 2020-08-06 03:04:21 +02:00
twinaphex 76ec05314c Remove unused variable 2020-08-05 13:54:36 +02:00
twinaphex d864fd9ead Cleanups 2020-08-03 17:59:44 +02:00
twinaphex 4676e102d0 (input/drivers_joypad) Add TODO/FIXME notes 2020-08-03 17:31:22 +02:00
twinaphex 08a8de6227 (XInput) Proper joypad disconnect messages now with autoconfig
system
2020-07-31 22:31:38 +02:00
twinaphex 3518b4ef9c Cleanups - stray variables and functions can now be made static 2020-07-31 20:05:04 +02:00
twinaphex 65af2828da Move dinput_joypad_get_vidpid_from_xinput_index to
xinput_hybrid_joypad.c
2020-07-31 19:54:15 +02:00
twinaphex 212fc885ed Cleanups - xinput_hybrid_joypad.c no longer calls into separate
dinput_joypad driver interface
2020-07-31 19:52:03 +02:00
twinaphex 8ab1d7f8ec Cleanups 2020-07-31 19:30:03 +02:00
twinaphex 449f8dff8e Cleanups 2020-07-31 19:25:20 +02:00
twinaphex 5c7ba50ce1 Cleanups 2020-07-31 19:22:07 +02:00
twinaphex b171f35836 Move these globals out of dinput.c and into dinput_joypad_inl.h 2020-07-31 19:08:46 +02:00
twinaphex b5e0f7edfd Split up dinput_joypad.c into dinput_hybrid_joypad.c (both HAVE_DINPUT
and HAVE_XINPUT defined) and dinput_joypad.c (only HAVE_DINPUT defined)
2020-07-31 19:06:22 +02:00
twinaphex 5c5c57de9c Split up xinput_joypad.c into xinput_hybrid_joypad.c (assumes
-DHAVE_DINPUT) and xinput_joypad.c (no Dinput available at all)
2020-07-31 18:57:44 +02:00
twinaphex 95604f55b9 Add inline header files 2020-07-31 18:48:45 +02:00
twinaphex 04e67f1ac9 Make Xbox 360 reuse default xinput_joypad.c driver 2020-07-31 18:32:28 +02:00
twinaphex 771c0fec39 Add xinput_joypad.h header 2020-07-31 18:22:35 +02:00
twinaphex 748886c5e5 (DInput) Cleanups 2020-07-31 18:15:36 +02:00
twinaphex ed3ee2511f Cleanups - add local variable 2020-07-29 05:31:23 +02:00
rsn8887 78c9dbbd20 Fix input port assignments 2020-07-28 16:35:16 -05:00
twinaphex 8777a6eb6a (WiiU) Buildfix 2020-07-23 05:42:51 +02:00
Autechre 6c7143d02d
Merge pull request #10981 from yoshisuga/yoshisuga/ios-metal
iOS/tvOS Metal Renderer
2020-07-21 20:41:07 +02:00
twinaphex caa1145b35 (joypad drivers) xdk_joypad.c - cleanup(joypad drivers) xdk_joypad.c -
cleanup(joypad drivers) xdk_joypad.c - cleanup(joypad drivers)
xdk_joypad.c - cleanup(joypad drivers) xdk_joypad.c - cleanup(joypad
drivers) xdk_joypad.c - cleanup(joypad drivers) xdk_joypad.c -
cleanup(joypad drivers) xdk_joypad.c - cleanup(joypad drivers)
xdk_joypad.c - cleanup
2020-07-20 23:15:19 +02:00
Francisco Javier Trujillo Mata 67e0a49941 Fix ps2_joypad compilation after refactor of the main driver 2020-07-20 22:51:00 +02:00
jdgleaver 8e2901d23a Minor optimisations 2020-07-20 13:24:18 +01:00
jdgleaver 9b1edc5eee Input autoconfig fixes/improvements 2020-07-20 12:34:29 +01:00
twinaphex 994d6aee63 Cleanups 2020-07-20 06:48:02 +02:00
twinaphex 0e9a86816e xinput_joypad_poll - make UWP codepath leading 2020-07-20 03:35:52 +02:00
twinaphex abd3365a34 (XInput Joypad) Cleanups 2020-07-20 03:19:14 +02:00
twinaphex 5f7e8593d0 (DInput Joypad) Cleanups(DInput Joypad) Cleanups(DInput Joypad)
Cleanups(DInput Joypad) Cleanups(DInput Joypad) Cleanups(DInput Joypad)
Cleanups(DInput Joypad) Cleanups(DInput Joypad) Cleanups(DInput Joypad)
Cleanups
2020-07-20 03:04:18 +02:00
twinaphex 6cba44328d (PSP) Buildfix 2020-07-20 00:58:57 +02:00
twinaphex 74e5d366c8 (WiiU) Buildfix 2020-07-20 00:53:21 +02:00
twinaphex 897a9de5be (drivers_joypad) Cleanup axis functions 2020-07-19 18:51:05 +02:00
Yoshi Sugawara fd9ac64d55 Merge branch 'master' into yoshisuga/ios-metal 2020-07-19 00:33:54 -10:00
twinaphex 0207e29ee9 (Android) Cleanups 2020-07-19 04:13:23 +02:00
twinaphex 24f310a26d Small cleanup 2020-07-19 03:48:26 +02:00
twinaphex b1a6b35379 Buildfix 2020-07-19 03:23:07 +02:00
twinaphex 285b0ec0bb Buildfix 2020-07-19 03:20:41 +02:00
twinaphex d97e590aaf Reimplement multi button state functions 2020-07-19 03:18:12 +02:00
twinaphex ad2279bb29 Cleanups 2020-07-18 23:06:12 +02:00
twinaphex cb5b22b6ac (Android) Refactor axis functions 2020-07-18 22:38:23 +02:00
Autechre f8d6cea02a
Update udev_joypad.c 2020-07-18 21:56:27 +02:00
twinaphex 08ad00f5d3 Start preparing for being able to grab multiple buttons at the same time 2020-07-18 19:51:14 +02:00
twinaphex 8b078662cd Change function signature of joypad driver's 'button' 2020-07-18 18:07:57 +02:00
jdgleaver 84a71ea133 Rewrite 'task_autodetect.c': Ensure thread safety + clean-ups/rationalisation 2020-07-14 17:46:58 +01:00
twinaphex 79cc4f9c4f Revert "Start going through wrapper functions for access to input_device_names"
This reverts commit 92293525c1.
2020-07-05 16:41:55 +02:00
twinaphex 92293525c1 Start going through wrapper functions for access to input_device_names 2020-07-05 10:33:21 +02:00
twinaphex dfeef4e772 (XInput) Do away with memsets 2020-06-29 02:44:35 +02:00
twinaphex aa4f84b037 (Dinput) get rid of memsets 2020-06-29 02:37:06 +02:00
twinaphex 451a06076d Revert "(dinput_joypad) Grab window pointer once"
This reverts commit d85eb927c1.
2020-06-12 06:36:19 +02:00
twinaphex d85eb927c1 (dinput_joypad) Grab window pointer once 2020-06-12 06:12:25 +02:00
twinaphex a0e6a9e1d5 (xinput joypad) Function can be made static 2020-06-11 04:53:20 +02:00
twinaphex cfc511cc6b (Dinput joypad) Some cleanups 2020-06-11 04:46:15 +02:00
twinaphex b363ed7d79 (drivers_joypad) get rid of excessive logging 2020-06-11 04:06:33 +02:00
twinaphex c63a65ffa5 (WiiU) Cleanups 2020-06-10 06:30:23 +02:00
twinaphex ad1aa59ce1 Cleanup != NULL comparisons 2020-05-19 21:15:06 +02:00
Ash Logan 70fba3e92e (WiiU/kpad) Actually return true when kpad_init succeeds, warning fix 2020-05-17 16:43:38 +10:00
Ash Logan 41541128c5 (WiiU/hid) Warning fixes 2020-05-17 16:42:31 +10:00
Ash Logan f22af81e7d (WiiU/wpad) Allow hotplugging Gamepad, support >1 channel 2020-05-17 16:32:51 +10:00
Vladimir Serbinenko 2fb7ba22e5 PSL1GHT port
Working:

* packaging
* running cores
* switching cores
* gamepad including axis
* rgui
* audio
* video

Not working:

* OSD
* menus other than rgui
* shaders
* Graphical acceleration
* Proper signing
* ODE build
* rumble
* keyboard
* mouse

Not tested:

* A lot
2020-03-30 05:39:22 +02:00
FmT0 f0faedddf9
Update psp_joypad.c
Fix "Prefer Front Touch" option from Input menu for Vita toggle menu input
2020-03-16 20:07:10 +09:00
twinaphex 0ec3a8a449 (Input) Settings cleanups 2020-02-23 06:05:23 +01:00
Toad King 14c67fde7f emscripten: recreate input event listeners properly
There's a new (undocumented -_-) API for removing event listeners in emscripten
now, so use that when recreating input listeners. Fixes mouse events breaking
when loading cores.
2020-01-18 12:51:21 -06:00
twinaphex fe9022afe0 More CXX_BUILD fixes 2020-01-18 05:48:19 +01:00
twinaphex 246863279a Get rid of null input and null joypad driver files 2020-01-06 15:28:11 +01:00
ThePhxRises 3c27300a4e [VITA] Enable touch regardless of MiniVitaTV 2019-12-14 20:50:17 +01:00
ThePhxRises 65f406a39e [VITA] MiniVitaTV Support
Set kernel model manually with sceCtrlIsMultiControllerSupported()
2019-12-14 20:50:17 +01:00
Dmitry Sergeenkov 5cdef89b86 Get rid of 128 byte device name limit for XInput device discover 2019-11-22 21:15:58 +03:00
twinaphex 920a20f060 (GX) Silence more warnings 2019-09-22 11:35:09 +02:00
benoa 9250f649db GameCube: Fix build 2019-09-19 15:13:22 +02:00
twinaphex 1d621c412c Add HW_RVL to this - won't compile on Gamecube otherwise 2019-09-19 02:15:18 +02:00
benoa 744fac6777 Wii: Add wiimote lightgun support 2019-09-15 00:46:02 +02:00
Twinaphex 1091193ed5
Revert "[Switch] Really fix splitting/joining JoyCons via single option" 2019-08-26 14:22:58 +02:00
rsn8887 8c0c0e3eae [Switch] Really fix splitting/joining JoyCons via single option 2019-08-24 21:08:35 -05:00
Toad King 2874c5ee6e emscripten: Fix GLSL not being built in
fix gamepad builds to work with newer emscripten
2019-08-06 20:51:18 -05:00
twinaphex eb3753ee3c (XInput/DirectInput) Show device disconnect messages when unplugging a gamepad 2019-07-28 06:42:30 +02:00
twinaphex 91ef99f9b7 Restore this 2019-07-27 04:28:50 +02:00
twinaphex d28cadef01 Cleanups; turn more functions into static functions 2019-07-27 04:13:33 +02:00
Yoshi Sugawara 102f27ee80 iOS/tvOS/macOS: Fix autodetect for mFi controllers: properly call autodetect add on the connect notification, and add call to disconnect on GameController disconnect notification. 2019-07-24 11:45:42 -10:00
twinaphex 2750997724 (dinput) POV defines need mmsystem.h header include 2019-07-23 19:40:22 +02:00
twinaphex 5d8d6e18b2 (Dinput joypad) Prevent input going haywire once pad is disconnected 2019-07-23 18:46:40 +02:00
twinaphex f06607141d dinput_joypad_button - further cleanups 2019-07-23 18:37:28 +02:00
twinaphex 051fb92e83 (Dinput joypad) Cleanup magic numbers mess surrounding
hat code
2019-07-23 18:27:16 +02:00
twinaphex 783027ab96 (Dinput) Lots of pointless ARRAY_SIZE checks when the element size
never changes
2019-07-23 16:07:34 +02:00
twinaphex 642298c8b0 (ps4_joypad.c) C89_BUILD fixes 2019-07-23 15:47:13 +02:00
twinaphex ea4f9b4899 dinput_joypad_button - cleanups 2019-07-23 15:34:24 +02:00
twinaphex e0672e46a5 (Xinput) This variable doesn't need to be set at every button call 2019-07-23 14:32:46 +02:00
twinaphex 02876aecae Cleanups 2019-07-23 14:07:49 +02:00
twinaphex d4255b0e55 Cleanups 2019-07-23 13:59:51 +02:00
rsn8887 c226f0a683 [SWITCH] Fix splitting and joining of joycon controllers
Before this fix, splitting and joining of joycons only ever worked
sporadically.
2019-07-22 23:30:34 -05:00
orbea e13ec54dc6 Fix --disable-overlay. 2019-07-21 10:26:42 -07:00
twinaphex 7be9aef768 (PSP) Buildfix 2019-07-20 16:56:01 +02:00
twinaphex 5de9f85533 Cleanups 2019-07-19 13:01:45 +02:00
twinaphex 4c69dad0ce Define DEFAULT_MAX_PADS inside config.def.h - get rid of the messy
MAX_PADS macros everywhere
2019-07-19 12:55:38 +02:00
twinaphex 0257e01bee Refactor input_autoconfigure_connect - don't return
value - set input device name upon failure implicitly
2019-07-16 15:28:22 +02:00
twinaphex 67c70de8f3 (Drivers joypad) Cleanups 2019-07-16 14:41:09 +02:00
twinaphex f1ea1f1845 (Drivers joypad) Cleanups 2019-07-16 14:39:31 +02:00
twinaphex bf80376d27 Style nits 2019-07-16 14:34:37 +02:00
David Skywalker 89645ac296 fix wrong udev devices order, fixes #9071 2019-07-08 01:27:41 +02:00
twinaphex cec67e412e Revert "(dinput/xinput) Simplifications"
This reverts commit 20e8dfcba5.
2019-07-04 05:20:19 +02:00
twinaphex c55aefef1e (dinput_joypad.c) Cleanups 2019-06-24 05:07:37 +02:00
twinaphex eaf221125a (xinput_joypad.c) Small cleanups 2019-06-23 03:23:16 +02:00
twinaphex 20e8dfcba5 (dinput/xinput) Simplifications 2019-06-21 09:00:59 +02:00
twinaphex ee3208ac39 Integrate video_driver.c into retroarch.c 2019-06-17 15:10:22 +02:00
Yoshi Sugawara 222d3297d2 use preprocessor macros to support compiling using Xcode 11/iOS 13 and older versions of Xcode 2019-06-05 06:50:02 -10:00
Yoshi Sugawara 9e1fcf4031 iOS: Support L3/R3 in iOS 12.1, Options buttons in mfi/PS4/XBox One controllers in iOS 13 2019-06-05 06:21:06 -10:00
Ash Logan 26d3c3634c wiiu/input: Uniquely name axis enum
Griffin!
2019-05-28 09:16:48 +10:00
Ash Logan 9a89aebe73 wiiu/input: Give static variables unique names
For griffin build, where static is meaningless
2019-05-28 09:06:31 +10:00
Exvat e7bf2a345c Add rumble support for the switch 2019-03-11 19:33:02 -07:00
Francisco Javier Trujillo Mata 48d46dcc44 [PS2] Analog support improvement 2019-02-27 19:43:59 +01:00
Brad Parker 4f0d61a2ac update copyright 2019-02-22 19:13:36 -05:00
Francisco Javier Trujillo Mata c147866562 Implemented analog support for ps2 controllers 2019-02-20 19:17:14 +01:00
twinaphex 1daaf7385c 9PS2) Silence some warnings 2019-02-14 07:20:44 +01:00
Yoshi Sugawara b06d75ec99 iOS: check if mfi controller already added to the internal list when connecting 2019-02-05 06:43:14 -10:00
orbea 28ff4b391a Clean up white space. 2019-02-03 16:00:50 -08:00
Twinaphex b321753944
Merge pull request #8144 from orbea/coreaudio
Fix warnings.
2019-02-01 19:13:49 +01:00