Commit Graph

2985 Commits

Author SHA1 Message Date
skidau
17c4fcfd90 Removed the updating of PC in GenQuantizedStores() as the generated code is static. 2013-02-10 18:40:50 +11:00
skidau
056930cac8 Updated PC on a few memory writes that were missed in the FifoBusy branch. Thanks to hk.konpie for the tip.
Fixes issue 5993.
2013-02-10 13:33:56 +11:00
Jordan Woyak
50c83d614c More attempts at fixing Windows and OS X. 2013-02-08 21:20:54 -06:00
Jordan Woyak
9bb9286cd3 OSX buildfix! 2013-02-08 16:59:59 -06:00
Jordan Woyak
1f1b4a6992 Hopefully make real wiimotes on OSX less crashy. 2013-02-08 16:54:48 -06:00
Jordan Woyak
a11827cdf0 Use different reply delays for various DI commands.
Fixes issue 5983.
2013-02-08 16:27:14 -06:00
Jordan Woyak
1998da867b OSX fix maybe. (based on jchadwick's patch) 2013-02-08 12:33:45 -06:00
Jordan Woyak
8ce58759e3 Remove some old nonsense. 2013-02-07 23:52:50 -06:00
Jordan Woyak
87bbdbf542 Remove settings stuff that was not actually used anywhere. 2013-02-07 23:23:32 -06:00
Jordan Woyak
026793fa4a Fixup real wiimote GUI. 2013-02-07 23:17:51 -06:00
Jordan Woyak
3063942dd0 some cleanup 2013-02-07 21:54:23 -06:00
Jordan Woyak
c4df69a342 Merge branch 'master' into real-wiimote-scanning
Conflicts:
	Source/Core/Core/Src/HW/WiimoteReal/IOWin.cpp
	Source/Core/Core/Src/HW/WiimoteReal/WiimoteReal.cpp
2013-02-07 20:22:06 -06:00
Jordan Woyak
a2ca76ebd9 Buildfix. 2013-02-07 15:16:41 -06:00
Jordan Woyak
57ea09dcc2 Fix BT-less! 2013-02-07 14:46:01 -06:00
Jordan Woyak
9ecfb5e75d Buildfix for real! 2013-02-07 14:42:50 -06:00
Jordan Woyak
85f25ded4c Buildfix!
Programming for Windows on Linux is hard, OK?
2013-02-07 14:22:45 -06:00
Jordan Woyak
8f5fb7e6f9 Hopefully buildfix Windows. (thanks for the patch, RachelB) 2013-02-07 14:15:47 -06:00
Jordan Woyak
9cbfddd788 Only delay DI and fs IPC replies.
Fixes issue 5982.
2013-02-06 16:52:51 -06:00
Jordan Woyak
937d9e9007 Revert "Only delay DI command replies."
Fix "Wii Party" again.

This reverts commit fb5b5e8b63.
2013-02-05 02:51:34 -06:00
Jordan Woyak
d0190faded Hopefully make wiimote speaker less crappy. 2013-02-04 22:11:13 -06:00
Jordan Woyak
bc35764ec2 Fixed issue 5973. (probably) 2013-02-04 21:25:14 -06:00
Jordan Woyak
a455abe00b Merge branch 'more-ipc-hle-hacks'
Fixes issue 5972.
2013-02-04 21:01:46 -06:00
Jordan Woyak
d5ec631337 Make real wiimote speaker not cause massive input delays.
Fixes issue 5966.
2013-02-04 20:57:08 -06:00
Jordan Woyak
fb5b5e8b63 Only delay DI command replies. 2013-02-04 19:39:31 -06:00
Jordan Woyak
2ad30958d6 Stuck an IPC HLE Update call in WII_IPCInterface::Write32.
While hacky, this seems to fix various problems without increasing IPC HLE freq to infinity.
Thanks to Aristar for helping test.
Increase IPC command reply delay to 1/100th of a second. (fixes DKCR hanging)
2013-02-04 17:41:10 -06:00
Jordan Woyak
ca46a34dde Merge branch 'ipc-hle-hacks'
Thanks skid_au for testing and helping think of the solution!

Fixes Issue 4608.
Fixes Issue 5050.
Fixes Issue 5103.
2013-02-02 12:54:22 -06:00
Jordan Woyak
e3c6c6dd69 Increase IPC HLE freq a bit for DKCR. 2013-02-02 12:52:12 -06:00
Jordan Woyak
5c08df00b2 Re-increase max ACL queue size to 100. Better than possibly dropping a packet.
Reduced IPC update freq some.
Removed some other nonsense.
2013-02-02 03:55:33 -06:00
Jordan Woyak
286392af9d Reduce ACL max queue size back to 10. Increase IPC_HLE freq to 8 KHz to compensate. 2013-02-01 23:44:17 -06:00
Jordan Woyak
15936cb995 Change copy_n to copy and update the save state version because I forgot. 2013-02-01 23:27:49 -06:00
Jordan Woyak
11a4c92325 Remove "Alternate Wiimote Timing" option. It's no longer needed.
Also kill some irrelevant comments.
2013-02-01 21:39:01 -06:00
Jordan Woyak
00a1f351e9 Delay IPC replies directly caused by requests by 150th of a second. Fixes everything. 2013-02-01 20:58:17 -06:00
Jordan Woyak
039bf27767 Allow Rhythm Heaven Fever's "Remix 1" to work by disallowing a simultaneous "Ack" and "Reply". 2013-02-01 19:01:47 -06:00
Jordan Woyak
e4588e2dfc Workaround ACL overflow issues by not dropping packets until buffer reaches size of 100.
It seems to work without causing input delays or anything bad.
2013-02-01 19:00:10 -06:00
Glenn Rice
f7fa33f2d6 Fix remaining compiler warnings. 2013-01-31 15:29:29 -06:00
Glenn Rice
0ffdd2607f Fix the majority of the compiler warnings unearthed by the addition of
the new warning flags.
2013-01-29 23:24:51 -06:00
Jordan Woyak
0e04e0c305 Fix some shadowing warnings. 2013-01-29 16:43:22 -06:00
Sonicadvance1
f13a07fb82 Remove this double flush in the idleskipping code. 2013-01-29 21:05:42 +00:00
skidau
2ab1cccbe4 Preset HBeamPos to -1. Fixes NTSC-U N64 VC games.
Fixes issue 5950.
2013-01-29 22:43:56 +11:00
Glenn Rice
f660077d06 Remove deprecated method for accessing a gtk widgets window.
Fix a debug build compiler warning.
2013-01-25 20:11:17 -06:00
Pierre Bourdon
bad4f7f790 Rewrite the linear interpolation SRC to give the exact same results as the one in AXWii 2013-01-25 19:16:07 +01:00
Pierre Bourdon
9776f135e2 Add polyphase resampling support in AX 2013-01-25 08:25:28 +01: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
skidau
cff8fe8f77 Revert the fix for the random static audio that would sometimes occur in DSP HLE and DSP LLE. The fix caused the music in Fast - Racing League to play random sounds.
This reverts commit r7bf72a6c8476798ecbb9cdb13ec3a8f0b9858da6.

Fixes issue 5910.
2013-01-22 21:17:29 +11:00
Pierre Bourdon
1612225e79 Implement AXWii command 01: ADD_TO_LR 2013-01-21 11:51:55 +01:00
Rachel Bryk
45a7fa293b Set the default memory card path as relative too. 2013-01-20 19:16:02 -05:00
Pierre Bourdon
4ef021e975 Better global volume adjustment on a voice. Fixes one of the 2 issues with the HOME button menu sound. 2013-01-20 17:36:57 +01:00
Pierre Bourdon
7252becf24 Fix the voice LPF implementation 2013-01-20 17:20:30 +01:00
Pierre Bourdon
c662901504 Implement low-pass voice filtering, untested because I couldn't find any game using it 2013-01-20 16:15:42 +01:00
Pierre Bourdon
25419ed827 Implement Wiimote sound mixing in AXWii 2013-01-20 15:32:55 +01:00
Pierre Bourdon
35249a8576 Handle 3ms at a time in AXWii instead of 3x1ms 2013-01-20 14:42:37 +01:00
Pierre Bourdon
fb64cfd18a AXWii: fix L/R channels being swapped when outputting audio samples 2013-01-20 07:36:48 +01:00
Pierre Bourdon
5c3bcc8f5f Revert "Readd the old AXWii (rename the new version to NewAXWii) and set it as default"
Put back the new AX Wii as the default in this development branch.
2013-01-20 07:08:15 +01:00
skidau
4cc4abfe25 Preset the HBeam and VBeam to 0 on boot. Fixes Densha de Go Shinkansen EX.
Fixes issue 4882.
2013-01-20 16:11:15 +11:00
skidau
0a5f479250 Added a game property to disable the clearing of the data cache. This is needed by one known game, "Rubik's Puzzle Galaxy: Rush".
Fixes Violin Paradise.
2013-01-20 13:09:38 +11: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
Rachel Bryk
7f8341825b Remove lttc for lle on thread too. 2013-01-19 17:17:28 -05:00
NeoBrainX
37af25e03d Revert my dual-core fix for FifoPlayer. Apparently it breaks more than it fixes.
This reverts commit bab9b5d3ce.
2013-01-19 22:36:05 +01:00
Rachel Bryk
01d393ed6c Actually remove lttc. 2013-01-19 15:21:00 -05:00
Rachel Bryk
d6cee44be0 Typo fix. 2013-01-19 15:08:29 -05:00
Rachel Bryk
ed1a9480b0 Misc movie fixes.
Fix setting memory cards on playback.

Fix saving revision to header.

Herpa derp lets open a file while it's still open in another function, and not even check if it fails to load.

Fix an assumption that wii games are using a wiimote.
2013-01-19 15:02:02 -05:00
Pierre Bourdon
905d38827e Implement 8 bit loads backpatching 2013-01-19 16:52:13 +01:00
Pierre Bourdon
c553c42d63 Implement backpatch support for 16 bit loads 2013-01-19 16:33:52 +01:00
Jordan Woyak
5ff77f9c88 Fix emulated turntable crossfade slider. (DJ Hero controller)
Fixes issue 4504.
2013-01-18 13:42:44 -06:00
Jordan Woyak
69b1da915f Fix emulated wiimote shaking in Wario Land: Shake It, and probably others.
Fixes issue 5295. (probably issue 5017 and issue 5578 too)
2013-01-18 00:15:42 -06:00
Rachel Bryk
69c91a20ea Merge branch 'gameinistuff' 2013-01-17 15:22:38 -05:00
Rachel Bryk
592395bc67 Copypaste fail. 2013-01-17 14:30:47 -05:00
Rachel Bryk
e74dc0b41f Update title/status bar when pausing emulation. 2013-01-16 22:52:01 -05:00
Rachel Bryk
196c2867ad Move DSP settings to dolphin.ini 2013-01-16 20:17:44 -05:00
Jordan Woyak
3cb4300439 Merge branch 'external-theme' 2013-01-16 19:00:19 -06:00
Jordan Woyak
246b11791b More attempts at a Windows buildfix. 2013-01-16 16:14:23 -06:00
skidau
7e5d877858 Merge branch 'ES_LAUNCH'
Games that are now playable:

Back to the Future: The Game
CSI - Hard Evidence
CSI - Deadly Intent
CSI - Fatal Conspiracy
Red Steel
Metroid Prime: Trilogy
Wii Sports + Wii Sports Resort pack
Sam & Max: Season One
Sam & Max: Beyond Time and Space
Kirby's Dream Collection: Classic Collection
Indiana Jones and the Staff of Kings: Fate of Atlantis


* ES_LAUNCH:
  Fixed SSBB from starting at the mini-games screen.
  Build fix
  Corrected a state bug where newly loaded dols did not have their patches applied.
  Changed the HLE system to allow it to hook the beginning, the end or replace the entire function without changing the GC memory.  Fixes Kirby's Return to Dreamland. Added a way to categorise the type of HLE function.  Currently, there are debug, floating point, memory and generic functions. Added a HLE function for OSGetResetCode (Warm reset).  Fixes the CSI games. Added a switch to disable all of the HLE functions if the idle skipping option is disabled.
  Added some IOS version checks and code to clear memory before loading the dol.
  Added support for Reset (from menu).  Fixes Sam & Max.
  Added an IOS check as games which use IOS older than IOS30 do not need to be HLE'd.  Added some stubs for Reset to Menu and SSBB's load from disc partition.  Fixed loading Fate of Atlantis from the Indiana Jones and the Staff of Kings game.
  Added argument detection and passing to the loaded dol.  This fixes the Wii Sports+Wii Sports Resort bundle pack.
  Added preliminary support for ES_LAUNCH (Wii Multi-boot games) by using HLE to hijack the OSBootDol function.

Conflicts:
	Source/Core/DiscIO/Src/FileSystemGCWii.cpp
2013-01-16 20:22:29 +11:00
Jordan Woyak
54974cbc8e Merge branch 'unix-fastmem' 2013-01-15 23:19:03 -06:00
Jordan Woyak
62f56eb731 Sloppily fix wiimotes not being connected after boot. 2013-01-15 23:05:30 -06:00
Jordan Woyak
54497be653 Untested Windows buildfix attempt. 2013-01-15 23:02:09 -06:00
Jordan Woyak
b2acae44b7 Real wiimote continuous scanning working on Linux.
Windows and OS X totally broken from various refactoring.
2013-01-15 21:15:54 -06:00
lioncash
7d11f8cedd - Made GenRandomCode's 'size' parameter unsigned. Doesn't make sense to have the capability of being able to be negative.
- Made CodesToHeader's 'numCodes' unsigned for the same reason.

- Removed some type-casts from other functions.
2013-01-15 17:50:50 -05:00
Jordan Woyak
d9aecd80b1 Real fix for Linux Wiimote disconnect hanging.
Fixes issue 5903.
2013-01-15 15:20:33 -06:00
lioncash
866cdc5961 Get rid of unused iterators in JitCache. 2013-01-15 12:00:35 -05:00
Glenn Rice
e75a7b4572 Fix a gcc initialization order warning. 2013-01-15 06:41:11 -06:00
skidau
0a4272c96b Merge branch 'OpenAL'
* OpenAL:
  Changed SoundTouch to use float samples, allowing SSE to be used. Made the DPL2 decoder disabled by default. Re-added the audio hack used by the Accurate VBeam emulation option.
  Added a latency setting to the audio settings. Removed the Sample Rate setting.  It is now hardcoded to 48000hz (accurate audio timing).
  Skipped timestretching if the emulator is running below 10% speed to prevent buffer overflows.
  Removed the synchronisation between the CPU thread and the audio thread. Added code to detect and resume from buffer underruns. Disabled the ability to change the DPL2 option after the game has started. Fixed a memory leak that occurred in the DPL2 decoder. Fixed the OSX build.
  Build fix
  Added a Dolby Pro Logic II (DPL2) decoder in the OpenAL backend.  DPL2 audio is decoded to 5.1.  Code adapted from ffdshow. Added an option in the DSP settings to disable the DPL2 decoder in case Dolphin incorrectly detects a 5.1 audio system. Updated the OpenAL files to OpenAL Soft 1.15.1 in the Windows build.
  Removed the system timing hack which was activated when the Accurate VBeam option was enabled.
  Fixed the include directories in Audio Common for the Windows 32bit build.
  Fixed the include directories in Audio Common for the Windows build.
  Messed up the static include line
  Fix include paths and compiling in Linux. Externals soundtouch is 1.7.1, while Ubuntu 12.10 is 1.6.x. Externals soundtouch is compiled with integer samples, while ubuntu is compiled with float samples. Float samples is probably the more common route. If you're going to use soundtouch, you should probably use SAMPLETYPE instead of explicitly choosing short. This probably breaks the windows build since its includes aren't setup.
  OSX: typedef signed char BOOL
  OSX build fix
  Build fix
  Added audio time stretching by using the SoundTouch library.
  Implemented correct audio timing.
  OpenAL for Windows initial commit
2013-01-15 22:40:12 +11:00
skidau
6d4a566bc4 Changed SoundTouch to use float samples, allowing SSE to be used.
Made the DPL2 decoder disabled by default.
Re-added the audio hack used by the Accurate VBeam emulation option.
2013-01-15 22:29:26 +11:00
Matthew Parlane
86ee5600dc Fix bug: reuse after free.
static should not have been used here.
2013-01-15 22:27:49 +13:00
Jordan Woyak
b8e66a48a1 Fix hang on Linux Dolphin close when wiimotes are connected. 2013-01-14 17:55:23 -06:00
Jordan Woyak
032013c4bc Make IsValidBluetoothName just check for "Nintendo RVL-" rather than having a bunch of hardcoded names. 2013-01-14 17:49:49 -06:00
Ryan Houdek
5005d528c4 This changes Linux to control Wiimotes on the interrupt channel. Which in turn allows -TR wiimotes to work in Linux. 2013-01-14 14:43:49 -06:00
Ryan Houdek
30d4259bba This removes the Lock Thread to Core option. Please file your complaints appropriately. 2013-01-14 14:20:41 -06:00
Jordan Woyak
644c8f2713 Enhance an error message.
Fix issue 5893.
2013-01-13 17:52:32 -06:00
Jordan Woyak
6f7b11b9be themes directory stuffs 2013-01-13 14:12:19 -06:00
Jordan Woyak
0c95673478 Kill themes in the config and load pngs from "theme" directory for now. 2013-01-13 13:12:50 -06:00
Jordan Woyak
6b8dc6802b Fix two warnings. 2013-01-13 12:57:17 -06:00
Pierre Bourdon
eb5e7d44bd Enable fastmem (aka. backpatch) support on Linux amd64 and OSX x64. Not tested on OSX, 8% performance increase on Linux amd64 2013-01-13 07:00:56 +01:00
skidau
1c462a1eca Added a latency setting to the audio settings.
Removed the Sample Rate setting.  It is now hardcoded to 48000hz (accurate audio timing).

Fixes issue 5672.
2013-01-13 00:05:30 +11:00
skidau
80f4475e76 Added a Dolby Pro Logic II (DPL2) decoder in the OpenAL backend. DPL2 audio is decoded to 5.1. Code adapted from ffdshow.
Added an option in the DSP settings to disable the DPL2 decoder in case Dolphin incorrectly detects a 5.1 audio system.
Updated the OpenAL files to OpenAL Soft 1.15.1 in the Windows build.

Fixes issue 3023.
2013-01-11 14:03:09 +11:00
Jordan Woyak
a693b847f0 buildfix! 2013-01-10 16:29:16 -06:00
Jordan Woyak
cc0226254d Windows/OS X buildfix 2013-01-10 16:23:47 -06:00
Jordan Woyak
1c10d3a1bb better fix for linux wiimote disconnect crash 2013-01-10 16:16:49 -06:00
Jordan Woyak
e1c8bea2f6 fix crash, but now 100% cpu usage on disconnect 2013-01-10 15:23:42 -06:00
NeoBrainX
198d60c569 FifoPlayer: Support recording texture preloads 2013-01-10 18:30:27 +01:00
skidau
7bf72a6c84 Fixed the random static audio that would sometimes occur in DSP HLE and DSP LLE. 2013-01-11 01:03:18 +11:00
skidau
c7ccf7e5c6 Removed the system timing hack which was activated when the Accurate VBeam option was enabled. 2013-01-10 09:11:37 +11: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
skidau
63b38be97c Added audio time stretching by using the SoundTouch library. 2013-01-09 22:57:32 +11: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
Matthew Parlane
2844708c2d Fix reference to deleted object bug. This should fix channels not loading from sysmenu anymore. 2013-01-09 09:38:36 +13:00
NeoBrainX
e204a6e015 Add some TODOs. 2013-01-08 18:56:01 +01:00
Pierre Bourdon
8cfceb1186 Disable swapping cmp with instructions potentially raising interrupts
Workaround for issue 5864 disabling parts of an optimization in the JIT. This
is not the best solution to fix this issue, but at least it does not crash.
2013-01-08 00:02:38 +01:00
skidau
5240e75be2 Fixed the infinite rumble problem caused by r4d6056f14625. 2013-01-07 12:25:18 +11:00
Jordan Woyak
7a95713496 Fix some warnings. Changes suggested by nerzhultheking. 2013-01-05 22:45:32 -06:00
skidau
1d691d7de4 Fixed SSBB from starting at the mini-games screen. 2013-01-06 14:36:38 +11:00
skidau
c61b0c7fba Build fix 2013-01-05 12:56:35 +11:00
skidau
1c9c6052d5 Corrected a state bug where newly loaded dols did not have their patches applied. 2013-01-05 12:32:47 +11:00
skidau
4d6056f146 Added GC Steering Wheel emulation.
To set it up, change the Port 1 controller to "Steering Wheel" under the GameCube tab.  This will tell the game that you have a force feedback steering wheel connected.
In the Gamecube Pad Settings, change the Rumble Motor to "Constant".
Configure the controls:

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

Thanks to ulao for the device communications info.
2013-01-04 14:08:09 +11:00
Rachel Bryk
5fbce28bbc Save git hash to .dtm header. 2013-01-01 16:34:07 -05:00
skidau
3fd1b4ee83 Removed some debug testing code. 2013-01-01 15:13:18 +11:00
Rachel Bryk
9af711b12c Always count GC wheel inputs too. 2012-12-31 21:57:39 -05: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
Matthew Parlane
c728ef2cd3 Last warning for me on Linux. 2013-01-01 14:42:30 +13:00
rog
71bb297f2c Always count gc controller inputs. 2012-12-30 06:48:37 -05:00
Ryan Houdek
ff3b22e1ff Clear up some warnings that crop up from -Wextra 2012-12-30 03:28:50 -06:00
skidau
5ccbcf455e Added preliminary GameCube Steering Wheel emulation via a PC Force Feedback Steering Wheel. 2012-12-30 13:41:48 +11:00
Matthew Parlane
cd54d6efdd Mismatched new/delete. 2012-12-29 22:26:09 +13:00
Glenn Rice
c303669dd0 Clean up some messy code issues that have been annoying me. 2012-12-28 09:58:06 -06:00
skidau
95f6685900 Changed the HLE system to allow it to hook the beginning, the end or replace the entire function without changing the GC memory. Fixes Kirby's Return to Dreamland.
Added a way to categorise the type of HLE function.  Currently, there are debug, floating point, memory and generic functions.
Added a HLE function for OSGetResetCode (Warm reset).  Fixes the CSI games.
Added a switch to disable all of the HLE functions if the idle skipping option is disabled.
2012-12-28 14:26:46 +11:00
rog
2fd1c9e7c2 Allow setting cpu engine and whatever bHLE_BS2 is from game ini. 2012-12-27 09:42:20 -05:00
Ryan Houdek
67c1c6b062 Merge branch 'GLES-software' 2012-12-26 12:54:58 -06:00
skidau
05730af724 Added some IOS version checks and code to clear memory before loading the dol. 2012-12-26 23:10:41 +11:00
skidau
0c845728cc Added support for Reset (from menu). Fixes Sam & Max. 2012-12-26 23:10:40 +11:00
skidau
88e273fac1 Added an IOS check as games which use IOS older than IOS30 do not need to be HLE'd. Added some stubs for Reset to Menu and SSBB's load from disc partition. Fixed loading Fate of Atlantis from the Indiana Jones and the Staff of Kings game. 2012-12-26 23:06:43 +11:00
skidau
651cedaac4 Added argument detection and passing to the loaded dol. This fixes the Wii Sports+Wii Sports Resort bundle pack. 2012-12-26 23:06:43 +11:00
skidau
fbdf9ba153 Added preliminary support for ES_LAUNCH (Wii Multi-boot games) by using HLE to hijack the OSBootDol function.
Metroid Prime Trilogy is working.  Wii Sports+Wii Sports Resort is not working.  Any games which can be played using the dol replacement trick should work here.

Suspect that the DOL's are meant to receive an argument list which has not been catered for in this code.  This probably also means that the Metroid Prime Trilogy games are locked in Veteran difficulty for the time-being.
2012-12-26 23:06:42 +11:00
Pierre Bourdon
ba348c29d7 Merge branch 'new-ax-hle'
Only AX GC is merged so far, the new Wii AX development will be done in a
separate branch when I'll start working on it.

There are still a few AX GC bugs remaining, but overall a lot less games have
sound issues than before.

Thanks to everyone who helped test the development builds of this branch and
reported results on the forum thread.

Conflicts:
	Source/Core/Core/Src/HW/DSPHLE/UCodes/UCode_AX.cpp
2012-12-25 13:33:53 +01:00
Pierre Bourdon
4a74da3e87 Readd the old AXWii (rename the new version to NewAXWii) and set it as default 2012-12-25 13:30:55 +01:00
Pierre Bourdon
2c58385fe2 Revert "Uninitialized usage.. or so it thought."
This reverts commit 7839676c87.

Parlane, I hate you.
2012-12-24 21:23:28 +01:00
Matthew Parlane
59ec1fe180 Fix some random warnings. 2012-12-24 07:37:50 +13:00
Matthew Parlane
a8ddc3e069 Function definition was not updated. 2012-12-24 00:00:25 +13:00
Matthew Parlane
7839676c87 Uninitialized usage.. or so it thought. 2012-12-24 00:00:04 +13:00
Matthew Parlane
589222857f Someone changed this to a u32... it's definitely a s32 :) 2012-12-23 23:59:10 +13:00
Pierre Bourdon
b0cbac174b Implemented dpop samples support 2012-12-19 08:31:17 +01:00
Pierre Bourdon
071b27f0bb Fix volume mixing in DownloadAndMixWithVolume (same issue with >1.0 volumes) 2012-12-19 05:56:57 +01:00
rog
16ac7803f1 Add support for recording bongos. 2012-12-18 23:20:26 -05:00
Pierre Bourdon
2c10ca4e46 Rewrite the linear sample rate conversion algorithm to make it less hacky and to support arbitrarly big ratios 2012-12-18 17:38:41 +01:00
Pierre Bourdon
1cecbaedce Fix MixAdd with volume. The previous volume formula completely failed with volumes >= 1.0 (0x8000). Fixes Tomb Raider Legends (GC) music. 2012-12-18 07:01:22 +01:00
Pierre Bourdon
faaaa97c9e Added a utility function to dump an AX PB for debugging 2012-12-18 07:00:24 +01:00
Pierre Bourdon
1abbfd4b15 Remove some useless 'inline' attributes from the AX HLE voice mixing functions 2012-12-18 07:00:04 +01:00
Pierre Bourdon
70b3980f46 Fix AX HLE command 12 arguments: takes 4 u16, not 1 2012-12-18 06:58:47 +01:00
Pierre Bourdon
ed59f8ff1d Remove UCode_AX_ADPCM.h, now useless (incorporated into UCode_AX_Voice.h) 2012-12-18 05:55:40 +01:00
Ryan Houdek
512cae69f8 Add a useful comment to DSP.cpp 2012-12-17 15:55:34 -06:00
Ryan Houdek
b78f5debe6 Initial push of GLES and GLUtil file breakup. 2012-12-17 14:54:20 -06:00
rog
4c7b63cf0e Save secondary list sorting.
Allow sorting by platform ascending.

Fixes issue 5774.
2012-12-17 06:08:45 -05:00
Ryan Houdek
532fdada96 Adds the Wii Korean settings file. It was handled in the wii-network branch in rev c42a6f156e. Master handles the settings files differently. Until wii-network merges in to master, this closes issue 5642. 2012-12-14 11:37:26 -06:00
rog
330ea74d19 Allow input displays to work without an active movie. 2012-12-10 06:20:06 -05:00
Glenn Rice
e85438cba0 Clean up gcc/g++ compiler warnings that have accumulated. 2012-12-10 00:40:28 -06:00
rog
43d673b576 Save game list sorting.
Fixes issue 5771.
2012-12-08 23:53:50 -05:00
skidau
aeb5782395 Merge conflict. Fixes issue 5471. 2012-12-06 21:16:27 +11:00
rog
bbf7c3a4d0 Fix a save state crash in some situation. 2012-12-05 17:11:19 -05:00
Ryan Houdek
423024110e Includes are case sensitive and Common is in the include directories so including the file this way was silly. 2012-12-04 11:44:28 -06:00
John Peterson
470a4eee8b Fixing wiimote savestate and recording. 2012-12-03 21:14:25 -05:00
rog
47aaca89eb Fix error message about state undo backup always appearing when no movie is active. 2012-12-02 02:08:43 -05:00
Pierre Bourdon
3ca77cf077 Fix samples clamping and interlacing in the OUTPUT command. Shouldn't have assumed previous AX HLE was doing something right. 2012-12-01 00:54:25 +01:00
Pierre Bourdon
04b1ee0016 Implemented command 01 (download data and mix to MAIN/AUXA/AUXB with volume control). Fixes missing weapon sounds in Metroid Prime 2. 2012-11-28 15:22:02 +01:00
Pierre Bourdon
4cf2856284 Improve savestates support in AX and AXWii 2012-11-28 03:31:46 +01:00
Pierre Bourdon
f11a40f858 Command 13 should upload only AUXA LRS, not MAIN LRS + AUXA LRS. Fixes more GC EA games sound/music (including FIFA 06, Madden 08). 2012-11-28 01:48:27 +01:00
Pierre Bourdon
1a129abe0d AUX return data should be mixed to main buffers, not AUX buffers. Fixes a regression introduced by r954c55e35afb, now EA games sound works again. 2012-11-27 21:48:59 +01:00
Pierre Bourdon
9270b62830 Rewrite MixAUXSamples to make it more clean 2012-11-27 20:36:34 +01:00
Pierre Bourdon
2120f536d5 Implement command 07 in GC AX (download data to main LR and reset main surround) 2012-11-27 20:36:14 +01:00
rog
aaeeef48da Compile fix for linux. 2012-11-26 23:36:47 -05:00
rog
c0bb7aa8f3 Turns out you have to actually commit a change before merging if you want it to be included. 2012-11-26 18:17:07 -05:00
Pierre Bourdon
9b1a66245e Fix an AUX mixing issue introduced when implementing AXWii. Now FIFA 06 sounds great with AX HLE. 2012-11-27 00:03:40 +01:00
Pierre Bourdon
706939e632 Implement command 10, used by FIFA 06 and linked to AUXB mixing. Sound still broken in that game. 2012-11-27 00:03:02 +01:00
Pierre Bourdon
fb1ecd90b0 Implemented command 13 in GC AX, used in some EA games (FIFA 06 now has broken sound, which is still better than no sound) 2012-11-26 23:34:18 +01:00
rog
db458a234a Merge branch 'desync-fixes' into movie-fixes 2012-11-26 12:40:56 -05:00
rog
38e0d06e8c Whoops, was calling GetMD5() twice. 2012-11-26 12:29:36 -05:00
rog
c2146921f9 Call InputUpdate() for wii games when using gc controller but not wiimote. 2012-11-26 03:04:17 -05:00
rog
97f5b1665f what is this even... 2012-11-26 02:11:52 -05:00
rog
0903e20817 Expand input buffer as needed, instead of hardcoding it at 40 MiB.
Patch (mostly) by Ilari.
2012-11-25 22:41:48 -05:00
rog
1917f83244 Cleanup and misc movie fixes. 2012-11-25 19:26:37 -05:00
rog
0c6dad6a37 Clear unneeded variables upon stopping emulation. 2012-11-24 18:27:20 -05:00
rog
d26c7fea17 Remove old, unused code. 2012-11-24 01:40:34 -05:00
rog
f251704df2 The trick to multithreaded emulation is to include thread.h more than once.
Also, rewords some awkardly written messages.
2012-11-24 01:15:26 -05:00
rog
a374f9f049 Check md5 when recording from save state too. 2012-11-23 22:47:32 -05:00
rog
ca650d4435 Record md5 of game file to .dtm, and check it when playing back. 2012-11-23 22:23:58 -05:00
skidau
085c81da86 Mapped the addco and subfco PowerPC instructions. Fixes Frogger: Hyper Arcade Edition. 2012-11-24 00:04:28 +11:00
Pierre Bourdon
9d85052a66 Implement Wiimote audio output in AXWii. Not very useful yet as no sound is currently being mixed to the wiimote channels. 2012-11-20 11:34:49 +01:00
Pierre Bourdon
affdf08fd6 Real fix for the crashes on Windows with AXWii 2012-11-20 09:49:27 +01:00
Pierre Bourdon
e858835c7e Fixing the hack fix (I can't multiply 32x32) 2012-11-20 04:26:07 +01:00
Pierre Bourdon
0d3c3f6339 Fix a crash in AXWii with SRC ratio > 4 (which I thought was impossible, but AXWii changed the SRC algorithm) 2012-11-20 04:18:48 +01:00
Pierre Bourdon
321e3a8421 Add global volume handling for AUX mixing and L/R output in AXWii 2012-11-20 03:32:29 +01:00
Pierre Bourdon
ae85159a94 Add surround sound support to GC AX HLE 2012-11-20 03:22:24 +01:00
Pierre Bourdon
954c55e35a New AXWii now working properly in some games I tested 2012-11-20 03:13:55 +01:00
Pierre Bourdon
e750bed2a9 Rename NewAX -> AX and remove the old code. Time to work on AXWii. 2012-11-19 22:03:56 +01:00
parlane
d7e65f03e4 Fix indentation [ using the web editor D: ] 2012-11-19 19:44:44 +00:00
Pierre Bourdon
4f88fee560 Added a small TODO list of things missing in NewAX 2012-11-19 20:25:57 +01:00
Pierre Bourdon
3541d33c25 Support both versions of the mixer_control bitfield. Fixes Skies of Arcadia music being muted (and sounds being mixed only on the left audio channel), this time without a hack. 2012-11-19 20:10:37 +01:00
parlane
9345501388 Dolphin was crashing after attempting to use a NULL on macosx.
(turns out that passing NULL to string cmp funcs has "undefined behavior".)

Thanks to Grant Paul for this quickfix!
2012-11-19 03:19:51 +00:00
rog
69e8942dac Fixes pausing movies for some 30 fps games, in some situations.
Thanks abahbob for testing.
2012-11-18 01:07:48 -05:00
XtraFear
d6697d50c7 Added option to toggle the display of On-Screen Display messages in the Interface tab. 2012-11-16 23:54:48 +01:00
rog
3a8e8af2d5 Merge movie-fixes. 2012-11-16 12:07:22 -05:00
rog
101de62c86 Remove an old TODO, and add a new one. 2012-11-16 12:03:51 -05:00
Pierre Bourdon
c8b2ba1bc6 Implement the MORE command (0D) used to read more commands from the CPU 2012-11-16 07:51:19 +01:00
Braden
a024d04583 Patch by mwessel that fixes real wiimotes on OSX 10.8 2012-11-15 21:30:19 -06:00
X-tra Fear
5170d65711 Fixed last commit. 2012-11-15 14:47:51 -05:00
Pierre Bourdon
5a2d8661d7 Add comments explaining how the voice processing works 2012-11-15 16:57:33 +01:00
Pierre Bourdon
aa90f799b7 Re-implementation of the AX voice mixing algorithm. Now with 100% less WTF. 2012-11-15 16:30:05 +01:00
rog
25a1979b22 Merge https://code.google.com/r/xtrafear-dolphin-emu 2012-11-14 17:27:46 -05:00
rog
14aa7150d9 Add option for author name for movies. Also, minor cleanup for previous options i've added. 2012-11-14 16:23:20 -05:00
X-tra Fear
11fc13aea4 Fixed WiiMotes disconnecting when ES_LAUNCH is ran. 2012-11-14 16:12:25 -05:00
rog
f5a3379d71 Add config option for mac address. Fixes issue 5694. 2012-11-14 14:28:38 -05:00
Pierre Bourdon
531cc6aaf3 Fixed AUXB_NOWRITE command number and implemented UPLOAD_LRS command (06) 2012-11-14 18:08:29 +01:00
Pierre Bourdon
f84f15c5bf Oops, forgot a memset which removed all AUX effects 2012-11-14 18:03:55 +01:00
Pierre Bourdon
a630357c9e Add AUX mixing support as well as a send&return effect implementation 2012-11-14 17:55:16 +01:00
Pierre Bourdon
61c1fab2c6 Fix Windows support again: std::thread can't take a member pointer with StdThread.h from Common 2012-11-14 12:13:19 +01:00
Pierre Bourdon
db46ccd175 More accurate mixing buffers initialization using parameters from command 00 2012-11-14 12:08:41 +01:00
Pierre Bourdon
24d430eba0 Add NewAX to the VC++ project files 2012-11-14 11:32:57 +01:00
Pierre Bourdon
6a1241c03e Make a hack optional to fix 48KHz output mode with NewAX 2012-11-14 11:25:27 +01:00
Pierre Bourdon
0b275c20af Added output support to NewAX. Now working fine with Tales of Symphonia. 2012-11-14 11:20:54 +01:00
Pierre Bourdon
18f3630af5 PBs processing is now done, just need the output to be able to test 2012-11-14 06:53:36 +01:00
Pierre Bourdon
7535c6d903 Parse the AX command list in the AX thread 2012-11-14 06:15:55 +01:00
Pierre Bourdon
9e813502ac Create a new thread for AX and make it handle the command lists 2012-11-14 05:33:04 +01:00
Pierre Bourdon
3195916744 Basic infrastructure for the new AX HLE, currently not doing anything besides answering mails 2012-11-14 05:08:04 +01:00
Pierre Bourdon
e4d18e3a8b Bound the iteration on the PB list when processing updates.
Fixes freezes introduced in 3.0-807 with DSPHLE on some AX games.

Apparently logic doesn't apply inside the HW/DSPHLE/UCodes directory.
2012-11-13 16:50:42 +01:00
Pierre Bourdon
16060290c2 Fix missing notes in musics with DSPHLE.
Tales of Symphonia and Skies of Arcadia Legends now have working musics with
DSPHLE. Some other games with the same symptoms (missing instruments) should
probably be fixed by that change too.
2012-11-13 09:37:44 +01:00
rog
8fe5aa4ee8 movie cleanup 2012-11-12 20:40:11 -05:00
rog
8eb6f9002e Fixes interpreter when not recording or playing back a movie. 2012-11-12 20:20:34 -05:00
rog
a5d210129d Add an on screen lag counter. 2012-11-11 17:57:06 -05:00
rog
35e5a1e592 Add an option to pause on the last frame of a movie. 2012-11-10 21:57:31 -05:00
Rog
ab48e1154b Stop saving undo buffer (and associated .dtm, and .sav) when starting playing back a movie from save state. This is completely useless, and just wastes time copying save states around. 2012-11-08 23:25:55 -05:00
sulokuTDCmago
d032c40a58 - Added a new wilcard for importing savegames, which basically shows all saves (gci, gcs and sav). This is set as default (I really got frustrated of having to change the type every single time when making tests for GCMM, and I think it makes more sense at user level to just show all saves regardless the format)
- In icon retrieving I removed the "format check" as it shouldn't really matter to have mixed icon formats. Also removed the "Time splitters hack" as there's no reason for it since we are only checking the last 3 bits and I'm pretty sure having bits 1 and 2 set is the same as having them unset.
- Icon retrieving uses AnimSpeed as stop signal (every icon must have an speed set, the first speed that is 0 means there are no more icons)
- Also, in icon retrieving I added support for "blank frames"(Luigi's Mansion and Pikmin that I know of). With this the base for icon animation is complete.
- Fixed PSOIII savegame patch which was wrong before.

Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-10-29 21:02:59 -07:00
skidau
303b0f6b6d Test the audio loop with aligned addresses. Fixes the high pitched squeal in Muramasa. 2012-10-29 14:03:28 +11:00
skidau
882d5161f8 Merge branch 'Capcom-Music-Loop'
* Capcom-Music-Loop:
  Removed the fake DMA wait time as it is no longer needed after the aram-dma-fixes branch is merged.  This fixes the Resident Evil 2/3 cutscene audio in DSP LLE mode.  Fixes issue 2723.
  Changed the loop end address detection to an exact match with the current address for ADPCM audio.  Fixes the non-looping music in PN03.
2012-10-28 13:36:34 +11:00
rog
95d55ed1c7 fixes for backing up wii saves when playing a movie 2012-10-26 20:04:06 -04:00
rog
8921fe0d09 move wii saves to a backup if playing a movie that starts with no save 2012-10-26 17:36:18 -04:00
rog
0bc2021284 save if a wii game's save data exists when starting recording. Probably not the best way to do this, and could result in a false negative if banner.bin exists, but the actual save file doesn't, but this should work well enough. 2012-10-25 03:15:54 -04:00
rog
8dfb12da3e stuff 2012-10-24 23:21:34 -04:00
rog
76a6917fdf Check game ID against what is recorded to the .dtm 2012-10-24 19:42:04 -04:00
rog
7ee455ce3b When beginning recording, check settings in Init() instead of just in BeginRecordingInput(), since it's called after bootmanager.cpp reads the game's config. 2012-10-24 18:44:26 -04:00
rog
7006cd1217 i'm still not using a branch to fix the name of a variable 2012-10-24 15:32:02 -04:00
rog
4358f8384f readd memory card detection for movie code. I deleted this before, intending to move it elsewhere, but never did 2012-10-24 15:16:41 -04:00
rog
a1186d84df update state version 2012-10-23 02:31:16 -04:00
rog
5133ac551b merge relevant changes from bc61dbdf58a8 in otu0001-desync-fix clone 2012-10-23 02:10:49 -04:00
skidau
421a75493c Removed the fake DMA wait time as it is no longer needed after the aram-dma-fixes branch is merged. This fixes the Resident Evil 2/3 cutscene audio in DSP LLE mode. Fixes issue 2723.
Removed the ADPCM format detection from the previous commit as it broke the audio looping in Knockout Kings 2003.
2012-10-23 00:30:01 +11:00
skidau
b2a01dc348 Changed the loop end address detection to an exact match with the current address for ADPCM audio. Fixes the non-looping music in PN03.
Fixes issue 3998.
2012-10-22 22:59:35 +11:00
rog
aece5310f3 more movie cleanup. Removes the remaining globals that didn't need to be global, rearranges some code to make more sense, and removes some redundant code. 2012-10-21 23:20:28 -04:00
rog
9070e7ff8c misc movie cleanup and fixes 2012-10-20 22:26:40 -04:00
rog
92d2f5dee2 keeping padding right is so hard 2012-10-20 15:58:29 -04:00
rog
a6028b055b Save disc changes to .dtm, and load the full movie header every time it's loaded. 2012-10-20 14:40:16 -04:00
rog
0384f61af3 re-rearrange movie code so it actually works all of the time 2012-10-19 19:43:03 -04:00
rog
b1dee5fc23 small fix for undo load state while not recording 2012-10-18 04:40:56 -04:00
rog
79692a6c78 save settings necessary for syncing a movie to the .dtm, and load them upon playback 2012-10-18 04:18:40 -04:00