Commit Graph

550 Commits

Author SHA1 Message Date
Jake.Stine da691894c3 wxgui branch: Maintenance merge against trunk, plus many cleanups and project-level changes.
* Moved the x86 emitter to /common, so that plugins can link against it if they wish.
 * Created a new "utility" class in /common which houses string utils, fast memcpy, common exception classes, and other handy dandies.
 * Removed old-style linux automake files from the pcsx2 dir since they were hopelessly out of date (and their multi-file-per-line format makes svn merging impossible >_<)

git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1454 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-03 00:49:40 +00:00
Jake.Stine c1dbdd7b62 SPU2-X: Upgraded license to the LPGLv3; and changed some #ifdef mess to #pragma once.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1419 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-21 11:00:53 +00:00
Jake.Stine 101dbdd132 SPU2-X: *Really* fix compat with older versions of pcsx2 this time (0.9.4 and prior) >_<
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1415 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-21 08:24:17 +00:00
arcum42 91be7889e2 Suppose I should do something about the configure.ac files and _DEBUG, as well.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1390 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-18 09:58:56 +00:00
Jake.Stine b974b815ff Major Build System changes:
* Changed w32pthreads library into a DLL so that it can be used from plugins correctly. (NOTE: you will need to make sure to build and copy w32pthreads.dll into your pcsx2 folder).
 * Switched pcsx2 from static CRT to shared CRT linking (needed to ensure correct exception handling behavior in multithreaded DLL environments).
 * Switched all standard plugins in the Suite to the shared CRT, to match pcsx2's new style. :)
 * Renamed _DEBUG (depreciated) to PCSX2_DEBUG (excluding Gabest projects since the ATL still uses it).
 * Added intrin.h to Pcsx2Defs.h (so that it is included universally), and added intrin_x86.h for GCC compatibility.

Notes:
 * Current plugin version compatibility status should be unaffected.  The new shared-CRT plugins work fine with older versions of Pcsx2, and the older plugins should work fine with the new shared-CRT version of pcsx2; so long as the necessary CRT DLLs are available on the user's system.
 * All future packagings of pcsx2 will include w32pthreads.dll and the Common Runtimes (CRTs).
 * Existing users who do not have MSVC installed can obtain the CRTs by downloading the Microsoft Visual C++ 2008 Redistributable Package (anyone with msvc installed should already have all they need).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1388 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-18 08:20:19 +00:00
Jake.Stine 136716a4f5 SPU2-X:
* Fixed crash problems when using SPU2-X with old versions of Pcsx2 (0.9.4 and prior).
 * Fixed broken Device specification override (the device GUID wasn't being loaded from the INI).

Pcsx2:
 * Added ThreadAffinity stuff to the CPUSpeed detection.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1368 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-15 16:44:26 +00:00
arcum42 1a53f45b2c Some work on variable type consistancy, and getting rid of 64 bit processor checks.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1214 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-17 21:57:24 +00:00
arcum42 6083e3a643 Linux: Add -m32 to the compiler flags of pcsx2 and all plugins.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1169 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-11 10:44:12 +00:00
ramapcsx2 b14881769a SPU2-X:
Small cleanup and made it a bit faster.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@968 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-13 09:48:28 +00:00
ramapcsx2 ad6dce5e9c SPU2-X:
Worked on savestate support a bit. It now remembers an update timing variable more (could fix a few crashes).
This increases the savestate version though, so make sure you have a memory card save ready before upgrading!

Also implemented a way of delaying audio output after loading states. This masks the ugly noise that some games produce directly after loading, keeping your valuable speakers intact :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@963 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-12 21:19:29 +00:00
Jake.Stine 9528571ea3 Buildsystem improvements - Added two new property sheets for Incremental Linking and Global Linking. Incremental Linking is fast and allows for Edit and Continue debugging (debug/devel builds), Global Linking is for Release builds.
Applied new property sheets to Pcsx2, SPU2-X, ZeroStuff, and NULLs.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@829 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-21 04:01:44 +00:00
arcum42 65822fbfdc Linux/SPU2-X: A bit more work on the Linux port of SPU2-X.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@827 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-20 10:13:19 +00:00
Jake.Stine 95c2cce3d5 Folder Structure change: Renamed the 'Win32' folder to 'Windows' for several plugins. It's technically more correct and alleviates some confusion with the Win32 target/build folders generated by MSVC.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@733 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-10 11:45:20 +00:00
Jake.Stine dacfe85189 SPU2-X: Fixed some problems with saving/loading states, when loading from old savestate versions.
Pcsx2: Small speedup for the IOP's recClearMem (used a forceinline to cure MSVC's laxidazical inlining)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@714 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-07 19:04:37 +00:00
Jake.Stine ef2e9e2093 SPU2-X: Fixes alignment condition for SSE2-dependent members of V_Core. I wanted to sneak this in quick since to do it later would have meant another savestate version.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@681 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-04 21:48:26 +00:00
Jake.Stine 7d00eb7ec6 SPU2-X: Resorted the mixer so that it's a little faster, and will be easier to apply some SSE2 opts in the future.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@680 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-04 21:32:48 +00:00
Jake.Stine 207e0345e0 SPU2-X (Linux): Did some preliminary work on the Alsa driver.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@664 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-03 04:50:26 +00:00
Jake.Stine 63fe0a5fdc SPU2-X: Fix for DMC1, closing Issue 17 once and for all; also added ICC patch from Issue 75.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@657 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-02 06:41:02 +00:00
Jake.Stine ebb5339418 Yay more header file cleanup chores! Removed most of the Windows.h dependencies from non-Win32 specific files, and fixed the annoying ARRAYSIZE warnings. Let's say it together: "We all should love C's archaic include system, because it makes Jake and Arcum work really hard for no good reason."
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@634 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-28 20:55:53 +00:00
arcum42 0fb4e4ea07 Fix a segfault issue in ConvertTo16 on ZeroGS, and make a few changes in spu2-x for later use.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@631 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-28 08:00:56 +00:00
Jake.Stine 1feb143b2b SPU2-X: Trying a new (experimental) DMA option which may fix problems in DMC1, but might break more than it fixes? (we'll find out!)
Also - Added some options to DSound driver.  Enabling Hardware mode on dsound might improve dsound compat on some soundcard drivers, for those who can't use XA2 or have problems with XA2 stability.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@619 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-27 01:46:01 +00:00
Jake.Stine edc418d0e4 SPU2-X: Another sync regression fix. My earlier experiments didn't fly, so I reverted the TimeUpdate call in spu2_read also (negative impact on some dma-related things, but fixes lots of other weird stuff).
Changed several instances of afxres.rc in plugins to be afxresmw.rc (for VS Express)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@611 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-26 11:09:04 +00:00
Jake.Stine 021c7b28a3 Added some better support for 8 bit VIFdma writes, cleaned up some logging stuff, and added version resources to SPU2-X and ZeroSPU2.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@593 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-24 19:58:17 +00:00
Jake.Stine 73cf4cd361 git-svn-id: http://pcsx2.googlecode.com/svn/trunk@588 96395faa-99c1-11dd-bbfe-3dabce05a288 2009-02-24 12:56:51 +00:00
Jake.Stine 7ffd3d3aea Restructured the build system from the ground up. 3rdparty libs have been moved back into a /3rdparty folder, and are compiled as libraries. Most relevant plugins are part of the pcsx2_suite_2008.sln. Revision tagging of filenames is still there, but is now disabled by default. Pathnames with spaces shouldn't break the buildscripts anymore. Removed tons and tons of files in an effort to simplify the repository and build system management. So if a solution file you're used to using is missing, it's missing for a good reason (means the project can be built either from the Suite solution, or by double-clicking the project file from explorer, from which MSVC creates a new solution for you).
I'll put up a wiki soon which covers new compilation features and stuff, like how to re-enable revision tagging, and how you can direct compiled exe/dlls to be copied to any destination of your choice (yay!) -- plus many other compiling tips (if I can remember them all! >_<)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@581 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-24 02:08:37 +00:00
Jake.Stine cf2919cc5a Assorted code cleanups to WinMain's message handling, and streamlined the language selection 'gui restart' procedure.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@577 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-23 12:03:22 +00:00
Jake.Stine 141dd7e21c SPU2-X: Fix for bleepy sounds in FFX / FFXII. Apparently effects processing is much more sensitive to tight SPU2/IOP sync than any other part of the SPU2. (good to know!)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@574 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-23 09:15:59 +00:00
arcum42 816647a86f Linux: A little more consistancy about using the System.h wrappers, restore the bin symlink, and a few other minor changes to plugins.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@561 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-21 11:14:09 +00:00
Jake.Stine f6f1f8665b Minor cleanups to the order in which plugin init/open/close functions are called (PADs are always closed before the GS now, for example, since they usually rely on the GS's window handle).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@560 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-21 10:39:18 +00:00
Jake.Stine 34a0b82986 SPU2-X: Added ConvertUTF.cpp (handy!), Changed instances of _T("") to the much less ugly L"", and removed references to _wfopen.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@557 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-21 04:20:34 +00:00
arcum42 1745eb2013 SPU2-X: These aren't the buildfiles you're looking for. Move along now.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@556 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-20 21:48:59 +00:00
Jake.Stine 95498f4689 SPU2-X: Another bug stomped which caused sounds on Voice 15 to be silent (introduced around r511). Affected synth music in most games that have synth music (Xenosagas, Final Fantasies, etc).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@555 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-20 19:59:55 +00:00
Jake.Stine 0a24870600 SPU2-X: Squashed a bug that caused lots of crackle-pops on certain audio tracks (most obvious during the KH2 intro); LoopStartA apparently should *not* be set to NextA when KeyOn is issued.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@552 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-20 13:29:39 +00:00
Jake.Stine 4bd685485d New Speed Hack! And a good one! This is an idea I had a while back, as implemented by Pseudonym, and is intended as an eventual replacement for all EE speed hacks (x2, x3, etc). Expect huge speedups in most games way beyond even X3, and it shouldn't break FMVs or cause graphical artifacts either like the old hacks do.
Memorycard Fixups:
 * Replaced the old disfunctional memcard manager with a neat and practical one, with options!
 * Improved memcard hotswapping support.
 * Added memcard CRC checks to savestates, so that memory cards are only ejected when needed (should fix Guitar Hero problems from Issue 32)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@532 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-19 09:51:21 +00:00
Jake.Stine 2a389da932 Counters fix from tmkk -- a rarely used gate mode of the EE counters was being handled incorrectly.
Added FreezeMMXRegs to SPU2async in IopDma, which is callable directly from the recompilers.

SPU2-X: Fixed another reverb bug, this one put too much reverb on voices and sndfx.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@530 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-18 18:05:58 +00:00
Jake.Stine dc306bf64c SPU2-X: more fixes to reverb. Digital Devil Saga sounds a lot nicer now. Updated savestate revision so that loading states from before my latest cleanup/optimization won't crash.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@529 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-18 16:47:06 +00:00
Jake.Stine d97cde6583 SPU2-X: Some bugfixes to reverb that were introduced in my last commit. Still some minor problems in this build. I'll fix them soon.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@527 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-18 14:20:06 +00:00
Jake.Stine 0ca2f4d2be SPU-X: Major code cleanups across the board, and optimizations to the reverb effects generator (possibly buggy yet)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@525 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-18 13:36:20 +00:00
Jake.Stine 5219075e3c SPU2-X: Savestates work now. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@518 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-17 12:05:23 +00:00
Jake.Stine 09bb31aaa4 Missed an important bit of last night's build script update. >_<
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@517 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-17 10:52:18 +00:00
Jake.Stine 68ceb3b8fb Fixed a bug that caused MTGS to throw "pure virtual function called" errors on rare occasions, and cause crashes in Linux. (Issue 31)
Improved the Win32 build scripts to solve some end case scenarios on some systems/configs, where they would fail due to missing path separators.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@514 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-17 01:38:02 +00:00
Jake.Stine 965c8e4b48 SPU2-X: Better ADSR fix this time, by fixing some bad math on my part during the ADSR Decay stage.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@513 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-17 00:15:31 +00:00
Jake.Stine 18566548f6 SPU2-X: Switched over to what appears to be a much better ADSR table (we'll be testing it to see what impact it has across all games).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@512 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-16 22:14:17 +00:00
Jake.Stine 54baa99158 SPU2-X: Fixed a screwup from the previous commit. A bit of code cleanup got lost in translation. ;)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@511 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-16 20:30:54 +00:00
Jake.Stine 24ed5ac12e SPU2-X: Forgot a file (again).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@510 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-16 20:03:19 +00:00
Jake.Stine 340db13caa SPU2-X: Added a lowpass filter to the reverb output, which should produce more correct audio (still experimental). Plus many code cleanups.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@509 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-16 20:00:31 +00:00
Jake.Stine 84099c097f Added GSdx to the pcsx2_suite_2008.sln. It defaults to SSE2, you'll have to manually configure the build targets to use SSSE3 or SSE4 (hopefully we'll find a better solution to that in the near future).
Upgraded GSdx's use of svnrev to match other plugins in the pcsx2 repository; so that it no longer requires TortoiseSVN, and will also compile correctly from folders with spaces (ala '/program files/username/my documents/projects').

Removed the /3rdparty and /common folders since they aren't used anymore, and it was potentially confusing or misleading to leave them in since they were out-of-date (they were once referenced by svn:externals, and we opted out of using those here due to slowness).

SPU2-X: Fixed a minor overflow in the reverb that would cause infrequent crackles in a select few games.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@503 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-16 04:32:03 +00:00
Jake.Stine 2f62f2273b SPU2-X: Couple more quick fixes to the config dialog box.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@501 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-15 12:55:32 +00:00
Jake.Stine c0407f42d7 SPU2-X: Cixed a tyop-ish error in the code that caused reverb static and crackling.
Fixed savestates so that they don't return an error anymore.
Fixed some bugs in the config box.  Some checkboxes weren't being saved and stuff.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@499 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-15 11:03:31 +00:00
Jake.Stine 042e904a65 SPU2-X: Introducing the new SPU2-X! After some talk with Gigaherz, It was decided to branch and rename Playground's mod of SPU2ghz to SPU2-X. This commit isn't just a copy. It includes a series of significant revisions. The most notable features are:
* Working Reverb.  Yes, you heard right.  Fully and completely implemented reverb effects!
* Automatic 5.1 speaker expansion.
* Some more bugfixes to volumes.
* All new configuration panels.
* Improved/Bugfixed XAudio2 drivers.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@497 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-15 05:15:39 +00:00