Commit Graph

6877 Commits

Author SHA1 Message Date
Jake.Stine 97cdf187e5 Nneeve patch for "Full" FPU, improves some clamping and adds missing values to the savestate info.
Savestates: Pcsx2 now errors when it encounters a savestate made by a newer version of pcsx2.

Added a new SafeList type to the SafeArray collection (not well tested yet).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@701 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 19:01:30 +00:00
ramapcsx2 801d71f7f0 Fixes for the new block manager optimizations by Pseudonym.
There's a bit more speed even :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@700 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 17:14:30 +00:00
arcum42 3880bf5a14 Move the configuration section of Misc.h to a new file, Pcsx2Config.h.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@699 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 15:09:42 +00:00
ramapcsx2 9a89523532 Made the GSdx render switch thing a bit cleaner, moved it where it belongs
and changed the hotkey to F9. (Sure hope no plugin uses that yet :p )

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@698 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 10:04:32 +00:00
arcum42 5d971b5931 Linux: Some work on the plugin code.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@697 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 07:20:16 +00:00
Jake.Stine 8d5b2cf6a9 Added missing files from prev commit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@696 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 01:45:43 +00:00
Jake.Stine 23e0ca1b1f Added googlecode's sparsehash / densehash classes, which may or may not be useful in the future.
Removed various instances of legacy VM code that is no longer needed for reference purposes.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@695 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 01:11:17 +00:00
gabest11 620ba58085 pcsx2: -highpriority switch, other processes generate too much noise and I cannot trust my performance counters without it :P
GSdx: nothing new just committing a few cleanups and my findings on AA1 before doing it, tested a few things with ps2dev on a real machine, got really strange results when not using the standard 0 1 0 1 blending mode, but it doesn't seem harder to implement than a line drawing (which it is), and only adds a few extra pixels here and there, should be fast at least.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@694 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 00:53:59 +00:00
arcum42 3ae6ff0856 Remove lots of evil %'s.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@693 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-05 21:35:26 +00:00
Jake.Stine 8614bbd0f8 Added Path::GetFilenameWithoutExt, and fixed some other PathUtil API layouts.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@692 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-05 21:06:29 +00:00
arcum42 a09157ab59 Patch up the last few commits for Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@691 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-05 20:43:36 +00:00
Jake.Stine 1b95a52b1e Better implementation of MSVC's _SCL_SECURE macro, plus some PrecompiledHeader.h cleanups.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@690 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-05 20:06:38 +00:00
ramapcsx2 5897d04917 Experimental commit!
Hacked in a way to make GSdx change the renderer on the fly.
When you press F11 it will switch to DX9 sowftware rendering.
Press it again to get back to the setting you were using before.

Notes:
-For this change I had to modify a few lines in GSdx. If that's not acceptable
we can do more drastic measures and modify the gsdx.ini :p
-F11 is currently also used for doing gsstates in debug modes, it will likely be changed.
-When in dx10 hardware + fullscreen mode, pressing this key will crash GSdx. Sorry.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@689 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-05 20:00:41 +00:00
Jake.Stine 8092692047 Linux: Quick fixes to the new .S files, and did a mild cleanup of the recLUT macros.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@688 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-05 18:27:16 +00:00
Jake.Stine 482505d241 Pseudonym Crazy-Opts Projects Inc presents: Improved block managers for EE/IOP recompilers! Basic asm optimizations combined with a technique of replacing NULL/invalid pointer checks with a direct link to a JIT dispatcher. A collab effort on irc produced this gem, which improves speed on all accounts, and even makes the linux .S files uber-simple and clean. (no more wondering if they're broke or not!)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@687 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-05 18:13:14 +00:00
arcum42 ce3a2c7d32 Linux: Fix compilation and a typo in my last commit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@686 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-05 13:42:19 +00:00
cottonvibes 76dd2488a1 microVU stuff
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@685 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-05 06:39:24 +00:00
Jake.Stine fc84ade01d IPU Bug/Feature fix: Pseudonym has coded a new yuv2rgb decoder which is up to IPU spec (which differs slightly from MPEG spec). Improves color hue/saturation on many vids, and is a bit faster too.
Dynarec: Removed RET2().

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@683 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-05 02:21:07 +00:00
cottonvibes 7fd0f67f93 pork chop sandwiches!
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@682 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-05 01:19:54 +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
arcum42 1492382253 Linux: Get everything compiling again. There is still a nasty crahing bug or two from r675, in particular when using the menus for load and save states rather then keyboard commands. I'll work on fixing that tomorrow, but wanted it to at least compile and run.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@679 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-04 20:58:41 +00:00
Jake.Stine 74db449e88 Gah! I forgot a line in my prev commit, so the SPRdma savestate fix wasn't actually being used. Btw, this *may* fix unstable savestate problems experienced in many games, including FFX and SMT3:Nocturne (but it;s so random it's hard to know for sure).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@678 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-04 13:05:06 +00:00
Jake.Stine a7fcdbaafa Savestate version upgrade and stability fix -- added some vars that the SPRdma might like to preserve between states, and removed some old hacky VM-related stuff while I was at it.
Fixed up the Saveslot detection somewhat (File:Load > menu now greys out unavailable saveslots).

Applied ICC fixup patch from Issue 84. :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@677 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-04 13:00:32 +00:00
Jake.Stine 05e3554541 Damn buggy TortoiseSVN >_<
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@676 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-04 11:41:00 +00:00
Jake.Stine cc930f86c5 Major GUI API Cleanups. Most likely buggy as all hell.
* Moved most of the shared code between the two GUIs into platform independent source modules (System.cpp, Saveslots.cpp, and RecoverySystem.cpp)
 * Created two new namespaces which house functions that need to be implemented by OS/platforms: HostGui and HostSys.  HostGui is useful -- HostSys I'm not sure I'll keep around in the long run.
 * Moved keyEvent struct from PS2Edefs.h to PS2Etypes.h
 * Many improvements to the logic flow of the GUI (should be a little less fallible).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@675 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-04 11:33:45 +00:00
cottonvibes 900d4bd485 i assume these headers aren't needed anymore but were accidentally left in VS project file :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@674 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-04 07:57:34 +00:00
cottonvibes b0217bd38a necessary change to properly compile microVU's templates (c++ is picky with templates :p)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@673 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-04 07:38:14 +00:00
cottonvibes 2add61d729 backup, just ignore this
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@672 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-04 07:11:59 +00:00
arcum42 c1a59e6cc6 Quick fix for r668; the new radio buttion hadn't been assigned to that group.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@671 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-03 21:51:55 +00:00
cottonvibes b019dc6884 minor emitter fix and dialog text tweaking.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@670 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-03 16:42:43 +00:00
ramapcsx2 57abad9d44 Pontifice from our forums fixed some cheating related code he wrote for pcsx2 earlier.
This supposedly makes using codebreaker / ar max cheats more reliable :p

Thanks for that, Pontifice ;)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@669 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-03 15:34:51 +00:00
arcum42 c4aec82c00 Fix Linux, and update to match gui changes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@668 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-03 14:32:18 +00:00
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