Commit graph

385 commits

Author SHA1 Message Date
ayuanx
9eea60ca69 Sound System Rework: Phase 2
. Performance boost
  (Completely non-blocking between Sound thread and CPU thread, in the meantime keeping them thread safe)

. Both 32KHz & 48KHz sound can be handled properly now
  (But up-sampling is still not implemented, and I don't think any game requires it.)

. Strategy adjustment
  When your PC is *NOT* capable to run the game at 100%:
  >> DSound    Could yield more fluent sound than OpenAL sometimes, but you will lose the sync between video & audio (since audio is played before video to guarantee fluency)
  >> OpenAL    Ensures video & audio are always sync'ed, but sound could be intermittent(to let slow video catch up)

. Changed default frame limit to: Auto
  (Somehow this can dramatically decrease the chance of wiimote desync in game NSMB)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4724 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-23 15:34:14 +00:00
ayuanx
24d8839793 Sound System Rework: Phase 1
. Fixed Sample Rate for DSP
  (Now if your CPU is capable to run game at 100%, you will get pure sound without buzz or static noise)

. Fixed Sample Rate for AI
  (Now if your CPU is capable to run game at 100%, you will get sync'ed video and audio)

. Fixed Backend list for DSPLLE

. Improved Aduio DMA a bit
  (There might be a completely redesign in following phases)

WARNING: The whole rework will take time to complete.
This commit is compilable, but could be unstable.
So you can try it and test it but don't take it as a release rev!

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4717 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-22 07:26:30 +00:00
ayuanx
afef9fb5f0 Code cleanup, removed extern declaration in sound streams
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4688 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-13 11:51:29 +00:00
ayuanx
fad1fa4e3d Improved XTra.KrazzY's Mute-On-Pause a bit, so it won't cost any CPU time when it is not used.
Revert old Zelda-TP hack, though it really shouldn't be there...



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4684 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-12 22:30:53 +00:00
XTra.KrazzY
6bea0a2f53 Fixed annoying sound when pausing/shutting down (please test for ALL backends) (couldn't do this for CoreAudio and PulseAudio too)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4676 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-10 21:00:52 +00:00
ayuanx
888e6e12e6 DSPHLE: Fixed the unbearable noise in "Dead Space Extraction". Theoretically this commit should not break any game whose sound already worked in previous revisions, please test this on every game you have got.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4674 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-10 17:41:47 +00:00
Marko Pusljar
aa2f2dc95c DSPLLE - cleaning, small fixes (2 shift opcodes are more correct now (lsr,asr) + some 0x3... opcodes are working better in case they are extended)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4633 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-01 20:38:42 +00:00
ayuanx
4d512ecba7 1. Fixed the unbearable noise in "Resident Evil: Umbrella Chronicles", "Resident Evil: Dark Chronicles", and many other games.
No need to use "Sound Loop Hack", so I just removed it.

2. Fixed the WAD game loading issue. What can I say, I have to go though and patch all the WII_IPC_HLE devices to take care of this.

3. Applied tomman's Linux keyboard patch, but I can't test here, no suitable environment.

4. Disabled configuration dialogs when game is running, you have to pause game first to be able to change any configuration. (Which prevents some accidental crash to happen.)

5. Other trivial fixes, no need to mention.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4632 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-01 15:39:37 +00:00
ayuanx
0f7b1a2f95 Added an option "Enable Loop Audio Hack" in DSP config.
I know hack is not good but before we find a better way to detect different games, at least this option allows some games to output normal sound without breaking other games.

Besides, this commit will hopefully fix the "Unknown device: /dev/usb/hid" issue, but not sure as I have no game to test on this issue.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4623 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-28 11:40:04 +00:00
ayuanx
ea732db998 Thanks to Wagnard28 and other lots of people's test, now this will hopefully solve the troubling regression problems between r4616 and r4617.
Sorry about such frequent commits in a short time

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4619 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-27 20:21:12 +00:00
ayuanx
f69184b887 This should fix the No Sound Problem in GC & Non-AX games.
Besides, this should also fix the WAD game loading issue.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4617 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-27 17:39:37 +00:00
ayuanx
155719dc36 Very small but very COOL fix.
This commit fixed the Hang-up in many games, like "New Super Mario Bros. Wii", "Resident Evil: The Darkside Chronicles", "Fatal Frame 4: Tsukihami no Kamen", "Muramasa: The Demon Blade", and etc. You name it. OH YEAH!

This little issue really cost me some *serious* debugging time, phew...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4616 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-27 15:07:52 +00:00
Marko Pusljar
93f2440f30 DSPHLE AXwii mail revert (thanks to RazLaron)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4586 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-16 18:06:34 +00:00
Marko Pusljar
9c03de8790 DSPHLE AXwii - cleaning, DCD10004 mails are now correct for Wii Sports ucode too
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4579 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-15 15:24:52 +00:00
Shawn Hoffman
4622bd0c8b reapply changes from 4550-4551,4556-4559 correctly...sigh...some files were ignored by tortoisesvn, and myself :|
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4570 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-14 17:50:51 +00:00
Shawn Hoffman
06aa62504c revert to r4531, but keep the changes from the following revisions: 4533,4550-4551,4556-4559
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4566 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-14 17:08:32 +00:00
Marko Pusljar
4d3620ace3 DSPHLE AXwii work
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4559 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-13 20:27:38 +00:00
Sonicadvance1
3c537ec137 Fix Compiling in OSX
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4523 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-08 23:36:14 +00:00
Shawn Hoffman
a4ea3a3452 fix crash caused by adding DSP_ClearAudioBuffer()
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4509 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-07 23:51:12 +00:00
XTra.KrazzY
a0129e51a3 LUAInterface should have all its functionality now (excluding input/controller management). Now we need a GUI to see how it works. Added new DSP function: ClearAudioBuffer, which clears the audio buffer for pausing. Currently it doesn't work with DSound.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4507 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-07 20:01:39 +00:00
Marko Pusljar
10d7e1bf3e DSPLLE dissasm fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4501 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-06 13:28:03 +00:00
XTra.KrazzY
0daa5add46 Added DEBUG to the long stringstream processing.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4483 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-30 14:52:42 +00:00
XTra.KrazzY
4fbf138ed2 The beginning of another approach on Zelda HLE UCode: PB debugging and comparison
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4481 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-30 07:10:46 +00:00
hrydgard
2a99dfb261 tiny change: get rid of a couple of uses of "long". better to use int or the explicitly sized typedefs. possibly really minor speedup of zelda ucode audio on linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4474 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-28 22:51:00 +00:00
Marko Pusljar
c8fc5e8f37 DSPHLE/ZeldaUcode/AFC5 improvement (can be heard when you jump on/talk to ppl in Super Mario Sunshine)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4429 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-16 15:56:36 +00:00
Marko Pusljar
b8bdb7cb8b AFC looping disabled, will be back when its properly fixed
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4423 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-14 23:30:27 +00:00
hrydgard
bf595e31be Same as the last change but for Wii AX.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4377 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-07 19:04:48 +00:00
hrydgard
c0c52fffe9 AX HLE (GC): Some protection from bad data. Fixes an SMB2 crash on reset for me, might fix other random crashes, who knows.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4376 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-07 19:01:14 +00:00
Shawn Hoffman
4c22bea4d4 Add ability to use Reset (reset button interrupt, still figuring out the other reset modes)
Add support for button combos that are built-in to controllers:
y+x+start for three seconds updates the origin
b+x+start for three seconds resets
Changed CPeripheralInterface to a namespace and renamed to ProcessorInterface

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4366 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-06 15:49:20 +00:00
XTra.KrazzY
48ed2ae852 Best of both worlds (or hacks...). Music continues to play, no sound breakage in Pikmin2/ZTP. Wind Waker still echoes weirdly in ZWW though.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4344 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-29 19:15:34 +00:00
luigi2us
cad887c51d AXWii: more disasm; and send correct mail at end of AXList (DCD10002 instead of DCD10001), which makes the game send a CDD10003 as expected.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4336 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-27 15:18:20 +00:00
Sonicadvance1
804b9e99f8 Add CoreAudio Backend, still needs a bit of work. Will cleanup AudioCommon.cpp, and finish off CoreAudioStream.cpp if I ever get running games working in Snow Leopard. Interpreter seems to run in to a spinlock, dunno why yet, and Jit just crashes out. Core problems is probably something I won't be able to fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4316 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-24 21:35:06 +00:00
nakeee
578fc8d54a Fix compile on linux
and add png version of the flag and platform xpms


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4315 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-24 21:00:24 +00:00
XTra.KrazzY
ebfceb16b9 Some leftover work from unfinished DX9 Access EFB. In DSP HLE, 0x0004,7,b,c are almost done, all that's left to do is resample from 0x50 to _Size.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4313 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-24 13:52:45 +00:00
XTra.KrazzY
47a1d2da9c DSP HLE: External ops oops (thanks, lordmark)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4294 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-18 00:12:10 +00:00
XTra.KrazzY
eb8ddbf3e5 A basic, un-resampled version of Zelda UCode cases 0x4,7,b,c. These are used a lot in Pikmin.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4293 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-17 22:53:36 +00:00
XTra.KrazzY
0ebb7376c8 More WaveTable (ucode case 0x4,0x7,0xb,0xc) work (thanks for noticing they're the same, LordMark!)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4292 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-17 12:09:10 +00:00
hrydgard
512053fa5e Kill some horribly ugly hackery :( It's just not right to pass entire IniFile objects across DLLs. Only POD (plain-old-data, like int, float, char, char[] etc) are safe to pass across DLL boundaries.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4257 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-13 08:54:46 +00:00
John Peterson
7e115dcb00 GUI: Fixed some GUI related start/stop crashes
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4223 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-07 12:40:43 +00:00
Marcus Wanners
50593397f3 Got rid of all of jp's ////////////////////////////// lines (nearly 500 of them)!
Yes, I used a script :D

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4169 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-02 21:00:45 +00:00
hrydgard
e97bc516e6 Warning fixes/suppressions(aui), assorted code cleanup, d3d vertex shader cache expiration interval increased.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4165 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-02 18:55:36 +00:00
John Peterson
478ed4b11e GUI: Bugfixes
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4137 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-01 12:44:02 +00:00
John Peterson
d50b4c2ffc GUI: Linux problem, wxAuiNotebook can't have wxFrame pages
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4133 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-01 02:41:48 +00:00
sl1nk3.s
2790a36390 Fix fps value when XFB is enabled on OGL plugin
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4118 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-31 17:47:17 +00:00
sl1nk3.s
94bc6d7f36 Fixed broken CPU EFB access on DX plugin, helps Wind Waker and ZTP not to hang
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4116 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-31 16:10:36 +00:00
hrydgard
6b97c0b764 DSPHLE: LordMark's looping hack for AFC. looping isn't correct but it's good enough for Pikmin 2 and Zelda TP's missing music. Does cause weird "echoes" in the harp sound in Zelda Four Swords, but I think that's a fair sacrifice until we figure it out properly.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4111 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-30 21:57:00 +00:00
Shawn Hoffman
69eadecc9a this ucode is really AX(wii), not zelda
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4110 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-30 19:51:16 +00:00
John Peterson
9999936a61 VS solution: Created programs solution
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4092 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-29 08:07:58 +00:00
John Peterson
1b6b56692d GUI: Dock plugin windows
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4069 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-26 23:28:30 +00:00
sl1nk3.s
5ce5219e2c Fix Zelda TP Wii and Pikmin 1 Wii sound Thanks to LordMark ! (again :P)
Set fpAccurateFcmp to true and revert ini setting, this causes random issues in various games... and it's too hacky.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4067 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-26 16:58:45 +00:00