Commit Graph

2985 Commits

Author SHA1 Message Date
skidau
5c4a130688 Added a BluetoothEnumerateInstalledServices call so that the wiimote remembers the pairing. 2013-03-01 10:28:42 +11:00
Ryan Houdek
bc15919e2e Make ARMJit core default CPU core on ARM architecture 2013-02-28 16:15:32 -06:00
Rachel Bryk
0c16489c39 Merge branch 'VideoSoftware-savestates' 2013-02-28 13:36:29 -05:00
skidau
0399959c39 Skipped the EE check if there is a CP interrupt pending.
Fixes issue 4336.
2013-03-01 00:59:38 +11:00
Jordan Woyak
6f87611767 Fix "Core" to build with "Unicode". 2013-02-27 20:30:57 -06:00
Ryan Houdek
9ff704f202 Small improvement to cmpli/cmpi in ARMJit. 2013-02-27 15:17:23 -06:00
Jordan Woyak
e435851e7a Add disabled code for authenticating wiimotes on Windows. 2013-02-26 21:13:35 -06:00
Ryan Houdek
be7643cd2d Add the missing FPR cache 2013-02-27 02:15:32 +00:00
Rachel Bryk
08fe3c213a Abort loading states from incompatible graphics backends. 2013-02-26 18:28:56 -05:00
Ryan Houdek
717b976875 ARM Support without GLSL 2013-02-26 13:49:00 -06:00
degasus
4883fa268f Split VideoBackend::Cleanup from Shutdown.
First is called from ogl/d3d thread, second is called from emulation thread (x11...)
2013-02-26 16:42:32 +01:00
skidau
e69c58ee89 Removed the disc seek times for GC games and removed the disc speed option on Wii games.
Checked for external exceptions only in mtmsr.

Fixes issue 5545.
2013-02-26 18:10:02 +11:00
Jordan Woyak
46adbfa9ed Merge branch 'real-wiimote-scanning' 2013-02-25 17:33:34 -06:00
Rachel Bryk
e5c53e371f Make error message for loading save state with wrong dsp engine shorter. 2013-02-25 18:12:48 -05:00
Rachel Bryk
a450ba4420 Abort load state if it uses a different dsp engine, instead of crashing. 2013-02-25 15:58:12 -05:00
Jordan Woyak
6b2804e296 Possible crashfix for OSX. 2013-02-24 22:29:33 -06:00
skidau
dc98ce5922 Added the addeo instruction to the JIT tables. Fixes Inkub (WiiWare). 2013-02-24 23:05:12 +11:00
skidau
6b28b3929a Delayed the interrupts in the EXI Channel.
Fixes issue 5580.
2013-02-24 21:32:14 +11:00
skidau
40b65fdc04 Merge aram-dma-fixes (r76a13604ef49b522281af75675f044d59a74e871) 2013-02-24 17:10:33 +11:00
skidau
ae566d6b3c Merge branch 'aram-dma-fixes' into FIFO-BP
# By Pierre Bourdon
# Via Pierre Bourdon
* aram-dma-fixes:
  Simulate a small delay on GC Memcard operations
2013-02-24 00:11:11 +11:00
skidau
d76ca57837 Fixed a JIT timing bug that prevented Eternal Darkness from booting in Single Core mode. 2013-02-22 15:13:49 +11:00
skidau
351c741906 Merge branch 'master' into FIFO-BP
# By Jordan Woyak (9) and others
* master:
  Fixed a buffer overflow in the OpenAL buffer.
  TextureCache: Fix D3D backends crashing when a game uses multiple 1x1-sized LODs.
  WII_IPC_HLE_Device_FileIO: don't rebuild the filename on every operation.
  Some cleanup of CWII_IPC_HLE_Device_FileIO: The real file was never kept open for longer than a single operation so there was no point in dealing with it in DoState. Saving the real path in the savestate was also probably a bad idea. Savestates should be a bit more portable now.
  Removing destination on rename when source isn't present doesn't make sense. IOCTL_RENAME_FILE still might not be totally correct.
  Change some CNANDContentLoader logic to what was probably intended. Kills some warn logs when opening Dolphin.
  Let's not CreateDir an empty string every time CreateFullPath is used, logging an error every time.
  Fix a memleak. Probably/maybe improve USBGecko performance.
  Remove the core count from the cpu info OSD message. It was often wrong and not rather important.
  Use omp_get_num_procs to set the number of OpenMP threads rather than our core count detection.
  Bulk send TCP data to the client with the emulated USB Gecko.
  Added the ability to reverse the direction of the force feedback by allowing negative range values.
  Changes/cleanup to TextureCache::Load and other mipmap related code. The significant change is what is now line 520 of TextureCacheBase.cpp: ((std::max(mipWidth, bsw) * std::max(mipHeight, bsh) * bsdepth) >> 1) to TexDecoder_GetTextureSizeInBytes(expanded_mip_width, expanded_mip_height, texformat);
2013-02-19 23:19:29 +11:00
Jordan Woyak
d0ea94a2aa WII_IPC_HLE_Device_FileIO: don't rebuild the filename on every operation. 2013-02-17 13:52:04 -06:00
Jordan Woyak
fa9aafeed8 Some cleanup of CWII_IPC_HLE_Device_FileIO:
The real file was never kept open for longer than a single operation so there was no point in dealing with it in DoState.
Saving the real path in the savestate was also probably a bad idea. Savestates should be a bit more portable now.
2013-02-17 13:37:01 -06:00
Jordan Woyak
0cdd4434b9 Removing destination on rename when source isn't present doesn't make sense.
IOCTL_RENAME_FILE still might not be totally correct.

Fixes issue 5440.
2013-02-17 12:51:12 -06:00
Jordan Woyak
9ac2fbb0a5 Fix a memleak. Probably/maybe improve USBGecko performance. 2013-02-17 00:19:42 -06:00
skidau
123035a192 Bulk send TCP data to the client with the emulated USB Gecko.
Fixes issue 6006.
2013-02-17 15:27:15 +11:00
skidau
0c882cca66 Profile stores, fp stores and ps stores only to the fifo write addresses list. This should make the JIT a little faster as it will not be checking for external exceptions unnecessarily. 2013-02-16 13:54:58 +11:00
skidau
9bff8e00c8 Added preliminary support to synchronise the timing of the CPU and GPU threads. A new option has been added to the game properties for this purpose. This option may help with random freezes in Dual Core mode.
Fixes Gladius and Baten Kaitos: Eternal Wings and the Lost Ocean

Fixes issue 5150.
2013-02-16 12:51:09 +11:00
skidau
51795d8811 Merge branch 'master' into FIFO-BP
# By Jordan Woyak (24) and others
# Via Jordan Woyak (3) and others
* master: (66 commits)
  Reduce some DI command delays. Fix DKCR hanging with DSP HLE. My other games continue to work.
  Video_Software: Fix ZComploc option breaking stuff.
  Video_Software: Fix the ZFreeze option doing nothing.
  Video_Software: Toggable zfreeze and early_z support for testing.
  Fix header guard and definitions not being set to 1
  Add the option to turn on only the EGL interface to use desktop OpenGL with it.
  Change the ugly "no banner" banner to the sexy "X" from the website.
  Fix a crash in the FifoPlayer dialog.
  Use different reply delays for various DI commands. Fixes issue 5983.
  Revert "[bugfix] DX9::TextureCache: Use max_lod instead of min_lod where necessary."
  Fix some potential issues when blending on EFB formats without alpha. Clean up state transition tables.
  Disable play and record buttons if an iso was selected, but is later deselected.
  Disable start/play recording buttons when no iso is selected.
  Only delay DI and fs IPC replies. Fixes issue 5982.
  Fix compilation with SDL2. (based on a patch from matthewharveys) Fixes issue 5971.
  "Fix" using SDL from externals.
  Clean up SDL includes a bit. Maybe fix an SDL2 problem.
  Number "unknown" axes in OSX rather than call them all "unk".
  Revert "Only delay DI command replies." Fix "Wii Party" again.
  Hopefully make wiimote speaker less crappy.
  ...
2013-02-16 11:10:03 +11:00
Jordan Woyak
5a3435255b Reduce some DI command delays. Fix DKCR hanging with DSP HLE. My other games continue to work. 2013-02-15 16:02:38 -06:00
Jordan Woyak
ef90b15f3e Provide an option to not send speaker data. It can cause rumble lag even when the speaker is muted. 2013-02-15 03:00:31 -06:00
Jordan Woyak
1f20a24a04 Minor changes. 2013-02-14 21:02:41 -06:00
Jordan Woyak
891de52769 Don't need to hang dolphin when searching for wiimote with the refresh button.
This code is getting pretty ugly. :/
2013-02-14 19:04:34 -06:00
Jordan Woyak
cda88a8c1e Random improvements. 2013-02-14 18:43:11 -06:00
Jordan Woyak
306e6b1d80 Turn off continuous scanning by default. 2013-02-14 18:43:11 -06:00
Jordan Woyak
e57ff06130 Futile attempts at fixing Windows. 2013-02-13 14:00:15 -06:00
Jordan Woyak
77381a1af2 Futile attempts at fixing OS X. 2013-02-12 21:37:47 -06:00
Jordan Woyak
7f305ba822 Fix sloppy connection logic. 2013-02-12 18:59:45 -06:00
Jordan Woyak
12674b3164 Possibly improve real wiimotes on Windows. 2013-02-12 17:01:51 -06:00
Jordan Woyak
a6461ca186 Improve wiimote reconnection on changing wiimote sources. 2013-02-11 23:39:04 -06:00
Jordan Woyak
fa10335c55 Make continuous scanning optional. 2013-02-11 17:58:56 -06:00
Jordan Woyak
f3d25f2cb0 OSX buildfix! 2013-02-11 16:07:01 -06:00
Jordan Woyak
0fb7f65e04 Problems on Windows? Just SLEEP twice as long! 2013-02-11 15:58:23 -06:00
Jordan Woyak
c2d2fb8c7c Try to improve real wiimotes on Windows. 2013-02-11 15:21:58 -06:00
Jordan Woyak
b8fd5c0c30 Fix Windows for real! 2013-02-11 05:57:55 -06:00
Jordan Woyak
c267be2682 Hopefully fix windows! 2013-02-11 05:30:51 -06:00
Jordan Woyak
7a053d0f07 buildfix! 2013-02-11 03:50:54 -06:00
Jordan Woyak
05ec90488b Make real wiimotes not so crappy on Windows hopefully. 2013-02-11 03:39:09 -06:00
skidau
f26650e55b Removed the updating of PC in the Cleanup function. This was causing Metroid Prime to hang. 2013-02-11 08:42:16 +11:00
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