658 Commits

Author SHA1 Message Date
twinaphex
ddceb51f89 Get rid of some needless getters/setters 2021-09-30 21:10:12 +02:00
twinaphex
e886e908d5 Create consistent naming conventions - use retroarch_ instead
of rarch_ for some functions for all functions coming from retroarch.h
2021-09-28 12:56:10 +02:00
twinaphex
8ef9065c86 Get rid of menu_driver_is_alive - we don't want these one/two-line getters/setters anymore 2021-09-28 10:27:00 +02:00
M4xw
931eb3221b [LIBNX] Fix Split Joycon 2021-09-23 13:45:22 +02:00
Michael Burgardt
303d17e2e6 Rebase 'Add generic rumble gain to input settings' by davidgfnet 2021-09-08 19:52:32 +02:00
bulzipke
8adc24ecbc
(3DS) Add bottom screen menu (#12470)
* (3DS) Add bottom screen menu
 -> User can save/load state on botom screen with thumbnail.
 -> Call a save_state_to_file() when RAM state has data to write a disk.
 -> If the bottom screen needs updating, swap the bottom framebuffers.

Add: SAVE/LODE STATE TO RAM
 -> This is useful for devices with slow I/O
 -> 3DS bottom save state use CMD_EVENT_SAVE_STATE_TO_RAM
 -> 3DS bottom load state use CMD_EVENT_LOAD_STATE when RAM state has no data
 -> 3DS bottom load state use CMD_EVENT_LOAD_STATE_FROM_RAM when RAM sate has data

* Rewrite path_get_state to retroarch_get_current_savestate_path

* Fix unterminated state_path
2021-09-03 18:14:03 +02:00
twinaphex
20ef0667b0 Add initial webOS port courtesy of informatic/webosbrew/mariotaku 2021-08-11 20:04:11 +02:00
twinaphex
bb30dc3dee After gblues' change, the rest of the button function callbacks
for the other joypad drivers still had int16_t as the return type
instead of int32_t - fix this
2021-08-08 21:48:19 +02:00
Nathan Strong
feb4f266fa WIIU: Fix L3/R3 buttons
== DETAILS
After a bisect, the culprit was changing the gamepad interface from
returing a single button (bool) to multiple (int16).

The issue is that the Wii U gamepad (and presumably the Pro controller too)
have more than 16 buttons, which means some buttons get lost. Notably, L3 (18)
and R3 (17).

The solution: use int32 instead of int16.

I did a test build and confirmed that this change restores L3/R3 functionality
with the gamepad. Don't have a pro controller to test, but it should work too.
2021-08-07 23:23:33 -07:00
amtz
d0612f906d Limit udev device scan to subsystem 'input'
This change makes the call to 'udev_enumerate_scan_devices' much faster.
In particular, for some bluetooth devices, this function may implicitly
read its battery's virtual file 'uevent', e.g.

/sys/devices/*/usb1/1-1/*/bluetooth/hci0/*/power_supply/hid-*-battery/uevent

Reading this file may (for unknown reasons) block up to 10 seconds.
Since udev_enumerate_scan_devices is called 4 times (for keyboard,
mouse, touchpad, and joypad) during startup this may cause a
considerable delay.

Limiting the scan to subsystem 'input' yields the same devices but makes
the scan faster and does not read 'uevent' of the input controller's
power_supply.
2021-08-02 13:17:00 +02:00
Autechre
0c2299396c
Merge pull request #12711 from Poligraf/retrofw
Add retrofw port
2021-07-29 13:41:13 +02:00
Poligraf
9000e81498
Add retrofw port 2021-07-29 22:16:59 +12:00
R-YaTian
1d988d374a
libnx: Fix split joycons 2021-07-29 12:18:11 +08:00
p-sam
0f5f8798ea libnx: input fixes
- fix poll missing for controller 2-8
- fix layout not applied correctly and hangs when splitting joycons
2021-07-28 21:49:09 +02:00
Ash Logan
27b02d66aa (Wii U) Ignore some bogus KPAD results
This API is completely bonkers, seems to have no idea what the error 
conditions are
2021-07-19 16:59:41 +10:00
John Parton
f6aeb717ba Basic rs90 build
DINGUX_BETA has clock_gettime libogc
Add tinyalsa support to rs90
2021-07-13 11:36:48 -05:00
M4xw
d00c2a6407 [Libnx] Style nits 2021-06-28 17:38:17 +02:00
p-sam
ac8a977492 Replace deprecated HID APIs 2021-06-28 17:38:17 +02:00
p-sam
1bc588acbd Fix building with libnx 4.0.0 2021-06-28 17:38:17 +02:00
jdgleaver
973f5cda6d Add support for mapping multiple controllers to a single input device 2021-06-21 12:42:38 +01:00
Francisco José García García
87a7795331 [VITA] Fix input driver for PSTV 2021-05-21 10:54:02 +02:00
twinaphex
35543ecd91 Move defines files over to libretro-common 2021-05-18 22:15:04 +02:00
Todd Laney
be8dd0dba1 prevent crash on controller connect.
disable system button gestures on iOS 14.
remove deprecation warnings.
2021-04-03 09:28:49 -07:00
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