Commit Graph

5944 Commits

Author SHA1 Message Date
tmkkmac 6a3bf0c644 Added Nneeve's fix for some issues in VU pipeline. SPS in Arc The Lad will be fixed.
Added a temporary gamefix option for God of War, which has been broken since r659. Anyway I'll fix this problem in a proper way.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@667 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-03 12:02:38 +00:00
ramapcsx2 223156a29a You might need this one as well :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@666 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-03 09:37:09 +00:00
ramapcsx2 4286c20dda Nneeve coded a new FPU clamp mode "Full" that can help some games which wouldn't work with the other modes.
This fixes the Digimon menu for example (Gamefix will stay a while longer though, until we confirm ingame is fine as well).
He also updated the advanced dialog a bit.

Remember that this mode can break games if VU clamp is below "Extra + preserve sign"

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@665 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-03 09:27:58 +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
tmkkmac 6372375800 Fixed the problem in recompiled version of PPAC5/PEXT5. I forgot about the case with Rt == Rd.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@663 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-03 03:14:23 +00:00
arcum42 498ede1692 Linux: Fix Issue 78 (Pcsx2 crashing if you change graphical plugins).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@662 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-02 20:28:56 +00:00
Jake.Stine b7afccac7d Proper uploading of new debugger.rc and it's header file. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@661 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-02 20:20:24 +00:00
Jake.Stine 1f2509edcf Fixed a bug in r658 caused by some sloppy macros.
Win32: Moved various debugger-related dialogs into a new debugger.rc file, to help reduce clutter between both the std resources and the debugger resources.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@660 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-02 20:08:12 +00:00
tmkkmac 699cdbba1e Fixed a problem that VU clip flag wasn't propagated correctly between recompiled blocks in some cases. SPS in Rule of Rose will be fixed by this.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@659 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-02 18:45:19 +00:00
Jake.Stine 79cde4c09e Set up the x86 emitter so that it always uses MOVAPS over MOVDQA. This generates slightly faster code since movaps is 1 byte shorter than movdqa (both instructions are functionally identical). The optimization is optional via AlwaysUseMovaps defined in ix86_sse.inl
Enabled optimization stuff for zlib and bzip2 projects (Release/Devel build targets).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@658 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-02 18:39:29 +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
mattmenke a4a7bf91dc LilyPad: fea...@yahoo.it's suggested changes for ICC compatibility
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@656 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 23:53:20 +00:00
arcum42 7d4a7d3c10 Fix up the last revision for Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@655 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 22:12:19 +00:00
Jake.Stine f270064b41 Committing the beginnings of a new PS2 Exception Handler! This is very much a work in progress, but it shouldn't really break (or fix) anything in its current state.
EE Interpreters: Fixed some signed/unsigned mistakes in some instructions, namely DIVU, DIVU1, unsigned Traps, and a couple unsigned right shifts.  (all of these were already emulated correctly in the recs)

Also: Removed the ThreadPriority stuff from Pcsx2, since it was a throwback to the days of Win95's unstable multitasker. If you really really feel like you need to change the thread priority of Pcsx2, use the Windows Task Manager or a third party util.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@654 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 21:49:17 +00:00
arcum42 b0c3151aca Fix a few typos, as well as Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@653 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 21:42:09 +00:00
Jake.Stine 2cf4bc3920 Added the second part of emitter macro functionality, by making the emitter instance configurable. We can't actually use it yet tho, since everything shares iCore, and thus everything needs to share the same emitter instance (for now!).
Fixed new emitter so it compiles in Debug builds, cleaned up the header files a bit.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@652 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 20:44:48 +00:00
tmkkmac b6f3f8e415 MMI: Added recompiled version of PPAC5/PEXT5, and optimized PADDUW a bit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@651 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 16:01:53 +00:00
cottonvibes 8fa5c65884 minor VU fix thanks to nneeve
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@650 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 15:03:18 +00:00
cottonvibes 0990cf3ccb accidentally deleted this file and didn't include some other file ><
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@649 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 14:50:27 +00:00
cottonvibes af2e99c196 these files aren't needed anymore
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@648 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 14:44:00 +00:00
cottonvibes e2d583c7fe major pcsx2 emitter change.
the emitter is now 'templified' so that you can run multiple instances such as:
eMOVRtoR<0>(EAX, ESP);
this uses emitter instance #0
to use another instance you can simply change the number in the brackets like:
eMOVRtoR<1>(EAX, ESP);
will use instance #1.

all old-functions are mapped to instance #0 by macros.
like:
#define MOVRtoR eMOVRtoR<0>


why do this to the emitter?
so we can have thread safety, and eventually thread the recompilers using different emitter instances.


note: this took me forever to get working (around 12 hours of non-stop coding).
however for some reason debug build is being extra-picky and still giving compile errors.
hopefully Jake or someone else can fix this, because i tried a few stuff, and just got more compile errors ><

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@647 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 14:42:31 +00:00
arcum42 9deff96c78 A few minor changes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@646 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 11:38:05 +00:00
arcum42 abbaa90a7d Get the Linux side of things ready for when cotton's done with microVU. I'm sure I'll have to make significant changes at that point, but it's good to have the framework in place...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@645 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 09:47:16 +00:00
Jake.Stine 2fd0e1d538 Win32: One more foopah left over from r634 needed fixing, this one caused games running at very high FPS to "freeze" for 2 second intervals at a time.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@644 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 08:50:05 +00:00
arcum42 2270ba4eee Finish the Linux implementation of memcpy_fast_. I've disabled it by default until I'm sure it's working right, but it can easily be enabled in build.sh. Should be a speed boost in Linux (which Windows already had), but I haven't tested it enough to be able to tell yet.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@643 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 08:21:14 +00:00
arcum42 ad0705de56 90% of an implementation of memcpy_fast_ for Linux. And fix debug mode.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@642 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 06:31:33 +00:00
Jake.Stine 44d47ca891 Ah fudge. -_-
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@641 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 05:26:41 +00:00
Jake.Stine cecc7cbe73 Linux: Fix the SysPageFaultExceptionFilter so that it aligns to the pagesize.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@640 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 05:24:44 +00:00
Jake.Stine 6f10835725 Enabled PCH for w32pthreads library. It compiles a *lot* faster now. ;) [whole thing rebuilds in under a second on my machine, heh]
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@639 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 05:06:25 +00:00
arcum42 88f95dd22e Fix Linux. Move most of the externs for functions in .S files in Linux to one header, and reenable using memcmp_mmx in Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@638 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 04:28:17 +00:00
cottonvibes e87d55f153 microVU rec stuff
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@637 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 03:36:52 +00:00
Jake.Stine da25976c6b Re-re-fixed the Windows.h mess. PsxCommon.h still had a win32 include, and cdvd.cpp and misc.cpp had some win/linux code which I relocated. Also, cleaned up the vtlb's SysExceptionHandler stuff -- moved the platform-specific portions to WinSysExec and LnxSysExec, and moved the shared code portion to a new function in Memory.cpp.
(Yes, Linux is probably broken again.)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@636 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 03:30:19 +00:00
arcum42 0acef23784 Clean up Jakes commit in r634, and get rid of some dead code in the assembly files.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@635 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 01:03:16 +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
ramapcsx2 a801b6f091 Bring in the ICC patch that makes pcsx2 build on that compiler.
Thanks to fea for this one ;)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@633 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-28 20:16:28 +00:00
tmkkmac 35386b1d2a MMI: Fixed a minor issue in PSUBUB/PSUBUH, and implemented recompiled opcodes for PMTHL/PSUBUW.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@632 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-28 09:55:18 +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
mattmenke b66db6ffd3 LilyPad: Minor dialog updates. Display FF axis names, display version in config screen.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@630 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-27 23:29:48 +00:00
arcum42 19e56dc33e Linux: Quick fix for the last revision.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@629 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-27 23:18:01 +00:00
Jake.Stine 377830b3a9 IOP Fixes/Optimizations:
* Fixed the IOP's recExecute so that it correctly preserves X86 registers (EDI and EBX were not preserved!)
 * Optimized the recExecute procedure, seems like a nice speedup in FMVs and some games that are IOP intensive.
 * Renamed psxMemRead to iopMemRead, added new Virt/Phys functions, and fixed several instances of DMAs using translated addresses (DMAs are always physical maps).  Our IOP doesn't really emulate the tlb so it won't fix anything, but it's more correct in cas stuff is better supported in the future.
 * Removed unneeded FreezeMMXRegs, since the IOPrec doesn't use any mmx/xmm regs anyway.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@628 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-27 18:12:59 +00:00
Jake.Stine e205999744 Minor Optimization: Added Const support to Vtlb's Load and Store implementations.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@627 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-27 06:40:05 +00:00
arcum42 a5ab9ad28f Linuz CDVD Iso: Fix a major Linux bug that was preventing certain titles from loading in this plugin. Dark Cloud 2, Atelier Iris 3, and Xenosaga I for example. No more switching back and forth between Linuz and EFP. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@626 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-27 06:27:23 +00:00
arcum42 ed97a291dd Linux: Remove the ICO Gamefix, since refraction took it out on Windows.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@625 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-27 05:26:40 +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
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 5b09d81f36 Fixed a bug in the savestate system that caused memcards to eject when they shouldn't have (had uint instead of u64 >_<).
Developers: Changed the way PCSX2_ALIGNED16 macros work, so that they're more friendly to MSVC and Visual Assist X intellisense (more more red squigglies on vars like cpuRegs!)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@618 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-27 01:43:43 +00:00
arcum42 dd48940319 Linux: Missed a plugin or two. Now it should compile.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@617 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-27 00:24:05 +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