Commit Graph

494 Commits

Author SHA1 Message Date
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 5f2a0d8e89 Uploaded the new PathUtils.c file into the wrong location.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@295 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
Jake.Stine d274c25b2b Added a functional -cfg command line option (the help has listed it forever, but it never did anything). Absolute paths via the command line or .ini file are supported now. That means you can specify "c:\mystuff\someplugin.dll" now without getting an error. Additionally, filenames with spaces are also supported. Pcsx2 now uses the working directory at startup to load the ini file, allowing it to be run from VStudio's debug environment more easily. Expanded the console log depth to 2048. Plus many code cleanups and some extra error checking when handling strings and pathnames.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@294 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 323af0ebb2 Fixed stupid typo in r289's EE counter that probably broke lots of things. Made a couple code cleanups of the IOP (no functional changes).
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@291 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
arcum42 342b9b8d46 Remove 2 SSE checks affecting Linux and 64 bit builds, respectively.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@290 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
Jake.Stine 0bbb879f2b Improved the EE/IOP counter optimization. It was causing branch tests to occur more frequently than needed.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@289 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
arcum42 a4cd015be7 Fix non-dev builds.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@286 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
ramapcsx2 5d6c89f1e2 Few more SSE checks removed.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@283 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
ramapcsx2 8dc5441547 Also removed SSE1 checks, see rev281 for explanation :p
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@282 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
ramapcsx2 b70563a9fa Removed support for CPU's without SSE2. Now i know there's the occasional AthlonXP user out there.. sorry. The SSE2 (and SSE1 too!) checks were very frequent and could've hurt performance a bit.
Note: This move was discussed with the team, we all support it.
Note 2: I tried very hard to avoid mistakes, but due to the many changes i could've overlooked something (especially in iR5900tables.c).
I'd apreciate it if someone could look over the changes a bit ;)

git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@281 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:26 +02:00
Jake.Stine 1fbeeeb678 Applied the IOP counter optimization to the EE counters. Don't expect any noticeable speedups though, since this doesn't really affect the hsync/vsync counters which are the ones that end up doing 90% of the work. (but there's always a chance that it'll favor a game that likes to abuse the counters)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@280 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 25a67211e8 Changed some GS-related #define macros into more type-safe inline'd functions.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@274 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
arcum42 787316e839 Revert changes in GS.h
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@273 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
arcum42 b5a6e33845 Break up the file structure of the Linux port a bit, to make it easier to make large changes.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@272 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
arcum42 91f11550c0 Convert Config.c & GtkGui.c to cpp. And remove a gcc 4.3 specific flag from my last commit.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@271 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
arcum42 ee09798ade A few minor changes to GS.cpp & GS.h.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@270 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
Jake.Stine d799884153 Improved EE/IOP synchronization and also reduced the frequency of EE branch text executions (speedup!)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@269 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
arcum42 5edca82eb3 Nasty hack: Fix cpu detection on 32 bit Linux, by tricking the optimizer into thinking it needs the values of reg[2] & [3]; which, in fact, it does.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@265 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
Jake.Stine 2b93aa0709 Code cleanups for Linux builds (no functional changes)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@263 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
Jake.Stine 196b999379 Fixes timings on PAL games. (no audio underruns after 15+ minutes of testing!)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@262 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
arcum42 a6a2676cc9 On Linux, when we say _forceinline, actually force it to inline.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@261 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
Jake.Stine 2e5ba07383 Fixes mild desync'ing in the IOP.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@260 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
Jake.Stine cd653603e5 - Better IOP synchronization when using the X2 and X3 IOP hacks. Still not perfect, though (music may run a little behind or ahead of the games). I'll look into it tomorrow first thing.
- IOP Counter optimizations.  The IOP counter code now only updates counters actually being modified instead of blindly updating all counters.

git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@259 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
Jake.Stine 1bd9f54c9b IOP Sync problems should be fixed now (yeah I said that 2 revisions ago too, I know). But this time I knew what to look for! spu2ghz stretch stats don't seem to crap out now. ;)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@258 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 f252fac9a6 Reverted IOP_WAIT_CYCLES to 64.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@256 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
Jake.Stine 29bc1337b5 Last fix was ok, but this fix is better.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@255 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
Jake.Stine 41d466120b Fixed a freeze up bug from r252. The IOP must run at least one branch test for every EE branch test, which was a problem with the extended-length IOP_WAIT_CYCLE.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@254 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
arcum42 76f08e165e Clean up Patch.c a bit, and add a few fixmes to the code.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@253 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00
Jake.Stine bce2cfe5f1 Optimized the IOP's branch test algo a wee bit.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@252 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
cottonvibes 949a8b870f minor update: in the CPU frame limiting dialog, i put a note that says F4 key switches the mode in-game.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@248 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:25 +02:00