Commit Graph

161 Commits

Author SHA1 Message Date
twinaphex 532938c5fa Refactor meta_input_keys_pressed 2014-10-03 00:55:44 +02:00
twinaphex 8a1f15c460 Move rarch_check_block_hotkey to input/input_common.c and make
the function static
2014-10-03 00:46:14 +02:00
twinaphex d43b9082e7 Move input_autodetect code to input_autodetect.c 2014-09-30 17:48:31 +02:00
Twinaphex 9f5031188b Merge pull request #1066 from CyberShadow/pull-20140930-083313
Refactor old_state out of meta_input_keys_pressed into rarch_main_iterate
2014-09-30 10:40:43 +02:00
Vladimir Panteleev 0c104ffef8 Refactor old_state out of meta_input_keys_pressed into rarch_main_iterate 2014-09-30 08:35:41 +00:00
twinaphex ca9bfa18e4 Refine meta_input_keys_pressed 2014-09-29 21:23:35 +02:00
twinaphex c8ec8d9a7d Remove unused joy_keys_pressed function now 2014-09-29 21:01:59 +02:00
Vladimir Panteleev d0e970f175 Fix/reimplement input flushing
This fixes:

- menu toggle erratically not working on Android
- stray input going to libretro core when resuming content
- bound keys triggering as soon as they're bound on Android
- menu key repeat also repeating keys which should not be repeated
- issues caused by relying on timeouts for flushing

Architectural changes:

- menu_ctx_driver_t::input_postprocess now takes state and old_state
  (this allows getting rid of menu_handle_t::trigger_state)

Related changes:

- remove some no-op input_postprocess handlers (same effect as NULL)
- menu_iterate now uses the parameters passed to it, instead of
  polling menu_input
- menu_input is now merged into meta_input_keys_pressed
2014-09-29 12:58:52 +00:00
twinaphex b2b9cf5717 Rewrite input_push_analog_dpad 2014-09-26 12:56:03 +02:00
twinaphex d94e8329e8 Move stuff to config.features.h 2014-09-25 08:12:58 +02:00
twinaphex aa6d779fbc Added 1-second timeout when binding hotkeys 2014-09-25 04:44:24 +02:00
twinaphex 8015061720 Refactor menu_input - add input_keys_pressed in addition to
meta_input_keys_pressed
2014-09-25 04:19:09 +02:00
twinaphex eeda9df418 input_common.c - small cleanups 2014-09-16 07:06:23 +02:00
Higor Eurípedes 52f300b3ac (Makefile.common) Add missing xinput autoconfig object 2014-09-13 23:09:14 -03:00
Lioncash 64272ef327 Squash some more potential null pointer dereferences 2014-09-11 23:04:02 -04:00
twinaphex 75d2e13dcb Make drivers non-const 2014-09-11 07:06:20 +02:00
twinaphex 689cd6322f Indenting / style nits 2014-09-09 18:15:17 +02:00
Twinaphex 6fdc22eb0b Merge pull request #943 from lioncash/printf-fmt
Fix some printf specifiers to the correct signed-ness
2014-09-06 03:40:26 +02:00
twinaphex 24500dfeb5 (Android) Build fixes 2014-09-06 03:39:37 +02:00
twinaphex d7ca4d584c (Android) KEY_DOLLAR and KEY_EURO not defined on Android 2014-09-06 03:32:55 +02:00
Lioncash ab1ab62a6d Fix some printf specifiers to the correct signed-ness 2014-09-05 19:43:32 -04:00
Higor Eurípedes a01e43cc6d Add missing linuxraw/udev keys 2014-09-04 12:51:34 -03:00
twinaphex 514e454f16 Bump up max players to 16 2014-09-04 16:15:49 +02:00
Higor Eurípedes a7190a8da5 Reorder and add missing X11 and SDL key syms
SDL1 and SDL2 key syms have been merged.
2014-09-02 21:36:37 -03:00
twinaphex e68f62040d Cleanups, 80-char limit 2014-09-02 16:50:28 +02:00
twinaphex bf13548459 Remove extraneous elses in input code 2014-08-28 18:09:55 +02:00
twinaphex 823be1ce41 Get rid of more driver_funcs macros 2014-08-15 20:51:59 +02:00
twinaphex fab7792058 Get rid of set_keybinds - no longer used 2014-08-14 00:49:28 +02:00
twinaphex 7ff8db3f69 input_common.c - prevent unused variable warning 2014-08-12 23:00:59 +02:00
twinaphex b1d7cd038d Refactor input_push_analog_dpad 2014-08-12 20:59:05 +02:00
Higor Eurípedes e38c826fe1 (SDL*) Merge joypad drivers 2014-08-11 19:47:30 -03:00
Higor Eurípedes b6df19dffb (SDL*) Merge input drivers 2014-08-11 19:47:30 -03:00
Higor Eurípedes 609f3a8a36 (SDL2) Added joypad driver 2014-08-10 18:09:56 -03:00
Higor Eurípedes 46beb117ef (SDL2) Add input driver 2014-08-10 15:00:21 -03:00
twinaphex b76a2c2cee Refactor away input_joypad_poll - trivial wrapper function 2014-08-03 00:44:07 +02:00
twinaphex b6dc9fff03 Comment out input_common debug log 2014-08-02 19:56:18 +02:00
twinaphex 5f42c1281b Refactor input_try_autoconfigure_joypad - certain pads (like Xarcade
Tankstick) have two player pads on one device and have separate
buttons/keys per pad - so we need to query first for a name with the
'index' appended at the end - and a more generic 'name' afterwards
2014-07-28 04:28:45 +02:00
twinaphex 7730e872f8 Take out autoinput log 2014-07-28 04:08:06 +02:00
twinaphex a41c97c186 Add log for AUTOINPUT 2014-07-28 02:06:54 +02:00
Toad King 57d1cbbf26 (EMSCRIPTEN) add analog emulator support 2014-07-06 20:02:44 -04:00
Monroe88 adc7cba421 Add missing RetroKeyboard mappings to DirectInput 2014-07-01 21:06:56 -05:00
John Grub e2f8217d83 fix build
need another #endif here to go along with the new #ifdef
2014-06-14 17:25:09 -07:00
twinaphex c1501f7ffe (QNX) Start refactoring QNX input driver 2014-06-14 23:07:58 +02:00
Themaister 50ac407a9a Avoid breaking autoconfig when inside a push/pop d-pad emulation block. 2014-06-11 15:48:15 +02:00
twinaphex 31c68a7402 (Android) Input driver - cleanup pt. 1 2014-06-10 21:59:18 +02:00
twinaphex 234edda575 (Apple) Properly implement joypad - now executes init - and
also executes osx_pad_init and osx_pad_quit from joypad driver now
instead of outside code having to call it externally
2014-06-10 03:32:03 +02:00
twinaphex a7cb3e22a7 (Menu) Replace some more RGUI strings 2014-06-10 02:44:19 +02:00
twinaphex 13c5e4b1ab (GX) Reimplement controls pt. 1 2014-06-09 21:18:22 +02:00
Themaister 9bf32df360 Report autoconfigured binds in RGUI. 2014-06-09 19:23:51 +02:00
twinaphex a32c29e5ed (PSP) Refactor input autoconf 2014-06-09 18:57:17 +02:00
twinaphex 0e6d99d2de (XDK) Switch to new autoconf system 2014-06-09 18:17:37 +02:00
Themaister accc24ac8a Properly init ps3 joypad driver. 2014-06-09 16:03:42 +02:00
Themaister addba80c3b Rewrite DSP plugin interface. 2014-05-20 12:28:33 +02:00
Twinaphex 165698b9f2 Merge pull request #481 from libretro/dpad-map
Analog D-pad mapping
2014-01-08 12:01:39 -08:00
Themaister 67e7628568 Rename input_find_sk_key.
Matches up better with the conventions in input_common.
The sk-prefix was from SSNES days (how things linger on ... D:)
2014-01-08 18:24:54 +01:00
meancoot c786483635 Expand config key map table; have overlay’s use it to look up key names. 2014-01-08 12:16:22 -05:00
Themaister f57a1aa032 Add support for mapping analogs to D-pad again.
Use a cleaner approach which can feasibly work on all platforms.
Uses input_push/pop_analod_dpad to modify the joyaxis field before
polling input. This way, the RetroPad D-pad binds can inherit the
joyaxis fields from ANALOG_LEFT_X_PLUS and friends.

Also add support for the field in RGUI and saves settings.
2014-01-08 17:31:14 +01:00
Themaister 35c485aab0 Reuse bind maps in input_common for overlay. 2014-01-07 17:14:09 +01:00
twinaphex 0a15a17d44 Update years on all license headers 2014-01-01 01:50:59 +01:00
Themaister 58f8cde980 Fix PC build. 2013-12-24 11:11:25 +01:00
Toad King d7cacaa9ed start of porting wii input driver to better support RGUI. still has issues with axises 2013-12-22 19:47:33 -05:00
Themaister 977cec1378 Refactor keyboard event callbacks.
Go through input/keyboard_line.c to better hide internal logic
regarding keyboard line input.
2013-12-10 19:39:09 +01:00
Themaister f4d79eaf0e Fix minor crash and mouse. 2013-12-07 14:16:17 +01:00
Themaister c21310b261 Start adding udev input driver. 2013-12-07 14:13:40 +01:00
Themaister 61d66b7f19 Make udev joypad driver default over linuxraw.
Udev supports rumble and should be the default.
2013-12-05 10:09:41 +01:00
twinaphex f8c37fc933 (Menu) Simplify menu preprocessor conditionals - there is now
one common catch-all define called HAVE_MENU
2013-11-08 04:36:47 +01:00
twinaphex d2c87e3039 Convert most C99-style for loop initial declarations to C89-compliant
ones
2013-10-22 15:08:17 +02:00
twinaphex abb829283b Take out messy Dpad emulation code - this will require an entire
rewrite where we come up with a solution that works the same across
console/PC/mobile
2013-10-05 20:55:37 +00:00
Themaister 2bd065e359 Move TURBO key below analogs.
Avoid having it show up in menu.
2013-09-30 19:40:41 +02:00
Themaister 7229142e57 Display current keybind in RGUI. 2013-09-30 18:27:35 +02:00
Themaister 02cd05550e Reuse input_config_bind_map. 2013-09-30 18:08:47 +02:00
Themaister 4f2de6d578 Add RGUI menu toggle config. 2013-09-29 20:40:04 +02:00
Themaister c7db4aff64 Support variable strength for rumble motors. 2013-09-26 12:55:05 +02:00
Themaister 8b1ac3bc9e Add rumble tests to libretro-test. 2013-09-25 23:58:02 +02:00
Themaister a01ef18f80 Add RETRO_ENVIRONMENT_GET_RUMBLE_INTERFACE. 2013-09-25 23:21:32 +02:00
Themaister 7855781cd8 Hook up rumble interfaces to input drivers. 2013-09-25 22:59:05 +02:00
Themaister e5d0b09df5 Start adding Linux Udev joypad input. 2013-09-25 19:32:18 +02:00
Hans-Kristian Arntzen 7d90ff4011 Merge pull request #303 from libretro/emscripten
Emscripten/Javascript port
2013-09-11 01:01:29 -07:00
ToadKing b874f003ff [EMSCRIPTEN] undo SDL workarounds no longer needed 2013-09-10 22:02:54 -04:00
ToadKing a09dda3a9d [EMSCRIPTEN] add custom input driver, removes SDL dependency + adds mouse support 2013-09-10 20:21:48 -04:00
Themaister 99dbd6bd1c Clean up autoconfig stuff a bit, add headers. 2013-09-06 23:24:21 +02:00
pinumbernumber d2472eb8cb indentation fix 2013-09-06 20:53:26 +01:00
pinumbernumber 50e4dfb57c Various fixups to the internal autoconf system 2013-09-06 13:46:06 +01:00
pinumbernumber 8fd84fa46c Hardcoded joypad config fallbacks, and required changes to config_file 2013-09-05 20:44:00 +01:00
pinumbernumber 333ae68163 more small style tweaks 2013-08-26 12:13:41 +01:00
pinumbernumber f5454cd446 Initial xinput support, fix msvc build 2013-08-23 13:09:59 +01:00
ToadKing 49398698b5 initial emscripten port (no audio/files, input broken) 2013-07-17 20:26:01 -04:00
Themaister b323640d7c Make joypad driver configurable. 2013-05-04 10:24:15 +02:00
Themaister dfdcfac588 Add concept of meta "level" for hotkeys.
Used by retroarch-joyconfig to make misc key config easier.
2013-04-29 21:11:29 +02:00
Themaister a076b14daa Clean up some ifdefs. 2013-04-27 00:14:01 +02:00
Themaister f06f6e544e Don't spam OSD messages for autoconfigure. 2013-04-26 15:03:09 +02:00
Themaister cca7fce89c Add joypad autoconfig support. 2013-04-26 14:48:48 +02:00
Themaister 0ac849d825 Let retroarch-joyconfig write autoconfigs. 2013-04-26 13:25:40 +02:00
Themaister 42a9e46cb2 Input config refactor.
Move LUTs to input_common.c. Make LUTs public.
2013-04-26 11:44:54 +02:00
Themaister 9a96e6a8f3 Rewrite linuxraw-joypad. Add hotplug.
Adds plug-n-play to linuxraw-joypad.
Can plug devices in and out in flight.

linuxraw_joypad is now default joypad API on Linux,
making SDL obsolete.
2013-04-26 00:03:22 +02:00
twinaphex 3a131cf5b8 (PS3) Compile in HAVE_OVERLAY 2013-04-10 04:39:27 +02:00
Themaister 292bc36b43 Basic mouse grabbing for X11. 2013-03-29 18:55:54 +01:00
Themaister 2be53ac0f9 Add MENU_TOGGLE bind config. 2013-03-16 12:21:16 +01:00
Themaister e3dfba2c34 Add preliminary disk swapping interface.
Works with Mednafen's disk swapping model.
2013-02-21 23:44:07 +01:00
Themaister 312980ee30 Add support for full-screen overlays. 2013-01-11 16:23:04 +01:00