Commit Graph

40 Commits

Author SHA1 Message Date
nitsuja a81631b58e made savestates synchronous and immediate. this allows saving or loading while the emulator is paused, fixes issues where savestate hotkeys would get ignored if pressed too close together, might speed up savestates in some cases, and hopefully makes savestates more stable too.
the intent is to replace the haphazard scheduling and finger-crossing associated with saving/loading with the correct and minimal necessary wait for each thread to reach a known safe location before commencing the savestate operation, and for any already-paused components to not need to be resumed to do so.
2012-05-26 13:09:38 +10:00
Jordan Woyak f8620fcd0b Fixed some memory leaks. Only one was mine ;P
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7392 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-22 07:27:23 +00:00
Glenn Rice a5b471f490 More conversion from char * to std::string.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7266 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-01 03:06:14 +00:00
Glenn Rice ba54fac9eb Convert GetUserPath to return a std::string instead of a const char *. This simplifies its usage in most cases.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7265 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-28 20:40:15 +00:00
Glenn Rice cb832f2298 Make sure the audio dump directory exists when dumping audio. Otherwise a segmentation fault ensues after several panic alerts.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7135 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-11 21:30:53 +00:00
smelenchuk b0fa0a83f8 * Dump AVI output on every VI (fixes issue #4064).
* Add audio dumping (fixes issue #1638).


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7131 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-11 18:59:42 +00:00
Soren Jorvang 98e24f5873 The compiler need not obey the static keyword, so to avoid linker
problems, whole functions in .h files need to also be static in
case they are included in several .cpp files.

Also a few other minor LTO fixes.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7082 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-05 16:06:05 +00:00
Soren Jorvang 9c21d003af Remove the global namespace a bit and remove some dead code.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7043 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-02 18:21:20 +00:00
hrydgard 419d6a244b DSP plugin merge - the two DSP plugins are now gone and all the code has been merged into Dolphin.
This WILL temporarily break the Linux and MacOSX builds but should be easy to fix.

Things left to do:
  * The UI on the new Audio tab for the LLE/HLE choice is ugly
  * At times the code still look "plugin-y" and needs cleanup
  * The two plugins should be merged further. DSPHLE should use the emulated memory etc of DSPLLE as much as possible, so that simply saving the DSPLLE state is enough. This would also bring the possibility of savestate compatibility between the two plugins.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6947 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-28 18:39:30 +00:00
Soren Jorvang 1a3cd2d34c Remove the __APPLE__ workaround for reading config files from a ctor.
'#' is a fairly accepted comment character for .ini files along with
the more official ';', but '//' isn't.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6872 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-18 00:04:29 +00:00
Glenn Rice c6e0ea59b9 Removed my previous PanicAlert translation hack. Fixed with a better method suggested by BhaaL. The translation is done by a callback in the MsgHandler routine that is set at program start. Added macros PanicAlertT, SuccessAlertT, PanicYesNoT, and AskYesNoT that are identical to the non T versions except those strings will be added by gettext to the po files to be translated. These can and should be used anywhere in the code for strings that should be translated.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6838 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-13 02:05:58 +00:00
Soren Jorvang c729b86c00 Audio volume slider support for OS X.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6720 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-02 02:49:30 +00:00
mylek4 1991a4f3a5 Added XAudio2 backend.
Windows audio backend with lower latency.

Audio never glitches on my machine but the number of buffers may be set too aggressively. If you run into problems try turning up NUM_BUFFERS in the h file and leave some feedback.

From my tests games seem to prefer filling the buffer with smaller chunks. For this to work the callback that fills the buffer needs to either spin or run async so I went with async.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6371 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-10 08:28:26 +00:00
skidau 0af0929a88 Re-implemented the NullSound back-end. Allows Dolphin to be used on hosts with no sound hardware. Emulates strict DSP timing in the DSP HLE plugin.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6329 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-11-02 00:16:49 +00:00
Soren Jorvang e2ef72504e Fix typo.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5571 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-02 17:19:23 +00:00
Soren Jorvang 43dfff651a Hopefully fix building on Linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5566 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-01 21:10:49 +00:00
Soren Jorvang 9d7b569ccb Now that Core Audio works, reduce the number of build permutations a bit
by not linking in other Unix audio modules.
 
Use kAudioUnitSubType_DefaultOutput instead of kAudioUnitSubType_HALOutput
so that a runtime switch to another audio device is automatically handled.
 
Use ERROR_LOG for audio errors.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5562 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-06-01 20:45:30 +00:00
nakeee 47239ce0f4 XK patch for adding jit config to audiocommon/c16 function to x64emitter
and Skidu's fix for 64bit


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5230 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-24 11:22:33 +00:00
Marko Pusljar 2eeb3d5e9d Nullsound killed - Fixes Issue 1082
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4907 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-20 14:35:48 +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
nakeee 5834fa6710 Pulse audio empty struct implementation. Working on it though
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4428 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-15 17:28:23 +00:00
nakeee ffe12ec752 OpenCL: added opencl=true option to scons and fixed the case on the way.
Add ifdef for osx ocl include.



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4348 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-30 06:49:08 +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
hrydgard 987a6185e6 Linux: Alsa backend for the audio plugins. Didn't succeed in reducing latency though, but hopefully will work better than libao - shouldn't hang weirdly at underruns, I hope, like libao does.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4240 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-09 21:26:33 +00:00
XTra.KrazzY c86d2e5129 Now ALL copyright dates are fixed to the legally correct year: The year in which the project began. Now we don't have to change it every year :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3898 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-28 21:32:10 +00:00
LPFaint99 a41c1b2d0a add *.user, Win32, and x64 build dir to ignore list for DebuggerUICommon and Unit Tests
add *.aps to ignore list for DolphinWX dir
add eol-style native to 120 or so files

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3689 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-06 02:10:26 +00:00
XTra.KrazzY 46b0fd3c96 1. TAS Groundwork: Saving the state (compression and memory dump to file) is now done on a separate thread (thread-safe). Now state saving is silent and quick.
2. When stopping, GUI doesn't let the user choose another game and effectively crash Dolphin
3. Omitted an unneeded loop in AudioCommon

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3552 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-26 22:36:44 +00:00
nakeee caf1395f5e Fixing compile without openal
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2810 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-30 20:25:36 +00:00
nakeee 37d513c53b Added dtk sound mixing to audiocommon (should work with LLE now)
And also moved all common setting to audiocommonconfig


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2796 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-30 09:55:50 +00:00
omegadox cc14b50aba ops.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2785 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-29 00:54:17 +00:00
omegadox 2a5866d5f1 AudioCommon.cpp cleanup
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2784 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-29 00:48:46 +00:00
Shawn Hoffman 3a5fb88b5e remove some junk added in last few commits. Also I really don't like the style recently...and removing PCH? wtf???
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2777 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-28 16:23:06 +00:00
omegadox 881678540d Another linux fix with AudioCommon.cpp
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2773 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-28 09:26:55 +00:00
omegadox 87665f18e5 Another linux fix with AudioCommon.cpp
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2772 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-28 09:25:20 +00:00
omegadox 32f4e8231a Only include DSoundStream header on Windows only.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2771 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-28 09:22:41 +00:00
omegadox eb0cab140f Some code cleanup
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2768 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-28 08:57:34 +00:00
hyperiris c4f7c95fec Audio: adjust UI
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2765 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-27 15:33:35 +00:00
hyperiris 13ddd0648b yeah, start OpenAL sound output
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2764 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-27 15:24:22 +00:00
nakeee a0e9e53d0c more clean up, starting to add recording support to sound stream
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2762 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-27 14:26:44 +00:00
nakeee fff663e8c7 Attempt to move mixer to audio common, it's a bit more complicated than I expected
so please check I didn't break anything in hle



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2756 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-26 09:29:14 +00:00