Jake.Stine
96560444ea
SPU2ghz: Fixed a memory corruption bug in the rolled back DMA write code. Hopefully this DMA write code will fix that bug without breaking Arc the Lad and similar games.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@334 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:27 +02:00
ramapcsx2
7e828a69ee
SPU2Ghz: Had to revert dma.cpp to rev244 for the most part. The dma cache system in DoDMAWrite() broke Arc the Lad dma audio. The auido starts to loop a bit in rev 264 and from there on it gets worse.
...
Sorry for not finding this earlier, I hope the cache can get fixed so we can include it again.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@333 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:27 +02:00
ramapcsx2
996fbc3931
This was supposed to be a bigger commit concerning loopy audio in Dawn of Mana FMV, but it looks like its not so easy to fix. So this here is some cleanup I did along the way ;)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@324 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:27 +02:00
gigaherz
dd7f8807ac
OMFG gigaherz is commiting something! RUN!
...
So rama made me notice the "sanity" checks on the TimeUpdate stuff,
I read it, and it kinda scared me that it happily dropped the sync as soon as the audio was 0.002 seconds out of sync!
I changed it so the "sanity recovery" code only kicks in when there's over 0.1 seconds desync in clock numbers,
which seems a LOT more reasonable.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@320 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:27 +02:00
Jake.Stine
6930ed533c
SPU2ghz: Compiling without TortoiseSVN installed should work out-of-the-box now. The project will automatically fall back on the old-school behavior (no revision information inserted into the project info).
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@305 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
Jake.Stine
29bf736daa
SPU2ghz: XAudio 2 crash fix attempt, take #341 . Action! *clip*
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@304 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
Jake.Stine
3968775bc6
SPU2ghz: Removing the Sleep() caused XP's XAudio2 to crash again. But I found a note from Microsoft on one of their dev journals that said to put the Sleep() immediately after the FlushBuffers and before the DestroyVoice. Let's cross some fingers and hope it works! (don't you love beta libs from microsoft?)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@303 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
ramapcsx2
a973f63bb0
SPU2Ghz: Commented out a Sleep() call in xaudio2. It made the GUI not respond for several seconds when pressing escape to pause emulation
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@297 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
Jake.Stine
805b922c9a
SPU2ghz: Added quotes to the svnrev pre-build step; hoping it behaves better for users who have paces in the names of their project folders.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@296 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
Jake.Stine
97dd495e85
SPU2ghz: Moved the svnrev additions to a new 'common' folder which is shared by all projects (pcsx2 included). The common folder now includes the necessary utility, so it should build out-of-the-box now (no more path setup or program installs necessary)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@293 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
Jake.Stine
4c2518b0f0
SPU2ghz: DLL now "properly" exports functions. May fix some compilation/plugin detection problems? Plus another attempt at fixing the XAudio 2 crash-on-exit bug.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@292 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
Jake.Stine
211829bb18
SPU2ghz: Fixed a couple rare odd-case XAudio2 crashes, and fixed a small glitch in in the over/underrun code when timestretching disabled.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@288 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
Jake.Stine
c69df473ad
SPU2ghz: err... oops! This'll stop it from crashing when you try to enter the PCSX2 plugin configuration screen.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@287 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
Jake.Stine
f23db9a04a
SPU2ghz: Rearranged the project files quite a bit. Solutions are now in the Plugins folder, and binaries are output to plugins/bin. This is in preparation for if/when we have more plugins as part of our repository, and will go hand-in-hand with a future change to how pcsx2 looks for plugins which should make shared development a little easier for all of us (I hope).
...
I also deleted several *very* dated projects and solutions. They all still referenced FMOD, in fact, if it gives you an idea just how out-dated they were. New updated projects can be re-added in the future if a need still exists for any of them.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@285 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
ramapcsx2
3d4583dcbb
SPU2Ghz: Fixed a problem in ADSR handling as suggested by gigaherz.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@284 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
Jake.Stine
f113aab091
SPU2ghz: Code cleanups, and conf now force-disable Effects Processing (for anyone who might have had it checked when Rama grayed out the option)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@279 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
Jake.Stine
24394b83e2
SPU2ghz: Fixed potentially quirky volume handling in Linear Interpolation mode (quiet sounds would get cut off too soon or be completely inaudible). Also did a minor cleanup of the ADSR handler.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@278 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
Jake.Stine
a169a0fe87
SPU2ghz: Reverted last change since it broke way more than it fixed. Will post another improved ADMA attempt later once I've got it figured out better.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@277 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
Jake.Stine
aa48345c70
SPU2ghz: Fixed serious bug in AutoDMA code, basically it wasn't working at all. Soul Calibur II audio works now, and possibly many other games fixed too.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@276 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
ramapcsx2
09c0225740
SPU2Ghz: Disabled Effects Processing for now, you can still force it on via the .ini but it's NOT recommended.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@275 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
Jake.Stine
ea781f8283
SPU2ghz: Major optimization fix to the mixer code. VS2008 was not optimizing the MulShr32su function properly. It's about 3-6x faster now. Also optimized the timestretch manager so that it can take full advantage of VC2008 SSE opts.
...
* XAudio 2 * Fixed potential crash bug on close (which only started happening after I upgraded my DXSDK).
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@268 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
Jake.Stine
d839f19119
SPU2ghz: XAudio2 driver now initializes a 48khz output rate (was using the default of 44.1khz). This may help fix some of the XA2 crashing problems as well.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@267 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
Jake.Stine
62e1f5015d
SPU2ghz: Fixed DMA memory corruption bug introduced in r264 (and made the DMA code even faster!), and expanded SoundTouch's working buffer by ~15ms (seems to help improve voice audio breakups when games slow down below 40 fps).
...
XAudio2 problems are still up in the air, as they may be related to version differences in DXSDK installations of people building the DLL. Note to compilers: please update your DX SDK to the most recent version (Aug 2008) if you haven't already.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@266 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
Jake.Stine
d8bd81f00d
SPU2ghz: Re-optimized the DMA write code so that DMA writes don't incur as much cache miss penalty anymore. Also made a couple minor tweaks to the timestretcher's overrun handler (Which only affects people who like their games to run at 120 fps. ;)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@264 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
ramapcsx2
c4ceb8c826
SPU2Ghz: Small change to underrun fill :p
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@257 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
Jake.Stine
cd81a75535
SPU2ghz: Removed SPU2ghz.aps since it's a file generated by the client (it's a VS2008 resource designer cache file, created when you open .rc files in the IDE).
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@251 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
Jake.Stine
5aad78b974
SPU2ghz: Cleaned up and optimized the SPU2write() code a bit.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@250 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
Jake.Stine
ba9ab8f6e0
SPU2ghz: Added sanity checks to the XAudio2 driver, might be more stable now.
...
If this doesn't fix the crashing problems then I'll have to look into making a special instance of spu2ghz.dll that dumps XAudio2 log data, and hope to solve it from that.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@249 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
ramapcsx2
88638106e6
SPU2Ghz: Well, yet again another update from Jake.Stine :p This time around he improved the already great timestretcher to be even smarter. This and the fixed XAudio2 output module get even Vista users a near realtime sound. (Try a delay between 90 and 140ms).
...
Read a bit more about this version in issue 31 :)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@247 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
ramapcsx2
f69a63b489
SPU2Ghz: Adjusted default values for the worst case (Windows Vista... seriously, what did MS to the audio subsystem?)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@245 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
ramapcsx2
0e1f871606
SPU2Ghz: Lots of changes as described in issue 31, thanks again to Jake.Stine.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@244 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
ramapcsx2
e76b830d8c
SPU2Ghz: More improvements and cleanup
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@233 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:24 +02:00
ramapcsx2
ef6b4d136f
Small tweak to the auto-timestretch. It now turns off only after the game runs at stable fullspeed for a while.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@232 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:24 +02:00
ramapcsx2
54280950ef
SPU2Ghz: Made the timestretcher automatically turn on/off based on game speed. This is possible thanks to recent changes by Jake.Stine :)
...
The way it works now, it makes it completely automatic for the user.
If the buffers over/underflow the stretcher enables itself.
Once it decides that game speed is fine again, it disables itself.
This works really great here, but please comment if it causes trouble for you.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@231 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:24 +02:00
ramapcsx2
89294b2d19
Hah! Since the last SPU2 update was so great I sent my local project files along the way :p
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@230 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:24 +02:00
ramapcsx2
37f2a95289
Jake.Stine "completed" his work on SPU2Ghz, I tested a whole lot of games with this and it sounds great! Savestates work very well, the mixer is fast, even the dreaded buffer over/underflows are handled quite well (even without timestretch!).
...
All in all great additions which imo make SPU2Ghz the best SPU2 plugin to use now :)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@229 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:24 +02:00
ramapcsx2
ee9dcd4130
SPU2Ghz: Updated to include Jake.Stine's latest work. Some issues still exist, but will be fixed soon.
...
Also made the speedlimiter switch toggle timestretch for easier debugging and convenience :)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@227 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:24 +02:00
ramapcsx2
e4b3c6e649
SPU2Ghz: Disabled ZeroSPU2 compatibility mode for savestates. This should enable users to load savestates created with that plugin again. (compatibility mode was crashing too much)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@226 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:24 +02:00
ramapcsx2
8e72f6f1e6
Working with real-time audio / buffers sucks :p Anyway, this gave me the least over/underflows.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@208 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:24 +02:00
ramapcsx2
e1381992e5
Using this as a base now, it works very well for me. Thanks to Jake.Stine's patch the plugin got a bit faster ;)
...
I made a small mistake in the last 2 commits, its fine again.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@204 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:23 +02:00
ramapcsx2
a6eba17dfa
oO
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@203 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:23 +02:00
ramapcsx2
6c2d95f27d
SPU2Ghz: Part one of a bigger update
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@202 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:23 +02:00
ramapcsx2
27ff8cf44d
Last update for today, timestretch needs one more addition, then its perfect. The soundbuffer can (rarely) over/underflow (loop) and throw of the emergency stretch calculations. Will fix that soon :)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@200 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:23 +02:00
ramapcsx2
9e05d9146e
A bit more work on SPU2Ghz. Removed old code, made timestretch code a bit more clear, etc.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@198 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:23 +02:00
ramapcsx2
0810eaea38
SPU2Ghz: Reverted a last-minute tryout in the output buffering, it broke more than it fixed.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@196 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:23 +02:00
ramapcsx2
d69dc9a554
Adjusted spu2ghz project file (vs 2008)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@193 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:23 +02:00
ramapcsx2
14d14ec6b9
Added SPU2Ghz to the repository
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@192 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:23 +02:00