Commit Graph

97 Commits

Author SHA1 Message Date
Jordan Woyak 2b1af36900 Merge branch 'master' into windows-unicode 2013-03-02 15:33:32 -06:00
Matthew Parlane 99cf57eb39 Fixes two memory leaks, one is pretty bad for OSX.
Yell at pauldachz if this doesn't work.
Or... say thanks.
2013-03-01 19:21:34 +13:00
Jordan Woyak ea75577278 Use the new UTF-16 conversion function in two places. 2013-02-27 18:02:07 -06:00
Jordan Woyak ef9d7fb789 Fix compilation with SDL2. (based on a patch from matthewharveys)
Fixes issue 5971.
2013-02-05 21:08:52 -06:00
Jordan Woyak 708fed92c8 Clean up SDL includes a bit. Maybe fix an SDL2 problem. 2013-02-05 15:34:23 -06:00
Jordan Woyak f506783c37 Number "unknown" axes in OSX rather than call them all "unk". 2013-02-05 13:51:08 -06:00
Grant Paul 2f28d938cf Add support for the mouse cursor and mouse clicking events on OS X. 2013-01-17 23:32:07 -08:00
Jordan Woyak f97d2a93c4 Add "full analog surface" support in DInput,OSX,SDL backends. (should not be needed for XInput) 2013-01-17 15:41:18 -06:00
Jordan Woyak 38b01d176a Start to make possible use of "full analog surface". (useful for triggers on some silly physical gamepads) 2013-01-17 15:40:44 -06:00
Jordan Woyak 6b8dc6802b Fix two warnings. 2013-01-13 12:57:17 -06:00
Jordan Woyak 0de8fbecfa Don't hardcode left-shift to disabe keyboard input on linux.
Left-shift can be used for gamepad input now.
Fixes issue 4968.
2013-01-09 20:26:11 -06:00
skidau 5240e75be2 Fixed the infinite rumble problem caused by r4d6056f14625. 2013-01-07 12:25:18 +11:00
skidau 51603f0522 * Implemented working pedal support.
* Changed the mapping of the steering wheel to:

Main Stick Left/Right = Steer Left/Right
Main Stick Up = Accelerate
Main Stick Down = Brake

* Fixed non-force feedback controllers that were not detected
2013-01-01 13:49:22 +11:00
skidau 5ccbcf455e Added preliminary GameCube Steering Wheel emulation via a PC Force Feedback Steering Wheel. 2012-12-30 13:41:48 +11:00
Glenn Rice e85438cba0 Clean up gcc/g++ compiler warnings that have accumulated. 2012-12-10 00:40:28 -06:00
Scott Moreau 0e1348c839 Re-add hack to use SDL/SDL.h ifndef _WIN32.
The correct convention is to use #include SDL.h in all cases but we have to
do this so Externals/SDL builds, which isn't in the best shape.
2012-07-14 20:50:58 -06:00
Scott Moreau d34418100b Add periodic effects for haptic devices.
This adds support for drivers supporting sine, square and triangle
periodic haptic effects. This allows rumble to work on devices/drivers
supporting these effects, such as an xbox controller using the xpad
driver under Linux.
2012-07-12 19:47:17 -06:00
Scott Moreau 80c15f21b4 Add SDL2 support to build system.
Dolphin code already builds against SDL2 but the build system never
checks for SDL2, which is the what latest SDL is called now. SDL2
replaces SDL 1.3. This allows Dolphin to be build against SDL2, which
activates certain new features such as the haptic interface.
2012-07-12 19:47:17 -06:00
Billiard26 1974938c5a Fix DirectInput D-Pad handling. 2012-05-02 06:31:38 +00:00
Jordan Woyak b44918d1ed Merge branch 'fix-real-gcpad-sticks' 2011-12-12 23:25:32 -06:00
Jordan Woyak 09d2301fed detect input at 55% to catch silly c-stick range 2011-12-12 23:24:10 -06:00
skidau e76bc71efe Fixed the controller config so that it lists DInput controllers with special characters (like the Registered (R) sign) in their name. UTF8 is used to match the encoding used by the Wx GUI. 2011-10-01 21:50:15 +10:00
Jordan Woyak 931a31deca Untested attempt to fix real gcpad sticks not being detected by the input configuration dialogs. 2011-08-31 20:46:04 -05:00
DimitriPilot3 d4d7e2515f Apply the simple NULL-checking patch from issue 4311.
Judging by the feedback provided by other OSX users, this appears to fix the crash when starting Dolphin on OSX with devices that have an empty name.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7598 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-15 12:50:47 +00:00
Jordan Woyak 0ed542206a Fix SDL 1.3 support.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7434 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-01 23:57:06 +00:00
Jordan Woyak f8620fcd0b Fixed some memory leaks. Only one was mine ;P
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7392 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-22 07:27:23 +00:00
Jordan Woyak 3454ade05e Fix DInput rumble.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7347 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-15 04:04:27 +00:00
Jordan Woyak a55e63c697 Fix DInput and SDL.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7345 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-14 21:07:28 +00:00
Jordan Woyak 8fedc3db38 Clean up "ControllerInterface" a bit.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7339 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-14 01:20:11 +00:00
Jordan Woyak 5f87642f23 problem: TryAcquireSRWLockExclusive requires Windows 7 :/. solution kinda: use std::recursive_mutex (CriticalSection on windows) where try_lock is used. Dolphin should work on Vista x64 again.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7313 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-07 00:16:38 +00:00
Jordan Woyak 423018f811 Replaced Common::CriticalSection with a std::mutex implementation. 64bit Windows builds now use SRWLocks and ConditionVariables(requires Vista/7, x64 builds will no longer work on Windows XP x64). Tell me if you hate that. Removed Common::EventEx. Common::Event now uses a std::condition_variable impl.(using ConditionVariables on Windows x64, Events on x86, or posix condition variables elsewhere). I experience slight speed improvements with these changes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7294 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 06:11:26 +00:00
Soren Jorvang c07fb95821 PS3 controllers have some input elements with very large value fields
that cause IOHIDValueGetIntegerValue() to smash the stack when trying
to convert them.

In practice, all relevant axes seem to also be available as either
8 or 16-bit values, so just ignore anything that doesn't look like
that (or a button).

Fixes issue 3931.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7255 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-27 00:15:26 +00:00
smelenchuk 050dcad9f8 Build fixes when using SDL 1.3 related to force feedback support, as suggested in issue #1338.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7199 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-19 07:06:26 +00:00
Soren Jorvang 435b25fa55 Fix the CMake build.
Prevent the PS3 HID crash until I can debug it.

AudioUnits are enabled by default.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7052 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-03 21:11:06 +00:00
Soren Jorvang f41e5b3b85 Guard against controller instances without any inputs.
Clean up OS X keyboard key names.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6985 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-30 08:12:34 +00:00
Soren Jorvang aa410c8eea Enumerate identically named input devices.
Fixes issue 3929.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6984 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-30 05:46:19 +00:00
Soren Jorvang 08b923a163 Fix OS X build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6951 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-28 21:27:49 +00:00
Soren Jorvang 0288742565 Various minor fixes to allow building with clang on OS X.
Fixes issue 3992. 

wxWidgets patch at http://trac.wxwidgets.org/ticket/12332 .


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6929 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-27 05:01:00 +00:00
Soren Jorvang 4a7d3ee1c8 Deal with "hat" switches.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6863 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-16 17:00:17 +00:00
Soren Jorvang 2cb5a1aa56 HID reports can use negative numbers.
Use UTF-8 for input device names and profile filenames.
From8Bit->To8Bit is not transparent.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6857 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-15 21:16:13 +00:00
Soren Jorvang f292f6d5a7 Accept arbitrary HID devices as gamepads instead of using SDL,
which has too narrow a view of what constitutes a joystick.

Now if only I could find my Apple IR Remote.. :-)


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6844 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-14 05:06:08 +00:00
Glenn Rice c1c1f54c59 Implement free look on linux. Patch due to artart78.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6638 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-12-21 23:58:25 +00:00
Glenn Rice 4f81997c14 Fix the no gui cmake build.
Add a version check for avcodec and swscale libraries.
Fix a bug in the xlib wiimote emulation button configuration.  If you are using a mouse button for wiimote emulation you may need to adjust your settings.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6426 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-16 04:34:52 +00:00
Soren Jorvang 02edf66b49 Simplify OpenCL compile-time detection on OS X.
Turn wiiuse io_osx.m into Objective-C++.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6398 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-13 20:02:01 +00:00
Jordan Woyak 7b45ac6e01 Made it easer to use mouse/keyboard and a gamepad together on the same emulated wiimote. Renamed mouse buttons from "Button N" to "Click N" so they do not conflict with gamepad buttons.(hopefully not too ugly, mouse buttons will need to be reconfigured) (Fixes issue 3363)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6289 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-19 23:11:22 +00:00
Soren Jorvang e81a10fb44 Temporarily re-enable SDL pad input on OS X.
Placeholder SConscript for VideoMerge plugin.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6272 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-12 22:26:30 +00:00
Jordan Woyak 7e08fc19fc Moved WiimoteNew into Dolphin and eliminated the old wiimote plugin. Removed wiimote plugin support. Moved input dialog related InputUICommon stuff into DolphinWX. Removed now unused InputCommon files. UDPWiimote stuff is temporarily disabled until it is reorganized so Core won't depend on wx. Real wiimotes are now initialized on first need(wiimote diag open or game start) and left initialized until Dolphin exit.(maybe this will work better for Linux/OS X) (scons probably needs some fixes)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6270 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-12 19:42:29 +00:00
Jordan Woyak de3ad37299 WiimoteNew: Made emulated wiimote return read error when motion plus register area is read.(Fixes "Sonic the Hedgehog 4" input, perhaps others) GCPad/WiimoteNew: Made DirectInput use the Dolphin window hwnd for SetCoopLevel instead of GetForegroundWindow.(attempt to fix issue where gamepads sometimes don't work until "Refresh" is pressed)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6269 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-11 22:19:47 +00:00
Jordan Woyak cf5639af54 GCPad/WiimoteNew: Reordered some stuff in DirectInput device enumeration.(makes certain gamepads work now, hopfully doesn't break other pads) (Thanks to YoD for helping debug) Also fixed something ridiculous in the input config dialog. :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6264 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-09 07:24:33 +00:00
Jordan Woyak aae0fa7909 InputCommon(GCPad/WiimoteNew): Fixed issue when inifile didn't exist, defaults were loaded, and input didn't work. Fixed prob in DirectInput(hopefully doesn't break any other gamepads): buffered data wasn't ever being used. WiimoteNew: Hopefully made emulated swinging better(please comment). Added (completely untested) incomplete emulated turntable(DJ Hero) extension support :p. Deleted some files that I meant to delete in my last commit.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6250 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-03 04:29:34 +00:00