sigmabeta
1cb07b1c48
Android: Wiimote UI Fixup
2015-07-23 23:17:16 -04:00
Ryan Houdek
a8227ad9b1
Add Wiimote support to the Android backend.
...
Not actually wired up to the Android UI for configuration.
2015-07-21 21:33:23 -05:00
Scott Mansell
dc25277a2f
Merge branch 'stable' into 'master'
2015-07-13 12:40:38 +12:00
Rohit Nirmal
c38ae5236e
Fix building with PCH disabled.
2015-07-08 13:52:43 -05:00
Scott Mansell
6e969133f5
evdev: Delete rumble effects on the correct file descriptor.
...
Was using m_id insted of m_fd.
Also re-arrange the code so rumble effects always get deleted instead of
just on stop commands.
2015-07-07 16:59:10 +12:00
Tillmann Karras
64b51df55d
evdev: fix -Wunused-private-field warning
2015-07-04 14:14:15 +02:00
Scott Mansell
d2578000bb
Merge branch 'stable'
2015-07-04 23:43:36 +12:00
Scott Mansell
77183899e0
evdev: Support axis with ranges which extend below zero.
2015-07-01 10:13:05 +12:00
Scott Mansell
2721fdf8a9
Linux: Add an evdev based controller backend, to replace SDL.
2015-07-01 10:13:05 +12:00
comex
700b850acd
Fix misc. clang warnings - mostly complaints about inconsistent use of override.
...
Previously, MacOpenFile only overrode anything on OS X; otherwise it was
just a useless method, which is presumably why it wasn't marked override
in the first place. Address this more sanely by wrapping it in #ifdef
__APPLE__.
2015-06-21 15:42:49 -04:00
degasus
c375111076
Options: merge SCoreStartupParameter into SConfig
2015-06-12 19:07:45 +02:00
Matthew Parlane
9e1aab663f
Revert "SDL: handle SDL_QUIT event"
2015-06-08 13:43:39 +12:00
Tillmann Karras
9ec5a4544f
SDL: handle SDL_QUIT event
...
Using SDL_INIT_JOYSTICK implies SDL_INIT_EVENTS which installs a signal
handler for SIGINT and SIGTERM. There will be a way to prevent this in
2.0.4 but for now we'll need to handle SDL_QUIT.
2015-06-05 19:34:06 +02:00
Lioncash
ac26f8e79f
Pass strings by const reference where possible
2015-05-28 20:54:55 -04:00
Tillmann Karras
30ebb2459e
Set copyright year to when a file was created
2015-05-25 13:22:31 +02:00
Tillmann Karras
cefcb0ace9
Update license headers to GPLv2+
2015-05-25 13:22:31 +02:00
Tillmann Karras
268f52e054
Add missing license headers
2015-05-25 13:11:47 +02:00
Tillmann Karras
6d9986846c
Simplify some more license headers
2015-05-25 13:11:41 +02:00
Lioncash
9ad35cc986
ExpressionParser: Add missing break in UnaryExpression value setting
2015-05-22 15:02:22 -04:00
Lioncash
d39b519850
InputCommon/Core: Get rid of some virtual destructor warnings
...
These classes have virtual methods, but no virtual destructor, which causes warnings on some compilers.
2015-04-27 21:41:59 -04:00
Matthew Parlane
a86f2fe2e7
Merge pull request #2199 from skidau/remove-controls-lock
...
Cleaned up the controller locking mechanism
2015-04-21 11:13:30 +12:00
Matthew Parlane
82bbada352
Merge pull request #2257 from RachelBryk/battery
...
Add an option for wiimote battery.
2015-04-21 11:12:12 +12:00
JosJuice
0deb9f5e39
Revert "Merge pull request #2256 from RachelBryk/Dolphin-Pro"
...
This reverts commit ae0a090701
, reversing
changes made to 6b6b5ed37f
.
2015-04-01 22:30:57 +02:00
Pierre Bourdon
ae0a090701
Merge pull request #2256 from RachelBryk/Dolphin-Pro
...
Limit Wiimote battery usage for Dolphin-lite users.
2015-04-01 21:07:22 +02:00
Rachel Bryk
ba93b91565
Add an option for wiimote battery.
2015-04-01 05:29:45 -04:00
Rachel Bryk
d39d89594d
Limit Wiimote battery usage for Dolphin-lite users.
...
Wiimote batteries drain over time. The user must upgrade to Dolphin Pro for $19.95 to recharge them.
2015-04-01 04:31:03 -04:00
skidau
9947324296
Track the co-ordinates of the mouse relative to the pointed window instead of the original hwnd.
2015-03-28 11:38:14 +11:00
skidau
4f965da4f1
Revert the recent changes related to updating hwnd
2015-03-28 11:08:25 +11:00
skidau
98dce11f8c
Updated the input plugins reference of hwnd on game start. Fixes the emu wiimotes mouse IR when rendering the game to a separate window.
2015-03-19 21:31:05 +11:00
skidau
c76008b4b9
Removed the controller update lock as it is no longer needed.
2015-03-12 23:41:30 +11:00
skidau
2c6eaf9c76
Cleaned up the controls lock that is not needed with 780eef68f6
2015-03-12 23:33:30 +11:00
skidau
780eef68f6
Fixed the crash that would occur when the Refresh button was pressed in the controllers config.
...
- Simplified the locking mechanism when controllers were updated
- Reloaded the config of the controls instead of re-initialising the control plugins
- Fixed controls being unresponsive after the Refresh button was pressed
- Disables the hotkeys while the controller config is open
2015-03-08 20:27:13 +11:00
Gabriel Corona
c626ce5809
Do not fail to evaluate an expression if some input is missing
...
My keyboard layout does not have Alt_R but ISO_Level3_Shift. As a
consequence any control expression containing Alt_R fails to evaluate
completely and is unusable. This modification replace the missing term
of the expression by a dummy expression which always evaluate to
0. This way, the keybinding can work even if some keys are not
available.
2015-02-26 01:24:54 +01:00
JosJuice
f9d6c17c08
Use CoreParameter's game INI functions in more places
2015-02-11 19:01:05 +01:00
Ryan Houdek
ca10ce36cc
Merge pull request #1923 from Sonicadvance1/remove_sdl_assumption
...
Remove an assumption in SDL.
2015-01-21 13:29:39 -06:00
skidau
5cd8a80553
Merge pull request #1893 from skidau/GCKeyboard
...
Added GameCube Keyboard support.
2015-01-21 12:43:49 +11:00
Ryan Houdek
817abdd579
Remove an assumption in SDL.
...
We can compile with haptic support, and then not initialize due to haptics not being available.
So if we are compiling with haptics, test initializing with haptics and if that fails attempt to initialize without haptics before bailing out.
2015-01-19 16:07:28 -06:00
skidau
5e8ab05cc0
Added GameCube Keyboard support.
2015-01-17 09:36:05 +11:00
Adam D. Moss
3300c176e4
SDL haptic: minor style change based on review feedback
2015-01-13 16:00:35 +00:00
Adam D. Moss
076c2b8ec7
SDL input: unhardcode a few values.
...
& change effect length to half a second instead of infinite, in futile attempt to avoid runaway rumbles.
2015-01-11 11:57:48 +00:00
Adam D. Moss
63660cb17c
SDL Input: More minor refactoring of SDL haptic effects
2015-01-11 11:42:30 +00:00
Adam D. Moss
f47cce2210
SDL: Refactor the SDL haptic effects a little.
2015-01-08 15:17:29 +00:00
Karol Herbst
17ad68ff86
SDL: more global memset
2015-01-08 13:37:06 +01:00
Adam Moss
306c8d14db
SDL Input: Support more types of force feedback for controllers through SDL.
2015-01-06 19:17:43 +00:00
Tillmann Karras
6bcdb10eee
CMake: simplify some expressions
2015-01-03 13:17:57 +01:00
comex
fba3abe4cf
Manually revert d34418100b
2014-12-20 00:33:15 -05:00
Jasper St. Pierre
f3b739341e
HW: Remove UpdateOutput
...
All of the rumble interfaces are now immediate mode.
2014-11-28 10:54:04 -08:00
Jasper St. Pierre
86e4da2c07
ForceFeedback: Apply immediately as well
2014-11-28 10:54:04 -08:00
Jasper St. Pierre
1958a10b6f
XInput: Apply immediately as well
2014-11-28 10:54:04 -08:00
Jasper St. Pierre
1b3d0173f5
SDL: Apply updates immediately rather than going through UpdateOutput
...
We're going to remove UpdateOutput as it's redundant, and horribly
complicates the code.
2014-11-28 10:54:03 -08:00
Jasper St. Pierre
f2787f620e
ControllerInterface: Make UpdateInput / UpdateOutput return void
...
The return values here have never been checked, so it doesn't make sense
to return a value to begin with.
2014-11-28 10:50:45 -08:00
Jasper St. Pierre
61fcfc4bf2
ControllerInterface: Remove unused ClearInputState
2014-11-28 10:50:45 -08:00
Jasper St. Pierre
367a42dcfd
ControllerInterface: Implement dummy UpdateInput / UpdateOutputs
...
Make the implementation here a bit easier.
2014-11-28 10:50:45 -08:00
Jasper St. Pierre
0c056c6411
DInput: Remove the unsupported Lights output
...
The LEDs feature doesn't actually do anything: the SetState method is
entirely commented out.
2014-11-28 10:50:45 -08:00
Jasper St. Pierre
b5d4e8d37e
ControllerInterface: Remove unused "force" parameter
...
I'm not sure when this nonsense of forcing locking the mutex when it's
already taken should have ever taken effect, but let's be thankful it
isn't now. That was a badly worded sentence.
2014-11-28 10:50:45 -08:00
Rachel Bryk
e9cb629723
Fix some double->float conversions.
2014-11-11 14:14:22 -05:00
Lioncash
9ab924513e
VideoCommon/VideoBackends: Remove unnecessary wxWidgets references.
...
EmuWindow doesn't even exist anymore. wxWidgets is also decoupled from the backends.
2014-11-01 19:19:00 -04:00
Lioncash
fd39454ad3
Make some OSX-only functions static
...
Gets rid of function prototype warnings.
2014-10-28 08:41:50 -04:00
comex
6e774f1b64
Add missing includes where headers depend on other headers having been included first.
...
This is good hygiene, and also happens to be required to build Dolphin
using Clang modules.
(Under this setup, each header file becomes a module, and each #include
is automatically translated to a module import. Recursive includes
still leak through (by default), but modules are compiled independently,
and can't depend on defines or types having previously been set up. The
main reason to retrofit it onto Dolphin is compilation performance - no
more textual includes whatsoever, rather than putting a few blessed
common headers into a PCH. Unfortunately, I found multiple Clang bugs
while trying to build Dolphin this way, so it's not ready yet, but I can
start with this prerequisite.)
2014-10-21 21:22:16 -04:00
Lioncash
b7b2074cc2
ControllerInterface: Get rid of SetHwnd(), introduce Reinitialize()
...
Initialize now just takes the handle directly. Reinitialize is added because it is much more straightforward in comparison to doing the Shutdown-Initialize manually.
2014-10-15 09:29:25 -04:00
Lioncash
a1bee05f5f
ControllerEmu: Get rid of redundant string appending
2014-10-12 17:47:10 -04:00
comex
7f6284c2fc
Change a bunch of reference function arguments to pointers.
...
Per the coding style and sanity.
2014-10-02 03:00:33 -04:00
Lioncash
a04a99251f
Fix building Dolphin on OSX without precompiled headers
2014-09-21 00:37:47 -04:00
Rohit Nirmal
46057db37d
Fix build failing when disabling precompiled headers.
2014-09-19 18:17:51 -04:00
Lioncash
357c0adc3c
Kill off the wx casts within InputCommon and GLInterface.
...
All because someone didn't actually return the wxWindow handle for the edge case.
2014-09-14 01:07:08 -04:00
Lioncash
6cfc5b9849
InputCommon: Initialize NSDictionaries using literal syntax.
2014-09-13 21:32:33 -04:00
Ryan Houdek
71cb09f1ca
Merge pull request #1027 from rohit-n/change-include
...
Include CommonTypes.h instead of Common.h.
2014-09-10 00:35:16 -05:00
Lioncash
c2578d0668
InputCommon: Remove unnecessary breaks in XInput's GetName function
2014-09-08 21:36:04 -04:00
Rohit Nirmal
fbc64984ca
Include CommonTypes.h instead of Common.h.
2014-09-08 15:39:58 -04:00
Rohit Nirmal
b0060e5184
Controller Interface: Remove "using namespace" in header file.
2014-09-04 23:02:25 -05:00
MikeRavenelle
411c060504
Checkbox for iteration
...
Added the option to handle whether the user wants to iterate through the
assignment of button mappings or assign them one at a time.
fixed formatting issues and code style.
I excluded this option from the config file. This stopped the check box value and the boolean from becoming offset. Since the option should always start as false.
This still causes an issue with the Wiimote input, since the class variable that keeps the state will be wiped, but the check box value will stay the same after closing/reopening without closing the entire Wiimote configuration. I am looking for a way to resolve this.
I also reduced wait time to 2.5 seconds vs. the 5 seconds previously. Seemed to be a little long.
These changes apparently did not go through.
This should fix the Wiimote issue.
2014-09-04 19:23:04 -05:00
Rachel Bryk
1cc153b4ed
Fix a typo introduced by 5adbc83
in ControllerEmu.cpp.
2014-09-04 05:00:53 -04:00
Rachel Bryk
5adbc83453
Change ControlState typedef to double, and change all related floats/doubles to use it.
...
Fixes an off by 1 issue related to double->float->double conversion, and eliminates numerous warnings.
2014-09-03 03:08:09 -04:00
shuffle2
de71db4864
Merge pull request #925 from shuffle2/xbcd-compat
...
Revert changes to how DInput filters out XInput devices.
2014-09-02 23:21:47 -07:00
Shawn Hoffman
266992684d
msvc: remove some remnants of SDL and DSound from projects and general cleanup.
2014-09-01 21:27:44 -07:00
Shawn Hoffman
3c0227445c
Revert changes to how DInput filters out XInput devices.
...
This is to remain compatible with XBCD devices.
2014-09-01 14:56:11 -07:00
Lioncash
1a3ebbb831
InputCommon: Rename class InputPlugin to InputConfig
2014-08-31 00:59:06 -04:00
Lioncash
bc14d6966f
InputCommon: Clean up brace placements
2014-08-30 18:06:44 -04:00
Pierre Bourdon
9ff7125786
Merge pull request #810 from lioncash/controller-interface
...
InputCommon: Don't base default radius of analog sticks off of their name
2014-08-24 19:58:25 +02:00
Shawn Hoffman
327d35377d
windows: remove now-extraneous NOMINMAX and WIN32_LEAN_AND_MEAN #defines from dolphin code.
...
Wrap dinput.h in a header defining DIRECTINPUT_VERSION instead of repeating it multiple places.
2014-08-23 10:48:48 -07:00
Lioncash
f17dcd2019
Merge pull request #764 from magcius/new-nogui-2
...
Rewrite GLInterface
2014-08-21 14:14:54 -04:00
Shawn Hoffman
d9fcc855a7
msvc: resolve all warnings in DolphinWX.
...
Also, bring WiiSaveCrypted closer to modern dolphin coding style.
2014-08-19 22:33:48 -07:00
Shawn Hoffman
9df2127865
msvc: enable strictStrings solution-wide for release.
...
strictStrings is not supported by debug libraries, and indeed breaks the build.
Drop wbemidl.h (incompatible with strictStrings) dependency by using SDL-style search for XInput GUIDs.
2014-08-19 20:33:24 -07:00
Jasper St. Pierre
2d974b6086
GLInterface: Destroy GLWin
...
Everything is now safely tucked inside each individual GLInterface.
2014-08-19 10:06:25 -04:00
Jasper St. Pierre
8bd4b9d2f9
Remove support for Wayland
...
Yes, this is a fancy new feature, but our Wayland support was
particularly bitrotten, and ideally this would be handled by a platform
layer like SDL. If not, we can always add this back in when GLInterface
has caught up. We might be able to even support wxWidgets and GL
together with subsurfaces!
2014-08-19 10:05:56 -04:00
shuffle2
2270c3e90a
Merge pull request #797 from shuffle2/msvc-pch
...
Windows: Use a shared precompiled header for dolphin code under Source/
2014-08-16 14:58:28 -07:00
Lioncash
7fd5e4300a
InputCommon: Don't base default radius of analog sticks off of their name.
2014-08-15 13:06:56 -04:00
Shawn Hoffman
f1b82a34b2
Windows: Use a shared precompiled header for dolphin code under Source/
2014-08-14 23:51:13 -07:00
Lioncash
001c9a18fa
Merge pull request #782 from RachelBryk/radius
...
Set the default radius to 100 for non-gcpad analog sticks.
2014-08-14 17:15:03 -04:00
Charles Rozhon
97f68be70a
Changed GCPadStatus struct to use cstdint types instead of char, short etc.
2014-08-14 14:14:07 -05:00
Rachel Bryk
35ae1b4ee2
Set the default radius to 100 for non-gcpad analog sticks.
...
The previous default of 70 was determined based on gc controllers, and is not right at all for the wii extensions.
2014-08-11 13:58:47 -04:00
Tony Wasserka
0d989ea82b
Restore Wayland compatibility.
...
It was broken by e15ec56bf0
because it wasn't deemed important. However chances are people will eventually start using Dolphin on that configuration, so we shouldn't frivolously drop compatibility without good reason.
2014-08-04 18:26:03 +02:00
Pierre Bourdon
8b26d7bf1e
UnitTests: make it possible to build tests for code that has global dependencies
2014-08-02 09:34:39 -07:00
Pierre Bourdon
226a9c2392
Move GLInterface around to remove VideoBackends dependency on DolphinWX
2014-08-02 09:34:39 -07:00
Lioncash
4fa71dd59e
Remove fakepoll.h.
...
It was only used for Windows XP and lower.
This also bumps the _WIN32_WINNT define in the stdafx precompiled headers to set the minimum version as Windows Vista.
2014-07-26 22:53:40 -04:00
Pierre Bourdon
264459457e
Merge pull request #665 from lioncash/cisms
...
Get rid of a few C-style struct declarations
2014-07-25 01:30:29 +02:00
Lioncash
6186a293f6
InputCommon: Include the algorithm header in ForceFeedbackDevice
...
Also simplified the casting within a std::max call
2014-07-24 18:55:12 -04:00
Lioncash
5767691f4e
Get rid of a few C-style struct declarations
2014-07-23 20:36:45 -04:00
booto
0d2bef2743
GCPadStatus: coalescing magic numbers into consts
2014-07-21 19:56:05 +08:00
Jasper St. Pierre
44307c9508
Host: Add a new "UIHasFocus" hook to determine if the UI has focus
...
We can't use RendererHasFocus for this purpose because of some issues
with exclusive fullscreen, and the new RendererHasFocus implementation
didn't work for non-Render to Main Window cases, since the renderer
window wasn't managed by wx.
2014-07-16 10:27:21 -04:00
Lioncash
ebd029973a
Merge pull request #604 from magcius/wip/emu-cleanup-2
...
Start cleaning up the input interface
2014-07-15 12:11:17 -04:00
Lioncash
58c58d2f92
InputCommon: Use enums instead of defines within GCPadStatus.h
2014-07-11 17:18:11 -04:00
Jasper St. Pierre
e4eec2002b
ControllerEmu: Remove focus-checking code from the rest of ControllerEmu
2014-07-11 14:08:29 -04:00
Jasper St. Pierre
74f3083381
ControllerInterface: Gate the input based on our new background input setting
2014-07-11 13:38:52 -04:00
Jasper St. Pierre
5abc028ace
ControllerEmu: Make BackgroundInput a global setting through the virtualization
...
This will allow us to simplify the checks for background input and push
them further down into the architecture, into the ControllerEmu layer.
The new setting isn't actually used yet, though.
2014-07-11 13:38:37 -04:00
Jasper St. Pierre
0d49bf65a7
ControllerEmu: Virtualize settings
...
This will allow us to move Background Input to a global setting rather
than a local setting.
2014-07-11 13:32:58 -04:00
Jasper St. Pierre
a6dc3c47a9
ControllerEmu: Change the GetState interface to remove range/base
...
Do the scaling in the code that interprets the results.
This also removes the templatization of things and changes the interface
to always take a double.
This does add a bit more code to the users of GetState, especially when
having to deal with focus management, but this will be cleaned up very
soon, as focus and focus-related options will be centralized inside the
input platforms themselves, rather than spread out across all the input
plugins.
2014-07-11 13:32:57 -04:00
Jasper St. Pierre
0d11081a3b
ControllerEmu: Clean up the code that applies the modifier
...
This makes it more clear and pretty much the analog stick code bog standard.
2014-07-11 13:32:57 -04:00
Jasper St. Pierre
c29d5ff989
ControllerEmu: Always convert to polar coordinates and back
...
Most users will have something in the radius or deadzone fields, so
don't bother filtering out 'extra' work. This also lets us clean up
the modifier implementation.
2014-07-11 13:32:57 -04:00
Jasper St. Pierre
f2d4f10fc9
ControllerEmu: Remove support for the "Square Stick" option
...
It was only used for really old joypads which we really don't want to
support. If users have these joypads, they should look into using
something at the OS level, as games shouldn't need to have this
transformation; it should be done by the OS and driver.
2014-07-11 13:32:57 -04:00
Jasper St. Pierre
e20a0265de
Remove UDPWiimote feature
...
It substantially complicates the code and doesn't really provide any
functionality. According to the forums, the Android app is out of date
and has been broken for quite a while.
If we want to add this back, I'd write an app that speaks a more native
Wiimote protocol, and we can hook that up to the backend quite easily.
It could even be over our NetPlay protocol!
2014-07-11 13:32:56 -04:00
Jasper St. Pierre
c11672b2d8
ControllerEmu: Constructors go on top
2014-07-11 13:32:18 -04:00
Jasper St. Pierre
d468c38335
ControllerEmu: Fix code style
2014-07-11 13:32:18 -04:00
Jasper St. Pierre
0c9f6c2a2b
ControllerEmu: Remove unnecessary include
2014-07-11 13:32:18 -04:00
degasus
22e1aa5bb4
mark all local functions as static
2014-07-11 16:07:23 +02:00
Lioncash
896d7e5685
Change SPADStatus struct name to GCPadStatus
...
Also get rid of the typedef, since this is unnecessary in C++
2014-07-10 22:02:38 -04:00
Lioncash
8b13afbb8e
Remove the 32-bit config platform from the VS solution and projects
2014-06-24 22:07:26 -04:00
Lioncash
f05d3f6e5d
Use only section-based ini reading.
2014-06-16 01:31:23 -04:00
shuffle2
d0201335c6
Merge pull request #300 from Sonicadvance1/Fix-AndroidInput
...
[Android] Fixes a bunch of input bugs.
2014-05-30 15:32:08 -07:00
Lioncash
49b0eef393
Remove the min/max functions in CommonFuncs.
...
The algorithm header has the same functions.
2014-05-29 21:44:41 -04:00
Jordan Woyak
9af18d1b96
Remove SDL from Externals.
2014-05-04 19:41:02 -05:00
Jordan Woyak
4321951987
Disable SDL input on Windows.
2014-05-04 19:09:51 -05:00
Ryan Houdek
e1bbda1e18
[Android] Fix a bunch of input bugs.
...
Looking at the old code for the ButtonManager was a brainfsck. This fixes a ton of bugs I kept uncovering as I was moving along.
Fixes the gamepad configuration file being incorrect.
No longer treats touchscreen in a special way. Ends up as a regular device with a "Touchscreen" device name.
Was incorrectly converting a index from integer to ButtonType. Wouldn't work due to the addition of some unused(in JNI) enumerators in ButtonType.
Fixes an issue where a map had a key as an axis which was causing its binding to be overwritten for every axis that was used twice (eg main stick left and right);
Fixes Triggers not working at all.
Fixes DPad not working at all.
Fixes C-Stick only half working.
Removes touch screen specific nativelibrary types onTouchAxisEvent and onTouchEvent.
Adds a configuration version configuration option. Allows easy configuration overwriting if the options need to be changed during updating.
Supersedes github PR #291 .
2014-04-24 08:51:44 -05:00
pinumbernumber
a84bb7eb88
Add support for the guide button to XInput
2014-04-17 12:03:44 +01:00
Ryan Houdek
c88b83699e
Don't use SDL devices that report invalid ranges.
...
If Buttons, Axes, Hats, or Balls > 255 then reject it.
2014-04-16 16:28:57 -05:00
lioncash
e79895e372
Replace use of the deprecated mem_fun function with mem_fn.
2014-04-01 12:09:22 -04:00
Pierre Bourdon
664c8d30a0
Remove all trailing whitespaces from our codebase.
2014-03-29 11:05:44 +01:00
Tillmann Karras
fa3cc05753
Turn some non-const refs into pointers
2014-03-17 02:55:57 +01:00
Lioncash
a82675b7d5
Kill off some usages of c_str.
...
Also changes some function params, but this is ok.
Some simplifications were also able to be made (ie. killing off strcmps with ==, etc).
2014-03-14 13:51:23 -04:00
Matthew Parlane
31cfc73a09
Fixes spacing for "for", "while", "switch" and "if"
...
Also moved && and || to ends of lines instead of start.
Fixed misc vertical alignments and some { needed newlining.
2014-03-11 00:35:07 +13:00
Tillmann Karras
d802d39281
clang-modernize -use-nullptr
...
and s/\bNULL\b/nullptr/g for *.cpp/h/mm files not compiled on my machine
2014-03-09 21:14:26 +01:00
Tillmann Karras
f28116b7da
clang-modernize -add-override
2014-03-09 21:12:01 +01:00
Tillmann Karras
315a8ba1c0
Various changes suggested by cppcheck
...
- remove unused variables
- reduce the scope where it makes sense
- correct limits (did you know that strcat()'s last parameter does not
include the \0 that is always added?)
- set some free()'d pointers to NULL
2014-02-28 12:43:20 +01:00
Tillmann Karras
79336c88f8
Remove X11InputBase (dead code)
2014-02-22 22:42:42 +01:00
Lioncash
91286f5021
Fix the Windows build in relation to the recent changes.
2014-02-20 01:01:11 +01:00
Pierre Bourdon
6847a0fc0c
Fix more header sorting issues in InputCommon/ (now check-includes clean).
2014-02-20 01:01:10 +01:00
Pierre Bourdon
dc1db82f70
Fix Linux build
2014-02-18 12:09:38 +01:00
Lioncash
2afe215271
Convert all includes to relative paths.
2014-02-18 02:19:10 -05:00
Lioncash
3fd87a7636
Second and final pass of clearing out tabs.
2014-02-17 02:19:41 -05:00
Lioncash
6c4ee1753a
Fix some vertical alignments
...
ie. uses spaces for alignment.
2014-02-16 20:12:05 -05:00
Tillmann Karras
404624bf0b
Turn loops into range-based form
...
and some things suggested by cppcheck and compiler warnings.
2014-02-13 09:05:50 +01:00
Matthew Parlane
88526be3b5
Merge pull request #50 from Parlane/inifile_tidy
...
Fix IniFile to use string& instead of char*
2014-02-13 19:04:27 +13:00
Matthew Parlane
3fe05e0a9f
Fix IniFile to use string& instead of char*
...
Also removes .c_str() usages where found.
2014-02-13 17:06:30 +13:00
lioncash
d2038049f5
Replace all include guard ifdefs with "#pragma once"
2014-02-10 18:07:16 -05:00
Lioncash
ebb48d019e
Clean up some struct indentations
...
Also cleaned up the indentations of some variable declarations.
2014-02-09 19:40:11 -05:00
Jules Blok
2063eddfa3
ForceFeedback: Fixed scoping bug
...
Previous code relied on a destroyed variable to still be valid.
2014-02-09 17:04:05 +09:00
Jules Blok
992b91c082
ForceFeedback: Don't depend on the force_type_name index.
...
Instead use a for-each loop, compare GUIDs and save the name pointers.
2014-02-09 17:01:45 +09:00
Jules Blok
c6d650c058
ForceFeedback: Add OSX rumble support
2014-02-09 17:01:45 +09:00
Jules Blok
02a95c139e
ControllerInterface: Move DInput ForceFeedback support to a seperate class
2014-02-09 17:01:38 +09:00
Lioncash
557015626a
Introduce the usage of unique_ptr into the InputCommon ControlEmu.h class. Allows for the automatic handling of resource deallocation.
2014-02-01 17:20:35 -05:00
Lioncash
825c5f689b
Remove some unnecessary comments, as pointed out by Matt_P.
2014-01-30 20:21:18 -05:00
Lioncash
d91a5abba1
Light cleanup to a little bit of InputCommon. Replaces much of the iterators that litter this section of the codebase.
...
Also clean up a little bit of the comments that describe the interface classes.
2014-01-30 19:51:21 -05:00
Scott Moreau
2c8340e1dc
Move GLInterface.h into GLInterface directory
2014-01-20 00:46:21 -07:00
Scott Moreau
4b3c338930
Merge Platform.h into GLInterface.h
2014-01-20 00:32:01 -07:00
Scott Moreau
84aa98a5a4
wayland: Add bits required to run as a wayland client.
2014-01-19 10:36:20 -07:00
Jasper St. Pierre
34692ab826
Remove unnecessary Src/ folders
2013-12-31 14:03:19 -05:00
Jasper St. Pierre
43e618682e
Convert all vcxproj files to UNIX line endings
2013-12-31 14:03:18 -05:00
Ryan Houdek
2e1aa64958
[Android] Fix joysticks only capable of right/down movements. Also make it capable of using onscreen joystick even if controller 1 is bound.
2013-12-12 21:24:39 -06:00
Ryan Houdek
ba18f38e70
Merge branch 'master' into android-new-control-input-overlay
...
Conflicts:
Source/Android/res/values-ja/strings.xml
Source/Android/res/values/strings.xml
Source/Android/src/org/dolphinemu/dolphinemu/AboutFragment.java
Source/Android/src/org/dolphinemu/dolphinemu/emulation/EmulationActivity.java
Source/Android/src/org/dolphinemu/dolphinemu/folderbrowser/FolderBrowser.java
Source/Android/src/org/dolphinemu/dolphinemu/gamelist/GameListActivity.java
Source/Android/src/org/dolphinemu/dolphinemu/settings/video/VideoSettingsFragment.java
2013-11-24 16:12:00 -06:00
Ryan Houdek
f6f2b1fc60
[Android-overlay] Support multiple gamepads with touch screen controls.
2013-11-24 15:04:53 -06:00
Jordan Cristiano
39a4d4329d
more warning fixes
2013-11-14 02:19:15 -05:00
comex
21610c2e54
Run code through clang-modernize -add-override to add 'override' decls.
2013-11-03 20:54:05 -05:00
comex
c579637eaf
Run code through the advanced tool 'sed' to remove trailing whitespace.
2013-11-03 20:54:05 -05:00
comex
965b32be9c
Run code through clang-modernize -loop-convert to create range-based for loops, and manually fix some stuff up.
2013-11-03 20:54:01 -05:00
Shawn Hoffman
ccd30024b3
Update to VS2013 and a slew of build-related updates. Notes:
...
* Currently there is no DEBUGFAST configuration. Defining DEBUGFAST as a preprocessor definition in Base.props (or a global header) enables it for now, pending a better method. This was done to make managing the build harder to screw up. However it may not even be an issue anymore with the new .props usage.
* D3DX11SaveTextureToFile usage is dropped and not replaced.
* If you have $(DXSDK_DIR) in your global property sheets (Microsoft.Cpp.$(PlatformName).user), you need to remove it. The build will error out with a message if it's configured incorrectly.
* If you are on Windows 8 or above, you no longer need the June 2010 DirectX SDK installed to build dolphin. If you are in this situation, it is still required if you want your built binaries to be able to use XAudio2 and XInput on previous Windows versions.
* GLew updated to 1.10.0
* compiler switches added: /volatile:iso, /d2Zi+
* LTCG available via msbuild property: DolphinRelease
* SDL updated to 2.0.0
* All Externals (excl. OpenAL and SDL) are built from source.
* Now uses STL version of std::{mutex,condition_variable,thread}
* Now uses Build as root directory for *all* intermediate files
* Binary directory is populated as post-build msbuild action
* .gitignore is simplified
* UnitTests project is no longer compiled
2013-10-26 17:55:38 -07:00
Lioncash
97cd42f5c3
Remove some unnecessary includes as well as simplifying exisiting ones if possible.
2013-10-19 19:58:56 -04:00
comex
de1773affb
Basic precompiled header support for Linux/OS X. Shaves 20-30% off full rebuild time on my system.
2013-10-17 00:07:35 -04:00
Lioncash
f3af8ee0f0
Revert "Remove some unnecessary includes."
...
Turns out this explodes on Linux.
This reverts commit c4696568cc
.
2013-10-14 04:05:38 -04:00
Lioncash
c4696568cc
Remove some unnecessary includes.
2013-10-14 04:01:57 -04:00
Lioncash
af951f467e
[InputCommon] Fix a bug in ControllerInterface::UpdateOutput() in ControllerInterface.cpp. The variable ok_count was never incremented, which caused the function to always return false.
2013-09-18 10:09:32 -04:00
Pierre Bourdon
501eafb407
Overlay local gameinis over global gameinis instead of copying.
...
Huge megacommit because a lot of things needed to be modified to make this
possible.
2013-09-14 17:46:41 +02:00
Jordan Woyak
ce49964dfe
Fix "modifier" button functionality et al.
2013-09-11 17:48:04 -05:00
comex
fd7cf5bb71
A bunch of trivial changes to fix clang warnings.
2013-09-01 22:58:33 -04:00
Pierre Bourdon
c3065ecb66
Fix compatibility with the SDL2.0 release.
...
SDL2.0 removed SDL_HAPTIC_SQUARE because of ABI issues (see comment #7 on issue
6491 by Ryan C. Gordon from the SDL project). It will be reintroduced again in
2.1, so keep the code and #ifdef it away.
2013-08-15 22:18:40 +02:00
Pierre Bourdon
0aa9308006
Revert "Fix a memory leak in ExpressionParser.cpp"
...
This reverts commit cce809ac90
.
The code was actually correct: "expr" is never allocated when an error is
returned. This means when the expression parser fails, deleting "expr" means
deleting an uninitialized pointer.
2013-08-09 10:46:11 +02:00
Lioncash
cce809ac90
Fix a memory leak in ExpressionParser.cpp
...
Because there's a return here, expr should be deleted since it's not assigned to anything before returning.
2013-08-08 17:56:15 -04:00
Jasper St. Pierre
bc17798ef2
InputConfigDiag: Add a simple error status label
...
This tells you what you did wrong at a high level if you messed up.
2013-07-22 03:19:22 -04:00
Jasper St. Pierre
bd7ca7625b
Fix up last commit
...
I forgot to git add this change.
2013-07-21 00:51:07 -04:00
Max Eliaser
fe2fe8b6cc
Clean up all the GetName methods for XInput2 controls.
2013-07-20 13:58:02 -08:00
Max Eliaser
9fbc5ff27c
Add X11 XInput2 input plugin, including MPX and with support for axis controls.
...
Based on the original XLib plugin, and thus shares some of its warts.
2013-07-20 13:58:02 -08:00
Jasper St. Pierre
4c807fa7b4
Fix Device.h placement in VC++
2013-07-15 16:24:20 -04:00
Jasper St. Pierre
b64e882ba5
ExpressionParser: Parse fully qualified control names correctly
...
Without clearing out the "accumulator" for the backtick parsing,
our control name was full of junk (the previous device name) causing
us to not correctly find the control.
Ensure that always we clear the "accumulator" string during backtick
parsing.
2013-07-12 13:26:09 -04:00
Lioncash
03a47d3c6b
Fix a case where a boolean check (vector.empty()) was used when a clear (vector.clear()) was intended in ExpressionParser.cpp.
2013-07-02 21:42:44 -04:00
Jasper St. Pierre
d5983b587e
InputConfigDialog: Don't show "..." for complicated expressions
...
Just show the actual expression. We need to do a bit of mangling
here as wx has no way to turn off mnemonics parsing, so do that
as well.
2013-06-29 18:28:14 -04:00
Jasper St. Pierre
11fdd5a4ec
ExpressionParser: Search for control names first
...
Otherwise, valid control names like "Cursor X+" would be incorrectly
tokenized as "`Cursor` `X` +", causing the parser to first abort trying to
find a control named `Cursor` rather than aborting with invalid syntax on
the bad binop.
We could also do this by resolving devices lazily, but since simple
control name bindings are going to be 90% of usecases, just look for these
first.
2013-06-27 10:51:19 -04:00
Jasper St. Pierre
a92f6f68d6
DInputJoystick: Fix compile
...
Whoops. MSVC++ messed up somehow and didn't tell me it didn't work
locally.
2013-06-26 23:26:21 -04:00
Jasper St. Pierre
cdb5b8b737
DInputJoystick: Always exclude XInput
...
Yeah, yeah, it's possible that some guy would try to build DInput
without XInput, but they're crazy, and I doubt it would have worked
since the header file mess was so fragile anyway. Always exclude
DInput devices when we don't have XInput.
2013-06-26 23:06:17 -04:00
Jasper St. Pierre
f53eefb491
ExpressionParser: Add support for simple barewords control names
...
If an expression can't be parsed normally, we then look to see if it's a
simple device name. This keeps backwards compatibility with simple input
ocnfigurations, where people just used the Detect button.
2013-06-26 20:19:23 -04:00
Jasper St. Pierre
03fdebac09
ExpressionParser: Don't crash when we can't find a device
2013-06-26 16:54:48 -04:00
Jasper St. Pierre
89e84163c2
ExpressionParser: Fix delimiter scanning
...
We need to make sure we eat the delimiter, otherwise we'll notice
the colon / backtick and think it's either a new control or part
of the control name
2013-06-25 01:44:28 -04:00
Jasper St. Pierre
c5c86d17dc
InputConfigDiag: Use "..." for complicated expressions
...
The full expression is quite often too big for a simple button
label, so encourage people to use the full editor to edit it.
2013-06-25 00:58:31 -04:00
Jasper St. Pierre
a42388d061
ExpressionParser: Support bare words for simple control names
...
Using backticks for all control names can get a bit grating,
so support "A & B" instead of requiring "`A` & `B`".
2013-06-25 00:58:30 -04:00
Jasper St. Pierre
d2753cce66
ExpressionParser: Add support for the add operator
...
Use "+" instead of "^" this time.
2013-06-25 00:58:30 -04:00
Jasper St. Pierre
6246f6e815
InputCommon: Add a new ExpressionParser to replace the old hack language
...
This contains a new, hand-written expression parser to replace the old
hack language based on string munging. The new approach is a simple
AST-based evaluation approach, instead of the "list of operations"
infix-based hack that there was before.
The new language for configuration has support for parentheses, and
counts "!" as a unary operator instead of the binary "NOT OR" operator
it was before. A simple example:
(X & Y) | !B
Explicit device references, and complex device names ("Right Y+") are
handled with backticks and colons:
(`SDL/0/6 axis joystick:Right X+` & `DInput/0/Keyboard Mouse:A`)
The basic editor UI that inserts tokens has not been updated to reflect
the new language.
2013-06-25 00:58:30 -04:00
Jasper St. Pierre
877106b027
InputCommon: Split Device stuff out
...
The ExpressionParser needs this to be out of here to prevent issues
with cyclic references.
2013-06-25 00:58:30 -04:00
Ryan Houdek
7223778520
[Android] Gamepad input. Refactor JNI native functions to all pull from a single class instead of everywhere willy-nilly
2013-06-18 07:09:38 -05:00
Ryan Houdek
8efdbcda9e
[Android] Fix drawn buttons causing rendering issues.
2013-06-11 08:23:32 -05:00
John Peterson
b6e1127c8a
Adding stick radius setting
...
because that makes it easier to adjust it
Adding visual aid for the hardware range because that makes it easier to adjust the radius relative to it
2013-06-06 09:28:59 +02:00
Matthew Parlane
065d772696
Windows should have support for Balance Board now.
...
Needs to be tested.
2013-05-19 14:45:24 +12:00
Matthew Parlane
7208823396
Added config for enabling Balance Board.
...
Fixed other structures that still assumed 4 of everything.
2013-05-19 00:30:20 +12:00
lioncash
d244bca1f5
Fix a bunch of random typos in comments and logging.
...
Also update the comment headers for two functions in GCMemcard.cpp.
2013-04-19 09:21:45 -04:00
Lioncash
bab9963b00
New license header introduced for DiscIO, AudioCommon, InputCommon, VideoCommon, and Common projects.
2013-04-17 23:09:55 -04:00
Ryan Houdek
7772f0d071
Merge branch 'Android-trash' since it is no longer quite so trashy.
2013-04-14 23:36:00 -05:00
Ryan Houdek
44bbb54a62
Add a Androind ControllerInterface class for allowing input in a non-hacky way. Add a default GCPad.ini file so it actually works.
2013-04-14 23:02:53 -05:00
Lioncash
8a9fcd3014
Kill off dangling else's in the InputCommon project.
...
Some indentations were also too far for some things. Fixed this.
Also update the license header to show Git instead of SVN.
Got rid of some trailing spaces/tabs too.
2013-04-14 22:53:10 -04:00
lioncash
0e3d8e2e9f
Clean up some space/tab mismatches in DiscIO and InputCommon.
...
Keeps the files consistent.
2013-03-19 09:59:41 -04:00
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
Lioncash
fe7e691d77
Revert "mem_fun -> mem_fn."
...
This reverts commit b7d32b0a3d
.
OSX C++ std library in charge of holding back progress (as usual).
2013-01-23 23:38:49 -05:00
Lioncash
b7d32b0a3d
mem_fun -> mem_fn.
...
mem_fun is deprecated in C++11. Also it does everything mem_fun can do, but more conveniently.
2013-01-23 23:29:50 -05:00
Jordan Woyak
6ec95d30af
Allow emulated wiimote to be tilted 180 degrees in each direction. (was 90)
...
Fixes issue 3492.
2013-01-19 19:20:04 -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
Rachel Bryk
f1489a4e18
Merge branch 'controller-profiles'
2013-01-09 22:33:51 -05:00
Rachel Bryk
b9fc26540e
Change key names, and put it in section Controls.
2013-01-09 21:56:17 -05: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
Rachel Bryk
fad2468e30
Make sure profile actually exists.
2013-01-09 20:41:14 -05:00
Rachel Bryk
e32b1526b3
Allow setting different profiles for different controllers, and automatically use the appropriate profile directory.
2013-01-09 15:04:37 -05:00
Rachel Bryk
b8691df723
Allow loading controller profiles from game ini.
...
Currently loads the same profile for all 4 controllers, and overwrites the default control settings.
2013-01-08 19:15:11 -05: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
Shawn Hoffman
56b1373baf
Remove scons-related files
2012-03-25 12:55:02 -07:00
Shawn Hoffman
c5d746f3d8
remove scons files from VS projects
2012-03-18 06:41:12 -07: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
Shawn Hoffman
856972f808
remove hacky old MicButton stuff
2011-10-03 23:46:00 -07: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
Shawn Hoffman
95517a9741
vs2010: Disable LTCG for realz
2011-09-05 09:43:23 -07: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
LPFaint99
708f6f7299
Replace install wii menu option tools to install wad
...
Add the option to clear a title from the NANDContentLoader and attempt to reload it
This allows the using the system menu immediately after installing rather than requiring a relaunch
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7290 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 05:07:44 +00:00
Soren Jorvang
05719ac81a
Move SConscript files out from the Src subdirectories to be
...
consistent with the other build systems.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7282 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-03 19:44:56 +00:00
Soren Jorvang
540238cf79
Prepare for the release of Xcode 4, which has working LTO
...
with static libraries.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7280 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-03 04:35:03 +00:00
Glenn Rice
ba54fac9eb
Convert GetUserPath to return a std::string instead of a const char *. This simplifies its usage in most cases.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7265 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-28 20:40:15 +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
Shawn Hoffman
6e4923399e
revert r7212 (express users must modify a single line, instead)
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7220 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-21 15:17:41 +00:00
Shawn Hoffman
62cb8ebe46
Force dolphin to use the windows7.1sdk (the windows7.1sdk installer is silly and refuses to recognize that vs2010 exists).
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7212 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-20 18:08:20 +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
skidau
fb4c82fb48
Added the feature to allow creating a TAS movie from a save state. To activate this function, start the game and use the "Start recording" command. A save state will be created at that point in time and the emulator will start recording. This results in two files, a .dtm containing the movie and a .dtm.sav which is the save state.
...
Changes:
* Allow events to be scheduled when the emulator is not running. This allows the save state event to be added before the emulator starts.
* Removed the Audio back-end init flag from the save state. This value should not be saved as it is not data relevant to guest machine.
* Allow a recording to be started at any time (apart from when a recording is already being made).
* Updated the status bar and title bar when an on-screen message is shown
* Removed the saving of PEToken from the save state as the FIFO will save this information
* Added a couple Pixel Engine interrupt states to the save state
* Added the copyright notice to the GCPadStatus.h file.
This function is preliminary. Let us know of any bugs you find or any UI quirks.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7175 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-15 09:07:55 +00:00
Shawn Hoffman
e480ab2b10
drop vs2008 projects in favor of vs2010
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7129 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-11 15:43:05 +00:00
Shawn Hoffman
a34b81cc01
vs2010:
...
buildfix
move much of the build settings to .props files
-please use them as much as possible in the future, instead of changing individual projects
NOTE: to avoid left over blobs, clean your builds *before* applying these changes.
TODO: add DebugFast target for projects that are lacking it. Lack of DebugFast targets cause the linker to use LTCG when we don't want it.
please test for regressions which could be caused by being too happy with compiler flags :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7109 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-08 04:03:48 +00:00
nakeee
9bbd5b9157
Small fix for cmake on osx, more work left to be done
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7096 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-07 15:51:38 +00:00
Soren Jorvang
6d70c14d12
In the SCons build, skip the generation of static libraries
...
and just operate on lists of object files instead.
This helps with LTO since LLVM/clang LTO is completely broken
by static libraries. It also helps identify symbol clashes
between components like the former plugins.
Many linkers also expect static libraries to form a strict DAG
which turns out be a difficult rule to uphold in practice,
especially since some of our platforms aren't picky about this.
LTO builds currently appears to crash at runtime because of
the static wx libs.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7056 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-04 00:46:56 +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
Glenn Rice
8b309e26dc
Remove PluginSpecs.h. Merge the few needed enums from that file into Common.h for now. I am up for suggestions on a better place for those.
...
Fix frame dumping on linux.
Make sure that on screen messages get cleared between games.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7039 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-02 04:40:27 +00:00
Shawn Hoffman
af9ef060c0
vs2010: Enable LTCG only for release builds.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7032 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-01 04:45:29 +00:00
Shawn Hoffman
118d623a18
vs2010:
...
fix all build targets (they've all built here - you may have to manually delete the intermediate directories if you have conflicts after this commit).
set the debug path to $(TargetDir)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7022 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 15:53:54 +00:00
Shawn Hoffman
c5d61c0a9a
vs2010: buildfix for debugfast, silence all C4996 warnings.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7016 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 08:53:08 +00:00
Jordan Woyak
1de40588ac
Eliminate some trampoline functions.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7015 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 08:19:27 +00:00
Shawn Hoffman
3b36e06571
svn eol-style:native on the filters...
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7013 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 07:58:59 +00:00
Shawn Hoffman
7ae1340179
vs2010 add filters for everything (...except wxw projects...). Try to fix SVNRevGen, but I'm not sure it's working...
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7012 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 07:51:37 +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
Jordan Woyak
2c05c49a04
Replaced Common::Thread with a partial implementation of std::thread. (rvalue references are used if available, <thread> is used if possible) Eliminates the need to use dynamic memory allocation for threads, so it's impossible to forget to delete a thread or set a pointer to NULL. Enables use of type-safe thread functions, no need to cast to and from void*. I've made sure the code compiles in vs08 and tested the functionality of "StdThread.h" on Linux so I'm hoping everything will work :p. In the future "StdThread.h" can be removed (maybe when OS X ships with gcc 4.4 and vs2015 is released :p).
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6933 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-27 20:47:58 +00:00
Jordan Woyak
66cd497dfe
Added "DebugFast" configs to vs2010 projects. Removed solution folders.(vs express doesn't like them)
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6931 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-27 10:41:26 +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
Jordan Woyak
cbc520a70a
Committing Visual Studio 2010 solution/project files. (not switching from 2008 just yet, just making 2010 an option) Still need to add a "DebugFast" config and change optimization settings.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6927 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-27 00:14:29 +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
d0de395a46
Finally got the input common strings figured out. That pretty much finishes translations.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6843 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-14 03:05:02 +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
a279b391cc
Make Linux/MacOSX system checks correct in the cmake build. UNIX is true on both linux and osx. The cmake build probably still doesn't work on MacOSX though.
...
Also added an option to explicitly disable building with MPG framedumps. To use it add -DENCODE_FRAMEDUMPS=OFF to cmake on the command line.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6429 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-17 01:03:39 +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
b2e1ea3279
UDPWiimote.cpp and UDPWrapper.cpp are now used again.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6408 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 14:02:16 +00:00
j4ck.fr0st
01ac354e97
Move UDPConfigDiag into Dolphin, to allow building of UDP Wiimote again.
...
Please test this, I don't have any phones or whatever capable of communicating with it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6405 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-14 13:30:57 +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
NeoBrainX
b75a805859
Add an experimental CMake build system as a possible replacement for SCons. Only tested on Linux, should work on OS X and Windows in the future as well though.
...
Some notes about this:
- config.h doesn't get written yet, so you'll have to use one generated by SCons
- dependency checking isn't really implemented, yet. Just some basic checks for OpenGL or ALSA, we need something more sophisticated though.
- the OpenGL plugin fails to load for some reason which I can't debug right now due to the libc debuginfo package version in openSUSE not matching the runtime packages
- there's even some support for generating install packages (rpm/deb/.. packages, NSIS installer, etc). It doesn't work properly right now though, since some paths seem to be hardcoded into Dolphin's source
- probably lots of other stuff I forgot... Just take a look at all the TODOs in the CMakeLists.txt files for more information ;P
Additionally, I added various files to the svn:ignore list.
tl;dr: Unless you are a dev or you're building binary packages, this commit shouldn't bother you :P
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6326 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-01 15:47:02 +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
bfd04e380e
WiimoteNew: Added button mappings for tables and crossfade slider on emulated turntable extension.(completely untested in game)
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6260 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-10-05 21:43:51 +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
Jordan Woyak
eda652b7a0
New Wiimote Plugin: Fix Emulated Wiimote Problem.(fixes issue 3230) Made the "Connected to X Wiimotes" text update on all tabs when clicking "Refresh"/"Pair Up". Some other cleanup.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6216 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-18 16:43:43 +00:00
Jordan Woyak
19a50b3c51
New Wiimote Plugin: Added a real wiimote "Pair Up" button on Windows for the Microsoft bluetooth stack, like the old plugin. The PairUp function was copied from the old plugin and cleaned up. (Mostly untested because I'm not using the MS stack) Please test. Other minor changes to emu-wiimote and DInput. (Perhaps the "Refresh" button should call PairUp() followed by Refresh() to make the dialog simpler.)
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6213 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-16 22:50:18 +00:00
Jordan Woyak
2cddf48cde
ControllerInterface: DirectInput: Added support for Ramp and various Periodic force types. Only Constant forces were supported prior. (only partially tested due to lack of hardware) This may improve performance for those experiencing emulated wiimote slowdowns when using DInput rumble.
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6212 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-16 05:09:29 +00:00
Jordan Woyak
7afd393acb
GCPad/Wiimote New (ControllerInterface): Some tweaks to the DirectInput code. (fix for a random gamepad which didn't work)
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6159 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-09-02 00:03:25 +00:00
Jordan Woyak
4e81cb4012
GCPad/Wiimote New: (OS X Config Dialog) Temporarily fix a crash when selecting an item in the device list (a current bug in wxWidgets with wxTE_PROCESS_ENTER). (Windows DirectInput) Hopefully made axis enumeration and the fall back to polled data(for drivers which don't support buffered data) simpler and more foolproof (a few users were having issues with a few specific gamepads).
...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6143 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-08-29 03:45:56 +00:00