Commit Graph

4404 Commits

Author SHA1 Message Date
ceb33 c6d6fc7098 fix memory leak 2018-03-30 11:00:38 +02:00
ceb33 82e2cc7c73 set hid device registration deterministic (sorting by ascending location_id), this solve the issue where game with same vid and pid where sometime swapped by the OS 2018-03-30 10:43:54 +02:00
gblues 5060c2aac4 More fixes, GC pad kinda sorta works
== DETAILS

- Added a new method to the joypad_connection_t interface for
  getting a single button
- wired everything into the hidpad driver
- for testing purposes, hacking the top-level joypad driver
  so that kpad isn't used
- add a new RARCH_LOG_BUFFER method to verbosity for logging the
  contents of a binary buffer (useful for writing/debugging pad drivers)
- fix a few bugs in the wiiu GC pad driver

The button mapping isn't quite right, and I'm not sure what's
going wrong.
2018-03-29 23:37:11 -07:00
gblues 89c1ba7929 Keep HID pads from clobbering gamepad/wiimotes
== DETAILS

Trying to do weird pad math just wasn't working so I bit the bullet and just
let it allocate all 16 pads in the slot list, then just mark 0-4 as
connected so that the slot allocator would start at 5.

I can see it detect the pad, but no idea if it works. Out of time for
today.
2018-03-29 23:37:11 -07:00
gblues 1eea48d0c8 Fix crash on exit bug
== DETAILS

Turns out freeing memory that's already been freed is.. bad.

Fix two double-free instances; one due to over-freeing and the other
due to wrong order-of-operations causing a double free.

Also updated logging a little.

== TESTING

The GC adapter still clobbers slot 0, but the "emergency exit" sequence
works to quit RA cleanly.
2018-03-29 23:37:11 -07:00
gblues 8a4c5086fb Finish HID implementation for WiiU GCA adapter
== DETAILS

(I think)

- Uncomment the call in the read loop to start feeding packets to the
  driver
- implement the GCA packet driver
- implement the pad interface
- fix indentations in GCA driver

== TESTING
Compiles. Haven't tested yet.
2018-03-29 23:37:11 -07:00
gblues 180d6a28bf Fix up HID device driver initialization
== DETAILS
Turns out the cause of the crash was a bad cast, resulting in a
function call to nowhere.

Also, I think the DSI exception handler only works on the primary core;
when this was happening in the background thread, I got a black
screen error instead.

Next up: finishing up the GCA driver.
2018-03-29 23:37:11 -07:00
gblues dc6f4c23ed Rename hid_driver_instance members for clarity 2018-03-29 23:37:11 -07:00
gblues 4b9d5c0ab7 Start implementing "detach" code path
== DETAILS
We're at a point where we need to do more than just
clean up a local data structure, so I've started
implementing the "detach" part of the code so that
everything gets cleaned up properly.

Also, added error handling inside the polling
thread.

== TESTING

Have not tested yet.
2018-03-29 23:37:11 -07:00
gblues 0100d58ffb WIP: evolve driver implementation
== DETAILS

I've created the concept of a hid_driver_instance_t which is basically
a central place to store the hid pad driver, hid subsystem driver,
the pad list, and the instance data for the above in a central location.

The HID pad device drivers can use it to perform HID operations in a
generic manner.

This is more-or-less a pause point so I can catch up with upstream.

== TESTING

Haven't tested this yet. Compiles without warnings though!
2018-03-29 23:37:11 -07:00
gblues 41ce8853d7 Add name for hid device; implement detect
== DETAILS

- detect() methods in device_* files now check for VID/PID
  instead of just returning false
- add "name" field on hid device, mainly for logging purposes

== TESTING
Verified my WiiU GC adapter detected properly
2018-03-29 23:37:11 -07:00
gblues ae19eed00f implement hid device search 2018-03-29 23:37:11 -07:00
twinaphex 1103f4f630 (input_overlay.c) Cleanups 2018-03-29 19:43:04 +02:00
Ash aeea0e6ca8
[WiiU] Fix OOB read/write in keyboard driver
This code used a keyboardState size of 256 and indexed it with a
retro_key, which can be any value (RETROK_RALT is 307). This fixes
that by using RETROK_LAST as the array size.

Should fix #6322.
2018-03-17 13:00:47 +11:00
twinaphex 6653818dc8 Revert "(input_overlay.c) Cleanups"
This reverts commit 56389466aa.
2018-03-15 06:39:06 +01:00
Ryunam c5775fd73c Implement Slow motion toggle 2018-03-10 18:42:45 +01:00
Twinaphex 4dc9c408d4
Merge pull request #6329 from markand/fix-vid-pid
Use EVIOCGID's ioctl to get vendor/product id, #6325
2018-02-26 18:39:33 +01:00
twinaphex fae9223641 Remove hashes from task_overlay 2018-02-25 13:03:54 +01:00
David Demelier e99049a8ff Use EVIOCGID's ioctl to get vendor/product id, #6325
The current code get the USB vendor/product controller, in case of
bluetooth connection this means that you get the bluetooth dongle ids
instead of gamepads. This is not fine as we match gamepads using their
product and vendor ids.

Credits go to SDL which helped me to figure out this issue.

http://hg.libsdl.org/SDL/file/f7c6b974d5af/src/joystick/linux/SDL_sysjoystick.c#l208
2018-02-23 09:19:43 +01:00
twinaphex 5139241e87 Fix Python codepath 2018-02-19 09:11:33 +01:00
twinaphex 070c09faec Avoid more pointer grabbing for video driver ptr 2018-02-16 20:42:37 +01:00
twinaphex 2b02616512 Disable ENABLE_TOUCH_SCREEN_MOUSE for now until issues are resolved 2018-02-15 14:50:14 +01:00
twinaphex 56389466aa (input_overlay.c) Cleanups 2018-02-11 17:58:24 +01:00
Brad Parker 039da3bb83 C89 buildfix 2018-02-06 22:17:32 -05:00
Twinaphex 0c3a684e2c
Merge pull request #6192 from gblues/master
Fix memory management bugs
2018-01-28 08:48:21 +01:00
gblues f2ea5dde11 Fix memory management bugs
== DETAILS

 * Fix double-free in hidpad shutdown code
 * Fix possible double-free in hidpad error handling code
 * Fix memory leak in adapter delete method
2018-01-27 22:54:59 -08:00
Olivier PARRA 8bff69eae8 1.[IOS9]Remove HID entry from menu as IOKIT is not available 2.[OSX]Add robustness and determinism to HID buttons detection code (add controller buttons in a sorted list) 2018-01-25 02:20:52 +01:00
twinaphex 80b17668b6 Add initial VS2013 solution 2018-01-24 01:29:45 +01:00
Twinaphex 4a6a97be60
Merge pull request #5429 from GregorR/netplay-input-upgrades-1
Netplay input upgrades 1
2018-01-23 05:01:45 +01:00
twinaphex 3fc2ddb8d2 (IOHIDManager) Add improvements - https://github.com/libretro/RetroArch/issues/4816#issuecomment-359145035 2018-01-22 06:48:56 +01:00
twinaphex c5ffd06778 Revert "(xdk_joypad.c) Cleanups"
This reverts commit 49c399217d.
2018-01-21 01:48:28 +01:00
twinaphex 6c73cea470 Revert "Buildfix"
This reverts commit 832cf07247.
2018-01-21 01:48:21 +01:00
twinaphex 832cf07247 Buildfix 2018-01-21 01:44:18 +01:00
twinaphex 49c399217d (xdk_joypad.c) Cleanups 2018-01-21 01:43:19 +01:00
twinaphex 932904e07e (Xbox 360) Buildfixes 2018-01-20 23:42:10 +01:00
twinaphex b7bbf368fe (XBox XDK) Input should work again completely 2018-01-20 23:38:32 +01:00
Twinaphex f08031345e
Merge pull request #6144 from aliaspider/master
various / build fixes.
2018-01-20 21:54:37 +01:00
aliaspider 5db96f35fa (WIN32) various build fixes. 2018-01-20 20:05:32 +01:00
twinaphex 528e4d8cc4 xdk_joypad_axis - implement case 4/5 for Xbox 360 2018-01-20 19:57:14 +01:00
twinaphex 6311885824 (XDK1) Change D-pad to hat controls - make gamepad D-pad and analog
stick work properly
2018-01-20 19:48:29 +01:00
twinaphex 13da6bf4a2 With Xbox OG, some of the face buttons are analog buttons -
need to implement this in _button callback function
2018-01-20 19:34:01 +01:00
twinaphex b4bb6e2ef4 Start making xdk_joypad code more similar to PC code 2018-01-20 19:05:39 +01:00
twinaphex 64e0861aee remove iteration variables 2018-01-20 18:57:19 +01:00
twinaphex 3ba978caa9 Make axis function more like PC version 2018-01-20 18:55:28 +01:00
twinaphex e16d962c01 Start getting rid of analog_state 2018-01-20 18:54:21 +01:00
twinaphex f25306ba22 memset g_xinput_states to 0 2018-01-20 18:50:24 +01:00
twinaphex 03a745e5b4 Remove xdk_joypad_get_buttons 2018-01-20 18:47:39 +01:00
twinaphex 0550b22a35 (XDK) Buildfix 2018-01-20 18:46:13 +01:00
twinaphex f74e399bdf Start rewriting xdk_joypad.c 2018-01-20 18:44:35 +01:00
twinaphex 41575a63ac (XDK joypad) Cleanups 2018-01-20 17:59:59 +01:00
twinaphex e6f637ea6b Set autoconfig binds for Xbox 2018-01-20 03:14:17 +01:00
twinaphex d01b9c4a09 Cleanups 2018-01-19 21:25:35 +01:00
twinaphex 82f721145c (XDK) Refactor xdk_joypad.c 2018-01-19 21:24:28 +01:00
twinaphex b4b5ed1630 Rely on xbox input subsystem to attach/detach gamepads 2018-01-19 07:02:47 +01:00
twinaphex 0731a79a4f Pass this to XInputOpen 2018-01-19 06:56:44 +01:00
twinaphex f71bbeae9f (XDK) Try to autodetect all pads at startup 2018-01-19 06:49:52 +01:00
twinaphex 897c1654ab Reduce usage of string_is_not_equal_fast 2018-01-17 01:03:48 +01:00
twinaphex 61ff51be2f Start using string_is_equal predominantly 2018-01-16 22:53:38 +01:00
Toad King ccb45a068d fix compiler warning 2018-01-15 04:52:35 -06:00
Toad King 460ceaef97 queue keyboard events and only process them when polling
fixes hitting enter from search box also selecting underlying menu item
2018-01-14 14:37:25 -06:00
Toad King 4fd750b48a add builtin autoconf script for emscripten gamepads with "standard" mapping 2018-01-14 04:24:37 -06:00
Toad King b3900217da clamp axis values to -1.0 - 1.0, at least firefox can report values outside that range 2018-01-14 03:43:23 -06:00
Toad King 1f8a85615c don't always clear poll state 2018-01-14 02:34:38 -06:00
Toad King de3581de73 fix analog sticks 2018-01-14 01:35:28 -06:00
Toad King 15c3f56b37 fix phantom button presses 2018-01-14 01:00:46 -06:00
Toad King 21d928ba0e add joypad driver for emscripten 2018-01-14 00:15:30 -06:00
Toad King 38ec1acf8e add mouse support to emscripten 2018-01-13 20:51:30 -06:00
Toad King 0ce1fa7751 fix search box in menu 2018-01-13 20:47:15 -06:00
Toad King 1e212b4248 use emscripten HTML5 API for keyboard events instead of old JS library 2018-01-13 17:56:00 -06:00
Toad King a77f9c37c6 start on bringing the emscripten video code up to speed with latest emscripten
fix rwebinput
2018-01-13 00:05:07 -06:00
twinaphex 7cbe4ba9a8 Turn some variables static 2018-01-12 01:37:23 +01:00
radius 3b334b60d6 add display name and config name to autoconf 2018-01-11 17:06:14 -05:00
David Walters c76545bf6c Compile fix. 2018-01-11 17:03:18 +00:00
David Walters 3dc3534498 Merge branch 'master' of https://github.com/libretro/RetroArch into udev_lightgun_api 2018-01-08 14:37:05 +00:00
gblues 5894d0ef86 Remove all HID code from WiiU build via ifdef
== DETAILS
We're trying to track down the source of crashes when switching cores.
To rule out the HID code, this commit does the following:

- Wraps the library imports in an ifdef
- Wraps the object files in conditionals in Makefile.wiiu
- In wiiu_joypad, calls into the hidpad driver are wrapped in ifdef

== TESTING
This didn't solve the "System memory error" crash I've been experiencing.
But, maybe it will impact the other flavors of crashes others are seeing.
2018-01-07 20:26:24 -08:00
vgmoose 890de0e79b allow joycons to work while attached 2018-01-07 12:10:28 +01:00
radius 3ee75e86c5 ake the hack less specific 2018-01-06 13:47:54 -05:00
gblues 5b13f85967 Use the right value for BIT256_GET macro
== DETAILS

The BIT256_GET() macro expects a bit number (from 0-255), and we're giving it
a 32-bit mask (0x000080000).

Solution:

- Define VPAD_BUTTON_xxx_BIT macros using the bit number
- Use said macro in wiiu_input.c
- organizational cleanup:

  * put VPAD_BUTTON_TOUCH into the enum in stead of as a hokey define
  * put the touch bits in the right order
  * put in placeholder enums for (currently) unused bits
2018-01-05 20:03:10 -08:00
Gregor Richards c8ec048459 More netplay flip nonsense to tear out. 2018-01-05 14:27:02 -05:00
Gregor Richards 8d5a79fc69 Removing long-obsolete now-disfunctional "netplay flip players" feature 2018-01-05 14:27:02 -05:00
twinaphex cf8e7cd362 (wiiu) small style nits; declare variables at top; C comments 2018-01-05 13:09:05 +01:00
Ian House 5311544c65 Added overlay led driver, fixed a bug in the rpi led driver 2018-01-04 12:56:57 -05:00
twinaphex edb8ecdbf8 (xdk_joypad.c) Add C codepath for XGetDeviceChanges 2018-01-03 14:13:29 +01:00
twinaphex b57f0d95c2 Try to fix Apple iOS build - error: initializer element is not a compile-time constant 2018-01-01 15:27:52 +01:00
Alcaro 7fd4d5013d C89 2017-12-31 23:46:11 +01:00
twinaphex bd16fd49ab Fix ./configure --disable-rgui 2017-12-31 17:53:11 +01:00
twinaphex 5aa159431e Prevent potential crash 2017-12-31 07:15:18 +01:00
Twinaphex 768be8b9c8
Merge pull request #6011 from gblues/master
Fix a couple crash bugs
2017-12-31 07:08:03 +01:00
twinaphex 2884ad2d73 (360) Some buildfixes 2017-12-31 06:09:39 +01:00
Brad Parker 8a8687ec9c add missing ifdef for device change fix and include 2K in the version check 2017-12-30 23:07:59 -05:00
twinaphex b464014a51 C89_BUILD fixes 2017-12-31 03:27:55 +01:00
misson20000 7cc614263a (NSW) add default button bindings and fix right joystick 2017-12-31 03:04:11 +01:00
gblues 11fed40c79 Fix another crash bug in joypad_connect
== DETAILS

I fixed a similar bug in a past commit, with the same root cause: making
assumptions about the length of the array.

- Add validation to joypad_connection_init() so that if >MAX_USERS is
  requested, a warning is logged and only MAX_USERS is allocated.
- Rewrote the iteration routines so they strictly use the
  joypad_is_end_of_list() method to detect the end.
2017-12-30 16:36:54 -08:00
Twinaphex 0389bc64fe
Merge pull request #5997 from libretro/new_hid
New HID system (courtesy of gblues)
2017-12-30 15:30:03 +01:00
twinaphex 20bb653f1e (Xbox 360) Buildfixes 2017-12-30 12:36:00 +01:00
gblues 65c177a0ee Move HID driver into wiiu/ code
== DETAILS

RetroArch's general HID drivers are intended as a full-on substitute for
other input drivers such as XInput, DInput, SDL, etc. The Wii U port is,
to my knowledge, the first case of heterogenous input drivers working
concurrently.

As such, I've moved things around:

- The HID driver source is moved into the wiiu/input/ directory alongside
  the joypad subdrivers.
- We no longer use the input_hid_init_first() method to instantiate; instead
  we just init the wiiu HID driver directly.
- The HID pad driver and HID subsystem driver enjoy a tighter coupling,
  mainly having to do with the initialization of the joypad connections
  list, because there's no way to inform the HID driver's init() method
  how many slots to allocate.

== TESTING
Will test in a moment, but at  least it compiles cleanly. ;)
2017-12-30 04:43:38 +01:00
gblues 704cc61fd8 Fix bug in autodetect macro, gamepad now works properly
== DETAILS
The gamepad didn't work because I had tried to rename the pad from
'WIIU Gamepad' to 'WiiU Gamepad'.

I added some debug logging and (to cut out a lot of trial-and-error)
discovered that the reason it didn't work was because a bug in a macro
was  using the define literally instead of substituting it (so e.g.
the autodetect handler was trying to match 'WiiU Gamepad' against the
literal string 'PAD_NAME_WIIU_GAMEPAD').

- Fixed the macro bug
- Left a minimal amount of the debug logging in place; may come in
  handy for someone else.
- Updated wpad/kpad/hidpad to use the define constants

== TESTING
Did a test build and confirmed the gamepad responded.
2017-12-30 04:43:33 +01:00
gblues 0ae7ffe0d3 Clean up dumb compile warnings, fix crash bug
== DETAILS

- the free() method of the hid_driver_t interface needs its
  parameter defined as const in order for the compiler to stop
  complaining about losing const-ness.
- if a joypad list is created with <MAX_USERS slots in it, the
  destroy() function will crash because it assumes there are MAX_USERS
  entries.

  To do this, the allocate function creates n+1 slots, and gives the
  last slot a canary value that the destroy() method can then watch for
  when iterating through the list.
2017-12-30 04:43:27 +01:00
gblues 52c754cfa8 Split wiiu_gamepad into three sub-drivers
== DETAILS
Well, after a lot of code analysis, this seems like the
best way to handle things on the Wii U without also completely
re-architecting the I/O handling in RetroArch.

How it works:

- the top-level wiiu_joypad driver is now nothing more than a
  delegator.
- the wiiu-specific drivers live in `wiiu/input/`
- wpad_driver.c handles the WiiU gamepad
- kpad_driver.c handles the wiimotes
- hidpad_driver.c will handle HID devices like the GC adapter, DS3/DS4, etc.

  (I say "will" because this isn't implemented yet)

== TESTING
Haven't actually tried the build to see if it works, but it does
compile.
2017-12-30 04:43:18 +01:00
gblues 8f900de65e Clean up USB VID/PID declarations
== DETAILS

USB Vendor and Product IDs are in little-endian byte order, and they
need to be byteswapped on big-endian systems.

This approach allows us to use the standard hex notation for the VID/HID
values, and give them meaningful names, and only swap on the platforms
that need it. Also prevents having to abuse SWAP16() in the platform-
specific code.
2017-12-30 04:43:03 +01:00
gblues 0f66bc3297 Implement HID read loop, add debug logging
== DETAILS

I haven't figured out how I'm going to get the data read via HIDRead()
funneled back to the adapter--the handle_packet() method doesn't actually
get called anywhere.

I'm probably going to need to do more tweaking to the function pointer
list.

This commit also adds logging for the data read via HIDRead.

== TESTING

I used my "stress test" (which I used to reproduce the crash caused
by the old HID implementation), and it did not crash.
2017-12-30 04:41:30 +01:00
gblues 7954dab835 Progress on I/O handling
== DETAILS

Starting to implement the I/O handling on the HID driver.

The old implementation basically had a never-ending HIDRead() callback
set up, so that callback N would start the read process for invocation
N+1.

We will take the same approach here; but now that the I/O thread is
happenning on its own core, we should be able to let it run full-
throttle without impacting emulator performance.

Of course, this hinges on the callback actually running on the same
core as the syscall was initiated on.

== TESTING
Can confirm that the read_loop_callback gets invoked on the same core
that the HIDRead() was invoked on.
2017-12-30 04:41:25 +01:00
gblues 661e5bf50b Implement new functions in hid_driver_t in WiiU driver
== DETAILS

This implements the WiiU-specific functions.

Since the wiiu_hid_t data structure contains the handle and interface
index, the method signatures can be simplified quite a bit. And since
(at least for now) we want these to be synchronous, we don't need to
expose the callback parameters.
2017-12-30 04:41:19 +01:00
gblues 678c4093c1 Start adapting the dual shock 3 driver to use the new driver format.
== DETAILS

The handshake stuff is derived from the old HID2VPAD, just in knowing
what data goes in what report.

- Added the HID_REPORT_ flags to syshid.h
- Renamed the generic "REPORT_TYPE" flags to be meaningful
- also fixed incorrect parameter list for set_protocol
== TESTING
The functions aren't implemented in wiiu_hid.c just yet,
so this is gonna crash if you try to run it.
2017-12-30 04:41:12 +01:00
gblues 982d6893b0 Set the send_control pointer on the drivers
== DETAIL

One minor detail missed in the last commit: actually putting the
send_control function into the driver declaration. Woops.

Not doing the Wii U because it will be using the other methods.
2017-12-30 04:41:07 +01:00
gblues 5b37ced196 Update HID pad driver architecture
== DETAILS

The current HID implementation assumes a very low-level USB library
is being used. This causes a problem on Wii U, because the Cafe OS
only exposes a high-level interface.

To get these functions exposed to the HID pad drivers, I had to make
three changes:

1. I added the legacy "send_control" function to the HID driver
   interface
2. I modified the signature of pad_connection_pad_init() to send the
   driver pointer instead of the function pointer
3. I updated the HID pad drivers to keep the pointer to the driver
   instead of the function pointer, and updated the calls into the
   send_control function as appropriate
4. I updated the HID drivers to use the new pad init signature

== TESTING
Untested, in theory it should work without a hitch because at this
point all I've done is abstract things a little. I still need to
update the HID pad drivers to use the Wii U-specific calls as
appropriate.
2017-12-30 04:41:01 +01:00
gblues d0adbd194e Revert changes to joypad API
== DETAILS

Premature. Still learning my way around the codebase.
2017-12-30 04:40:53 +01:00
gblues c1496a8600 WIP - reorganizing input data
== DETAILS

Looking at the apple input driver gave me an idea--moving the
HID driver into the wiiu_input_t data instead of piggy-backing
it off the wiiu_joypad driver.

- Remove changes to wiiu_joypad
- Add equivalent to wiiu_input

This is probably broke as hell. Haven't tried to compile.
2017-12-30 04:40:43 +01:00
gblues 5804233ca8 Start fleshing out wiiu_hid driver
== DETAILS

- Added entrypoints into `input/connect/joypad_connection.c` to allow
  a max value to be passed in, instead of using single macro value
- Created a hand-off between the HID attach handler and the worker thread
- Created a pad initializer in `wiiu_hid.c` leveraging the new functionality
  added to `joypad_connection.c`

== TESTING
Compiles cleanly. At best, doesn't do anything. Might crash--not ready
to test quite yet.
2017-12-30 04:40:39 +01:00
gblues e98b006715 HID worker thread is now operational
== DETAILS
After wasting some cycles trying to isolate a crash, I went back to
basics.

I enabled the network logging, and put in a bunch of logging lines,
and noticed that the HID thread wasn't actually starting.

I did quite a bit of experimenting, working with different
memory alignments, and finally got it working.

== TESTING
As you can see, I put a log output inside the worker thread. When
I run the build, I can see the TICK messages. I can also see that
the thread shuts down as expected.

Also! The HID callback works as expected too! I have the GC
adapter, and when I register the HID callback it fires and I get the
following data:

    [INFO] USB device attach event
    [INFO]                 handle: 2058729
    [INFO]   physical_device_inst: 0
    [INFO]                    vid: 0x7e05
    [INFO]                    pid: 0x3703
    [INFO]        interface_index: 0
    [INFO]              sub_class: 0
    [INFO]               protocol: 0
    [INFO]     max_packet_size_rx: 37
    [INFO]     max_packet_size_tx: 5

Note that these are raw dumps of the data passed to the method,
so e.g. the VID/PID might be byte-swapped from how they're usually
represented.

Have not done the stress test to try to reproduce the crash.
2017-12-30 04:40:33 +01:00
gblues 192f5875b9 Simplify, add logging, revert some of the changes
== DETAILS
The old code was crashing; I did a minimalized branch and the crash
went away, so I'm bringing that over here. Meaning I'll have to
redo some of the other work I'd put in, but oh well.

(now watch it start crashing again)

== TESTING
Can confirm it builds. Wii U is busy ATM so I can't test.
2017-12-30 04:40:23 +01:00
gblues 1beba28d02 Only call HIDSetup/HidTeardown once
== DETAILS
I did a minimalist edit of the HID thread that stripped out all
HID* syscalls, and this stopped the crashing. I then re-added just
the HIDSetup() and HIDTeardown() calls, and the crash came back.

This smells like an OS bug. To work around it, I've put the
HIDSetup() and HIDTeardown() calls into the app init/shutdown
section, so they only get called once in the application lifetime
and not each time the input driver is initialized.
2017-12-30 04:40:15 +01:00
gblues 5c5e5be649 More progress on the HID driver
== DETAILS
I think I've about got the thread startup/teardown code worked
out. Logically, anyway, if not accurately.

The challenge has been figuring out how best to integrate the
features of HID2VPAD.

I found `input/connect/joypad_connection.c` and this seems like
the logical place for:

- Special-case driver for the Switch Pro controller
- Any other special cases HIDTOVPAD supports that core RetroArch
  doesn't
- Parsing of HIDTOVPAD config file to add custom button mapping

== TESTING
Compiles. Haven't tested with a real Wii U. Probably doesn't work
though. I very likely have the threading bit wrong.
2017-12-30 04:40:01 +01:00
gblues c3736adb77 Start implementing HID polling thread
== DETAILS

Looking at the other HID USB drivers, it looks like the typical
implementation is to start up a background thread to do the
polling, rather than wait for RA to invoke the poll() method.

This commit sets up the skeleton of the background thread:

- The thread gets created in init()
- The thread gets stopped in free()

Right now the body of the thread is a 10ms sleep.

== TESTING

It compiles cleanly, and links. Don't know if it actually works.
2017-12-30 04:39:56 +01:00
gblues 203876a206 More progress on the HID driver
== DETAILS
I think I've about got the thread startup/teardown code worked
out. Logically, anyway, if not accurately.

The challenge has been figuring out how best to integrate the
features of HID2VPAD.

I found `input/connect/joypad_connection.c` and this seems like
the logical place for:

- Special-case driver for the Switch Pro controller
- Any other special cases HIDTOVPAD supports that core RetroArch
  doesn't
- Parsing of HIDTOVPAD config file to add custom button mapping

== TESTING
Compiles. Haven't tested with a real Wii U. Probably doesn't work
though. I very likely have the threading bit wrong.
2017-12-30 04:39:44 +01:00
gblues 1657079c45 Start implementing HID polling thread
== DETAILS

Looking at the other HID USB drivers, it looks like the typical
implementation is to start up a background thread to do the
polling, rather than wait for RA to invoke the poll() method.

This commit sets up the skeleton of the background thread:

- The thread gets created in init()
- The thread gets stopped in free()

Right now the body of the thread is a 10ms sleep.

== TESTING

It compiles cleanly, and links. Don't know if it actually works.
2017-12-30 04:39:39 +01:00
gblues 7e56881b88 Some cleanups 2017-12-30 04:39:34 +01:00
gblues 3b92cce6bf Start wiring up the HID driver
- add alloc/free for necessary objects
- register callback with Wii U OS

Don't think I've put the unregister bit in, so this is very likely
broken.
2017-12-30 04:39:25 +01:00
Nathan Strong e80d99dbae Delete controller_patcher; start on proper HID driver
== DETAILS

We discovered that the controller_patcher code was causing
the WiiU to intermittently crash when switching ROMs.

Changes:

- Completely extricates the controller_patcher code
- Create a skeleton wiiu_hid driver
- Wire up the build system to build/link it successfully

== TESTING

Has not been tested. Probably doesn't crash, since the
skeleton driver is just a copy of the null driver.
2017-12-30 04:38:57 +01:00
twinaphex d49b7b28b6 input_poll - cleanup 2017-12-29 23:12:35 +01:00
twinaphex a6afddae04 current_input_data and current_input are no longer globals 2017-12-29 23:03:25 +01:00
twinaphex 5c876647ed (NSW) Small cleanups 2017-12-29 00:45:00 +01:00
misson20000 6d2a7b1f26 Nintendo Switch (libtransistor) port 2017-12-29 00:10:01 +01:00
Twinaphex c7c71cb01f Fix Apple build 2017-12-27 22:36:10 +01:00
Twinaphex b1c0fe7d0d Fix CXX_BUILD for Apple 2017-12-27 22:33:32 +01:00
radius 2cab3a7e4e fix some nits 2017-12-27 15:43:03 -05:00
radius c3e6ac96aa only reinit when HID devices are attached 2017-12-27 15:34:18 -05:00
Twinaphex d64154bf40
Merge pull request #5965 from fr500/master
avoid dinput reinitialization on unrelated WM_DEVICECHANGE events
2017-12-27 05:55:38 +01:00
bparker06 2dcd2bc5c6
Fix relative path 2017-12-26 22:02:11 -05:00
radius ab54fda509 avoid dinput reinitialization on unrelated WM_DEVICECHANGE events 2017-12-26 20:17:26 -05:00
radius 7d9193555a fix menu toggle with keymapper active 2017-12-26 01:20:36 -05:00
Brad Parker 6d484b7724 xinput: check for valid function pointers before calling them 2017-12-23 23:02:29 -05:00
twinaphex 95e807749d Simplification/cleanup 2017-12-18 07:09:44 +01:00
twinaphex 422ce9396c Cleanup - input_key_pressed 2017-12-18 06:14:48 +01:00
twinaphex 69f85556a3 Get rid of meta_key_pressed 2017-12-18 05:59:57 +01:00
twinaphex 7b210ccf37 Don't call meta key pressed if not bound 2017-12-18 05:49:17 +01:00
twinaphex 1978689dcb Rewrite input_keys_pressed_iterate 2017-12-18 05:22:45 +01:00
twinaphex 9b9cf7b036 Cleanups 2017-12-18 05:13:57 +01:00
twinaphex 3c5d2f047c Create input_keys_pressed_iterate 2017-12-18 05:09:16 +01:00
Twinaphex 26f483b22d
Merge pull request #5882 from hiddenasbestos/dolphinbar
Mayflash DolphinBar
2017-12-17 16:48:26 +01:00
David Walters 02f6301607 fix reversed logic 2017-12-17 12:46:21 +00:00
David Walters adffa5fc4c Fixes for overlay buttons 2017-12-17 12:36:18 +00:00
Brad Parker 8c0adf3594 move path_file_rename and path_file_remove into VFS 2017-12-14 13:32:26 -05:00
gblues 0f7de204f7 Last batch of whitespace cleanup (post-rebase)
-- looks like a few files committed with DOS line endings
2017-12-12 00:24:46 -08:00
gblues 6904101c44 Clean up trailing whitespace
== DETAILS

Really simple code cleanup, because my editor flags trailing whitespaces
and it's pretty annoying.
2017-12-12 00:24:18 -08:00
twinaphex c950613098 C comments 2017-12-11 11:28:48 +01:00
Peter Y. Hammond b14598657c Fixed a bug where the joypad devices were not always being assigned in the same order as they were numbered under /dev/input/. This showed up mainly when using an external USB Bluetooth dongle. In that case, controllers would be assigned often in reverse order. 2017-12-10 22:22:01 -07:00
Monroe88 cfde6a44db input_driver: Map Delete key to Y button for non-unified menu keyboard controls 2017-12-09 14:17:54 -06:00
Fabio 0d58d9ca0d
Added label to wii controllers, inverted the right stick Y axis of classic controller
The right stick Y axis of classic controller was wrong
2017-12-09 08:24:19 +01:00
David Walters 124ddcd27a Add dolphin bar VID/PID - treat like a wii over bluetooth connection 2017-12-07 23:44:29 +00:00
twinaphex de9b0127f8 (MSVC) Buildfix 2017-12-06 04:33:54 +01:00
Andrés 0c9fce98a2 fix vid/pid enumeration on xinput controllers when the xinput controllers are interleaved with dinput (#5872) 2017-12-05 22:07:48 -05:00
Twinaphex d881931254
Merge pull request #5867 from hiddenasbestos/more_devices
Don't limit available input devices to user count.
2017-12-06 01:43:52 +01:00
Brad Parker f5ea4a0c65 dinput: add missing function parameter 2017-12-05 17:19:17 -05:00
David Walters 609bcb4dc2 fix device indexing 2017-12-05 22:03:56 +00:00
David Walters 0d189ae067 Don't limit available input devices to user count. 2017-12-05 21:21:29 +00:00
Brad Parker bc4bbe79aa don't define UNICODE at all, we don't need it and it causes dinput problems (names are wchar_t) 2017-12-05 14:26:59 -05:00
twinaphex 2bdf4a5bb4 update 2017-12-05 20:08:18 +01:00
twinaphex 408878a7e1 Start making it possible for xinput_joypad to be used without
DirectInput
2017-12-05 20:04:12 +01:00
Twinaphex 7ab7ed35b7
Merge pull request #5863 from bparker06/xinput
xinput: copy VID/PID from dinput so autoconfig does not rely solely on HID name
2017-12-05 20:01:16 +01:00
bparker06 4c9bde61b5
dinput: fix memory leak of joypad name 2017-12-05 13:54:15 -05:00
Brad Parker 35ab48ee61 xinput: copy VID/PID from dinput so autoconfig does not rely solely on HID name 2017-12-05 12:47:52 -05:00
twinaphex f0c143766e Change to 256bit macros 2017-12-05 12:07:35 +01:00
twinaphex 6c09661a64 Move defines to retro_miscellaneous.h 2017-12-05 10:42:37 +01:00
twinaphex e94300a581 Get rid of a lot of RARCH_INPUT_STATE_BIT_ macros - replace them
with BIT128_ equivalents instead
2017-12-05 09:22:56 +01:00
twinaphex 3ccce249ea Fixes hotkey issues with MSVC 2017-12-05 08:50:24 +01:00
neville 43f6a03110 (OSX PPC) Buildfixes 2017-12-04 02:59:06 +01:00
David Walters cbfdd7bbd9 udev lightgun fixes 2017-12-03 09:40:36 +00:00
bparker06 78bf72e29e
blissbox: add atari pad type 2017-12-02 13:33:09 -05:00
David Walters c453675d38 lightgun support in udev 2017-12-02 13:24:17 +00:00
Twinaphex 5f0a9fffbb
Merge pull request #5827 from hiddenasbestos/input_driver_x11
Add new lightgun/mouse-bind features to X11 driver
2017-12-02 09:18:17 +01:00
Ash bf3e256a43
[WiiU] Input: Make controller_patcher a compile-time option
As discussed in libretro#5357; controller_patcher is now optional. It's
off by default; though this could be changed with a simple makefile
tweak (ENABLE_CONTROLLER_PATCHER ?= 1, perhaps?)

To re-enable controller_patcher; append ENABLE_CONTROLLER_PATCHER=1 to
your usual make command.

controller_patcher was the only user of c++ constructors in the Wii U
port, so you'll need 26a006c in your tree otherwise you will have a
blackscreen on startup.
2017-12-01 18:29:21 +11:00
David Walters a9451822b5 Improved handling of libusb hotplug capability (#5830)
* Improved handling of libusb hotplug capability

* Only deregister hotplug callback if registration happened.
2017-11-30 10:30:46 -05:00
twinaphex 6c69002ab4 Start adding not-complete kqueue codepaths - bparker - see if you can
finish this up
2017-11-30 07:28:59 +01:00
twinaphex 62280439b7 Rename epfd to fd 2017-11-30 07:00:25 +01:00
David Walters 05578f0634 Show VID/PID values for unsupported devices. (#5825) 2017-11-29 15:56:18 -05:00
David Walters 5f095677a7 fix for wiiu build (#5826) 2017-11-29 15:55:31 -05:00
David Walters 7dfcc169de Add new lighgun/mouse-bind features to X11 driver 2017-11-29 18:32:58 +00:00
Brad Parker 5453853001 remove extra paren 2017-11-29 11:32:32 -05:00
Brad Parker f41187df22 remove extra brace 2017-11-29 11:17:13 -05:00
Brad Parker 44b70efb68 style nits 2017-11-29 10:42:39 -05:00
Brad Parker 42e81dcef4 add back missing code from c5bdc02 2017-11-29 10:35:52 -05:00
Brad Parker aa1f95b3d5 undo changes in c5bdc02 that reverted my previous commits: 34491a6 28c6237 1f58d9c 61bd9d7 2017-11-29 10:22:30 -05:00
Brad Parker def24ef8eb blissbox: print message if detecting update mode or old firmware versions, override vid/pid check for autoconfig profiles, misc comments 2017-11-28 21:25:54 -05:00
Brad Parker 2dd64d9c11 Initial blissbox support, requires firmware 2.0. Currently limited to platforms with libusb support. 2017-11-28 18:25:12 -05:00
David Walters f09477d46a additional compile fixes 2017-11-28 10:36:16 +00:00
David Walters c5bdc02d6f replace uint64_t with retro_bits_t* for pad buttons state 2017-11-28 10:04:34 +00:00
Brad Parker 61bd9d7d70 libusb: early return if we fail to get a config descriptor, otherwise the memory returned is invalid (and should not be freed either) 2017-11-27 11:30:29 -05:00
Brad Parker 1f58d9cd1f comment 2017-11-27 11:30:29 -05:00
Brad Parker 28c6237b47 FreeBSD: support libusb hid input driver 2017-11-27 11:30:29 -05:00
Brad Parker 34491a6025 libusb: prevent crash on driver deinit when there are no pad connections 2017-11-27 11:30:29 -05:00
David Walters e06290a06c updated winraw driver for new lightgun/mouse binding api 2017-11-27 12:51:06 +00:00
twinaphex cdf1d9a417 Indent nits 2017-11-27 03:53:46 +01:00
Twinaphex d93b9ebf4d Silence warning 2017-11-27 03:53:25 +01:00
twinaphex dfebea9109 Cleanups 2017-11-26 22:58:36 +01:00
twinaphex 00d57af005 C89_BUILD fixes 2017-11-26 22:53:42 +01:00
twinaphex e35394d4bd Fix MSVC 2003 build 2017-11-26 22:41:34 +01:00
David Walters 59c188f75c Implement new lightgun API 2017-11-26 17:09:15 +00:00
David Walters dbd9bf3b46 New lightgun binds 2017-11-26 16:59:48 +00:00
David Walters c733f96a16 listen for mouse buttons/wheel when binding input 2017-11-26 15:42:47 +00:00
David Walters cdb5a656f2 dinput: only support hardware mouse index 0 2017-11-26 15:40:27 +00:00
David Walters 59812e9509 include mouse buttons in block hotkey check 2017-11-26 13:23:39 +00:00
David Walters 9682e2777b support for mouse button binds in Windows input drivers 2017-11-26 12:55:17 +00:00
David Walters 25efae0630 Show mbutton binds on settings list; comma separate joy and key bins 2017-11-26 11:56:02 +00:00
David Walters 1d70fef70c load/save mbutton assignments to retroarch config 2017-11-26 11:54:10 +00:00
David Walters b190ac1943 Add 'mbutton' field to retro_keybind struct 2017-11-26 11:49:37 +00:00
David Walters b3a53ac8ca Show "---" for unbound controls, not "(Key: )" 2017-11-24 21:36:49 +00:00
Twinaphex 45fb685375
Merge pull request #5762 from hiddenasbestos/extend_input_bits
Extend input bind limit to 256
2017-11-24 14:48:53 +01:00
David Walters 5be7921445 reimplement using retro_bits_t; pass by ref; raise bind limit to 256 2017-11-24 11:19:17 +00:00
David Walters 5294d43bf1 use C89 compatible comment style 2017-11-24 09:28:26 +00:00
twinaphex 7ac5eda1e1 Rewrite input_mapper code - no longer have an internal pointer
inside input_mapper
2017-11-24 02:37:53 +01:00
David Walters b0e383d5f0 Extend input bind limit to 128 2017-11-23 23:04:09 +00:00
Ash efad07e89f
[WiiU] Add proper DRC touch scaling for non-720p resolutions 2017-11-19 17:18:03 +11:00
David Walters 795057bacf Support for RETRO_DEVICE_INDEX_ANALOG_BUTTON 2017-11-17 22:46:23 +00:00
David Walters 41df4a0555 Support for mouse buttons 4&5 2017-11-17 12:00:24 +00:00
daniel jimenez e91bae38cf Introduce button mappings for generic usb controller 2017-11-13 22:08:24 -08:00
twinaphex ac14f8bb2a Rearrange some struct members 2017-11-12 17:02:14 +01:00
Twinaphex b8df76271c
Merge pull request #5654 from QuarkTheAwesome/wiiu-warnings
[WiiU] Various warning fixes
2017-11-05 16:14:18 +01:00
Ash 6090aa8f8a
[WiiU] Account for 12px clamp on physical screen
Seriously, I think it's good now.
2017-11-04 20:58:25 +11:00
Ash e39c820cee
[WiiU] Change up wiiu_joypad_name semantics
Prevents warnings from GCC around the possibility of a negative index
going into hidName.
2017-11-04 20:37:30 +11:00
Ash fc79fec964
[WiiU] DRC Touch - scale to game image viewport 2017-11-04 16:14:28 +11:00
Ash a3e4a7612f
[WiiU] Fix DRC touch - proper scaling; press detection
Oops! Didn't do this quite right the first time round.
This commit fixes RETRO_DEVICE_ID_POINTER_PRESSED, which would always
return 0 due to to an implicit case to int16_t. Basically, we'd do
(val & 0x00080000) & 0xFFFF; which would return 0 every time. Fixed that
by wrapping it in a ternary. Yes, I know we could use a rotation, but
for a boolean value it really doesn't matter.
I also rewrote scaleTP to deal entirely in integers. While the
floating-point math was theoretically faster on PowerPC; it gets awkward
to cast -0x7FFF to a float.
Speaking of, the driver now actually conforms to the libretro API. Not
sure how I managed to not see the spec; but hey, now its fixed.
RETRO_DEVICE_POINTER_ID_X/Y will now return values between -0x7FFF and
0x7FFF like they're supposed to.

Big thanks to @r-type for hounding me to fix this.
Partially addresses #5294; we still need mouse emulation.
2017-11-04 15:01:58 +11:00
Glenn ec806f65f9 fixed MFI controller being set to P2 2017-10-29 18:20:39 +11:00
Francisco José García García 03524278c6 Trying to fix L2/R2/L3/R3
Related to #5431
2017-10-25 21:05:15 +02:00
Maschell 05ef63fd08 [WII U] Fix for Issue #5556
This hopefully fixes the issues when you try to use 2 Controllers with
the same vid/pid at the same time.

Tested with 2 DS4 controller via the Hid to VPAD Network Client.
Adapters with multiple ports (like the official GC-Adapter) are still
working
2017-10-17 21:38:42 +02:00
Brad Parker a7c8cc88e5 win32: support local multibyte encoding for file paths 2017-10-14 23:13:24 -04:00
Brad Parker 38c30667c5 fix include paths 2017-10-14 23:08:43 -04:00
twinaphex c68db61188 Silence more Clang warnings 2017-10-11 22:49:13 +02:00
Twinaphex affd56f293 Merge pull request #5515 from casdevel/winraw-lightgun
Add lightgun device capability
2017-10-09 02:42:09 +02:00
Zoran Vuckovic 5c46e176d5 Add keyboard/mouse device index logging 2017-10-07 06:59:45 +02:00
Zoran Vuckovic 082629ccd5 Add lightgun device capability 2017-10-06 08:19:22 +02:00
Zoran Vuckovic 12d0f4107a Use int32_t instead of __s32 2017-10-05 10:00:20 +02:00
Zoran Vuckovic 135b636bd4 Add "absolute" mouse support 2017-10-05 05:18:53 +02:00
twinaphex 8238545bef Cleanups 2017-10-04 06:53:47 +02:00
twinaphex cf9ab18cab (360) Buildfix 2017-10-03 04:21:25 +02:00
twinaphex d10de20bff Start compiling Griffin as C for 360 - C89 fixes 2017-10-03 04:11:41 +02:00
twinaphex 3090f3ff3a (task_database.c) Rewrite char arrays 2017-09-29 20:47:54 +02:00
twinaphex 5b9f90dd9a (input overlay) Reorder variables in struct 2017-09-29 17:11:42 +02:00
twinaphex ff48af4d06 Update 2017-09-28 18:57:00 +02:00
twinaphex 9eba2c8e39 Fix CXX_BUILD on Windows 2017-09-28 18:53:09 +02:00
twinaphex 221939ccb5 Cleanups 2017-09-28 00:53:13 +02:00
twinaphex a3ded01b64 Cleanups 2017-09-27 23:16:37 +02:00
twinaphex fcf6228dce Turn into char pointer array 2017-09-27 20:11:44 +02:00
twinaphex b79f95668b Turn it into char pointer array 2017-09-27 20:08:37 +02:00
Brad Parker 836111b99b C89 buildfix 2017-09-16 19:06:55 -04:00
Twinaphex 76aa866af8 Merge pull request #5438 from casdevel/fix5215
Fix mouse "absolute" move handling
2017-09-12 21:14:56 +02:00
Zoran Vuckovic d47de4b17e Fix mouse "absolute" move handling 2017-09-12 12:36:27 +02:00
radius 804c62cc9e clear the remap flags 2017-09-12 01:47:43 -05:00
radius 6a561f6414 input remapping cleanups 2017-09-11 22:49:39 -05:00
radius 5dc52d9489 resetting remaps should include keymaps 2017-09-11 02:04:27 -05:00
radius 551d85630e android build fixes 2017-09-11 00:21:48 -05:00
radius 9abbf47a8d fix defaults 2017-09-11 00:21:47 -05:00
radius c8752ec630 add left/right callbacks 2017-09-11 00:21:46 -05:00
radius 503658b446 cleanup 2017-09-11 00:21:45 -05:00
radius efce234dc4 save and load keymaps from file 2017-09-11 00:21:44 -05:00
radius 654db9caac it should work with the SET_KEYBOARD_CALLBACK now 2017-09-11 00:20:21 -05:00
radius cd72bd1bb4 implement keymapper 2017-09-11 00:20:21 -05:00
radius fe8a0657b4 add input_mapper scafolding 2017-09-11 00:20:20 -05:00
Twinaphex 4adbba2513 Merge pull request #5426 from casdevel/issue5162
Disable keyboard input if window is not active
2017-09-11 06:19:15 +02:00
twinaphex e1237f6d58 Reduce stack usage 2017-09-11 06:15:09 +02:00
Zoran Vuckovic 84d33fb847 Disable keyboard input if window is not active 2017-09-10 05:50:10 +02:00
twinaphex 3301c04a97 input_remapping.c - reduce stack usage 2017-09-09 23:03:28 +02:00
twinaphex 3b26263126 Cleanup input_config_get_prefix 2017-09-08 06:28:40 +02:00
twinaphex d6bcc45bb8 Reduce size of input_bind_map member variables 2017-09-08 06:11:19 +02:00
twinaphex d1a41a742f Reduce joykey_label/joyaxis_label char arrays 2017-09-08 06:01:21 +02:00
twinaphex c3bb76a05e Try to reduce variable sizes 2017-09-08 05:58:48 +02:00
twinaphex 24dc35d97b Cleanups 2017-08-31 12:17:06 +02:00
twinaphex 44a1a429c8 Change type of pid/vid to uint16_t 2017-08-31 12:14:27 +02:00
Rob Loach fa75f47995
Fix includes of input_config 2017-08-30 23:14:27 -04:00
Rob Loach d993bd3dcf Remove input_config.h include 2017-08-30 23:10:12 -04:00
Rob Loach 40f4d805a8 Fix non-existent include of input_config.h 2017-08-30 23:01:12 -04:00
twinaphex e16371b8a5 Merge input_config.c and input_driver.c 2017-08-31 02:25:04 +02:00
twinaphex 0c5781ba8d (input_config.c) Cleanups 2017-08-31 01:57:51 +02:00
twinaphex d8f27886ad Reduce size of input driver ids to uint16_t - should be enough 2017-08-30 14:02:18 +02:00
Ash 6b5aef09a1
[WiiU] DRC touch support as pointer device
Allow using the Gamepad's touch screen as a RETRO_DEVICE_POINTER.
Methodology could use some work, had to add an extra axis to
joypad in order to get the data transferred into the input driver.
Feel free to change this.
Needs to emulate RETRO_DEVICE_LIGHTGUN to really be useful.
Potential for Wiimote IR in future.

Partially addresses libretro/RetroArch#5294
2017-08-19 17:40:56 +10:00
twinaphex 24878694f8 Silence some warnings 2017-08-14 07:13:50 +02:00
twinaphex ae2435cf16 Silence some more C89_BUILD warnings 2017-08-12 18:15:26 +02:00
twinaphex cfde480e82 Add some C89_BUILD rules 2017-08-12 17:41:34 +02:00
twinaphex 7a490aa6d6 Use C-style comments 2017-08-10 21:25:30 +02:00
twinaphex 805c2ad529 Buildfixes 2017-08-10 21:22:30 +02:00
twinaphex 5101895cc9 (dinput) Buildfix 2017-08-09 16:53:06 +02:00
twinaphex 4e49155147 Cleanup 2017-08-09 15:54:24 +02:00
twinaphex ee275c85d8 (dinput.c) Cleanups 2017-08-09 15:51:27 +02:00
twinaphex ca80f13b2b Try to be somewhat safer here in case of null pointer derefences 2017-08-09 02:42:19 +02:00
denu8thell c5b36320df Added option to change controller port to listen to for showing overlay input. 2017-08-08 09:56:27 -05:00
denu8thell 8e69a348e6 Add support for buttons that are multiple inputs. 2017-08-08 07:49:02 -05:00
denu8thell f0606d60d2 Add option and menu setting for viewing inputs on overlay. 2017-08-08 06:50:39 -05:00
denu8thell 4ed715d0f3 Remove commented code in input_driver.c 2017-08-08 05:39:18 -05:00
denu8thell 23b2e4488a Add keyboard overlay support to input_overlay_add_inputs. 2017-08-08 05:32:34 -05:00
denu8thell cc06b8b62e Added analog overlay support to input_overlay_add_inputs. 2017-08-08 05:10:44 -05:00
denu8thell 0df4186191 reduce scope of input_overlay_add_inputs to file. 2017-08-08 02:48:46 -05:00
denu8thell 4c31d41920 Moved input_overlay_add_inputs call out of input_driver.c, shortened arguments. 2017-08-08 02:31:26 -05:00
denu8thell 3d4e36455d use input_state instead of current_input->input_state. 2017-08-07 22:22:48 -05:00
denu8thell c882e64653 Added button press lightup on overlay.
input_overlay_add_inputs added, still need to implement dpad and analog visuals on overlay. Also still needs to be restructured so input_overlay_post_poll is only called once.
2017-08-07 21:59:05 -05:00
twinaphex 2e7b4242f7 Cleanup 2017-08-07 01:48:21 +02:00
radius 7b09cd34db fix #5257 2017-08-06 20:02:17 -05:00
twinaphex 86dbcaf563 C89 buildfix 2017-08-06 17:09:30 +02:00
twinaphex 912c7265e6 Get rid of some warnings 2017-08-06 14:03:09 +02:00
radius 2db79242c9 remove remaps 2017-08-05 11:21:07 -05:00
radius a973d5dc8a allow saving analog dpad mode and libretro device to remap files 2017-08-05 11:21:06 -05:00
radius 9862b75b4b allow specifying libretro device and analog dpad mode on remap files 2017-08-05 11:21:06 -05:00
radius f5360d0d82 extra devices 2017-08-04 01:17:32 -05:00
radius 2ef75cb300 buildfix 2017-08-04 01:11:31 -05:00
radius a6b24b4d42 fire tv hack 2017-08-04 01:09:05 -05:00
Zoran Vuckovic 2a92b22128 Add mice info log 2017-07-28 13:03:26 +02:00
Brad Parker b9036e26a7 fix buffer overflow 2017-07-22 16:08:05 -04:00
Zoran Vuckovic aa99f4f5ba Disable keyboard input and restrict mouse input in some cases 2017-07-18 01:16:48 +02:00
Brad Parker e067dac2a4 fix keyboard regression with mupen cores 2017-07-08 17:39:29 -04:00
twinaphex dc521b42d1 Cleanup 2017-07-05 11:55:17 +02:00
twinaphex ffc393cafc Get rid of unused variables 2017-07-02 20:58:32 +02:00
Paolo Bonzini d1dc2e9670 add support for remote control devices and other ID_INPUT_KEY devices
* the remote control presents itself as ID_INPUT_KEY, not
ID_INPUT_KEYBOARD.  However, ID_INPUT_KEYBOARD is a subset of
ID_INPUT_KEY.

* the remote control lacks the backspace and enter keys, which are hard
coded in RetroArch. It has "back" and "ok" instead, so map those to
RETROK_BACKSPACE and RETROK_ENTER as well.

Remote controls also have no ESC key, but that one is customizable
and I used the Power key of the remote (which already has a mapping
to RETROK_POWER).

The functionality provided is really the bare minimum, but it is enough
to teach a kid "press the power button here to watch TV"; compared to
pressing L1+R1+START+SELECT and navigating to the RetroArch's "quit"
menu item, that hopefully has more chances of success.
2017-07-02 10:50:00 +02:00
twinaphex 60296c0b7d Improve logs some more 2017-07-01 04:37:32 +02:00
radius 0a7968761f improve logging 2017-06-30 20:05:30 -05:00
twinaphex fe829e5eb0 Fix C89_BUILD 2017-06-28 18:01:04 +02:00
twinaphex 36f700927e Silence some more ioctl coverity warnings 2017-06-28 07:00:28 +02:00
twinaphex fa8db9b4d2 Silence another Coverity warning 2017-06-28 06:59:00 +02:00
twinaphex b11620e1eb Add retro_timers.h/retro_math.h 2017-06-28 04:41:38 +02:00
twinaphex 20e7ac4280 Buildfix 2017-06-26 03:50:34 +02:00
twinaphex 411ade7fb9 Mingw buildfix 2017-06-26 03:47:47 +02:00
twinaphex 5d1cfc47cc C89_BUILD fixes 2017-06-25 04:05:34 +02:00
Twinaphex 5c5c5ecbdf Revert "udev input: support controlling the menu with a TV remote control" 2017-06-22 20:53:07 +02:00
Twinaphex 8068bcccbe Merge pull request #5076 from bonzini/master
udev input: support controlling the menu with a TV remote control
2017-06-21 23:35:22 +02:00
twinaphex f087419165 Rename platform_linux.c to platform_unix.c 2017-06-19 17:38:49 +02:00
Paolo Bonzini d5cdbca322 add support for remote control devices and other ID_INPUT_KEY devices
* the remote control presents itself as ID_INPUT_KEY, not
ID_INPUT_KEYBOARD.  However, ID_INPUT_KEYBOARD is a subset of
ID_INPUT_KEY.

* the remote control lacks the backspace and enter keys, which are hard
coded in RetroArch. It has "back" and "ok" instead, so map those to
RETROK_BACKSPACE and RETROK_ENTER as well.

Remote controls also have no ESC key, but that one is customizable
and I used the Power key of the remote (which already has a mapping
to RETROK_POWER).

The functionality provided is really the bare minimum, but it is enough
to teach a kid "press the power button here to watch TV"; compared to
pressing L1+R1+START+SELECT and navigating to the RetroArch's "quit"
menu item, that hopefully has more chances of success.
2017-06-19 15:09:13 +02:00
Paolo Bonzini f850e64037 add volume down and volume up keys 2017-06-19 13:22:34 +02:00
twinaphex 914acd3956 Revert "Get rid of some warnings"
This reverts commit 3d45ba29d8.
2017-06-18 20:02:50 +02:00
twinaphex b134c5d23c Revert "Set joypad_info.axis_threshold only once"
This reverts commit 605d877279.
2017-06-18 20:01:48 +02:00
twinaphex 605d877279 Set joypad_info.axis_threshold only once 2017-06-18 19:56:31 +02:00
twinaphex 3d45ba29d8 Get rid of some warnings 2017-06-18 19:47:40 +02:00
twinaphex 5c973b6649 Add another entry to debug logging 2017-06-18 15:52:17 +02:00
twinaphex 2d76e98c22 Add debug logging 2017-06-18 15:48:44 +02:00
Twinaphex 6db8aa8a65 Merge pull request #5067 from danieljg/master
Added code for single port psx to ps3 adapter
2017-06-18 11:16:15 +02:00
Daniel Jimenez 5267b630f8 Added code for single port psx to ps3 adapter
On branch master
 Changes to be committed:
	modified:   ../griffin/griffin.c
	modified:   ../input/connect/connect_ps2adapter.c
	new file:   ../input/connect/connect_psxadapter.c
	modified:   ../input/connect/joypad_connection.c
	modified:   ../input/connect/joypad_connection.h
2017-06-17 14:19:09 -07:00
Brad Parker fca0e52bdd win32: make includes lowercase to fix cross-compilation on linux 2017-06-13 22:25:47 -04:00
twinaphex 1598042e8e (udev) Keyboard should work again in DRM/KMS 2017-06-12 12:09:19 +02:00
twinaphex a41b8bc199 Direct usage of epoll 2017-06-11 20:51:21 +02:00
twinaphex e92feb85af Use epoll functions directly 2017-06-11 20:44:02 +02:00
twinaphex 895c817fa5 ifdef this 2017-06-11 19:56:14 +02:00
twinaphex 5e0e970c92 Cleanups 2017-06-11 19:48:40 +02:00
Brad Parker 42e56c8432 fix all_users_control_menu logic 2017-06-11 12:28:47 -04:00
twinaphex 0751cb238d Add HAVE_HID ifdefs 2017-06-11 18:12:38 +02:00
twinaphex 060753258a Combine input_driver.c and input_keyboard.c 2017-06-11 17:51:12 +02:00
twinaphex 68516cf74c (input_keyboard.c) cleanups 2017-06-11 17:35:48 +02:00
twinaphex e2d4ff5614 Don't need ctype 'isprint' here anymore 2017-06-11 16:56:31 +02:00
twinaphex 9ec396c0ea Remove some dead code 2017-06-11 16:51:50 +02:00
twinaphex 5081d03194 Cleanups 2017-06-11 16:26:27 +02:00
twinaphex 7e9cb39519 Use BIT64_SET 2017-06-11 16:24:24 +02:00
twinaphex 612cb54cfe Merge input_hid_driver 2017-06-11 08:56:36 +02:00
twinaphex 95e588ce0f Fix C89_BUILD 2017-06-10 12:52:45 +02:00
twinaphex 9b13894438 Slightly rewrite input_state for android input driver 2017-06-10 12:48:09 +02:00
twinaphex 34be5566dd (udev fix) This fixes touchpad movement inside the menu 2017-06-10 12:27:22 +02:00
twinaphex 84f5fa1f26 (epoll_common.c) Cleanups; don't use verbosity logging inside 2017-06-10 12:07:01 +02:00
twinaphex c70526b7af Fix hotplug regressions with udev 2017-06-10 11:58:22 +02:00
twinaphex e8c73c6683 Rewrite other input drivers too 2017-06-10 11:22:24 +02:00
twinaphex d32cf4c866 Slightly rewrite input_state implementations of cocoa_input.c
and linuxraw_input.c
2017-06-10 11:09:58 +02:00
twinaphex 37656eed84 (udev_input.c) Rework input_state 2017-06-10 10:58:56 +02:00
twinaphex cea6dbbb6a (wayland) Fix input issue 2017-06-10 08:40:28 +02:00
twinaphex cffe023085 Fix wayland 2017-06-10 08:33:01 +02:00
Twinaphex 6d85e1f0a6 Merge pull request #5045 from casdevel/mice
Add player mouse device selection
2017-06-10 04:13:16 +02:00
Zoran Vuckovic e698e75a51 Adapt touchpad code for multiple mice support 2017-06-09 21:17:11 +02:00
twinaphex 473aed632d Get rid of this 2017-06-09 02:14:48 +02:00
twinaphex 8980f8c1ea Get rid of useless wrapper function epoll_waiting 2017-06-08 21:52:50 +02:00
twinaphex eb08a86647 Get rid of udev_common.c 2017-06-08 21:46:26 +02:00
twinaphex b633b8ad2d Get rid of implicit memset 2017-06-08 21:38:05 +02:00
Zoran Vuckovic 39108f97e9 Add player mouse index handling to winraw input driver 2017-06-08 17:35:34 +02:00
Zoran Vuckovic 44930716ba Add player mouse index handling to udev input driver 2017-06-08 18:49:08 +02:00
twinaphex ab087faa2a Try to move access call to maybe prevent 'time of check time of use'
coverity error
2017-06-07 23:29:29 +02:00
twinaphex 5c84f9158e Try to prevent out-of-bounds write 2017-06-07 23:03:08 +02:00
twinaphex a371815efd Try to null-terminate string 2017-06-07 22:47:07 +02:00
twinaphex eb5bf9451d (psp_joypad.c) Cleanups 2017-06-07 22:34:37 +02:00
twinaphex c711749973 (iohidmanager_hid.c) Cleanups 2017-06-07 21:14:34 +02:00
twinaphex 4a5593255f (android_joypad.c) Small cleanup 2017-06-07 21:10:06 +02:00
twinaphex 5ef8b69c9c (wiiu_input.c) Minor style nits 2017-06-07 21:06:24 +02:00
twinaphex dfcbd77a6b (ctr/wiiu) Minor stylistic nits 2017-06-07 21:04:13 +02:00
twinaphex afa07219cd (linuxraw_joypad.c) Cleanups 2017-06-07 20:58:46 +02:00
twinaphex f9061ca931 Simplify udev_joypad_button 2017-06-07 20:48:33 +02:00
twinaphex 9a471d0ef4 Simplify udev_joypad.c 2017-06-07 20:44:14 +02:00
sh!zeeg 5887c46e08 [INPUT]: fix KP0, KP1, KP2, KP3 keys on GNU/Linux 2017-06-07 19:52:20 +03:00
Zoran Vuckovic ceca89e104 Fix DRM/KMS keyboard handling 2017-06-07 12:25:10 +02:00
twinaphex 486660471e (Android) Buildfix 2017-06-07 03:01:00 +02:00
twinaphex d9e6cbb065 Simplifications to SDL input driver 2017-06-07 01:45:09 +02:00
twinaphex 59c3f8b06e Cleanups 2017-06-07 01:19:44 +02:00
twinaphex 603d4d0464 (udev/x11) Simplifications 2017-06-07 01:17:55 +02:00
twinaphex 9e93bdbe27 (linuxraw_input.c) simplifications 2017-06-07 01:12:35 +02:00
Twinaphex 3dede6d71a OSX buildfix 2017-06-07 00:35:11 +02:00
twinaphex c3f5c499f3 Simplify cocoa_input 2017-06-07 00:33:03 +02:00
twinaphex afd6a2bec5 Cleanups 2017-06-07 00:10:39 +02:00
twinaphex 604a558382 Get rid of input_wl_is_pressed 2017-06-07 00:09:31 +02:00
twinaphex deb804ab2f (x11_input.c) get rid of this inline function 2017-06-06 23:50:51 +02:00
twinaphex 3d61c7fdfc MSVC buildfix 2017-06-06 23:19:07 +02:00
Ethan Lee bf20021338 [SDL2] Fix joypad info for SDL_GameController devices 2017-06-06 16:16:44 -04:00
Zoran Vuckovic d88b76c26f Add L/R virtual keys handling 2017-06-06 13:50:41 +02:00
twinaphex 5d78c2209f Remove obsolete header 2017-06-06 08:30:01 +02:00
twinaphex efdfb29d50 Turn input_joypad_is_pressed into static inline function 2017-06-06 08:12:53 +02:00
twinaphex 7685f93d00 input_menu_keys_pressed - don't use input_joypad_pressed 2017-06-06 07:59:41 +02:00
twinaphex f307135d1d Split up wayland input driver into separate driver; and
improve mouse support for menu
2017-06-06 07:34:33 +02:00
twinaphex 6b3dbff75f Merge input_driver.c and input_joypad_driver.c 2017-06-06 05:56:02 +02:00
twinaphex 0bd998665b Turn this function into static INLINE 2017-06-06 05:38:01 +02:00
twinaphex 007bb0de39 Buildfix 2017-06-06 05:36:12 +02:00
twinaphex 9ebfb36b4e Use rarch_keysym_lut directly 2017-06-06 05:17:25 +02:00
twinaphex e276142be3 (udev_input.c) Cleanup 2017-06-06 04:18:35 +02:00
twinaphex 4f22c3d13e (x11_input.c) Simplifications 2017-06-06 04:15:45 +02:00
twinaphex 15c4f82dec (udev_input.c) Cleanups 2017-06-06 03:59:52 +02:00
twinaphex c3c772a79a (udev) Avoid warning with helgrind - input descriptor -1 is invalid 2017-06-05 05:18:38 +02:00
radius 304a647248 dlopen libandroid from lib64 instead 2017-06-04 21:20:39 -05:00
twinaphex 8b945a103f (udev_input.c) Set st_dev manually 2017-06-04 21:16:35 +02:00
Zoran Vuckovic ab793b92a3 Remove XKBCOMMON code 2017-06-04 07:23:32 +02:00
Zoran Vuckovic 1911aadc19 Remove duplicate keyboard handling 2017-06-04 07:16:57 +02:00
twinaphex 85058fbe5c (udev_input.c) Some cleanups and a runtime check for X11 2017-06-03 18:54:04 +02:00
Zoran Vuckovic 210da4d204 Add ifdef checks for X11-specific code 2017-06-03 18:01:27 +02:00
Zoran Vuckovic 05a90f7f70 Add mouse grab/ungrab feature 2017-06-03 16:26:08 +02:00
Zoran Vuckovic 39a9ac8444 Add pointer handling to fullscreen mode 2017-06-03 12:46:53 +02:00
Twinaphex a8f1831a62 Merge pull request #5010 from casdevel/udev
Add multiple mice support to udev input driver
2017-06-02 16:45:13 +02:00
Zoran Vuckovic f740776105 Fix capabilities report 2017-06-02 09:47:43 +02:00
Zoran Vuckovic 11559f294a Add multiple mice support to udev driver 2017-06-02 07:57:07 +02:00
Zoran Vuckovic a47ab76500 Add missing keymaps 2017-05-31 00:35:28 +02:00
Zoran Vuckovic 8c9e72aec1 Remove unused code 2017-05-30 21:05:55 +02:00
Zoran Vuckovic 451db1fac5 Add multiple mice support 2017-05-30 05:50:38 +02:00
twinaphex 4f678dfdfc Cleanups 2017-05-25 15:04:55 +02:00
Brad Parker a04b54006d win32: disable winraw input driver for targets older than XP 2017-05-23 21:03:00 -04:00
twinaphex 80b5bcd16c Cut down on some code duplication 2017-05-24 02:02:01 +02:00
Twinaphex 79d35d158a Use variable 2017-05-22 14:16:48 +02:00
twinaphex 98a3d80e71 Cleanups 2017-05-22 13:57:13 +02:00
twinaphex ec79d8c46a Cleanups - don't keep setting joypad_info members needlessly - do
it once
2017-05-22 12:49:12 +02:00
twinaphex 371c3e56de Get rid of empty function 2017-05-22 12:43:50 +02:00
twinaphex 10df6d3b54 Rewrite pressed functions 2017-05-22 12:40:19 +02:00
twinaphex f62490b14f Don't have inline static functions 2017-05-22 12:34:34 +02:00
twinaphex d48ec2a9e6 Turn conditional into else if 2017-05-22 12:24:23 +02:00
twinaphex d78e1da956 Cut down on code duplication 2017-05-22 12:21:11 +02:00
twinaphex e7d3f36a22 Call input_driver_pressed_keys_internal only once 2017-05-22 12:15:20 +02:00
twinaphex f321763b1c Cleanups 2017-05-22 00:12:23 +02:00
twinaphex c0c3bb3dbd Cleanup 2017-05-22 00:11:46 +02:00
twinaphex 4963ff31f0 keyboard_event_xkb.c - cleanup 2017-05-22 00:11:28 +02:00
twinaphex 70bbe92154 Simplify input_menu_keys_pressed 2017-05-21 22:32:29 +02:00
twinaphex d7de9facc3 Simplify input_keys_pressed 2017-05-21 22:31:15 +02:00
twinaphex 77d83b4782 Cleanups 2017-05-21 21:55:20 +02:00
twinaphex 8bf552dacd Move this code to retroarch.c 2017-05-21 21:42:13 +02:00
twinaphex f8f25602e8 Get rid of old_input variable 2017-05-21 21:24:01 +02:00
twinaphex a35e452ec3 Use trigger_input only for menu 2017-05-21 21:19:07 +02:00
twinaphex 68ecade37d Revert "Call button combo toggle for quick menu toggle from runloop_check_state"
This reverts commit 4d4b00f877.
2017-05-21 20:57:36 +02:00
twinaphex 4d4b00f877 Call button combo toggle for quick menu toggle from runloop_check_state 2017-05-21 20:53:33 +02:00
twinaphex 3e00c632bd Pass value instead of pointer 2017-05-21 20:47:53 +02:00
twinaphex 136a435c43 Fix keys while in binding mode 2017-05-21 20:42:46 +02:00
twinaphex d8d11c5dcc (x11_input.c) Cleanups 2017-05-20 20:57:14 +02:00
twinaphex f83a26c8b0 (udev_input.c) Simplifications 2017-05-20 20:50:23 +02:00
twinaphex 9f6dc975da Simplify udev_input.c 2017-05-20 20:35:42 +02:00
Twinaphex 8b4c92291f Merge pull request #4948 from Maschell/wiiu_controller_patcher
[Wii U] Adding support for HID Controllers
2017-05-20 20:28:58 +02:00
Maschell a8a2d7730f Merge remote-tracking branch 'refs/remotes/libretro/master' into wiiu_controller_patcher 2017-05-20 20:19:04 +02:00
twinaphex 46182e090b Merge keyboard_event_win32.cpp with win32_common.cpp 2017-05-20 19:46:27 +02:00
twinaphex 5a9dbf7e4f Merge keyboard files for udev/x11 2017-05-20 19:44:04 +02:00
Maschell 2da8a18086 Merge remote-tracking branch 'refs/remotes/libretro/master' into wiiu_controller_patcher 2017-05-20 19:27:13 +02:00
Maschell 7a2c09e9ce [Wii U ] Proper order of the HID devices.
Added individual names for the HID devices.
2017-05-20 19:26:12 +02:00
twinaphex 0742ebec21 Get rid of local_enable variable 2017-05-20 16:32:57 +02:00
twinaphex 6fea8f14c5 Call video_driver_cb_has_focus directly 2017-05-20 14:11:50 +02:00
Maschell 2ac91822c3 Merge remote-tracking branch 'refs/remotes/libretro/master' into wiiu_controller_patcher 2017-05-20 13:14:13 +02:00
Zoran Vuckovic 25e08cf6c4 Fix one pointer cast warning 2017-05-19 16:48:03 +02:00
twinaphex 59fb7700b8 Combine menu_driver.c and menu_display.c 2017-05-19 15:25:14 +02:00
twinaphex b086b72ff9 (winraw_input.c) Minor cleanups 2017-05-19 12:58:44 +02:00
twinaphex f185c1ef1f (MSVC) Buildfix 2017-05-19 06:30:49 +02:00
Zoran Vuckovic 1bc945e3dc Add Windows raw input driver 2017-05-18 18:48:41 +02:00
twinaphex a0fcbf85a1 Cleanup 2017-05-18 09:36:59 +02:00
twinaphex 126a5bf121 Use string_is_equal_fast/string_is_not_equal_fast 2017-05-16 04:00:37 +02:00
twinaphex 8eca08c6ac Start using string_is_equal_fast/string_is_not_equal_fast macros
instead of straight memcmp
2017-05-16 03:20:59 +02:00
twinaphex bf3188eac4 Combine runloop_ctl and rarch_ctl 2017-05-15 05:06:23 +02:00
twinaphex 42ebe7a7ad Merge runloop.c and retroarch.c 2017-05-11 09:11:46 +02:00
Twinaphex cc9e951b44 Cleanup 2017-05-11 07:37:20 +02:00
twinaphex 2906bec7a8 Create input_driver_get_uint 2017-05-11 07:36:21 +02:00
twinaphex 9a6e137a56 Get rid of header include 2017-05-10 07:10:05 +02:00
twinaphex ef8094836f Create input_driver_get_float 2017-05-10 07:07:06 +02:00
twinaphex f928e57064 Combine video_context_driver.c and video_driver.c 2017-05-09 01:25:59 +02:00
twinaphex bac9973354 Cleanups 2017-05-09 00:58:01 +02:00
Maschell 63bb97287f [Wii U] Removed forcing Gamepad reading success 2017-05-08 21:49:24 +02:00
Maschell 4393e17ea7 [Wii U] Using the HID Controller as a own controller. Currently the stick only work when it's bind manually. Mapping from controller to retroarch input port may change when you attach a new device. 2017-05-08 21:46:34 +02:00
Maschell e695d4e8ad [WiiU] Initial controller patcher support (HID via USB and network)
- Reading config from sd cards currently broken
- Not implemeted as a driver, currently all devices will be mapped to the WiiU Gamepad driver
2017-05-08 12:24:06 +02:00
twinaphex d9c5013d42 Pass settings struct around 2017-05-06 06:46:48 +02:00
twinaphex 6d4ac23f26 Cleanup 2017-04-29 16:20:26 +02:00
twinaphex ac7f1cc5e2 C89_BUILD buildfix 2017-04-29 14:06:08 +02:00
twinaphex 969403fadb Header include cleanups 2017-04-29 13:20:50 +02:00
twinaphex e6ab06a701 Move path variables 2017-04-29 00:39:29 +02:00
twinaphex f0c2d786ae Update arrays struct 2017-04-28 22:59:13 +02:00
twinaphex 67ab87669f Update 2017-04-28 21:20:00 +02:00
twinaphex 05e4ec733e Move uint variables 2017-04-28 21:03:04 +02:00
twinaphex fa9b641ef0 (Android) Buildfix 2017-04-28 15:53:38 +02:00
twinaphex 7b9c146ae9 (iOS) Buildfix 2017-04-28 15:04:00 +02:00
twinaphex 0da40fb3aa Move all float settings 2017-04-28 14:57:55 +02:00
twinaphex 7a152700fa Update 2017-04-28 14:31:23 +02:00
twinaphex ed53be7c81 Move all bool settings 2017-04-28 14:11:34 +02:00
twinaphex eb34553fae Cleanup 2017-04-27 21:40:31 +02:00
twinaphex b9f110679a Remove unused variable 2017-04-27 21:38:39 +02:00
twinaphex 1bf7cbccbe input_device_names no longer part of settings struct 2017-04-27 21:35:46 +02:00
Francisco José García García be87a8cdc7 [VITA] Fixing PSTV controls 2017-04-26 22:26:41 +02:00
twinaphex 549ed6fc6b (Android) Buildfix 2017-04-26 15:43:16 +02:00
Twinaphex c51e4397b0 remove unused variable 2017-04-26 03:00:21 +02:00
twinaphex 3dc26db377 Simplify libretro_input_binds 2017-04-26 02:43:39 +02:00
twinaphex 58fcf421b5 Simplify input_poll 2017-04-26 02:35:41 +02:00
twinaphex e179108080 Cleanups 2017-04-26 00:24:59 +02:00
twinaphex a146dfee79 Use input_config_binds directly 2017-04-25 23:47:23 +02:00
twinaphex 33dda78ea8 Cleanups 2017-04-25 23:32:38 +02:00
twinaphex fc5d240297 Get rid of some now-unused functions 2017-04-25 23:30:50 +02:00
twinaphex f0eaef9d51 Cleanups 2017-04-25 22:14:56 +02:00
twinaphex 3087ceb482 Don't go through all these slow wrapper functions 2017-04-25 20:47:21 +02:00
twinaphex 5f9f43929a Turn settings->input.binds into static struct inside input_config.c 2017-04-25 18:54:01 +02:00
twinaphex 53c9acacd6 Wrap access to settings->input.binds completely 2017-04-25 18:50:49 +02:00
twinaphex c68c8a8cfe Rewrite this 2017-04-25 18:48:06 +02:00
twinaphex 87f05b3a7b Cleanups 2017-04-25 18:32:08 +02:00
twinaphex 8d0e3d7777 Wrap settings->input.binds 2017-04-25 18:27:18 +02:00
twinaphex 4845c4b4db Cleanup 2017-04-25 18:20:10 +02:00
twinaphex 3b3b008614 Move code to input_config_reset 2017-04-25 18:18:37 +02:00
twinaphex d66aff8fbd Start wrapping settings->input.binds 2017-04-25 18:12:13 +02:00
twinaphex e1e83b17b7 Wrap settings->input.libretro_device 2017-04-25 17:14:46 +02:00
twinaphex c871faa1f5 Move pid/vid arrays out of settings struct and move them
to input_config
2017-04-25 16:49:54 +02:00
twinaphex 6ace8ce66a Rewrite autoconf_binds and move it to task_autodetect.c - take
it out of the settings struct
2017-04-25 16:33:30 +02:00
twinaphex 20ed6eb90a Start using input_config_get_device_name 2017-04-25 16:04:28 +02:00
twinaphex f4b168f9b6 Call functions from task_autodetect.c 2017-04-25 15:53:30 +02:00
twinaphex 1c93cc4b18 Update logs 2017-04-23 12:00:49 +02:00
twinaphex f9bc2d3783 Use memcmp instead of string_is_equal where possible for
better performance
2017-04-21 22:47:15 +02:00
twinaphex 271edb4ca1 We don't want uppercase for these instances 2017-04-21 14:26:35 +02:00
twinaphex d1664481c2 Don't call input_remote_state unless pointer is non-NULL 2017-04-20 10:57:09 +02:00
twinaphex 69a3bf6a31 Create bsv_movie_is_playback_{on|off} 2017-04-20 10:40:11 +02:00
twinaphex f4071ba6ec Set axis_threshold 2017-04-18 05:11:44 +02:00
radius d70d04c473 improve shield portable hack 2017-04-16 16:48:37 -05:00
twinaphex 7f4b490fdb Prevent implicit memsets with struct video_viewport 2017-04-15 19:43:52 +02:00
Tatsuya79 5649f084e3 Make mouse relative again. 2017-03-31 17:28:49 +02:00
Jean-André Santoni 0b05fdf0b5 (Input) Fix shift release in xkb 2017-03-13 00:52:42 +01:00
twinaphex 58c08c0c02 Cleanups 2017-02-27 09:33:20 +01:00
Twinaphex b7b3b2cb5f Try to prevent truckload of warnings on iOS 2017-02-26 10:33:03 +01:00
Twinaphex aa2e7dc794 Silence warning 2017-02-26 03:53:05 +01:00
David Erickson da8662bb4a Detect non-standard joystick buttons
The Xbox One S controller when connected via Bluetooth
is exposing its select button with the Linux KEY_BACK
code, which is outside of the normal input code
scan range for joysticks.  This patch adds additional
scanning to pick up such extra buttons, and adds
them as buttons after the normal ranges to preserve
compatibility with existing key mappings.
2017-02-24 01:09:15 -08:00
twinaphex 75188800b1 Use C comments 2017-02-19 04:37:40 +01:00
Diablodiab 2cbd1898e8 Android input driver mouse support fixes:
- Fix bug with cursor moving down to the right
- Remove handling of "copy" and "thread" input states simplifying the driver
2017-02-19 02:57:28 +01:00
Diablodiab 47d5242dd7 Add middle mouse button support to Android input driver
Add lightgun support to Android input driver
2017-02-16 21:52:52 +01:00
Diablodiab 4f039cac22 This adds external mouse support to the Android input driver. It also adds support for using the touch screen as mouse in cores with mouse support (eg. ScummVM).
It has been tested with the ScummVM core on:
- NVIDIA Shield TV running Android Nougat 7.0
- NVIDIA Shield Tablet running Android Nougat 7.0
- NVIDIA Shield Tablet running Android Lollipop 5.1
- Huawei Honor 7 running Android Marshmallow 6.0
- HTC Desire 500 running Android Jelly Bean 4.1

It's been tested using the touch screen, a USB mouse/keyboard combo, and a bluetooth mouse.

The Android version running on the device limits the functionality and user experience of the external mouse support.
Android Nougat and/or an NVIDIA SHIELD device with NVIDIA extensions provides the best user experience:

Android API < 14:
- Only left mouse button supported
- The Android mouse cursor will be visible along with the in game mouse cursor
- When the Android mouse cursor hits the edge of the screen it will not be possible to move the in-game mouse cursor further in that direction

Android API < 24 and no NVIDIA extensions available:
- Both left and right mouse buttons supported
- The Android mouse cursor will be visible along with the in game mouse cursor
- When the Android mouse cursor hits the edge of the screen it will not be possible to move the in-game mouse cursor further in that direction

Android API > 23 and/or NVIDIA extensions available (SHIELD devices):
- Both left and right mouse buttons supported
- The Android mouse cursor will be hidden
- The mouse is not limited by the (hidden) Android mouse cursor hitting the edge of the screen

Description of how the the touchscreen mouse support works:
- You can move the in-game mouse cursor using the touch screen. The in-game mouse cursor will move relative to your movements on the touch screen, it will not be centered on where you press the screen.
- One quick tap on the touch screen results in the left mouse button being clicked
- Two taps on the screen and keeping the second tap pressed down results in a left mouse being held down until you release
- Two fingers on the touch screen results in the right mouse button being clicked

The touch screen mouse functionality is active at the same time as overlay support. This might cause some confusion when using cores that are designed for mouse support but where you have also enabled overlay controls. At the top of android_input.c there's a define that can be used to turn off this functionality if it causes more problems than it solves.
2017-02-14 22:34:46 +01:00
xhp-creations b04bf809e3 WiiU Fix Keyboard Input
WiiU Fix Keyboard Input
2017-02-09 14:08:27 -05:00
xhp-creations 4915f452f5 WiiU Initial Keyboard Support
WiiU Initial Keyboard Support
2017-02-09 12:34:12 -05:00
Brad Parker 83619b25e6 DOS: add keyboard driver to support non-joypad keys 2017-02-05 13:55:21 -05:00
twinaphex e3a1b1859d Fix ./configure --disable-rgui 2017-02-04 09:20:41 +01:00
twinaphex f31ae11d29 Silence warnings 2017-01-31 04:00:16 +01:00
aliaspider ffbd1e838a (3DS) build fix. 2017-01-31 03:27:26 +01:00
neville fc2654cd0f (iohidmanager_hid.c) Silence a whole bunch of warnings 2017-01-29 20:20:43 +01:00
twinaphex 1b3225089e iohidmanager.c - Attempt to silence some warnings 2017-01-29 20:11:32 +01:00
twinaphex bdaf00032e Add comments 2017-01-26 02:49:42 +01:00
twinaphex be617c530b Expand input_keys_pressed 2017-01-25 04:31:55 +01:00
aliaspider 0ba9faa8bd (CTR) build fix. 2017-01-24 10:43:35 +01:00
Brad Parker 2c97e330de remove unused code 2017-01-24 01:04:00 -05:00
Brad Parker 57949227df DOS: initial input/joypad driver 2017-01-24 00:55:58 -05:00
aliaspider 021b510452 (WiiU) refactors/cleanups. 2017-01-23 16:14:05 +01:00
twinaphex 0761381e2a Fix overlay issue 2017-01-23 02:45:36 +01:00
twinaphex daf0e90f82 input_driver.c - cleanup 2017-01-23 02:28:25 +01:00
twinaphex 3a711f6d4f Make conditional for polling the same as input_state 2017-01-23 01:46:33 +01:00
twinaphex 18662afe56 input_poll - cleanup 2017-01-23 01:44:13 +01:00
twinaphex a42f66d629 Streamline input_state - hopefully turbo buttons still work 2017-01-23 01:18:08 +01:00
twinaphex 0d5b3b9273 Create menu_driver_is_alive 2017-01-23 00:37:52 +01:00
twinaphex 12c5cc51c5 Create bsv_movie_get_input 2017-01-22 17:03:42 +01:00
twinaphex 5bc611c885 Small cleanup 2017-01-22 16:54:33 +01:00
twinaphex a9a3f6b078 Another cleanup 2017-01-22 16:49:08 +01:00
twinaphex c283d2cf26 Small micro-opts to input_state 2017-01-22 16:44:34 +01:00
twinaphex 96c8ca5a09 Header update #1 2017-01-22 13:40:32 +01:00
Brad Parker 1d3e1a6962 DOS/DJGPP buildfix 2017-01-20 18:23:45 -05:00
twinaphex aa59b33931 Use input_config_set_device 2017-01-17 19:59:33 +01:00
twinaphex b4cdad1a6f Cleanups 2017-01-17 19:43:19 +01:00
twinaphex 0354ced675 Style nits 2017-01-17 19:02:49 +01:00
twinaphex 4743230b09 Some header includes shouldn't be system includes 2017-01-17 18:15:11 +01:00
twinaphex 7931436f5b Apply xerpi diff 2017-01-17 18:12:23 +01:00
Twinaphex 014ed5e87f Merge pull request #4441 from aliaspider/master
(WiiU) simplify input code + fix crash on content reload.
2017-01-17 13:16:56 +01:00
aliaspider 14660a8c12 (WiiU) simplify input code, add button labels for autoconfigs. 2017-01-17 12:41:55 +01:00
twinaphex d519ad7017 (input_config.c) Move variable 2017-01-16 21:36:04 +01:00
aliaspider 8cb692622a (WiiU) add support for bluetooth controllers (Wiimote, nunchuk, classic
controller, wiiu pro controller).
2017-01-16 18:52:39 +01:00
twinaphex 77cf4f4e06 This should fix index issue 2017-01-16 16:09:40 +01:00
twinaphex 6eac6a6447 joy_idx goes through joypad_map now 2017-01-16 15:20:14 +01:00
twinaphex e3e8796b2b (iohidmanager_hid.c) Stylistic cleanups 2017-01-15 21:13:01 +01:00
Twinaphex 1544a3d6e1 (OSX) Fix warnings 2017-01-15 21:07:15 +01:00
John Regan 4f352227ea OSX Joypad Improvements
This commit has two main changes to the OSX HID driver:

1.

Some joysticks have invalid/incorrect 'use' assigned to buttons and
axes. For example, my RetroUSB.com Genesis Retroport reports 8 buttons,
but they're reported as 1, 2, 3, 4, 1, 2, 3, 4, and my RetroLink
Gamecube-clone controller reports 2 axes with id 50.

OSX assigns each of these elements a unique cookie value, so it's still
possible to uniquely identify a button. Whenever a controller is
connected, the driver scans for all buttons and axes. When it identifies
a duplicate 'use' id, it reassigns it a new ID.

Whenever the input callback is called, it grabs the cookie value,
finds the input element with a matching cookie, and uses that element's
id instead of the one reported by the device.

The old joystick configs should not be broken by this - I'm using the
existing 'use' value wherever possible, and only changing it when it's
broken.

The 'faked' ids are done in a deterministic way, a joystick will never
have a button's 'faked' id change between launches of RetroArch.

2.

This enables HAT switch input.
2017-01-15 12:17:47 -06:00
Aaron Kling 8a2585f8dc Handle motion events if source is touchscreen or mouse regardless
of other sources being set.

API level 9 doesn't support stylus, but still needs to be handled.
Current code throws out additional sources that it doesn't
recognize. This instead ignores whether other sources are set.
2017-01-13 18:37:50 -06:00
twinaphex 6ed4de0d79 Create input_config_get_device_name 2017-01-13 16:02:10 +01:00
twinaphex 8b0127b122 (input_keyboard.c) Remove dependence on configuration.h header 2017-01-13 15:56:17 +01:00
twinaphex 17ff813310 (input_joypad_driver.c) reduce header dependencies on configuration.h 2017-01-13 15:53:14 +01:00
twinaphex 4ebf4d6938 Create input_config_get_bind_idx 2017-01-13 15:42:30 +01:00
twinaphex 0387e5e470 (input_keyboard.c) Cleanup 2017-01-13 15:26:40 +01:00
twinaphex f9dbd4dc02 Remove config_label_to_key 2017-01-13 15:24:54 +01:00
twinaphex b996df6447 Put back input flushing - fixes input entry 2017-01-13 15:11:00 +01:00
twinaphex cab74cd4a2 Buildfix 2017-01-13 10:00:43 +01:00
twinaphex ea3dd6a95b Set device name when autoconfig connect task fails for all
other input drivers too
2017-01-13 05:00:13 +01:00
twinaphex 455c3f35c9 Buildfix 2017-01-13 04:42:26 +01:00
twinaphex add7d26c3d Set device name for xinput/dinput even when autoconfig is
disabled
2017-01-13 04:40:44 +01:00
twinaphex b2ad5274b3 Cleanups/style nits 2017-01-12 09:01:07 +01:00
twinaphex 640c9aa824 Get rid of ifdef 2017-01-12 08:55:46 +01:00
Twinaphex c5d1fe9ec5 Cleanup 2017-01-12 07:36:52 +01:00
twinaphex 404e60f7ed Initialize all users' binds 2017-01-11 23:37:01 +01:00
twinaphex 73a5e54ca8 Initialize libretro_input_binds inside input_driver_init 2017-01-11 23:32:33 +01:00
twinaphex ca5bdab881 Rename get_state_menu_toggle_button_combo 2017-01-11 20:29:31 +01:00
twinaphex 640d7e69f3 Make menu toggle binds work again - still latching issues
but same as before so no regression
2017-01-11 11:48:26 +01:00
twinaphex b45c96cc18 (WiiU) Buildfix 2017-01-11 08:24:55 +01:00
twinaphex 819f7c1e41 Get rid of input_keys_pressed_end macro 2017-01-11 07:31:37 +01:00
twinaphex c79da6842e Found a better and clenaer way to flush input 2017-01-11 07:31:09 +01:00
twinaphex d0df067e84 Ignore 'unified controls' when OSK keyboard is onscreen even
when unified controls are enabled
2017-01-11 06:05:21 +01:00
twinaphex 899601e7bb Do an early return inside menu_shader_manager_init if already initialized 2017-01-11 03:36:35 +01:00
twinaphex 9daf16ee55 Fix crash at startup when enable_hotkey is mapped 2017-01-11 03:23:47 +01:00
twinaphex 4f4af01349 Fix keyboard issues with OSK 2017-01-11 02:17:03 +01:00
twinaphex 997fa98887 Style nit 2017-01-11 00:00:24 +01:00
twinaphex 5b15119f06 (PSP) Buildfix 2017-01-10 22:48:39 +01:00
twinaphex cd105e7432 (CTR) Buildfix 2017-01-10 22:45:53 +01:00
twinaphex 6b5bf1ccc3 (wiiu_input.c) Fix build 2017-01-10 22:44:44 +01:00
twinaphex 2ed1e38021 dinput.c - silence warning 2017-01-10 20:11:51 +01:00
twinaphex 5978cf89de Cleanups 2017-01-10 20:05:53 +01:00
twinaphex 1eb17b6315 Remove settings header includes 2017-01-10 20:03:55 +01:00
twinaphex f3de77e93c (dinput.c) remove dependency on settings struct 2017-01-10 20:00:07 +01:00
twinaphex da244c177b Fix signed/unsigned mismatch warning 2017-01-10 19:49:00 +01:00
twinaphex 8bd12368ef Pass joypad_driver name to input_driver_init function and make
sure we don't need to access the settings struct from the
input driver
2017-01-10 17:59:48 +01:00
twinaphex db6fba51c3 Cleanup dinput.c 2017-01-10 17:42:57 +01:00
twinaphex d48141041d Pass joypad_info to input_state function callback - less
settings pointer grabbing
2017-01-10 17:40:21 +01:00
twinaphex da4d2a9f42 Remove conditionals for device JOYPAD from input_state callback functions 2017-01-10 17:05:04 +01:00
twinaphex b44b025eab Do conditional checking (if bind is valid) outside of input_state
callback function
2017-01-10 17:00:01 +01:00
twinaphex 08a2acdc95 Update input_keys_pressed_checks 2017-01-10 16:51:35 +01:00
twinaphex baf351e1ee CLeanup input_menu_keys_pressed_internal 2017-01-10 16:34:55 +01:00
twinaphex 98a346db2d Cleanup input_menu_keys_pressed_internal 2017-01-10 16:29:16 +01:00
twinaphex f26fbbef83 (input_driver.c) Move settings variable 2017-01-10 16:17:34 +01:00
twinaphex 0e487e0acd Create input_keys_pressed_end 2017-01-10 16:15:20 +01:00
twinaphex 22b86226f8 Fix warnings 2017-01-10 16:14:49 +01:00
twinaphex 91e572d7ef Create input_keys_pressed_checks macro 2017-01-10 16:08:31 +01:00
twinaphex 466d5fd531 (input_driver.c) Cleanups 2017-01-10 16:03:25 +01:00
twinaphex b94c4eec2b (input_driver.c) Cleanups 2017-01-10 16:00:20 +01:00
twinaphex b9945f05f1 Pass joypad_info to input_joypad_analog 2017-01-10 03:53:57 +01:00
twinaphex 6376f2af68 Add rarch_joypad_info_t 2017-01-10 03:44:53 +01:00
Josh Palmer 437734e407 Rewrite QNX input & joypad drivers for proper BB10.3.1 support 2017-01-09 20:26:09 +00:00
Josh Palmer 8672b88eff First round of momentics project fixups 2017-01-09 20:24:51 +00:00
twinaphex 485385be80 Cleanups 2017-01-09 02:13:16 +01:00
twinaphex 42686f2f81 (input_overlay.c) remove bunch of header includes 2017-01-09 01:51:30 +01:00
twinaphex e75633064a Add 'Y button' callback function for input binds 2017-01-05 04:52:04 +01:00
twinaphex 5bb741ffda (input) Cleanups/nits 2017-01-03 04:55:37 +01:00
twinaphex 4e3c2b3e66 (PSP/Vita) Buildfix 2017-01-02 02:39:15 +01:00
Alcaro 7b8a5b4f5b error: invalid conversion from ‘int’ to ‘xkb_keymap_compile_flags’ 2017-01-02 02:17:32 +01:00
twinaphex 92ca53db01 No more usage of settings_t inside input_overlay.c 2017-01-01 04:57:57 +01:00
twinaphex 36a6abede7 (input_overlay.c) Cleanup 2017-01-01 04:31:22 +01:00
twinaphex 46080f2194 (input_overlay.c) Cleanup 2017-01-01 04:28:25 +01:00
twinaphex d84b75e1de (input_overlay.c) Cleanups 2017-01-01 04:26:21 +01:00
twinaphex 8d8fab60f9 input_overlay.c - cleanups 2017-01-01 04:21:29 +01:00
twinaphex 0ec6ef75df Move early return check to input_driver.c 2017-01-01 04:17:58 +01:00
twinaphex 6d4659a902 (overlay) Reduce dependence on grabbing settings pointer everywhere 2017-01-01 04:12:24 +01:00
twinaphex 103042de96 Rewrite task_autodetect.c 2016-12-31 07:43:34 +01:00
radius af02b3ac85 Allow builtin autoconfs with the XBONE controller 2016-12-25 21:03:04 -05:00
twinaphex 66f189dff6 (wiiusb_hid.c) Prevent crashes 2016-12-26 00:38:54 +01:00
twinaphex a5e4ea2f33 C89_BUILD fix 2016-12-24 01:47:01 +01:00
twinaphex 87e5c5a1bd input_menu_keys_pressed - remove some more boilerplate code 2016-12-23 02:28:13 +01:00
twinaphex af5aaa9db8 Cleanup boilerplate code in input_menu_keys_pressed 2016-12-23 02:22:47 +01:00
twinaphex 32e1f96fa1 (PS3) Fix gamepad 2016-12-21 22:27:37 +01:00
twinaphex 8dcf05036c (input_config.c) Get rid of implicit memset 2016-12-19 18:55:02 +01:00
Gregor Richards 262d77546b Adding game/watch key
Adding a key to toggle between playing and spectating. This key takes
the place of the previous flip key, although player flipping does
continue to work (and must be rebound if you still want it)
2016-12-18 19:28:42 -05:00
radius ab56b5f33c differentiate xbox one controllers 2016-12-18 13:44:15 -05:00
Hans-Kristian Arntzen 313ac63c33 Make use of xkb_state_update_mask.
Fixes mod keys in Wayland it seems.
2016-12-17 20:42:48 +01:00
Hans-Kristian Arntzen b2059dcb79 Implement basic Wayland keyboard and mouse. 2016-12-17 20:28:08 +01:00
twinaphex feae0823ce Prevent some implicit memsets 2016-12-17 14:40:06 +01:00
twinaphex aafae944cb Don't memset autoconfig_params_t 2016-12-17 14:26:13 +01:00
twinaphex 2153f3f011 Check if autodetect is enabled at beginning of connect task 2016-12-16 15:18:04 +01:00
twinaphex 209305f944 Connect task now sets PID/VID too 2016-12-16 14:02:11 +01:00
twinaphex 1b0389713d (GX) Buildfix 2016-12-16 13:42:41 +01:00
Twinaphex db1f3c058a (iohidmanager_hid.c) No longer need to include configuration.h now 2016-12-16 12:36:01 +01:00
twinaphex d9def056e7 The 'connect' task now sets the device name upon completion 2016-12-16 12:33:56 +01:00
twinaphex 62f5b2d3c3 The disconnect task now clears the device name 2016-12-16 12:20:31 +01:00
Twinaphex 5c522c643c Merge pull request #4254 from danzel/fix-joypad-connection
Fix joypad_connection handling of unknown controllers
2016-12-16 12:15:40 +01:00
Dave Leaver cd5a5c5fd7 iohidmanager_hid: Remove name from adapters when they are disconnected 2016-12-16 20:17:24 +13:00
Dave Leaver f7c6574b37 Correctly handle adding controllers if we fail to match them to the known pad_map. 2016-12-16 20:16:55 +13:00
twinaphex 45e841c5c5 Don't include config_file.h inside input_config.h 2016-12-15 11:17:48 +01:00
Twinaphex 4964791cde Revert "changed input binding order" 2016-12-11 19:00:03 +01:00
Patrick Scheurenbrand d40a0e2f3a changed input binding order 2016-12-11 13:03:02 +01:00
twinaphex 15c63c3de9 (input_driver.c) Cleanups 2016-12-11 09:13:24 +01:00
twinaphex d2bd6677bd (udev_joypad.c) Cleanup 2016-12-11 08:48:25 +01:00
twinaphex e9f853ba93 Move (joykey == NO_BTN ) to input_joypad_driver 2016-12-11 08:44:55 +01:00
twinaphex 37559c6f5f Cleanups 2016-12-11 08:31:55 +01:00
twinaphex 423578d972 (Joypad drivers) Simplify hat code 2016-12-11 07:28:33 +01:00
twinaphex b087a7441a Fix game focus toggle 2016-12-11 03:52:08 +01:00
twinaphex e32d93d886 Remove functions 2016-12-07 08:14:04 +01:00
twinaphex 04a3c3f15e Remove unused function input_driver_unset_flushing_input 2016-12-07 08:11:59 +01:00
twinaphex dc7549434f Add headers 2016-12-07 08:10:02 +01:00
twinaphex a12d0d082d Move input_translate_coord_viewport to video_driver.c 2016-12-07 08:07:11 +01:00
twinaphex 7327e98c8a Add HAVE_XINPUT ifdef 2016-12-07 07:08:27 +01:00
twinaphex d04309fc05 Buildfix 2016-12-07 06:16:12 +01:00
twinaphex 31a7f64f2c Cleanups 2016-12-07 05:41:08 +01:00
twinaphex f6dcfd21cf (MSVC) MSVC build fixes 2016-12-07 05:39:27 +01:00
twinaphex e3620278a8 Add HAVE_MENU ifdefs for menu code 2016-12-07 03:16:34 +01:00
twinaphex 4b1c24adf9 - Move input flushing hack to input_keys_pressed functions
- Move menu binding state hack to menu_input_keys_pressed
2016-12-06 20:50:29 +01:00
twinaphex 77df0ef3ae Rebase input_key_pressed/input_menu_keys_pressed 2016-12-06 18:12:35 +01:00
Adriano Moura 6b99eeaf88 Implements a hotkey for toggling mouse grabbing, hiding and hotkey blocking. Usefull for playing tyrquake with kb/m. 2016-12-06 03:32:28 -02:00
Adriano Moura 21eb2fd71f Just an attempt at trying to fix x11 keyboard events. Allows you to play tyrquake with a kb on linux. 2016-12-06 03:32:10 -02:00
Adriano Moura 4434bd221a Fixes an issue where mouse is only sampled half the time.
Very obvious when aiming with a mouse like in tyrquake.
2016-12-06 03:31:21 -02:00
twinaphex b7ea2306af Remove unused input_driver_unset_hotkey_block 2016-12-05 05:40:51 +01:00
twinaphex ecbfc7fd8a (input_driver.c) Cleanups 2016-12-05 05:34:38 +01:00
twinaphex 2ba311274e Simplify input_translate_coord_viewport 2016-12-05 05:18:36 +01:00
twinaphex 6e28aa30bb Simplifications 2016-12-04 22:23:27 +01:00
twinaphex a762dbcdfb Simplify input_poll 2016-12-04 22:22:00 +01:00
twinaphex bbbcc97f57 Simplify input_push_analog_dpad 2016-12-04 22:20:47 +01:00
twinaphex 6cdb823bb4 Turn input_push_analog_dpad into macro 2016-12-04 21:37:47 +01:00
twinaphex 85aa88f665 Simplify input_push_analog_dpad 2016-12-04 21:30:50 +01:00
twinaphex 185925cf3a Update input_pop_analog_pads 2016-12-04 21:08:49 +01:00
twinaphex c19a6dd018 Turn input_pop_analog_dpad into macro 2016-12-04 20:23:52 +01:00
twinaphex 59c317dc1d Pass pointers to input_push_analog_dpad 2016-12-04 20:20:35 +01:00
twinaphex 0fdb8881cb Pass pointer variables to input_pop_analog_dpad 2016-12-04 20:17:55 +01:00
twinaphex 1c21c001c6 Cleanups 2016-12-04 19:52:52 +01:00
Brad Parker e39031cbd0 revert rest of unicode changes 2016-12-03 00:15:29 -05:00
Brad Parker f725b48555 starting to revert unicode changes 2016-12-03 00:15:29 -05:00
twinaphex d36e7700f7 (input_driver.c) Style nits 2016-12-03 06:14:57 +01:00
Brad Parker d20acaa63d more unicode fixes 2016-12-02 23:00:27 -05:00
Brad Parker cc7bf6b4fa more unicode fixes 2016-12-02 21:11:55 -05:00
Brad Parker d891f1c90b remove explicit unicode def/undefs 2016-12-02 14:34:29 -05:00
Brad Parker 3846ce1837 build fixes for MSVC, start moving back to TCHAR usage so we can switch unicode on and off 2016-12-02 12:54:39 -05:00
twinaphex d3151927bf (Emscripten) Buildfix 2016-12-02 17:41:44 +01:00
twinaphex 021559a877 Get rid of runloop.h dependencies inside input/ dir 2016-12-02 06:07:45 +01:00
twinaphex dd5736b273 Turn check_input_driver_block_hotkey into macro 2016-12-02 05:26:37 +01:00
twinaphex 70557fdee6 (Wii) Buildfix 2016-12-02 00:24:54 +01:00
twinaphex 779b680264 (Android) Buildfix 2016-12-01 23:05:36 +01:00
Twinaphex 0d79bc754c (OSX) Buildfix 2016-12-01 22:51:46 +01:00
twinaphex 5fdb5b4dcf Updates 2016-12-01 22:24:17 +01:00
Brad Parker 23dd41a3cc missing ../ 2016-12-01 15:40:31 -05:00
twinaphex d3c22cb0e4 Move input/input_autodetect.c to tasks/task_autodetect.c 2016-12-01 20:38:20 +01:00
twinaphex 0bd94b9b54 Move extern variable prototype to input_autodetect.c 2016-12-01 20:26:35 +01:00
twinaphex 76d0380e45 Rename input_autoconfigure_joypad to input_autoconfigure_connect 2016-12-01 18:57:44 +01:00
twinaphex e689d55414 Rename autoconfig functions 2016-12-01 18:52:34 +01:00
twinaphex a692b5953f Put parentheses around conditionals 2016-12-01 18:38:11 +01:00
twinaphex a485f1559d Move static bool variable 2016-12-01 18:36:50 +01:00
twinaphex 71ea15fed2 Use string_is_empty 2016-12-01 18:35:30 +01:00
Brad Parker ba54f20626 initial libcaca video driver 2016-12-01 12:13:45 -05:00
twinaphex debf5e0222 Rename g_udev and g_udev_mon 2016-12-01 17:39:36 +01:00
twinaphex c1e343cec8 Cleanup hid_joypad_name 2016-12-01 17:37:27 +01:00
twinaphex a9e627ca57 (udev_input.c) Rename static function 2016-12-01 17:33:41 +01:00
twinaphex 31a95b8972 (android_input.c) Get rid of HAVE_MENU ifdefs 2016-12-01 17:31:26 +01:00
twinaphex 200be98052 (udev_input.c) use udev_common.c 2016-12-01 16:51:43 +01:00
twinaphex ebe1ac6967 (udev_joypad.c) Cleanups 2016-12-01 16:46:32 +01:00
twinaphex 793519eb61 (linuxraw_joypad.c) Cleanups 2016-12-01 16:44:47 +01:00
twinaphex b63b675274 (linuxraw_joypad.c) Cleanups 2016-12-01 16:42:21 +01:00
twinaphex d7f7d5f99a Rewrite epoll_common 2016-12-01 16:40:04 +01:00
twinaphex 9afa24ea70 Reuse udev_common.c function 2016-12-01 15:05:17 +01:00
twinaphex 63ae172a23 Add udev_common.c/.h 2016-12-01 15:02:42 +01:00
twinaphex a726fc2d8e Further cleanups 2016-12-01 04:12:56 +01:00
twinaphex 468644e213 Simplify udev_hotplug_available and prevent implicit memset 2016-12-01 03:59:02 +01:00
twinaphex eee077fe31 (udev) Simplify udev_joypad_handle_hotplug 2016-12-01 03:50:35 +01:00
twinaphex bd53c33069 Move input_get_auto_bind to input_config.c 2016-12-01 03:43:51 +01:00
twinaphex c351aed001 (input_driver.c) Cleanups 2016-12-01 03:38:25 +01:00
twinaphex 5337e494c6 More small cleanups 2016-12-01 03:01:32 +01:00
twinaphex e6eeb8e559 Simplify check_input_driver_block_hotkey 2016-12-01 03:01:32 +01:00
Brad Parker 3ac51389bb dinput: catch null pointer 2016-11-30 02:07:29 -05:00
twinaphex ce2fbbdbe2 (hid_joypad.c) Prevent null pointer dereferences 2016-11-30 05:12:28 +01:00
Twinaphex 7197be5a0d (OSX) Prevent crash 2016-11-30 05:07:08 +01:00
Twinaphex 17dc79a002 Buildfixes/silence unused variable warnings 2016-11-30 04:32:59 +01:00
Brad Parker 367dea6723 unicode-ify a couple other windows files, start changing function names to W version explicitly 2016-11-29 20:32:24 -05:00
twinaphex 42a3ec2cf7 Do conditional check before calling function 2016-11-27 15:43:00 +01:00
twinaphex 44131ff639 (input_overlay.c) Prevent crashes 2016-11-27 15:34:19 +01:00
twinaphex 4e8bb52038 (input_overlay.c) Remove more hacks 2016-11-27 15:21:53 +01:00
twinaphex 267fdbe21e (input_overlay.c) remove more hacks 2016-11-27 15:17:44 +01:00
twinaphex 7f339a8f84 More hacks from input_overlay.c removed 2016-11-27 15:12:48 +01:00
twinaphex bbb2ffea9c Remove nasty input overlay hack for input_overlay_set_scale_factor 2016-11-27 15:10:09 +01:00
twinaphex e9846aae68 (Android) Remove unused variables 2016-11-27 15:02:14 +01:00
twinaphex 1ab6cc5b47 Remove dead OSK code 2016-11-27 02:52:13 +01:00
twinaphex 80798ab924 Remove hacky 'OSK Keyboard' overlay 2016-11-27 02:46:09 +01:00
twinaphex 21e9bde569 Silence warning 2016-11-21 15:00:57 +01:00
twinaphex 95254aa79b Remove 'back as menu toggle' setting 2016-11-21 13:05:23 +01:00
radius 281aa1df72 this is redundant now, remap files should only be used for.. remaps 2016-11-20 12:50:54 -05:00
twinaphex 1df7b924bf Merge branch 'master' of https://github.com/libretro/RetroArch 2016-11-20 13:37:16 +01:00
twinaphex 0a42940332 (Menu keyboard) Implement pageup/pagedown 2016-11-20 13:36:57 +01:00
radius 53ab0cdb55 add menu setting and fix for keyboard 2016-11-19 13:48:24 -05:00
radius f343bc45fb remove these settings that we never properly implemented 2016-11-19 12:57:12 -05:00
aliaspider e268630b84 (WiiU) skip bad vpad reads. 2016-11-10 13:03:40 +01:00
aliaspider 2abc9c7ef9 (WIIU) Home button can now trigger the main menu too. 2016-11-08 09:31:46 +01:00
twinaphex d4b4cd92bb Translate string 2016-11-08 01:17:10 +01:00
Brad Parker c9727f735b update JP translation, add 2 new translatable strings 2016-11-07 17:28:26 -05:00
FIX94 4a285fd4e1 (WiiU) fixed random pixels being displayed on game start/close and exit
(WiiU) fixed touchscreen sending invalid data which broke the menu toggle
2016-11-07 02:42:12 +01:00
twinaphex cfa01f623d input_remapping_state - remove function and inline inside input_driver.c
input_state function
2016-11-06 15:42:26 +01:00
Alcaro dd9a810451 This warning doesn't need to be here 2016-11-06 12:02:37 +01:00
Twinaphex 92b3a24943 Merge pull request #3940 from aliaspider/master
(WIIU) GX2
2016-11-05 15:07:31 +01:00
aliaspider 0433cae3c9 (WIIU) misc. 2016-11-05 15:01:43 +01:00
twinaphex dad26e0956 Header cleanup 2016-11-05 14:10:30 +01:00
twinaphex c35d723b40 Fix C89_BUILD 2016-11-04 14:29:02 +01:00
twinaphex 5db3f4528d (input_keyboard.c) Cleanups 2016-11-03 23:10:42 +01:00
aliaspider 176dd79f33 (WIIU) misc. 2016-11-02 22:06:15 +01:00
Brad Parker f5cac72735 fix backspacing of unicode chars in OSK 2016-11-02 16:16:04 +01:00
twinaphex 04e3059f7f Remove unused variable 2016-11-02 14:17:22 +01:00
twinaphex 2091c4cc2f (Menu) Left analog stick controls the menu now 2016-11-02 13:44:34 +01:00
twinaphex 4945075201 Prevent warning 2016-10-31 08:00:57 +01:00
Brad Parker 18cce4cfc9 fix OSK hang in Windows because we are getting a down event for keycode 0... 2016-10-30 01:14:50 -04:00
twinaphex 696abbed83 C89_BUILD fix 2016-10-30 03:30:32 +01:00
twinaphex 950e67b8a2 Use BIT64_SET 2016-10-30 02:58:26 +01:00
Brad Parker 1a73b1d144 OSK cleanup, add katakana support 2016-10-29 19:51:02 -04:00
Jean-André Santoni 01985c7460 OSK memory fix and hiragana support 2016-10-29 23:54:06 +02:00
Jean-André Santoni 97e13c4409 Preliminary changes for the utf8 OSK 2016-10-29 22:43:34 +02:00
twinaphex 21c7f562f7 Optimize input code 2016-10-29 15:53:14 +02:00
twinaphex 3d91e4087f input_keys_pressed - get rid of early return 2016-10-29 15:37:28 +02:00
twinaphex 9926686c83 Get rid of hardcoded MAX_USERS 2016-10-29 08:44:01 +02:00
Brad Parker 3354c07810 fix joypad A button in OSK 2016-10-28 23:47:17 -04:00
twinaphex 763a925a17 Fix Android build 2016-10-29 04:59:56 +02:00
twinaphex ce98a4dd19 Get rid of now unused input_driver_key_pressed 2016-10-29 04:57:28 +02:00
twinaphex 0d5d3b27be No longer use key_pressed 2016-10-29 04:48:51 +02:00
twinaphex f1b2caa138 Rewrite input_keys_pressed 2016-10-29 04:41:45 +02:00
twinaphex 9eecd774d1 input_menu_keys_pressed - second joypad driver should be
working now too
2016-10-29 04:33:57 +02:00
twinaphex 93af926f76 Cleanups 2016-10-29 04:09:50 +02:00
Twinaphex d231642856 Merge pull request #3888 from libretro/menu_input
Menu input
2016-10-29 04:05:30 +02:00
Twinaphex 92a9f8aec7 Merge pull request #3887 from aliaspider/master
(WIIU) cleanup. adapt dynamic symbol loading to be able to use headers
2016-10-29 04:02:54 +02:00
twinaphex 5d90b774da Fixes remaining input issues courtesy of bparker 2016-10-29 04:00:36 +02:00
aliaspider e055b7cbc1 (WIIU) cleanup. adapt dynamic symbol loading to be able to use headers
from WUT.
2016-10-29 02:56:40 +01:00
radius 6a950526d5 add group for other android atv devices 2016-10-28 20:49:44 -05:00
radius a900bc41a8 fix l3/r3 2016-10-28 20:05:38 -05:00
radius cb2e78e46d add android standard gamepad builtin autoconf 2016-10-28 18:15:24 -05:00
Twinaphex 535215eefa Merge pull request #3879 from libretro/master
Merge
2016-10-28 07:44:10 +02:00
Twinaphex 453155ade3 Merge pull request #3877 from aliaspider/master
(WIIU) update.
2016-10-28 01:53:43 +02:00
Twinaphex 7e5ee4f86c Prevent uninitialied variable 2016-10-27 21:47:15 +02:00
Brad Parker d1d5584d18 update copyright 2016-10-27 11:47:10 -04:00
aliaspider 185849d5ff (WIIU) add frontend driver, allocate mem2 2016-10-27 15:33:40 +01:00
twinaphex 1b6e7da2ce Merge branch 'menu_input' 2016-10-27 10:54:49 +02:00
twinaphex 6310f53587 Prevent some implicit memsets and reduce the size of some
char variables
2016-10-27 10:45:53 +02:00
twinaphex c1b59df7ae Reduce size of char variables 2016-10-27 09:32:07 +02:00
twinaphex 60d313bf6a Reduce size of more char variables 2016-10-27 09:21:03 +02:00
twinaphex b1b2579fde Start reducing size of some char variables 2016-10-27 09:17:41 +02:00
twinaphex 8d6be4b700 Reduce size of some messages (was PATH_MAX_LENGTH by default,
which can default to 4096)
2016-10-27 09:13:36 +02:00
twinaphex 53ad28ffde Backport this patch 2016-10-27 07:03:37 +02:00
twinaphex d246d320c7 Get rid of messy 'all_users_control_menu' hack - will be dealt
with better once menu_input branch has been merged
2016-10-27 07:00:13 +02:00
twinaphex 65685c3a9d Update input_menu_keys_pressed 2016-10-27 06:55:08 +02:00
twinaphex 2a0dba3009 Move all_users_control_menu code to input/input_driver.c 2016-10-27 06:53:06 +02:00
twinaphex 660f021dbc Simplify input_menu_keys_pressed 2016-10-27 06:49:18 +02:00
twinaphex 5ac9905540 Simplify code 2016-10-27 06:47:31 +02:00
twinaphex f778bee856 Add input_menu_keys_pressed to master 2016-10-27 06:38:02 +02:00
twinaphex 8f30b3e706 Update menu_keys_pressed 2016-10-27 06:34:53 +02:00
Twinaphex 2cd82ff2c2 Merge pull request #3870 from libretro/master
Merge
2016-10-27 04:49:46 +02:00
twinaphex b9909bf5ba Add CONFIG_BIND_ALT 2016-10-27 04:03:24 +02:00
aliaspider a4d745a471 preliminary port to the wiiu platform 2016-10-27 01:34:10 +01:00
Twinaphex d1c04ad711 Merge pull request #3868 from libretro/master
Prevent more potential crashes
2016-10-27 01:24:15 +02:00
twinaphex 5fc6519328 Prevent more potential crashes 2016-10-27 01:21:01 +02:00
twinaphex a9a2749af9 Add input_menu_keys_pressed 2016-10-27 00:13:29 +02:00
Twinaphex 26547be5ed Try to prevent another crash 2016-10-26 23:05:14 +02:00
Twinaphex 90fbc09f82 Fix remaining crash on OSX 2016-10-26 10:34:24 +02:00
twinaphex 8ce882c829 Should hopefully fix most of the remaining issues 2016-10-26 10:29:26 +02:00
twinaphex d6901685f7 Prevent crash with udev driver 2016-10-26 10:21:56 +02:00
twinaphex 858f96d082 Try to prevent crashes when amount of selected users is less
than what a core can support
2016-10-26 10:19:22 +02:00
twinaphex 948b206b60 Get rid of using hardcoded labels 2016-10-25 19:50:03 +02:00
Brad Parker c70ac3986c make input hotkey/user bind strings translatable 2016-10-24 18:22:53 -04:00
twinaphex 2663d8e694 (input_keyboard.c) Simplify code 2016-10-24 07:09:50 +02:00
twinaphex f17080091b Simplify input_keyboard_event 2016-10-24 07:06:59 +02:00
twinaphex 5ea2078638 Attempt buildfix 2016-10-24 06:40:09 +02:00
twinaphex 7a18b053c4 C89_BUILD fixes 2016-10-24 05:57:13 +02:00
twinaphex 3702fde113 Simplify some input/video functions 2016-10-24 03:05:55 +02:00
twinaphex 294f54ebf0 Cleanup udev_pointer_state 2016-10-24 02:47:29 +02:00
twinaphex d5d49e602c Cleanup input_joypad_analog 2016-10-23 21:59:53 +02:00
twinaphex b0ed69f05c Optimize android_keyboard_port_input_pressed 2016-10-23 20:43:14 +02:00
twinaphex 57457c2d70 Optimize apple_input_is_pressed 2016-10-23 20:42:09 +02:00
twinaphex 647ffca76c Optimize input_joypad_pressed code 2016-10-23 20:37:12 +02:00
twinaphex 2f12d8982c input_joypad_pressed - small opts 2016-10-23 20:08:27 +02:00
twinaphex 8cc5b09428 Get rid of slow wrapper function input_driver_state 2016-10-23 04:38:08 +02:00
twinaphex f03e22b003 Revert "Do away with some NULL checks"
This reverts commit 07d86a7feb.
2016-10-22 17:45:14 +02:00
twinaphex 07d86a7feb Do away with some NULL checks 2016-10-22 17:31:20 +02:00
twinaphex d24c1a280d input_poll - avoid function call 2016-10-22 17:29:19 +02:00
twinaphex 671f9cc8cc retro_input_t can go now 2016-10-22 17:03:59 +02:00
twinaphex e2b16a1f15 Use straight uint64_t types for input states 2016-10-22 17:03:20 +02:00
twinaphex ba6ae50e70 Revert "input_keys_pressed - start splitting up big for loop into"
This reverts commit a564ac0701.
2016-10-22 16:23:16 +02:00
twinaphex a564ac0701 input_keys_pressed - start splitting up big for loop into
optimized smaller parts
2016-10-22 07:05:19 +02:00
twinaphex 4d002ec682 Don't have to grab this 2016-10-22 06:33:15 +02:00
twinaphex 6226abb3f8 (input_driver.c) Small cleanups 2016-10-22 06:05:05 +02:00
twinaphex 8fbec2348e Move turbo button code to input_poll (should verify if
turbo buttons still work up to this point)
2016-10-22 06:00:42 +02:00
twinaphex 9d3228e523 More translatable strings 2016-10-22 04:57:46 +02:00
twinaphex d6db2fe227 Change some strings 2016-10-22 04:52:46 +02:00
twinaphex e2de11a698 Cleanup some more strings 2016-10-22 04:23:40 +02:00
twinaphex 88738b4ef5 Don't need to do analog dpad code for input_keys_pressed 2016-10-21 22:37:49 +02:00
twinaphex ee8176772d Move state tracker nput code to input/input_driver.c 2016-10-21 22:19:35 +02:00
twinaphex aa795a9238 input_keys_pressed - small cleanup 2016-10-21 22:04:20 +02:00
twinaphex 6b30c41595 Simplify input_keys_pressed 2016-10-21 21:12:12 +02:00
twinaphex 87fb7738f7 Cleanups 2016-10-20 03:42:57 +02:00
twinaphex e85fca7b75 input_state and input_keys_pressed - prevent some more
function calls
2016-10-20 03:39:32 +02:00
twinaphex 5eb5195169 input_keys_pressed - get rid of unnecessary for loop 2016-10-20 03:10:36 +02:00
twinaphex 4a56ed618a Simplify input_keys_pressed 2016-10-20 02:39:45 +02:00
twinaphex 6746b06e73 input_driver_keys_pressed - merge into input_keys_pressed 2016-10-20 02:24:45 +02:00
twinaphex f08609361e input_keys_pressed - prevent extraneous leaf function calls 2016-10-20 02:22:48 +02:00
twinaphex 546dd0422f Don't call extraneous functions inside input_keys_pressed 2016-10-20 02:20:40 +02:00
twinaphex 4b807b482f Create runloop_poll 2016-10-20 02:17:17 +02:00
twinaphex a4a1e96210 Prevent more implicit memsets 2016-10-16 01:40:29 +02:00
twinaphex b2dcd44c3a (input_driver.c) Prevent implicit memsets 2016-10-16 01:20:50 +02:00
Romain Graillot a64e497189 Renamed new settings to match change & cleaned code 2016-10-15 13:38:42 +02:00
Romain Graillot ade4e7857b Add possibility to switch touch surface on vita build 2016-10-15 13:28:35 +02:00
Francisco José García García 1ea5a80d02 (VITA) Add Backtouch enable option 2016-10-14 21:57:18 +02:00
twinaphex 80339014a5 (input_config.c) Prevent implicit memsets 2016-10-09 08:58:44 +02:00
twinaphex 119479f705 (input_autodetect) Don't do implicit memsets of char variables 2016-10-09 08:55:17 +02:00
twinaphex 37f3942985 (Vita) Hook up L3/R3 in autoconfig 2016-10-07 08:24:48 +02:00
Twinaphex db8eb903aa Merge pull request #3737 from frangarcj/master
(VITA) Disable Back Touch if in menu
2016-10-05 02:00:40 +02:00
Twinaphex 183dc914c4 (Cocoa) Add stub scrollWheel callback 2016-10-05 02:00:11 +02:00
Francisco José García García d32bd63d3d (VITA) Disable Back Touch if in menu 2016-10-05 01:34:26 +02:00
twinaphex 39fd6560f6 (input_autodetect.c) Cleanups 2016-10-04 10:40:37 +02:00
twinaphex 7d06e6c48f Use string_is_equal instead of strncmp 2016-10-04 10:18:17 +02:00
twinaphex 72caa55e7b Cleanup input_autodetect.c 2016-10-04 10:16:52 +02:00
twinaphex b3d4fe398b autoconfig should be fixed now for XInput - wrong binds 2016-10-04 08:21:32 +02:00
twinaphex 8b889084f6 Get rid of ret variable 2016-10-04 07:41:58 +02:00
twinaphex f8d64b703e Simplify input_autoconfigure_joypad_from_conf_internal 2016-10-04 07:39:41 +02:00
twinaphex c2bb410d8d Take out HAVE_BUILTIN_AUTOCONFIG - always include it 2016-10-04 07:33:57 +02:00
Sunguk Lee 8d09e0d421 (Vita) Improve vibration values
- Can vibrate both motors at same time
- DS3 & DS4 have difference motor speed range
- Clear vibration settings at disconnect controller
2016-10-03 18:03:20 +09:00
twinaphex 91b1889873 (X11) Mouse input is no longer registered when we are on the
titlebar of the window or we are no longer inside the window
2016-10-03 06:50:00 +02:00
Francisco José García García 59d13c7131 (VITA) Fix actuator 2016-10-02 14:02:37 +02:00
twinaphex d376ea0c9d Merge fixes 2016-10-01 08:24:02 +02:00
twinaphex 8f163e6972 Revert "Move global->name to paths.c"
This reverts commit 6ee7b733aa.
2016-10-01 08:18:23 +02:00
twinaphex 4567fdef52 Take out libretro_device from global struct 2016-10-01 06:22:57 +02:00
Sunguk Lee bd9db4ac55 (Vita) Back touch screen use L2/R2/L3/R3 2016-10-01 04:53:35 +09:00
Twinaphex ded68451ce Merge pull request #3697 from d3m3vilurr/vita-extend-input
(Vita) Improve controller features of PSTV
2016-09-30 19:33:04 +02:00
Sunguk Lee 90678dd3de (Vita) Autodetect connection of controllers on PSTV 2016-10-01 02:26:28 +09:00
Sunguk Lee a2d9ca3e47 (Vita) Support L2/R2 on PSTV 2016-09-30 23:53:13 +09:00
twinaphex 6ee7b733aa Move global->name to paths.c 2016-09-30 06:11:11 +02:00
twinaphex 9384875ab0 Don't use HAVE_NETPLAY any more 2016-09-29 21:07:10 +02:00
twinaphex d9d388a8fe linuxraw_joypad.c - cleanup 2016-09-25 15:11:48 +02:00
twinaphex 3f35e10014 Solve some warnings pointed out by scan-build 2016-09-25 05:55:55 +02:00
twinaphex 49a9f189e9 Prevent divide by zero 2016-09-24 17:08:46 +02:00
twinaphex 7fdc38bf30 Prevent null pointer dereference 2016-09-22 21:57:55 +02:00
twinaphex e8deea65a9 Remove unused variable 2016-09-22 21:55:54 +02:00
twinaphex f6a5e4d8eb Remove unused variable 2016-09-22 21:52:17 +02:00
twinaphex 7dcf9dfa75 (libusb) Silence warning 'value stored to 'adaptor' is never read 2016-09-22 21:49:59 +02:00
radius 55b865d375 remove this pad, the pad is named Standard Gamepad 2016-09-21 21:41:36 -05:00
twinaphex 6a02cf174e udev_input_poll - add early return in case udev is NULL 2016-09-18 20:32:16 +02:00
Francisco José García García 16257d58ef Add up to 4 players 2016-09-17 14:22:45 +02:00
Francisco José García García 16de70a9d9 Update psp_joypad.c 2016-09-17 14:19:26 +02:00
twinaphex 9ee5931c5e Nits 2016-09-14 23:37:20 +02:00
twinaphex 3247de9afa Cleanup 2016-09-12 18:39:46 +02:00
twinaphex 93d98069b2 Cleanups 2016-09-12 16:45:26 +02:00
twinaphex 29c05599a3 Cleanup enum 2016-09-11 17:37:05 +02:00
twinaphex b93ef046a7 Header include cleanups 2016-09-11 16:31:23 +02:00
twinaphex 51b0e61712 Cleanups 2016-09-11 16:24:02 +02:00
twinaphex 9d9471413d (Emscripten) Buildfix 2016-09-11 15:24:33 +02:00
twinaphex 7ddd03c558 Fix dinput/xinput 2016-09-11 15:08:07 +02:00
twinaphex c97aa5e7ea header include cleanups 2016-09-11 14:59:18 +02:00
twinaphex 012e069f86 Get rid of general.h includes 2016-09-11 13:21:56 +02:00
twinaphex 74c186c184 Cleanups 2016-09-08 08:08:50 +02:00
twinaphex 642e46779b Cleanups 2016-09-06 23:59:43 +02:00
twinaphex 075aea2289 Header include cleanups 2016-09-06 00:56:00 +02:00
twinaphex d4122806ab (Android) Buildfix 2016-09-05 18:34:21 +02:00
twinaphex acd4dd527b Header include cleanups 2016-09-05 18:31:32 +02:00
twinaphex 4571dc33fc header include cleanups 2016-09-05 17:29:19 +02:00
radius f0485db137 Gamepad is named like this in emscripten 2016-09-03 22:21:10 -05:00
Brad Parker a17679a0c5 add input option to allow any user to control the menu 2016-09-03 19:01:29 -04:00
Twinaphex f5a4b402d7 (OSX) Fix some crashes that could occur 2016-09-03 23:27:53 +02:00
Brad Parker 0eb1777a1f remove extra semicolons 2016-09-03 10:30:21 -04:00
twinaphex f93047145d Use SN_TARGET_PSP2 ifdef too 2016-09-03 07:41:56 +02:00
twinaphex 88eea511db Remove if 0 blocks 2016-09-03 07:40:57 +02:00
twinaphex 429165e966 Combine autoconfig builtin files into one 2016-09-03 07:39:26 +02:00
twinaphex 7ee6b9f466 Add TODO/FIXME note 2016-09-03 07:05:25 +02:00
twinaphex 9df9b79869 Add builtin_sdl2 2016-09-03 07:02:17 +02:00
twinaphex 1d06344567 (Vita) silence warning - RETRO_RUMBLE_DUMMY not handled in switch 2016-09-01 22:28:31 +02:00
twinaphex 8e8ff95139 input_keyboard.c - add stdlib.h 2016-09-01 18:51:22 +02:00
twinaphex 9806dec502 C89_BUILD buildfix 2016-09-01 18:22:29 +02:00
twinaphex 467451fccc Cleanup more header includes 2016-09-01 18:18:55 +02:00
twinaphex 20f7d82f95 More header include cleanups 2016-09-01 18:07:44 +02:00
twinaphex 6efdfdebd4 (PSP) Rumble code should be only for Vita build 2016-09-01 17:09:54 +02:00
twinaphex 9037473c7e Header include cleanups 2016-09-01 05:51:08 +02:00
twinaphex c8d5381779 header include cleanups 2016-09-01 05:48:20 +02:00
twinaphex 19f352371d Remove more header includes 2016-09-01 05:40:57 +02:00
Francisco José García García e3b5fdd815 (VITA) Add vibration for PSTV 2016-08-30 14:29:19 +02:00
twinaphex ba7d638b99 Use string_is_equal 2016-08-29 18:46:41 +02:00
radius 90f5a2730a remove these two duplicated lines 2016-08-27 11:15:58 -05:00
Alcaro ba6796b98f Kill some warnings 2016-08-26 18:33:03 +02:00
twinaphex 81e76ca5e7 (MSVC 2003) Buildfixes 2006-01-17 06:28:35 +01:00
twinaphex b5a636f22b (Vita) Prevent unused variable 2016-08-10 23:17:47 +02:00
twinaphex 30c847cc10 (PSP/Vita) Cleanup 2016-08-08 17:16:02 +02:00
Francisco José García García d0f96ed535 (VITA) Small fix 2016-08-08 17:12:52 +02:00
Francisco José García García 8dde35f221 (VITA) Final Fix for controls 2016-08-08 17:10:52 +02:00
Francisco José García García 351b3fe3f6 (VITA) Workaround for PSVita Controls vs PSTV 2016-08-08 12:56:30 +02:00
twinaphex ef6fb9b855 (Vita) Fix 2016-08-08 01:24:54 +02:00
twinaphex 8d47b30a67 Another cleanup 2016-08-08 01:23:48 +02:00
twinaphex 10e35d4d75 Small cleanup 2016-08-08 01:21:20 +02:00
twinaphex ecc625dbf1 (Vita) Implement multiplayer hack 2016-08-08 01:19:16 +02:00
twinaphex 80b82606d4 This is the same now 2016-08-07 20:35:40 +02:00
Francisco José García García ab9b2f5998 (VITA) Add PSTV two players mode 2016-08-07 20:15:43 +02:00
twinaphex 24817aeeac (Vita) Autoconfigure gamepads 2016-08-07 17:22:34 +02:00
twinaphex 33a1a70aa8 (Vita) Try this 2016-08-07 17:18:55 +02:00
twinaphex cc1d579036 (Vita) psp_input_state - Don't early return if port is higher than 0 2016-08-07 16:29:58 +02:00
twinaphex 3964dfc2de (PSP/Vita) Refactors 2016-08-07 14:55:47 +02:00
twinaphex 632cc0ef6c (Vita) Start setting up Vita for multiplayer 2016-08-07 14:52:41 +02:00
twinaphex 5dc4a730d2 (Xenon 360) Get rid of lifecycle_state 2016-08-02 17:05:58 +02:00
twinaphex 9e2925ea23 Start dehardcoding PSP joypad for only one gamepad - multiple
gamepads could maybe be used on PS TV
2016-08-02 17:04:00 +02:00
twinaphex 64d6e0facf (Vita) Implement proper gamepad menu toggle combo for Vita, and remove
old hack
2016-08-02 16:48:54 +02:00
twinaphex d77dd4f0d3 Add enums for gamepad menu toggle combos 2016-08-02 16:45:50 +02:00
dalter fffe1d099c Fix imput in RetroArch menu 2016-07-31 17:56:40 +03:00
Andrés c5ee5caf8a fix missing parenthesis 2016-07-28 00:05:57 -05:00
Andrés 6c14477bce Fix remote server in windows 2016-07-27 23:31:52 -05:00
twinaphex b9aa9a6b1e Fix namespace conflicts 2016-07-27 21:28:33 +02:00
Sebastien Ronsse 2a2b18b507 input remote: Add analog device parsing 2016-07-27 20:15:49 +10:00
Sebastien Ronsse 46284b6a93 input remote: Update server-side input processing 2016-07-27 18:39:37 +10:00
twinaphex 58c425ef19 Revert "Refactor settings"
This reverts commit afcc9657d2.
2016-07-25 12:30:41 +02:00
twinaphex afcc9657d2 Refactor settings 2016-07-25 11:59:38 +02:00
twinaphex 7dfca3208c We shouldn't flush 2016-07-23 05:52:24 +02:00
twinaphex e69855880d Autoconfig message should always appear on top of FPS display 2016-07-19 18:32:54 +02:00
twinaphex adace9f27b Make some messages no longer get stuck 2016-07-19 18:25:08 +02:00
radius bd3f6d6dfb fix disk next/prev hotkeys 2016-07-17 23:47:44 -05:00
twinaphex 092ca463d2 Only use extern C for C++ builds 2016-07-16 19:43:07 +02:00
twinaphex eb77f99e1e (Windows) Finally properly 'swallows' event when doubleclicking on titlebar 2016-07-16 18:09:21 +02:00
twinaphex ce6f3f955c Doubleclick on titlebar should no longer trigger button press
in RA window
2016-07-16 17:56:07 +02:00
twinaphex 616b9f7471 (Win32) Test 2016-07-16 17:44:21 +02:00
Alcaro f5881c17ef Use the same format as in the autoconfigs 2016-06-30 22:06:51 +02:00
Alcaro 10e0411b21 Thanks Coverity, but no, this one cannot be null. 2016-06-30 16:10:58 +02:00
radius a1cf6f29f4 fix map and remove stray printf 2016-06-29 12:23:26 -05:00
radius 298b753e41 fix button map 2016-06-29 09:58:27 -05:00
twinaphex b8ac629fbf Get rid of dereference before null check warning 2016-06-29 12:19:23 +02:00
twinaphex 2a9bf91e0d Use MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE 2016-06-29 02:40:05 +02:00
twinaphex fa7eb9d8c8 Create file_path_str FILE_PATH_NUL 2016-06-28 11:10:30 +02:00
Twinaphex a68a33c559 Remove unused variable 2016-06-27 06:43:47 +02:00
twinaphex 465ac5707c Add HAVE_NETWORKGAMEPAD 2016-06-27 06:38:47 +02:00
twinaphex eea287d156 (BTStack HID) Create HAVE_DYNAMIC ifdefs 2016-06-27 01:11:49 +02:00
twinaphex e0114e08ba Add type to retro_input_t 2016-06-25 09:05:56 +02:00
twinaphex 3dff698644 Turn retro_input_t into struct 2016-06-25 09:04:00 +02:00
twinaphex 114cc081aa Avoid warning 'variable may be used uninitialized' 2016-06-20 02:45:07 +02:00
twinaphex 7c904d47c2 Cleanups 2016-06-11 21:51:28 +02:00
twinaphex cf996f724e Rename HAVE_NETWORK_GAMEPAD to HAVE_NETWORKGAMEPAD - and
don't bake it in for the C89 build
2016-06-07 15:23:07 +02:00
twinaphex afe67ca254 C89/C90 don't support bitfields on uint8_t - work around this 2016-06-07 14:47:54 +02:00
twinaphex d44062d841 Make HAVE_HID completely optional 2016-06-07 03:01:33 +02:00
twinaphex b87bbc7f98 Use retro_common_api.h 2016-06-05 05:31:55 +02:00
twinaphex 5230aeb9d0 Use retro_common_api.h 2016-06-03 06:02:49 +02:00
twinaphex 7ce2ac082a Use retro_common_api.h 2016-06-03 05:54:21 +02:00
twinaphex d8b3597455 menu_cbs_deferred_push.c - Fix 'array compared against 0' 2016-06-02 20:51:27 +02:00
twinaphex 280eb95b9a Prevent logically dead code warning 2016-06-01 05:31:05 +02:00
twinaphex a98616b45b Fix explicit NULL dereferenced/dereference before null check warnings 2016-05-26 17:47:21 +02:00
twinaphex 142dd82067 (input_overlay.c) Prevent dereference after null check 2016-05-26 17:35:46 +02:00
twinaphex 2f7684c743 (Android) Cleanups 2016-05-25 16:03:32 +02:00
radius b6b2fdfaa6 comment out xbox 360 & dualshock hacks that are not needed anymore, friendly labels can be applied on the autoconf files instead 2016-05-25 00:47:01 -05:00
twinaphex 40023833e0 (IOHIDManager) Plug another potential leak 2016-05-25 02:35:13 +02:00
twinaphex f7ff1c66c4 Don't need to include this header anymore 2016-05-25 00:58:12 +02:00
twinaphex cd176d0737 Remove input_overlay_init 2016-05-25 00:57:58 +02:00
twinaphex ae0da06d8f Make input overlay state a part of struct input_overlay 2016-05-25 00:47:24 +02:00
twinaphex 5a4ada4311 Avoid some warnings by using return value for config_get_int 2016-05-24 23:53:35 +02:00
twinaphex 25eaab0a2b Start passing input_overlay_t * state around to other functions 2016-05-24 23:15:19 +02:00
twinaphex bfa6f49ae6 Fix logically dead code warnings 2016-05-24 22:12:51 +02:00
twinaphex 5656959085 Free overlay_ptr 2016-05-24 15:30:18 +02:00
twinaphex 160ac49089 (input_overlay.c) Cleanup 2016-05-24 15:29:12 +02:00
twinaphex fd7e2cd394 input_overlay_new - Call input_overlay_free from outside 2016-05-24 15:25:46 +02:00
Twinaphex c1e82d3f1a (IOHidManager) Fix adapter leak 2016-05-24 14:01:46 +02:00
twinaphex 4e74a990d4 (IOHIDManager) Free some resource leaks 2016-05-24 13:48:02 +02:00
twinaphex d5d2f7f8ee Fix resource leaks 2016-05-23 22:17:28 +02:00
twinaphex 974d3245d2 Fix logically dead code warnings 2016-05-23 22:04:00 +02:00
twinaphex 69759f5fd7 Remove logically dead code 2016-05-23 21:55:30 +02:00
twinaphex faef7b498d (Coverity) Fix some resource leaks 2016-05-23 21:28:43 +02:00
twinaphex 0a3224180b (Coverity) Fix uninitialized variables; fix some resource leaks 2016-05-23 21:19:28 +02:00
twinaphex 6c840cdd59 (input_autodetect.c) Use dir_list_new_special 2016-05-21 13:31:41 +02:00
Twinaphex 1f7c51b458 (QNX) more build fixes 2016-05-19 20:14:58 +02:00
Twinaphex 85331042be (QNX) Build fixes 2016-05-19 20:02:39 +02:00
twinaphex 7e36dcb27f move video_texture_image to libretro-common and rename it to image_texture.c 2016-05-18 12:58:00 +02:00
twinaphex 5845a9944d Add more HAVE_THREADS ifdefs 2016-05-11 19:02:43 +02:00
twinaphex 4a7ab8366b Move libretro.h headers to libretro-common/include 2016-05-10 19:03:53 +02:00
twinaphex b79b2dca13 Create performance_counters 2016-05-10 08:53:14 +02:00
twinaphex 3dc55d4e72 command.c - cleanups 2016-05-09 21:36:17 +02:00
twinaphex b3422b33fd Add parameter to command_new 2016-05-09 21:25:37 +02:00
twinaphex f15f28ce02 Refactor some command code 2016-05-09 21:23:53 +02:00
twinaphex 2691ab0c7d Rename command_event enums 2016-05-09 20:51:53 +02:00
twinaphex 523ebed112 Combine command_event.c and command.c 2016-05-09 20:30:47 +02:00
twinaphex a98ef36d36 Rename event_cmd_ctl to command_event 2016-05-09 20:20:50 +02:00
twinaphex 3c74031c2f Rename rarch_cmd to command 2016-05-09 20:10:08 +02:00
twinaphex 344d1bf949 move remote.c to input/ 2016-05-09 17:37:29 +02:00
twinaphex 685b234350 (remote.c) Rename functions 2016-05-09 07:19:18 +02:00
twinaphex f8a7154557 Rename rarch_ functions 2016-05-09 07:09:26 +02:00
twinaphex e07bba66f3 Buildfix 2016-05-08 23:52:05 +02:00
twinaphex 725c202498 Remove input_driver_ctl 2016-05-08 23:12:04 +02:00
Hans-Kristian Arntzen 8870e85395 More fixes for menu_display_ctl.
Grep shows nothing now.
2016-05-08 14:18:12 +02:00
Hans-Kristian Arntzen 66c4f608e6 Clear out rest of video_driver_ctl use. 2016-05-08 14:10:28 +02:00
Hans-Kristian Arntzen d723411436 De ioctl video_driver. 2016-05-08 14:00:51 +02:00
twinaphex 80a453bad1 De-ioctlify command.c 2016-05-08 00:25:04 +02:00
twinaphex 4ec6cb47ec Use BIT32_SET 2016-05-06 05:16:15 +02:00
twinaphex cce9190cb2 More cleanups 2016-05-06 04:51:00 +02:00
twinaphex 72bc5e134a Cleanup input_config_autoconfigure_joypad 2016-05-06 04:50:02 +02:00
twinaphex f1098d8f6a Style nit 2016-05-01 20:50:26 +02:00
Diablodiab 58c5cc6f46 Change ALooper_pollAll in android_input_poll from a non blocking call into a 1 ms
blocking call. For some reason this allows more input events to queue up in the
input queue for processing making it easier to press multiple gamepad buttons and
have it register within a single frame.
2016-04-29 00:42:09 +02:00
twinaphex 6db13ab51d (udev) cleanup 2016-04-28 22:50:02 +02:00
twinaphex 48eb86cb47 (Win32) Buildfix 2016-04-28 20:52:30 +02:00
twinaphex 895783d854 Move some variables 2016-04-28 20:49:13 +02:00
twinaphex 7dffc6286b Internally change directory settings 2016-04-28 19:26:02 +02:00
twinaphex 4f2d1d7c93 Silence warning 'val may be unused uninitialized in this function' 2016-04-21 07:22:26 +02:00
twinaphex 0f21ab247c header cleanup 2016-04-17 07:37:00 +02:00
twinaphex 97d5a971a4 Change header includes 2016-04-17 07:34:01 +02:00
twinaphex 811a2d1419 Create input_defines.h 2016-04-17 07:32:08 +02:00
Ernesto Ramirez c4f2de321a (GX) Added PS2/PSX Controller Adapter for HID driver. 2016-04-16 19:33:17 -05:00
twinaphex 89d896339c Don't need to include system.h 2016-03-24 03:47:22 +01:00
twinaphex d04940a159 (input_keyboard.c) Refactor more functions into static functions 2016-03-24 03:45:16 +01:00
twinaphex ce9573e4c3 Create RARCH_INPUT_KEYBOARD_CTL_LINE_FREE 2016-03-24 03:36:38 +01:00
twinaphex 69bcac61dd input_hid_driver.h - cleanups 2016-03-23 06:54:37 +01:00
twinaphex 76d06c89ca Make some functions static 2016-03-23 06:53:19 +01:00
twinaphex 8f7f40b86c Move more functionality to input_keyboard_ctl 2016-03-23 06:44:00 +01:00
twinaphex 56c47bbe56 Change input_driver_ctl calls to input_keyboard_ctl 2016-03-23 06:19:33 +01:00
twinaphex 2fee5edba4 Move linefeed enable enums to input_keyboard.c 2016-03-23 06:18:09 +01:00
twinaphex 92d2765157 Create input_keyboard_ctl 2016-03-23 06:11:39 +01:00
twinaphex 61bae588fb Header include changes 2016-03-22 02:45:25 +01:00
twinaphex ac6362cae4 Combine list_special files 2016-03-20 17:28:24 +01:00
twinaphex 93b7dc1bdd (libretro-common) move 'lists' files to lists/ 2016-03-20 14:53:54 +01:00
twinaphex ef4a1a3c0f (libretro-common) Rename fifo_buffer to fifo_queue 2016-03-20 14:06:21 +01:00
twinaphex 8b4a41155d C89_BUILD buildfixes 2016-03-20 05:24:05 +01:00
twinaphex a446f9040b Push these updates 2016-03-18 00:32:57 +01:00
twinaphex 2e080967b0 Reimplement grab mouse code a bit - we really need to drastically
rewrite this
2016-03-14 14:37:18 +01:00
radius f41280e82c [remapping] fix saving for players other than 1 2016-03-06 13:15:05 -05:00
twinaphex 15c9e0ae7e Add fallback 2016-03-06 01:31:46 +01:00
twinaphex 5e99d163de Puti n call to input_keyboard_event when compiling without HAVE_XKBCOMMON 2016-03-05 22:18:22 +01:00
twinaphex 81e13aa2c1 (command.c) Cut down on some functions 2016-03-04 17:35:44 +01:00
twinaphex 6f80e09ce1 Change MIN/MAX to upper-case 2016-03-02 00:07:31 +01:00
twinaphex c14e281544 (Win32) Buildfix 2016-02-26 22:45:30 +01:00
twinaphex 0f8f980c8f Start reimplementing Zarch joypad input 2016-02-26 22:29:10 +01:00
Twinaphex 33356f2df6 (OSX) Buildfix 2016-02-26 13:40:29 +01:00
radius 66a8e08252 remove saving remapping, use the automated method instead 2016-02-21 13:55:04 -05:00
radius 8f41174fca remove btn/axis identifier when no descriptor was available 2016-02-15 22:54:28 -05:00
radius e97de06f24 add a fallback for cases when an autoconf is present but it doesn't have descriptors 2016-02-15 22:48:35 -05:00
twinaphex bdbd3098dd Style nits 2016-02-15 07:16:09 +01:00
twinaphex f1a572822b Create RARCH_DISPLAY_CTL_VIEWPORT_INFO 2016-02-14 05:42:27 +01:00
twinaphex 6d8ee1f8d4 Remove input_driver_data_ptr_is_same 2016-02-13 07:40:02 +01:00
twinaphex 016ee293cd Remove input_driver_grab_mouse 2016-02-13 07:38:09 +01:00
twinaphex 24bafd7ab9 Create RARCH_INPUT_CTL_GRAB_MOUSE 2016-02-13 07:36:45 +01:00
twinaphex ac31eeb360 Cleanups 2016-02-13 07:29:02 +01:00
twinaphex 3393a32547 Cleanup 2016-02-13 07:27:22 +01:00
twinaphex 954c5a86f6 Add rarch_cmd_ctl 2016-02-13 07:19:21 +01:00
twinaphex 3a6484d0ad Change input_driver_ctl default return values 2016-02-11 01:44:39 +01:00
Twinaphex 259ac2ddbd Merge pull request #2710 from fr500/master
save only modified values when saving remaps
2016-02-10 05:46:17 +01:00
radius 80845f1cd6 save only modified values when saving remaps 2016-02-09 23:39:16 -05:00
twinaphex ce2869b4d8 Create tasks_internal and split up RA-specific task code to outside 2016-02-09 17:12:39 +01:00
twinaphex e86bd1b021 Cleanups 2016-02-09 05:11:40 +01:00
radius 67a68c0595 save libretro device and analog dpad mode with remap files 2016-02-08 16:06:54 -05:00
Diablodiab 84b6b505ad Fix crash when defining gamepad keys 2016-02-08 01:53:33 +01:00
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
twinaphex 88d0b94ab2 input_poll - do direct poll call 2015-11-30 08:15:54 +01:00
twinaphex 63bce5fd5a (input_driver.c) Uniquely namespace static variables 2015-11-30 07:36:27 +01:00
twinaphex 21a9bd13a6 (input_overlay.c) Cleanups 2015-11-30 04:47:41 +01:00
twinaphex fc85cc46d1 Fix CXX_BUILD 2015-11-30 03:32:34 +01:00
twinaphex 871713dd9d Move driver->keyboard_linefeed_enable to input_driver.c 2015-11-30 03:23:35 +01:00
twinaphex d4e88324ac Move driver->osk_enable to input_driver.c 2015-11-30 03:14:26 +01:00
twinaphex 5b6641b077 (linuxraw_input.c) Remove unused driver reference 2015-11-30 02:50:10 +01:00
twinaphex 805735c958 (input_driver.c) Cleanups 2015-11-29 22:43:12 +01:00
twinaphex d15ad86705 Create hid_driver_get_data 2015-11-29 21:11:57 +01:00
twinaphex df9f0fc6d1 Move input_data_own to input_driver.c 2015-11-29 20:34:35 +01:00
twinaphex d181870caa No more dependency on driver_t for driver->input 2015-11-29 19:18:59 +01:00
twinaphex 7a6f444823 No more references to driver->input from outside 2015-11-29 19:07:02 +01:00
twinaphex c96312ad04 input_keys_pressed - cleanup 2015-11-29 19:01:10 +01:00
twinaphex 83ba8f0545 (input_driver.c) Cleanups 2015-11-29 18:59:49 +01:00
twinaphex 5e1b2b3bfa Move driver->input_data to input_driver.c 2015-11-29 18:18:25 +01:00
twinaphex 1c867cedf0 Move nonblock_state to input_driver.c (NOTE: we probably need
to relocate this later on)
2015-11-29 17:53:11 +01:00
twinaphex e8d6e48a74 Remove unused variables 2015-11-29 17:34:31 +01:00
twinaphex 6fd6288337 Move block_libretro_input to input_driver.c 2015-11-29 17:33:29 +01:00
twinaphex 253649b0cf Move flushing_input to input_driver.c 2015-11-29 17:23:30 +01:00
twinaphex 23d63d0b5a Move block_hotkey to input_driver.c 2015-11-29 17:12:38 +01:00
twinaphex 178e52bca5 Move turbo_btns to input_driver.c 2015-11-29 17:10:03 +01:00
twinaphex 9a743ec357 Create input_driver_key_pressed 2015-11-29 16:45:38 +01:00
twinaphex dc7e8bc52b Cleanup android_joypad_query_pad 2015-11-29 16:35:51 +01:00
twinaphex 53277e3b1c Remove more HAVE_COCOA ifdefs 2015-11-29 16:28:55 +01:00
twinaphex eaa98dafc0 Fix header 2015-11-29 16:27:11 +01:00
twinaphex abae213b6b (keyboard_event_apple.c) Remove drivers/cocoa_input.h header include 2015-11-29 16:26:40 +01:00
twinaphex d018f65e95 Rename cocoa_input_keyboard_event 2015-11-29 16:26:13 +01:00
twinaphex 025d2c6328 (Android) Cleanups 2015-11-29 16:20:04 +01:00
twinaphex 2d455d78b3 Move inptu state to android_joypad.c 2015-11-29 16:18:29 +01:00
twinaphex f1fe78eb1a (cocoa_input.c) Include header 2015-11-29 15:52:37 +01:00
twinaphex 2deeb36a81 Rename apple_keycode.h 2015-11-29 15:50:27 +01:00
twinaphex 9d3a8c3815 (Apple) Buildfix #2 2015-11-29 15:47:05 +01:00
twinaphex 99cc4c59c3 (Apple) Buildfix 2015-11-29 15:46:01 +01:00
twinaphex bc748951c6 Start no longer having dependencies on apple input data for
keyboard_event_apple.c
2015-11-29 15:44:21 +01:00
twinaphex dff44d8d49 (udev) split up keyboard code to separate files 2015-11-29 15:35:34 +01:00
twinaphex 6c7da0e503 (udev) Change function signature of callback 2015-11-29 06:34:35 +01:00
twinaphex 9fd9fd10e8 Create input_x11_common 2015-11-29 03:34:09 +01:00
twinaphex 127448f848 Use video_driver_window_get 2015-11-29 01:39:28 +01:00
twinaphex 0044d853f8 Move display_type / display_window etc all to gfx/video_driver.c -
no more dependencies on driver_t
2015-11-29 01:12:49 +01:00
Twinaphex 3001729545 Revert "Go through input_driver_get_data_ptr whenever we need input data"
This reverts commit 52c9a2ec43.
2015-11-28 18:58:33 +01:00
twinaphex 52c9a2ec43 Go through input_driver_get_data_ptr whenever we need input data
state
2015-11-28 18:51:12 +01:00
twinaphex 7856c4e940 (Android) Cleanups 2015-11-28 18:39:43 +01:00
twinaphex b06d08a32e Remove some references to driver->input_data 2015-11-28 18:33:59 +01:00
twinaphex 3b903adea1 Don't try to access driver->input_data from outside 2015-11-28 18:26:05 +01:00
twinaphex be71e654f3 Create input_driver_get_data_ptr 2015-11-28 18:22:05 +01:00
twinaphex ed71129ee6 Create RARCH_INPUT_CTL_HAS_CAPABILITIES 2015-11-28 17:54:50 +01:00
twinaphex c23846c5dc Merged input_joypad.c and input_joypad_driver.c 2015-11-28 16:22:49 +01:00
twinaphex 1df5d44bdb Rename input/keyboard_line 2015-11-28 16:13:16 +01:00
twinaphex 68169f9ac3 Rename input_get_bind_string_* functions 2015-11-28 16:06:14 +01:00
twinaphex a3c34a7813 Cleanups 2015-11-28 02:31:19 +01:00
twinaphex 0bce3a9cec Rename some more input_config functions 2015-11-28 02:26:57 +01:00
twinaphex a6ccc188a8 Rename input_common.c to input_config.c 2015-11-28 02:22:58 +01:00
twinaphex 70d782b94a Rename functions to fit input_config_ naming convention 2015-11-28 02:13:27 +01:00
twinaphex 28e035ec6b Move functiosn around 2015-11-28 02:09:11 +01:00
twinaphex f4b61bd164 Make one static function 2015-11-28 02:05:15 +01:00
twinaphex 7ca0d74005 Don't expose struct in header anymore 2015-11-28 00:59:47 +01:00
twinaphex 0b0b3431b0 Go through input bind map wrapper functions 2015-11-28 00:57:57 +01:00
twinaphex 0ca0bd182b Don't expose input_bind_map outside anymore 2015-11-28 00:51:33 +01:00
twinaphex 1f5b121505 Create input_get_bind_map_base 2015-11-28 00:44:34 +01:00
twinaphex 222b9a2113 Fix CXX_BUILD 2015-11-28 00:40:11 +01:00
radius 9312b1fe33 merge with upstream 2015-11-27 18:20:35 -05:00
radius d8badc2ad8 enable polling the remote gamepads 2015-11-27 18:15:41 -05:00
radius fe9700ebda add input polling code 2015-11-27 18:08:56 -05:00
radius ac1695e7fd open different sockets per-user 2015-11-27 18:08:52 -05:00
twinaphex a8d868f187 (Android) Implement 'focused' callback for androidegl_ctx 2015-11-27 20:38:29 +01:00
twinaphex a1ecc5eee3 (Android) Some cleanups in engine_handle_cmd 2015-11-27 18:27:30 +01:00
twinaphex daeb8cacaf Set idle when APP_CMD_LOST_FOCUS 2015-11-27 00:23:47 +01:00
twinaphex cb98cbc1bf Create RARCH_INPUT_CTL_POLL 2015-11-25 20:39:46 +01:00
twinaphex df948215af Some C89_BUILD fixes 2015-11-25 19:27:33 +01:00
Twinaphex 5b8661b6b5 Merge pull request #2468 from fr500/master
add a hint so the user can tell between devices with the same name
2015-11-25 19:25:56 +01:00
twinaphex 77e4faf5ea Move code around 2015-11-25 18:53:54 +01:00
twinaphex 9643edfac7 Create RARCH_INPUT_CTL_DESTROY 2015-11-25 18:49:37 +01:00
twinaphex 73ce9c0d23 Add another RARCH_INPUT_CTL_* command 2015-11-25 18:33:18 +01:00
twinaphex 92c0907e80 Create more RARCH_INPUT_CTL_* commands 2015-11-25 18:29:28 +01:00
twinaphex 14b2b8ada7 Start creating input_driver_ctl 2015-11-25 18:21:21 +01:00
radius 3ac80f6864 add a hint so the user can tell between devices with the same name 2015-11-24 22:30:51 -05:00
twinaphex 08ae9df639 Merge input_sensor.c with input_driver.c 2015-11-25 03:29:18 +01:00
twinaphex c9db73e944 Contain driver->input_data usage pt. 2 2015-11-25 03:25:31 +01:00
twinaphex d2f771440b Contain driver->input_data usage 2015-11-25 03:15:22 +01:00
Higor Eurípedes 29e9b87319 (tasks) Make task handles honor task->cancelled 2015-11-24 22:18:09 -03:00
Twinaphex 8a5ba85c9a Cleanups 2015-11-24 20:25:31 +01:00
twinaphex f04f4c89c8 Turn another function static 2015-11-24 02:18:41 +01:00
twinaphex 1639f27f8c Turn check_block_hotkey into static function 2015-11-24 01:54:21 +01:00
twinaphex 909ee01012 Move input_state code to input_common.c 2015-11-24 01:19:48 +01:00
twinaphex 075a4891dc Buildfix/move input code around 2015-11-24 01:18:00 +01:00
twinaphex 60dd3fe8b3 Move input_data related code to input/input_common.c 2015-11-24 00:53:47 +01:00
twinaphex a3e52a9369 Put M_PI inside retro_miscellaneous.h 2015-11-24 00:05:37 +01:00
Higor Eurípedes 46ec7562c1 (overlay) Fix behavior when overlay_hide_in_menu=true 2015-11-23 17:43:37 -03:00
Higor Eurípedes 6f88ece9ab (overlay) Fix memory leak 2015-11-23 17:43:33 -03:00
Higor Eurípedes 9654fabe77 (overlay) Fix on screen keyboard 2015-11-23 17:42:01 -03:00
Higor Eurípedes 52e3b03546 Remove some uneeded prototypes 2015-11-23 17:42:01 -03:00
Higor Eurípedes a0d2bb4c7c Reimplement overlay loading with tasks 2015-11-23 17:42:01 -03:00
Alcaro 7b66b65823 Add some error messages if the null drivers are used. 2015-11-23 19:42:46 +01:00
twinaphex 389cf13db5 Don't reference driver->video_data outside of gx/video_driver.c anymore 2015-11-23 18:51:04 +01:00
twinaphex c7dc83533a Add param to video_driver_get_ptr for grabbing the nonthreaded
data state
2015-11-23 16:06:09 +01:00
twinaphex 60fec26bcf (sdl_input.c) Use video_driver_get_ident 2015-11-23 14:57:24 +01:00
twinaphex 9b41061143 Rename driver->video 2015-11-23 14:14:12 +01:00
twinaphex ee733fcd0f (input_overlay.c) Go through video_driver_get_ptr 2015-11-23 13:24:20 +01:00
twinaphex b434689d39 (Win32) Buildfixes 2015-11-23 12:14:53 +01:00
twinaphex 074f14b132 Add verbosity.c/verbosity.h 2015-11-23 12:03:38 +01:00
twinaphex 806c124eae Merge video_viewport.c and video_driver.c 2015-11-21 13:01:23 +01:00
twinaphex 5cea9e5400 Add RARCH_DISPLAY_CTL_IS_FOCUSED 2015-11-20 15:24:24 +01:00
Marco Bonardo 03f0c0339d Poll sliders in joypad dinput driver
Poll sliders position as additional axes in the directinput joypad driver
2015-11-19 02:39:50 +01:00
Twinaphex e27d533fcd (iOS/Cocoa) Try this - prefer MFi analog value over BTStack one 2015-11-18 05:37:41 +01:00
Twinaphex d399bc11e2 (MFi) Reimplement analog support 2015-11-18 04:54:08 +01:00
Twinaphex 352a8acdf5 Merge pull request #2424 from Yogarine/master
Fix rwebinput driver
2015-11-18 02:49:51 +01:00
Alwin Garside e5b0a5858a Fix rwebinput driver
input/drivers/rwebinput_input.c:
 -  rwebinput_key_pressed() was defined twice. Not sure why, but removed the first instance of it.
 -  in rwebinput_input_state() the device was hardcoded to INPUT_DEVICE_TYPE_NONE which would result in it always returning 0
2015-11-18 02:45:41 +01:00
Alwin Garside 83d63fcdd1 Merge remote-tracking branch 'libretro/master' 2015-11-18 02:12:47 +01:00
Twinaphex bcaa2f9aa7 (BTStack) Another buildfix 2015-11-18 02:12:05 +01:00
twinaphex 80d44ce333 (btstack_hid.c) Buildfixes 2015-11-18 02:11:06 +01:00
twinaphex 5edcb99b35 (btstack_hid.c) Cleanups 2015-11-18 02:06:03 +01:00
twinaphex 37d45643f9 (BTStack) Move btpad_set_inquery_state calls to btstack_hid.c 2015-11-18 01:57:45 +01:00
Alwin Garside 58748da89d Emscripten related fixes.
- audio/audio_dsp_filter.c:  append_plugs() should only be called if HAVE_DYLIB
- emscripten/library_rwebaudio.js: Performance improvements, and fallback support for browsers that don't support the Performance API. (e.g. mobile Safari)
- emscripten/library_rwebinput.js: Improve mouse handling. Still not optimal, but works with browsers that don't support mouse capturing.
- frontend/drivers/platform_emscripten.c: Added global function for easy access to certain RetroArch features from JavaScript.
- gfx/video_driver.h: Disabling HAVE_MENU incorrectly disabled set_texture_enable()
- input/drivers/rwebinput_input.c: Missing header file: "../input_joypad.h".
- Makefile.emscripten: Cleanup and make sure the appropriate functions are exported.
2015-07-17 12:46:08 +02:00
twinaphex 450c665619 Create meta_key_pressed 2015-07-17 03:31:51 +02:00
twinaphex 8162b77bae Whitelist menu_toggle key 2015-07-17 03:12:52 +02:00
twinaphex a2af5252c1 Get rid of input_driver_key_pressed 2015-07-17 03:09:12 +02:00
twinaphex f1d8f98c90 Refinement on earlier revert 2015-07-17 02:59:03 +02:00
twinaphex 63582f83b1 Revert "Optimize input_driver_keys_pressed and make it possible to"
This reverts commit 5d87c697bb.
2015-07-17 02:58:26 +02:00
twinaphex f5566cbe3b Cleanup warnings 2015-07-16 10:11:28 +02:00
fr500 ca682d38eb better shield portable hack 2015-07-16 03:22:28 -04:00
twinaphex 56f273b0b5 Put in the Nvidia Shield hack back in for Shield Portable
explicitly
2015-07-15 06:26:32 +02:00
twinaphex a6bbc31f95 (GX) Header buildfix 2015-07-14 06:14:13 +02:00
Twinaphex f2ee781e92 Merge pull request #1959 from netux79/master
Fixed nunchuk controller support, it was not correctly detected.
2015-07-14 06:03:34 +02:00
Jose Ernesto Ramirez Ramirez 09f3c3ca77 Fixed nunchuk controller support, it was not correctly detected.
Fixed classic controller's analogs, were not working at all.
Restored sixaxis controller support, now with completely rewroten library.
Changed detection order (GC, Sixaxis, Wiimote/Nunchuck/Classic, left wiimote at the end, otherwise we needed to disconnect it to be able to use GC controller or sixaxis controller.
2015-07-13 22:58:01 -05:00
radius 39e15c983b Merge branch 'master' of github.com:libretro/RetroArch 2015-07-12 15:30:09 -05:00
radius 82feadd350 fix vid/pid saving for dinput, need to add it to other drivers 2015-07-12 15:29:49 -05:00
twinaphex 5ac2ac62a3 Add dot to message end 2015-07-12 21:55:21 +02:00
radius a480ad285b simplify the OSD message a bit more 2015-07-12 14:28:39 -05:00
Twinaphex 1ff9f89e7d Merge pull request #1952 from fr500/master
Proposals
2015-07-12 21:13:01 +02:00
radius 6f9467817e Shield Fix 2015-07-12 13:56:34 -05:00
radius 26b7ccead9 add a display_name field if available so the user can know which autoconf was used 2015-07-12 13:45:17 -05:00
twinaphex 117fd48f15 Get rid of some superfluous wrapper functions 2015-07-12 11:14:41 +02:00
twinaphex 7fb1265227 (PSP/CTR) Should fix lifecycle state menu toggling 2015-07-12 10:46:20 +02:00
twinaphex 23348f41ac (GX) Menu button toggle should work again 2015-07-12 10:41:49 +02:00
twinaphex b908b1083b (input_driver.c) small micro-opts 2015-07-12 09:28:24 +02:00
twinaphex 5d87c697bb Optimize input_driver_keys_pressed and make it possible to
pass more 'keys' to the input key pressed callback than just
the standard buttons
2015-07-12 09:08:27 +02:00
twinaphex 2a881d64be Name some functions the same across drivers 2015-07-12 08:51:13 +02:00
twinaphex fbc504acfe Turn one C++ comment into C 2015-07-12 08:46:41 +02:00
twinaphex 32b3aa6b00 (Cocoa) cocoa_input.c - Simplifications 2015-07-12 08:45:12 +02:00
twinaphex c2c9ace028 Input driver's 'input_key_pressed' implementation does not
have to query for overlay state - this is done in an upper-level
function already
2015-07-12 08:39:34 +02:00
twinaphex bbc63f7e99 Fix CXX_BUILD 2015-07-12 08:08:27 +02:00
twinaphex 135ee2f503 Use UINT64_C(1) everywhere instead of 1ULL 2015-07-12 07:53:46 +02:00
twinaphex ae14d8c78a (input_overlay.c) Cleanups 2015-07-12 07:42:14 +02:00
twinaphex b3e054a946 (input_overlay.c) Turn more functions static 2015-07-12 07:32:51 +02:00
twinaphex a0b2e4881a (input_overlay.c) Some more simplifications 2015-07-12 07:28:28 +02:00
twinaphex c9814c9b12 (Overlay) Don't expose input overlay handle to outside 2015-07-12 07:22:52 +02:00
twinaphex 2dbc3c4b56 (Overlays) Cleanups 2015-07-12 07:12:33 +02:00
twinaphex 599ed62849 (Overlay) Refactor some more code 2015-07-12 07:03:39 +02:00
twinaphex 86e7f34666 Create input_overlay_key_pressed 2015-07-12 06:54:35 +02:00
twinaphex 1a4954ce55 Move more code to input_overlay.c 2015-07-12 06:47:39 +02:00
twinaphex af752ba24b (PS3) ps3_input.c - cleanup 2015-07-12 02:55:29 +02:00
twinaphex 9e61a5ebf4 (udev_input.c) Cleanup add_device 2015-07-12 02:44:53 +02:00
twinaphex 0107be2485 (GX) Refactor controls 2015-07-12 01:58:43 +02:00
twinaphex 2bdce53651 (PSP) Refactor input code 2015-07-12 01:55:51 +02:00
twinaphex 69a406809e (CTR) Refactor code 2015-07-12 01:53:32 +02:00
twinaphex 028c9b5e3c (input_overlay.c) Some more safety checks 2015-07-12 01:33:14 +02:00
twinaphex 01415528c6 (libusb) Update 2015-07-12 01:08:53 +02:00
twinaphex 2121f7a813 Create overlay->alive 2015-07-11 23:45:23 +02:00
twinaphex 5749d5e034 Rename overlay_state_ptr to overlay_st_ptr 2015-07-11 22:45:02 +02:00
twinaphex 396b08513a input_overlay_free_overlay - prevent 'free' on not malloced pointer 2015-07-11 22:07:05 +02:00
twinaphex 17024c4056 (input_overlay.c) Attemp to simplify input_overlay_load_texture_image 2015-07-11 22:03:21 +02:00
twinaphex 5fd65afae1 Have to call config_file_new at the start of every overlay function
and config_file_free at the end of every function
2015-07-11 20:49:04 +02:00
twinaphex 6e63f562ea (D3D) Buildfix 2015-07-11 19:47:20 +02:00
Twinaphex 70607acb6b Turn overlay_state_ptr into non-pointer 2015-07-11 18:22:23 +02:00
twinaphex c3f5ea0fcc Make input_overlay.h no longer depend on RPNG image 2015-07-11 08:14:39 +02:00
twinaphex 1b163e6a5a Cleanup input_overlay.c 2015-07-11 08:07:14 +02:00
twinaphex 70b423cc3e Move config_file.h dependency out of input_overlay.h 2015-07-11 07:51:34 +02:00
radius 88c4b2415d print osd messages on save 2015-07-10 23:13:37 -05:00
radius da7a75f0fb cleanup some duplicate code and make it prefer the drivername subdir if it exists 2015-07-10 22:56:44 -05:00
radius 63ce5ee4c0 make the first match work too 2015-07-10 22:36:28 -05:00
radius 0ea522585d add a function to save controller profiles 2015-07-10 20:15:14 -05:00
twinaphex 6f99b4d381 (Android) Implement 'Back As Menu Toggle Enable' setting 2015-07-11 03:13:38 +02:00
twinaphex 2f9e8b44e3 (input) Get rid of remaining unused global pointers 2015-07-10 19:08:58 +02:00
twinaphex f50751909c (QNX) Don't depend on global state for input driver 2015-07-10 18:52:23 +02:00
twinaphex 2eab572773 (CTR) Don't depend on global state in input driver 2015-07-10 18:51:04 +02:00
twinaphex 2698d4622a (PSP) Don't depend on global state in input driver 2015-07-10 18:47:56 +02:00
twinaphex 25ffeb1ed9 (Xenon) Don't depend on global state in input driver 2015-07-10 18:45:22 +02:00
twinaphex e2d510e4f6 (GX) No longer depend on global pointer in input driver 2015-07-10 18:44:11 +02:00
twinaphex b6609d576b Build fixes when HAVE_OVERLAY is not defined 2015-07-10 18:37:25 +02:00
twinaphex 8fc5c85589 Move keymaps to input drivers 2015-07-10 09:55:29 +02:00
twinaphex b501e19dc4 input_autodetect.c - cleanup 2015-07-10 09:15:55 +02:00
twinaphex 5e634a48ce (input_autodetect.c) Some C89/C90 build fixes 2015-07-10 09:06:00 +02:00
twinaphex a2c1a3e82b Buildfix 2015-07-10 07:16:21 +02:00
twinaphex feb661754b Make it look at the joypad driver's name for subdirectory instead of
the input driver's name
2015-07-10 07:05:36 +02:00
twinaphex 84066d569c Put #if 0 around unused function 2015-07-10 06:59:14 +02:00
radius 7b45800ff9 make it look in the top level directory first, if no profiles look in the driver name subdir 2015-07-09 23:51:39 -05:00
radius 15a3aa134a make it look under autoconf\drivername 2015-07-09 23:12:35 -05:00
radius 2f26eac396 declare variables on top 2015-07-09 22:54:49 -05:00
radius cec1f3408f declare variables on top 2015-07-09 22:52:52 -05:00
radius 9d268aba54 refactor input autoconfiguration to use a score system 2015-07-09 22:46:28 -05:00
radius c604b44672 add vid/pid to dinput 2015-07-09 20:39:43 -05:00
twinaphex e99a23a5e2 (Android) More cleanups 2015-07-10 00:36:46 +02:00
twinaphex dc96b4820f (Android) Cleanup android_input.c 2015-07-10 00:27:05 +02:00
twinaphex 34414b5919 Menu toggle should be properly saved now with custom bind - the
forced hack broke all sorts of behavior
2015-07-09 22:16:27 +02:00