Commit Graph

85 Commits

Author SHA1 Message Date
zeromus 5ef675c116 solve an apparent threading datastructure conflict bug in input binding vs input poll thread. print list of discovered gamepad devices while booting input system. 2013-08-25 17:11:19 +00:00
goyuken 58087b24c9 deadzones for analog bind. seems to work ok with my old ps2 controller, which has a slight lean to left on the left stick 2013-07-29 23:39:37 +00:00
goyuken 9b423d77e9 analog controller stuff should work now 2013-07-24 02:14:25 +00:00
goyuken 686960da75 more analog controller config stuff, not done yet 2013-07-24 01:38:52 +00:00
goyuken 66f4e10e9e more analog controller stuff 2013-07-24 00:08:50 +00:00
goyuken a5ec2f0f6d some xinput stuff, can't test it here 2013-07-21 21:19:51 +00:00
adelikat 55471ce891 Implement a rewind frequency option, for now it is hardcoded to 2 for SNES and similarly sized states, and 60 for n64/saturn sizes, else it is 1. TODO: some time of UI for the user to set this 2013-07-20 14:38:09 +00:00
goyuken 3169968858 analog input support. this is bad code and should all be reverted as soon as possible.
binds (along with sensitivity, deadzone, flip customization) are not supported yet.  to test out, try using the first two axes of dinput joystick #5 on N64 player #1
2013-07-18 16:18:17 +00:00
goyuken 2ea817c5d9 rework some of the controller infrastructure to be more accepting of floats
this should neither change anything nor break anything
2013-07-14 16:35:22 +00:00
adelikat 7199b64a95 More multiclient refactoring 2013-04-15 02:14:14 +00:00
adelikat 9c8b79be4b Allow Shift + another key to register as Shift and that key separately on Controller input (not hotkey input), this allows the C64 keyboard to use shift as intended 2012-12-09 01:42:47 +00:00
goyuken 39606f7a0b fix: input configuration dialogs no longer receive background input when config allow background input is off. recent regression 2012-12-08 20:08:55 +00:00
adelikat f6afda4ed8 Implemented a system for controller vs hotkey conflicts. There is now a key priority option in the config menu, either controller input can override hotkeys, hotkeys can override input, or both can happen. 2012-12-02 15:18:28 +00:00
zeromus 9053ac5b67 refine input event system and binding logic to allow more natural use of modifier keys as hotkeys 2012-11-09 20:03:59 +00:00
goyuken e13e3257c1 dispose of slimdx gamepads on program close 2012-11-09 19:21:33 +00:00
goyuken e6058e6bd8 break some stuff. FDS can eject and insert disk sides now 2012-10-26 18:51:08 +00:00
zeromus ab46a076f2 swallow exception when joystick cant be acquired, instead of crashing 2012-10-20 22:44:15 +00:00
goyuken a43d02a422 fix: console no longer gets spammed with "Reset" if you use the menu soft reset item while the emulator is paused. if you want to log reset information, do it from a more appropriate location (core?) 2012-10-17 15:20:50 +00:00
adelikat 6e7a906cf5 Controller Config - some tweaks, but input widgets aren't working, dont' know why 2012-10-01 01:55:08 +00:00
zeromus 388f62f140 dont crash if xinput isnt available. i think thats important for some reason. 2012-10-01 01:03:04 +00:00
beirich 1b43645d7e add XInput support, LT/RT are possible inputs now.
Any existing gamepad mappings are so, so very totally screwed.
2012-09-30 06:29:30 +00:00
goyuken 4fc714d0ad more generalized directinput handling.
all axes are handled as boolbuttons with hardcoded deadzones.
all boolbuttons are handled as expected.
"slider"s are not handled because i had nothing to test against.
button names for axes have changed; button names for boolbuttons have not.
2012-09-29 19:16:37 +00:00
andres.delikat faed5ba5f7 1) Autohold and Autohold Clear hotkeys, same functionality as in FCEUX and other emulators (hold the autohold hotkey then press the controller buttons you want held)
2) Ram Poke - fix poking of signed/hex values, set the signed value to the value of the address on load, other misc fixes regarding signed
3) Hex Editor - add Poke to menu/context menu and Ctrl+P hotkey
2012-09-14 21:31:00 +00:00
andres.delikat 1460f7b860 Input Config - show when a button mapping conflicts with a hotkey mapping (but still allow it) 2012-09-10 17:49:33 +00:00
peter e310e90d9f Conditionally compile Windows code, make Throttle class portable, and add dummy input/audio implementations for non-Windows
This is (almost, bar some local resource hacks) enough to start the
emulator on Linux/Mono, load a ROM and watch the demo (input and
audio don't work yet).
2012-03-12 04:44:34 +00:00
zeromus 4acbf1e584 fix some sticky input bugs hopefully without creating anymore 2011-09-11 18:05:49 +00:00
andres.delikat aba919874d Autofire - take lag frames into account 2011-08-29 03:28:34 +00:00
zeromus 35ead836d2 fix input better 2011-08-27 02:56:15 +00:00
zeromus 3420f0bc5e see if this input code is any faster 2011-08-27 01:15:57 +00:00
andres.delikat 9e9b3051a8 Remove hard coded "Backspace" hotkey mapping for nes reset (the soft reset hotkey handles reset just fine). Add Reset hotkey mapping to Reset menu item 2011-08-10 22:58:06 +00:00
andres.delikat 6f3bc27c59 Autofire is smarter now and keeps track of when a button was pressed and then uses that for the basis of the autofire pattern 2011-08-10 00:34:33 +00:00
andres.delikat cde05919ad Refactor autofire into an autofire controller. Added On & Off values that can be used to create any combination of On/Off patterns, hooked them to Global.Config values 2011-08-09 22:13:57 +00:00
andres.delikat 0d01af5c7b Refactor autofire, remove the autofire adaptor. Added an autofire bool to IController and implemented it in the Controller object. Setting to true will turn the controller buttons into autofire buttons 2011-08-08 23:35:13 +00:00
zeromus ae3b4fad83 fix reset menu item? 2011-08-04 02:47:05 +00:00
zeromus 5580295085 movie input refactoring 2011-07-24 23:14:16 +00:00
zeromus 29b2e30c36 cleanup Controller class (remove old sticky and forcing code) 2011-07-24 20:37:10 +00:00
zeromus e4f9f76198 fix ti-83 virtual keypad 2011-07-24 20:23:27 +00:00
zeromus f8f1906a3c make alt hotkeys more useful by preventing interference from windows menu system 2011-07-10 19:50:59 +00:00
zeromus 61f466ca8e fix more input stuff better 2011-07-10 07:39:40 +00:00
zeromus 2425b3c87a fix some input things 2011-07-10 06:24:04 +00:00
zeromus 4991b95def refine input stuff 2011-07-10 02:14:58 +00:00
zeromus 4ac74a20b3 fix obvious bug in last checkin 2011-07-09 23:18:13 +00:00
zeromus 9355bc0f2e redo some of client input and hotkey handling 2011-07-09 22:09:39 +00:00
beirich 2cbc50143f Input update... always run directinput in background input mode, we take care of ignoring input when application isn't focused ourselves 2011-07-08 05:15:28 +00:00
beirich 10faa8a55f Fix issues with modifier keys. If you bind "Tab", it wont be triggered by pressing "Shift+Tab". 2011-07-05 05:41:59 +00:00
beirich a3df5345f6 GetPressedKey() progress, returns keyboard with desired modifier-key properties 2011-07-04 23:36:06 +00:00
beirich 9bd1d75ba1 Implement GetPressedKey for joysticks, untested; keyboard polling is in progress 2011-07-04 20:45:05 +00:00
zeromus 0aa234282e phase 1 of fixing up controller logic. tell me how terribly ive broken the movie code. might want to fix it before moving on to phase 2 or decide to revert. 2011-06-27 05:31:46 +00:00
andres.delikat 52215061aa some implementations necessary for the gameboy controller 2011-06-27 01:24:26 +00:00
andres.delikat 685a500cc5 movie - Reset recording for the NES core 2011-06-26 18:08:27 +00:00