Commit graph

6429 commits

Author SHA1 Message Date
Ryan Houdek
342496563d Merge pull request #3455 from Sonicadvance1/GC_adapter_android
[Android] Add support for the Wii U Gamecube adapter under Android.
2016-01-06 15:07:09 -05:00
booto
a1db1a2082 SI: Base SI sampling on VSync & horiz lines 2016-01-06 23:47:20 +08:00
Ryan Houdek
6e503bebc4 Add a stubbed GCAdapter namespace.
This cleans up a bunch of #ifdef checks in places.
2016-01-06 00:57:08 -06:00
Ryan Houdek
1dcc199a63 Fix GCPad recalibration shortcut.
Dolphin has supported the recalibration shortcut (X+Y+Start) for quite a long while. So if someont's axises are terrible, you could easily
recalibrate.
Games even get the initial calibration upon boot(Most of the time).

While changing over the GCAdapter code, I was testing to make sure the reset and calibration shortcuts still worked, turns out they didn't work at
all.
Looking in to the problem, we capture the combination properly, and we wait three seconds until we actually fire that off recalibration.
The problem is for Nintendo's SDK to properly handle recalibrating, we need to send back data saying that it needs to recalibrate.
On hardware this is done as part of the 64bits of data the controller sends back to us.
On holding of the controller, bit 61 of the return value is set, which the Nintendo SDK catches, and then signals immediately afterwards a CMD_ORIGIN
command in order to recalibrate the controller.
We were outright ignoring this bit, so the library wasn't ever recalibrating. I suspect in the past the class itself used to use the calibration data
to to offset the data, but somewhere along the lines it got munged out of existence.

The Gamecube adapter does this shortcut in a bit of a unique way, instead of sending the command and having the library support it and what have you.
Once holding the shortcut for the amount of time, the adapter reports back that the controller has actually been disconnected. Then when you let go of
the combination, the adapter states that a new device has been connected to that port, and the recalibration happens because a new device is
"connected."

This fixes controller calibration for both emulated GC controllers and also the Wii Gamecube Adapter.
2016-01-06 00:41:00 -06:00
degasus
3ff4ec275a Throttler: Rename "framelimiter" to "emulation speed".
We don't throttle by frames, we throttle by coretiming speed.
So looking up VI for calculating the speed was just very wrong.
The new ini option is a float, 1.0f for fullspeed.
In the GUI, percentual values are used.
2016-01-05 23:39:05 +01:00
Ryan Houdek
49410576e9 Make the Wii U Gamecube adapter work with less magic.
The Wii U Gamecube controller adapter setup has always been a bit weird. It tries to be as automatic as possible to make the user experience as easy
as possible.
The problem with this approach is that it brings a large disconnect in the user experience because you have the Gamecube controller setup with regular
gamepads and then for some reason below that you have a "direct connect" option which will cause the Gamecube Adapter to overwrite the regular inputs
if something was connected.
While this works and allows the user to only click one checkbox to get the device working, it breaks the user's experience because they don't really
know what "direct connect" means and won't look it up to figure out what it is. Just expecting the device to work (At least one occurence of this in
the IRC channel in the last week).

This way around also had the terrible nature of making the code more filthy than it needed to be. The GCAdapter namespace was parasitic and hooked in
to the regular GC Controller SI class to overwrite the data that it was getting from the default configuration.
Now instead we have a specific SIDevice class for the Wii U Gamecube adapter. This class is fairly simple and is a child of the regular SI Gamecube
Pad device and only reimplements what it needs to.
This also gives the ability to configure controllers individually, which allows the user to configure rumble individually per pad input.

Overall the code is cleaner, and it fits more in line with how the rest of Dolphin works.
2016-01-05 13:44:37 -06:00
Ryan Houdek
371e9f4fae Move SI_GCAdapter over to InputCommon 2016-01-05 13:44:37 -06:00
Ryan Houdek
14e6720f22 Fix warning in VideoInterface 2016-01-05 11:54:04 -06:00
Ryan Houdek
e8e0ad3e52 Merge pull request #3408 from Tilka/fcmp
JitArm64: fix fcmpo/fcmpu
2016-01-04 22:19:32 -05:00
Ryan Houdek
b00bb300e5 Merge pull request #3447 from degasus/arm
JITArm64: Single precision + FPRF
2016-01-04 22:09:44 -05:00
jake8
cc8aeec58c Added hotkey for toggling the crop setting 2016-01-04 10:10:49 -05:00
Ryan Houdek
a898aa1585 Merge pull request #3436 from endrift/fix-libusb
HW: Fix libusb support for older libusb APIs
2016-01-03 12:35:08 -05:00
Ganael Laplanche
fb3b1e4eb0 Add missing header for sprintf() 2016-01-03 01:30:39 -08:00
Jeffrey Pfau
d4e2c9fa98 HW: Fix libusb support for older libusb APIs 2016-01-03 00:53:31 -08:00
skidau
96d8ea5537 Merge pull request #3415 from rabbott99/movie-end-pause
Movie: Fix "Pause at End of Movie" for wii games
2016-01-02 09:08:06 +11:00
Rohit Nirmal
76333b388f Fix building with PCH disabled. 2016-01-01 10:26:15 -06:00
Ryan Houdek
f836e5937f Merge pull request #3422 from Sonicadvance1/Linux_bba_bridge
Support multiple bridge interfaces in Linux.
2016-01-01 04:23:06 -05:00
Ryan Houdek
454ebb7150 Merge pull request #3417 from aserna3/remove_salt_button
[Netplay] Disabled loading savestates
2016-01-01 04:02:43 -05:00
Ryan Houdek
4e22bab71d Support multiple bridge interfaces in Linux.
This allows you to run multiple instances of Dolphin that touch the BBA (Up to a 32 interface limit)
2016-01-01 02:51:31 -06:00
Scott Mansell
5cd4619a1d Merge pull request #3413 from spxtr/follow-pointers
Allow MemoryWatcher to follow pointers
2016-01-01 21:45:44 +13:00
Rohit Nirmal
a551e8adbb Fix building with PCH disabled. 2016-01-01 02:32:53 -06:00
Anthony Serna
42c38cbbd3 Blocked netplay users from desyncing by messing with savestates. 2015-12-31 18:50:45 -06:00
rabbott99
d2ef903d1a Movie: Fix "Pause at End of Movie" for wii games.
InputUpdate() is never called during wii playback, so the pause never
executed.
2015-12-30 23:11:40 -05:00
spxtr
525fc4fe8a Allow MemoryWatcher to follow pointers 2015-12-30 19:10:31 -08:00
booto
d9e921cc2c VI: set the JP bit of VI's DTV reg when needed
The "Force NTSC-J" option was broken by 480dbb22f2
 (i.e. field-timing). A side effect of this was that it exposed a bug
 where the JP region bit of VI's DTV reg was not automatically set for wads
 from the JP region.
2015-12-31 05:36:29 +08:00
Scott Mansell
afde6ae72c Merge pull request #3403 from spxtr/reporter
Add support for sending game memory changes to outside processes
2015-12-30 15:17:47 +13:00
spxtr
2f50560602 Add support for sending game memory changes to outside processes 2015-12-29 17:59:16 -08:00
Lioncash
4bc7c0c5a8 DSPCore: Prefix globals with g_ 2015-12-29 10:40:44 -05:00
Lioncash
78565fabbc DSPCore: Make the DSP emitter global a unique_ptr 2015-12-29 10:29:02 -05:00
skidau
c16c2d9356 Merge pull request #3393 from rabbott99/desync-fix
Movie: Reset wiimotes at at start of recording/playback to fix desync issues
2015-12-29 11:58:03 +11:00
rabbott99
9e54cf80c2 Movie: Reset wiimotes at at start of recording/playback,
to prevent desync issues which occur when the a game has been opened beforehand
2015-12-28 19:44:42 -05:00
skidau
5fefc1fd79 Merge pull request #3375 from mbc07/IPLfonts
Always load system fonts from IPL dump, if available
2015-12-29 11:21:03 +11:00
skidau
d3d0aa69ce Merge pull request #3397 from skidau/dsp-acc-loop-end
Catered for the case where ADPCM audio would loop before the end of the stream
2015-12-29 10:21:12 +11:00
Markus Wick
aabcd441d9 Merge pull request #3381 from Armada651/revert-3076
Revert "Merge pull request #3076 from void-ghost/stereo3d_presets"
2015-12-28 10:18:32 +01:00
Scott Mansell
790a836736 FifoAnalyzer: Fix a few warnings that visual studio missed. 2015-12-28 20:20:30 +13:00
Scott Mansell
52d6a7505a Merge pull request #3239 from phire/cleanup-fifo-analyzers
Cleanup fifo analyzers (and fix major bugs with fifo recording)
2015-12-28 11:14:09 +13:00
skidau
5555822ca2 Catered for the case where ADPCM audio would loop before the end of the stream. Patch by hk.konpie. 2015-12-26 22:57:43 +11:00
Mateus B. Cassiano
7f1fe7a6cb Always load system fonts from IPL dump, if available 2015-12-24 15:57:54 -03:00
Scott Mansell
0216879d3e Revert "Config Hotfix: Prevent per-game settings (ie. GameINI) being stored to the global user configuration." 2015-12-24 18:25:22 +13:00
Rohit Nirmal
4163ab6a0e Fix building with PCH disabled. 2015-12-23 09:54:33 -06:00
Jules Blok
8bda12bcfd Revert "Merge pull request #3076 from void-ghost/stereo3d_presets"
This reverts commit 81414b4fa2, reversing
changes made to b926061f64.

Conflicts:
	Source/Core/DolphinWX/Frame.cpp
	Source/Core/VideoCommon/VideoConfig.cpp
	Source/Core/VideoCommon/VideoConfig.h
2015-12-23 00:35:19 +01:00
Mathew Maidment
1b69743ba1 Merge pull request #3362 from lioncash/memory
NANDContentLoader/WiiWAD: Get rid of raw delete and new
2015-12-22 06:39:12 -05:00
Scott Mansell
ce6de78854 Merge pull request #3250 from JosJuice/loadgameini-condition
BootManager: Remove unnecessary LoadGameIni condition
2015-12-22 13:24:09 +13:00
JosJuice
1b946c2ff3 BootManager: Remove unnecessary LoadGameIni condition 2015-12-22 00:54:54 +01:00
Scott Mansell
a691e1fb6d Merge pull request #2621 from AdmiralCurtiss/config-cache-methods
BootManager: Slightly clean up the config_cache.
2015-12-22 12:52:16 +13:00
Admiral H. Curtiss
4d2e9abba7 BootManager: Slightly clean up the config_cache stuff by pulling the save and restore into their own methods. 2015-12-22 00:30:25 +01:00
Admiral H. Curtiss
3149140052 Config: Hotfix to prevent per-game settings from ie. GameINIs being stored to the global user configuration. 2015-12-22 00:16:29 +01:00
Rohit Nirmal
aaa89d4f73 Silence -Wshadow and -Wmaybe-uninitialized warnings. 2015-12-21 10:06:07 -06:00
Lioncash
cbeb7034eb Volume: Make GetTMD return a vector 2015-12-19 18:00:44 -05:00
Lioncash
c78c54c546 NANDContentLoader/WiiWAD: Get rid of raw delete and new 2015-12-19 17:37:09 -05:00