Commit Graph

84 Commits

Author SHA1 Message Date
Jake.Stine b71b837efa Linux: Added more correct __asm__ qualifiers and conditions; including __volatile__ on a lot of asm code (it should really be the default behavior and non-vlatile the specifier, but whatever >_<), and added register clobber specifiers. Might help unbreak some of GCC 4.4's optimization problems, although VIFdma's uber-hack SSE optimization looks like a real problem.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1964 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-05 11:05:11 +00:00
Jake.Stine 6412271470 Renamed PCSX2_ALIGNED to __aligned and removed the need for excess parenthesis and oddball qualifiers. Left the old macros in Pcsx2defs.h for now, just in case. Redid some of the storage organization of microVU and iFPU consts and temporaries while I was at it, using structs instead of naked vars -- should improve cpu cache behavior a wee bit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1959 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-05 02:15:49 +00:00
Jake.Stine 0f259e62d5 Implemented keyboard accelerator tables and a hashed global command table (should be ideal for eventual GUI extensions via plugin, and toolbars and other fanciness). Removed Pause menu and replaced it with a Suspend/Resume menu. Closing GS window behaves more nicely.
Projects: Removed FrameworkVersion descriptor, don't think it matters for C++ code.  Removed all translation files, since they're grossly out-dated and need to be remade anyway.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1894 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-20 20:54:45 +00:00
arcum42 8a1df8dbb1 Same changes to ZeroSPU2 & spu2-x's projects. ifdeffed out a few things in spu2-x.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1851 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-18 07:37:21 +00:00
arcum42 f72c913c4b Fix a few Linux things.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1816 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-13 06:13:22 +00:00
arcum42 f02c04cb3b Added more plugin project files.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1799 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-09 11:28:57 +00:00
Jake.Stine c13cc555be A couple minor compiler warning fixes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1455 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-03 01:06:53 +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
arcum42 816e39851a Linux: Quick fixes to get the Linux build working with the changes in r1388.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1389 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-18 09:32:35 +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
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
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
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 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 b528ef29b2 Remove forceinlining on a few functions that won't inline, a few minor tweaks, and add a warning in the build file for Linux x64 people trying to compile.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@624 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-27 04:54:07 +00:00
arcum42 1504b88a75 ZeroSPU2: Change the ini file to be more easily editable by hand in Linux, and assorted cleanup.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@622 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-27 03:30:25 +00:00
arcum42 b7d3c6316a Plugins: Add a check for libjpeg-dev to ZeroGS(Issue 60), and a few minor tweaks.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@620 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-27 01:55:11 +00:00
arcum42 3a8bfabd2e Linux: Get ZeroSPU2 compiling. May be modified later, because I'm not sure I'm happy about manually copying libSoundTouch.a in build.sh.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@616 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-27 00:07:07 +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
arcum42 47bda29d23 Linux: Get most of the plugins to build. ZeroSPU2 is being stubborn...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@597 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-25 12:30:10 +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 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
arcum42 85c6db67c2 Linux: Get the locations of ini files for plugins mostly working again (I know about the USB & FW stubs). (Issue 55). This is still somewhat hackish; I'll probably be cleaning up bits later, and this does put LOCAL_PLUGIN_INIS out of commission for the moment. It will come back eventually. This ought to also take care of issue 54. You may need to delete pcsx2.cfg for everything to work properly.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@568 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-22 12:08:05 +00:00
arcum42 f412c38547 Plugins: Devbuild and Debug should be separate, and let's use ZEROGS_DEVBUILD and not RELEASE_TO_PUBLIC in ZeroGS.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@544 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-20 03:22:19 +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
arcum42 a0da3ee37a Linux/Plugins: Use spu2ghz's noise rng in ZeroSPU2, clean various plugins before compiling them, put in better default values for the Linux port when configuring, and go into pcsx2 after configuring for the first time, rather then quitting. Oh, and disable the debugger for the moment in Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@485 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-13 09:57:15 +00:00
Jake.Stine 6ebfae8ef1 Re-Added eol-style:native properties to the repository. The settings got lost when we merged from Playground to Official.
Added interface.cpp (plugin/pcsx2 interface) and savestate.cpp to SPU2ghz, to help clean up SPU2.cpp.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@463 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-09 21:15:56 +00:00
Jake.Stine 098c38113a Removed various references to "Playground" in plugins and dialogs.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@458 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-09 07:47:49 +00:00
Jake.Stine 22bacc999e Modified the build system so that both the original and new "revisioned" copies of EXE/DLL files are copied into the target build folder. Example: When compiling Release, pcsx2.exe will always reflect the most recent successful compilation.
Fixed COP0's recompiled branch instructions (BC0F, BC0T, etc) -- the conditional was not implemented correctly (thanks to Refraction for spotting that one).

Used a better method of clearing the errorlevel during the Pre/Post Build steps.  Should be a little less error-prone (pun?)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@447 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-07 20:11:13 +00:00
Jake.Stine 2cf8006ab0 Fixes some various compilation problems (people without TortoiseSvn installed won't get errors anymore)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@444 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-07 15:14:23 +00:00
arcum42 bd797da2ce ZeroSPU2: Fix the mixer issue properly, and get rid of the temporary code I'd added back in.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@437 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-06 23:08:25 +00:00
Jake.Stine 3f392e4e6e Removed "Pg" from filenames and project names. Removed "Vtlb" from build target names and pcsx2.exe (so the new pcsx2.exe is the same as the old pcsx2pg-vtlb.exe)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@431 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-06 21:40:06 +00:00
refraction 65424fa11b git-svn-id: http://pcsx2.googlecode.com/svn/trunk@425 96395faa-99c1-11dd-bbfe-3dabce05a288 2009-02-06 19:52:59 +00:00