Commit Graph

1998 Commits

Author SHA1 Message Date
Diablodiab bdb9471d13 Added support for using keyboards in the Retroarch menu and for mapping to gamepad keys. 2016-02-08 01:06:15 +01:00
twinaphex 534a838472 Header cleanups 2016-02-07 13:25:55 +01:00
twinaphex d3aaa7ac88 Style nits 2016-02-05 14:42:20 +01:00
twinaphex 341e8f8f15 Cleanup 2016-02-05 14:35:16 +01:00
twinaphex 8e2818bbeb Cleanups 2016-02-05 14:11:38 +01:00
twinaphex 36c36aa558 Cleanups 2016-02-05 14:09:46 +01:00
twinaphex 8fc2a05a70 Cleanups 2016-02-05 14:06:43 +01:00
twinaphex ab64daf5aa Cleanups 2016-02-05 13:51:30 +01:00
twinaphex ca3f352ed1 Remove unused udev_common 2016-02-05 13:30:19 +01:00
twinaphex 32ee695f9d Create udev_ctl 2016-02-05 01:49:31 +01:00
twinaphex 24f5275001 Use wiiugca for non-Wii too 2016-02-04 23:49:04 +01:00
twinaphex 407d85f604 Use nesusb/snesusb for non-Wii too 2016-02-04 23:43:33 +01:00
netux79 bca4ccb155 (GX) Refactor of the Wii USB HID support. Now it's working!
In order to have a controller working you need:
1) Have a matching HID autoconfig file in autoconfig/hid for your controller.
2) Create a "connect" driver for the pad in "input/connect" folder (source code of RA).
3) Once you are in RA, change the joystick driver to HID and restart.
4) You may be now able to use you USB HID compatible pad in RA.

I included some "connect" drivers as an example. It also need to include them for compilation.
2016-02-04 17:01:03 -05:00
twinaphex 2e8f015de3 Cleanups 2016-02-04 21:07:02 +01:00
twinaphex 3d56dd1ef8 Cleanup 2016-02-04 21:03:28 +01:00
Twinaphex 9c9fdcfa58 (iOS 9) Fix iOS 9 build 2016-02-04 20:17:26 +01:00
twinaphex 12e453c29a Set these static variables initially to NULL 2016-02-04 20:02:50 +01:00
twinaphex 2cbb18b4e4 Create RARCH_DRIVER_CTL_FIND_INDEX 2016-02-01 13:15:53 +01:00
twinaphex b0ec812de6 Create two new BSV_MOVIE_CTL_* actions 2016-01-30 03:25:47 +01:00
twinaphex a267bdfbe3 MOve gfx/image/image.c to gfx/video_texture_image.c 2016-01-30 02:39:08 +01:00
twinaphex 372d673a26 Rename event_command to event_cmd_ctl - add second parameter 2016-01-22 15:34:43 +01:00
twinaphex fbd2e9aa84 Use string_is_equal more 2016-01-21 02:48:00 +01:00
twinaphex 63e2d13b8f Create string_is_equal_noncase - try not to use strcasecmp so much 2016-01-20 17:34:19 +01:00
Twinaphex de513211dc Update input_autodetect.c 2016-01-20 13:28:13 +01:00
twinaphex 454abdee48 stdstring - create string_is_equal 2016-01-20 04:07:24 +01:00
Twinaphex 794bcc53c3 (iOS) Buildfix 2016-01-15 23:15:49 +01:00
twinaphex e4533fb7ec (OSX/iOS) Cleanup 2016-01-15 22:33:25 +01:00
Twinaphex 8c8a3085a5 (OSX) Buildfix 2016-01-15 22:22:37 +01:00
twinaphex 8323d06d3d (Cocoa) No more dependencies on get_chosen_screen or
get_backing_scale_factor
2016-01-15 22:20:46 +01:00
Diablodiab e738b57cf8 Add handling of Nvidia Shield Virtual Controller
The NVIDIA Button on the Nvidia Shield Controller and inputs received from CEC remotes
are detected as a "Virtual" controller on the Shield TV.

If a virtual controller is detected on the Shield TV before an actual game controller
then it will be configured as "Shield Virtual Device". This allows the use of the
buttons on a CEC remote to control the Retroarch menu and games.

When an actual controller is connected the Virtual Device will be overwritten and
the NVIDIA button of the Virtual device will be mapped to the controller as the
menu button.

This also fixes the situation where you press the NVIDIA Button before any other
button on the game controller and it does nothing. Now it will go into the
Retroarch menu even if it is the first button pressed.

A matching profile for "Nvidia Shield Virtual Controller" has been sent as a pull request to
the "retroarch-joypad-autoconfig" repository.
2016-01-15 18:41:17 +01:00
Diablodiab 9245113738 Fix if clause that could result in a keyboard key being handled as gamepad input 2016-01-14 21:16:54 +01:00
Diablodiab 2c08dc0f4f Extends Android keyboard functionality to allow for up to three keyboards.
This solves the problem with volume buttons on phones being detected as
keyboards and blocking a real keyboard from being mapped afterwards.

Renamed id_1 and id_2 to pad_id1 and pad_id2
Renamed id_3 to kbd_id and change it to an array

Implement function is_keyboard_id(int id) which checks if an id is mapped as
a keyboard
2016-01-14 20:59:25 +01:00
twinaphex 2caa529347 Change VID/PID again 2016-01-14 09:56:07 +01:00
twinaphex 5dd10f1d45 pad_connection_pad_init - cleanup 2016-01-14 09:53:00 +01:00
twinaphex 144b6aed9e Cleanup 2016-01-14 09:52:20 +01:00
twinaphex 974e8d6ce2 (joypad_connection.c) Cleanups 2016-01-14 09:51:17 +01:00
twinaphex ec6f70603b Add PID/VID for PS3 pad knockoff 2016-01-14 09:03:04 +01:00
Twinaphex 0fbb6f9bf0 Merge pull request #2642 from diablodiab/android-keyboard
Android keyboard keyboard functionality
2016-01-13 11:21:25 +01:00
twinaphex 8caee50fcd (GX) Add way to handle power callback 2016-01-13 08:27:58 +01:00
Diablodiab 88277b3918 Fixed a typo in Android version comment 2016-01-12 21:52:54 +01:00
Diablodiab afe8d2d617 Fixed two bugs in Android keyboard functionality and changed the way the keyboard
is registered (introduced an id_3 value)
2016-01-12 21:48:09 +01:00
twinaphex f374af9dbc Revert "Add keyboard input functionality to Android version"
This reverts commit 17bdb549d4.
2016-01-12 15:52:42 +01:00
Twinaphex db51b5a2c0 Merge pull request #2636 from diablodiab/android-keyboard-support
Add keyboard input functionality to Android version
2016-01-11 22:26:51 +01:00
Diablodiab 17bdb549d4 Add keyboard input functionality to Android version 2016-01-11 21:06:46 +01:00
twinaphex 347a18cb30 Update input headers 2016-01-10 04:33:01 +01:00
Twinaphex cecfdeb0cf Buildfix 2016-01-08 07:16:25 +01:00
twinaphex c779a1cf8f Move libretro_input_binds updating to input_poll 2016-01-08 06:39:23 +01:00
Ernesto Ramirez e53840f6c1 (GX) Fix input issue causing controllers to do not work at all. 2016-01-02 18:37:15 -06:00
twinaphex ef7a786527 Attempt to prevent segfault when pressing Enter in DRM/KMS mode 2016-01-02 22:28:21 +01:00
twinaphex 08e73ea144 Non_HAVE_MEN codepath fixes - courtesy of Karlton
t # Please enter the commit message for your changes. Lines starting
2016-01-02 02:54:20 +01:00
twinaphex 33028b7603 remove these files 2016-01-02 01:36:11 +01:00
twinaphex e67491d6a9 remove HAVE_LIBSICKSAXIS 2016-01-02 01:35:34 +01:00
Yoshi Sugawara 890eaafcd7 Fixed reading keyboard input for iOS 9 (use [UIApplication handleKeyUIEvent]). Fixed 8bitdo SNES30/SFC30 button mappings (fixed key mapping for X button) 2015-12-26 19:38:02 -05:00
twinaphex 697351ee67 (input) Use string_is_empty 2015-12-26 07:54:17 +01:00
aliaspider 40ac911a05 build fix. 2015-12-24 21:17:44 +01:00
twinaphex acb4682781 get rid of unused variable 2015-12-23 04:22:25 +01:00
twinaphex b8bbdc6f4c Revert udev drivers 2015-12-17 03:02:48 +01:00
twinaphex e7749c5d42 Create RUNLOOP_CTL_KEY_EVENT_GET 2015-12-13 14:31:17 +01:00
twinaphex 53804e5c24 Fix crash when system info is not yet available 2015-12-13 13:58:19 +01:00
Twinaphex 519275e629 Merge pull request #2558 from fr500/master
fix input labels empty on android
2015-12-13 03:28:41 +01:00
radius 4b082daa7e fix input labels empty on android 2015-12-12 20:56:42 -05:00
Higor Eurípedes 5219116751 (input_overlay) Fix unneeded load and memory leak 2015-12-12 22:23:55 -03:00
twinaphex d76d857166 Turn into C89-compatible comment 2015-12-13 00:01:44 +01:00
dibas f66729c012 Calibrate Wii U Pro Controller analogue sticks. 2015-12-12 21:47:45 +01:00
twinaphex 5f296ea402 Fix hatvalues 2015-12-12 20:55:09 +01:00
dibas 0c749a6181 Implemented additional checks for Nintendo controllers. 2015-12-12 20:41:52 +01:00
twinaphex 88d54336c7 (wiiupro) Add stub axis implementation 2015-12-12 20:38:23 +01:00
Twinaphex d85595ca67 Put Wii-U Pro pad on top of Wii Classic pad in list 2015-12-12 20:06:10 +01:00
twinaphex 8516e3350f Change send_control 2015-12-12 19:33:04 +01:00
twinaphex e529d76aec Turn buttons into booleans 2015-12-12 19:10:50 +01:00
twinaphex 9394294956 (joypad_connection) Stub Wii U Pro implementation - untested 2015-12-12 18:30:17 +01:00
twinaphex d70d09ad8d (connect_ps4.c) Cleanup 2015-12-12 17:58:40 +01:00
radius 48fbc5eda4 Improve the shield portable workaround and reimplement the workaround for the shield atv,
This workaround could be used as a foundation for other console like devices.
2015-12-11 17:25:03 -05:00
twinaphex fc6505e408 Get rid of rarch_system_info_get_ptr 2015-12-10 22:30:25 +01:00
twinaphex 41fc41e170 (input_driver.c) Cleanups 2015-12-10 12:54:56 +01:00
twinaphex 4727ddb52d Create RARCH_INPUT_CTL_KEY_PRESSED 2015-12-10 12:47:36 +01:00
twinaphex 7a791fa6e8 Turn primary_id/secondary_id into static variables 2015-12-09 22:17:55 +01:00
Twinaphex 2bb440bc08 Merge pull request #2535 from fr500/master
new workaround for pads implemented as two independents hid devices
2015-12-09 22:16:43 +01:00
twinaphex 23c13c0043 Delay reinit, gets rid of the remaining concurrency errors 2015-12-09 20:30:55 +01:00
twinaphex decbffd25b Refine RARCH_INPUT_CTL_DEINIT 2015-12-09 19:43:04 +01:00
radius 08f42beefb add ARCHOS gamepad 2015-12-09 10:00:32 -05:00
twinaphex 959b781c06 (Android) Implement input_alive 2015-12-08 13:47:46 +01:00
twinaphex 629a660af4 Check if android_app or android variables are NULL in android_input_poll_memcpy 2015-12-08 08:53:26 +01:00
twinaphex c1312d3b41 Buildfix 2015-12-07 21:21:13 +01:00
twinaphex 84bcf896b6 Set SET/UNSET_FRAME for Android 2015-12-07 21:17:55 +01:00
twinaphex 1e522f4035 (Android) Start calling SET_STUB_FRAME for LOST_FOCUS/GAINED_FOCUS 2015-12-07 21:07:04 +01:00
twinaphex 2d55dc3bda Complete namespace changes 2015-12-07 15:32:14 +01:00
radius e28450368f reset the ids when the driver is reinitialized 2015-12-06 23:39:42 -05:00
radius 17aa00db1a change variables 2015-12-06 23:20:47 -05:00
radius cbd8819fb3 new workaround for pads implemented as two independents hid devices 2015-12-06 22:58:54 -05:00
Higor Eurípedes b64ecfae92 (android_input) Fix negative port issue 2015-12-06 21:08:27 -03:00
twinaphex 4ef98894a2 Header include cleanups 2015-12-06 21:40:55 +01:00
twinaphex c6359d6dbc Divorce g_system_menu from global state 2015-12-06 19:31:47 +01:00
Higor Eurípedes ee06d36735 (input_driver) Get rid of dangling pointer 2015-12-06 13:56:20 -03:00
twinaphex 015986fea4 RARCH_INPUT_CTL - Make sure all static local variables are set
back to default state
2015-12-06 17:19:12 +01:00
twinaphex bfef1c816f Cleanup 2015-12-06 16:32:08 +01:00
twinaphex 39e9d5c5ba Start cutting down on the size of some char local variables - we
don't need PATH_MAX_LENGTH for everything
2015-12-06 13:28:20 +01:00
Higor Eurípedes 1cd0a0ff0a (android_input.c) Fix usage of signed/unsigned
This caused a segmentation failure in android_keyboard_state_get()
2015-12-05 19:23:02 -03:00
twinaphex 3517fdc02a (Android) Buildfix 2015-12-05 21:18:06 +01:00
twinaphex 5ba14b45ce Change some header includes 2015-12-05 20:05:32 +01:00
twinaphex d61b491d47 Don't include retro_miscellaneous.h as part of driver.h 2015-12-05 18:47:05 +01:00
twinaphex 736f343d9f Create RARCH_MENU_CTL_IS_ALIVE 2015-12-05 13:49:34 +01:00
twinaphex cbb3535854 joypad_connection.c - include stdlib.h for calloc 2015-12-05 13:24:15 +01:00
twinaphex 2f29d9f18c Take out menu/menu_driver.h include from driver.h 2015-12-05 13:22:50 +01:00
twinaphex fd07b5c689 (input_driver.c) Don't destroy input driver data during
RARCH_INPUT_CTL_DESTROY
2015-12-04 15:15:57 +01:00
twinaphex 351077dc78 Start reimplementing audio/video/input driver deiniting 2015-12-04 14:30:59 +01:00
twinaphex c0a1a6a3fe Move system->shutdown to runloop_ctl, turn it into a local
static variable
2015-12-04 12:44:12 +01:00
twinaphex 35da6073df (gx_joypad.c) Declare variables at top 2015-12-04 12:00:00 +01:00
twinaphex 0b9df5a069 (GX) Buildfix 2015-12-04 11:56:10 +01:00
twinaphex f21a9f2fd2 dinput.c - buildfix 2015-12-04 11:28:13 +01:00
twinaphex 50f3999e9b Backport/rewrites wmarquesr pt. 8 2015-12-04 11:11:05 +01:00
twinaphex a53334fba6 Backport/rewrites wmarquesr - pt. 4 2015-12-04 10:41:05 +01:00
twinaphex 67518b3c6c Move input_driver_block_hotkey to input_driver_ctl as static
local variable
2015-12-04 08:24:43 +01:00
twinaphex 24285d1167 Move input_driver_block_libretro_input to input_driver_ctl
as static local variable
2015-12-04 08:15:39 +01:00
twinaphex 957d53499b (input_autodetect.c) Turn static variable into local static variable - remote_bound 2015-12-04 02:57:47 +01:00
twinaphex 2582898a28 (input_driver.c) Nit 2015-12-04 02:50:29 +01:00
twinaphex 4eeada75b1 (input_driver.c) Turn some static variables into local static variables 2015-12-04 02:50:05 +01:00
twinaphex 071912871b (android_input.c) Attempt to only grab dlopen handle once 2015-12-03 21:19:16 +01:00
twinaphex 8ae39377e7 (Android) Cleanups 2015-12-03 01:59:43 +01:00
twinaphex 694e64831b Create thread duplicate variant of android_input_data_t variable 2015-12-02 23:23:21 +01:00
twinaphex 923433ead7 Move engine_handle_dpad code to android_input.c - copy
hat and analog state to intermediary on android_app during
poll time
2015-12-02 22:33:27 +01:00
twinaphex 69ee18cea6 Create android_input_data_t 2015-12-02 22:12:43 +01:00
twinaphex e859fae4ee (Android) Move sensorManager and sensorEventQueue to android_app 2015-12-02 21:38:21 +01:00
twinaphex b7d7dcef1c Expand android_app 2015-12-02 19:28:15 +01:00
twinaphex cfe5491b05 (Android) Reimplement how shutdown gets signalled 2015-12-02 17:55:31 +01:00
twinaphex d6b5dd6ac4 Flesh out android_native_app_glue.c implementation some more 2015-12-02 17:46:20 +01:00
twinaphex 986e4bf40d (Android) Native activity updates 2015-12-02 08:54:24 +01:00
Twinaphex 2c12ea6dd9 Merge pull request #2502 from heuripedes/master
Fixes
2015-12-01 01:48:10 +01:00
twinaphex f1a0068dc7 Move bsv global state to movie.c 2015-12-01 01:47:26 +01:00
Higor Eurípedes 6ab4f8128f (overlay) Fix huge leak when overlays are not supported 2015-11-30 21:32:32 -03:00
twinaphex d05ed635c6 Start rewriting bsv movie code so that global->bsv.movie is
only accessed inside movie.c
2015-12-01 01:20:22 +01:00
twinaphex a6d8d28895 Create more BSV_MOVIE_CTL_* enums 2015-12-01 00:16:48 +01:00
twinaphex 5d9e6bca60 Move bsv movie code to movie.c 2015-12-01 00:04:04 +01:00
twinaphex 22d64ae3dc move driver->remote and driver->command to input_driver.c 2015-11-30 23:06:47 +01:00
twinaphex 0b24618cd5 Move driver->command to input_driver.c 2015-11-30 22:56:41 +01:00
twinaphex 0db7cda264 Start moving rewind code to rewind.c 2015-11-30 22:25:13 +01:00
twinaphex 9824eb7ea9 Rename rarch_main_ctl to runloop_ctl 2015-11-30 21:42:59 +01:00
twinaphex 4e333302ae Rename RARCH_MAIN_CTL* to RUNLOOP_CTL* 2015-11-30 21:35:50 +01:00
twinaphex c3b2f84f39 Typo fix 2015-11-30 18:24:35 +01:00
twinaphex c03e1547b1 (linuxraw_joypad) Cleanups 2015-11-30 18:20:50 +01:00
twinaphex 7cb78cca58 Make g_epoll static 2015-11-30 18:14:07 +01:00
twinaphex 54655c37cd Create epoll_waiting 2015-11-30 18:08:00 +01:00
twinaphex ecbfc72e9b Create epoll_common 2015-11-30 18:05:10 +01:00
twinaphex 6d90c42bb5 We need to check for the instance where udev is only initialized
for the joypad part and not the general input driver
2015-11-30 16:56:32 +01:00
twinaphex 62260cf892 Turn g_udev static 2015-11-30 16:52:29 +01:00
twinaphex 28602d84af Make g_udev_mon static 2015-11-30 16:47:43 +01:00
twinaphex b76481b21e Create udev_mon_hotplug_available 2015-11-30 16:42:52 +01:00
twinaphex 2db1197942 Expand udev_common.c 2015-11-30 16:39:22 +01:00
twinaphex fd91cf130e Create udev_common.c/udev_common.h 2015-11-30 16:31:05 +01:00
twinaphex 41916b123f Optimize check_input_driver_block_hotkey 2015-11-30 08:32:30 +01:00