Commit Graph

311 Commits

Author SHA1 Message Date
cottonvibes 4620f4c5aa cleaned up some code (knocked off 100+ lines in Alloc.inl), and implemented 'ESUM' opcode.
<drk||Razi>cotton2: write more helpful logs kthx ;p
<cotton2>doesn't matter, no-one cares what i write since it doesn't effect anything for now
<Krakatos>cotton, stop posting those useless commit comments XD
<feal87>no no, please continue. they're fun, i look forward to read them
<feal87>from time to time
<feal87>:°D
<cotton2>lol :D
<Dwarg>Please spend more time making them more amusing.
<drk||Razi>cotton2: it does matter
<cotton2>dwarg: yeah i know!
<Dwarg>drk||Raz:  Why?  They're useless for reversion testing
<cotton2>i have to think of good stuff to write :O
<drk||Razi>when the next vu coders (if any, ever ;p) want to look at your code .. and the history is full of crap
<drk||Razi>that won't be much useful
<drk||Razi>;p
<cotton2>there won't be a next vu coder!
<Dwarg>Comments in the actual code would be more useful, wouldn't they?
<cotton2>my code is perfect!
<drk||Razi>lol
<cotton2>>.> <.<
<cotton2>but seriously
<cotton2>i don't think it can get better
<cotton2>unless like
<Dwarg>Rather than going back and comparing SVN comments to changes made way back when
<cotton2>you want to support AVX
<cotton2>or w/e intel's new SSE thing is called
<feal87>and anyway AVX is like 3 years away
<feal87>in that timeline pcsx2 i think will be stabilized
<feal87>:°D
<cotton2>yeah
<drk||Razi>cotton2: just log kthx
<drk||Razi>implemented y,x,z
<drk||Razi>:>
<cotton2>thats what the diffs are for!
<feal87>and anyway really its useless for this stage
<drk||Razi>yea i know
<feal87>until microVU is active and used by PCSX2
<cotton2>i'm just implementing different opcodes though, its not like i'm chaning features
<drk||Razi>you can tell anything from the code -- no comments or changelog needed.Right ? ;p
<feal87>then every change should be documented for regression testing
<cotton2>drk: yup!
<cotton2>well
<cotton2>its not like i'm changing stuff
<cotton2>i'm just implementing things that havn't been coded
<cotton2>so theres nothing to regress to
<feal87>yep

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@742 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-10 21:02:44 +00:00
tmkkmac 68ec2f25a8 Fixed my stupid mistakes in the previous commit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@741 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-10 20:16:13 +00:00
Jake.Stine 03a6406ff0 Added some preliminary exception handler code to the PCR's. No point in finishing it right now since the rest of the EE's exception handler is still in flux, but at least it's ready for a quick upgrade now. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@740 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-10 20:03:49 +00:00
tmkkmac 7425f1bb6e Fixed a problem in the new VU clip flag code that a history of the flag is cleared wrongly in a certain situation. Unfortunately the problem in GoW is still there :(
MMI: Optimizations for some opcodes.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@739 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-10 19:44:32 +00:00
Jake.Stine 15901551b4 Improved PCR/TIMR support -- fixed a case where games would try and read from the PCR multiple times in the same recompiled block, reuslting in bogus values, and fixed some sign extension errors on the interpreted version of MFC0.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@738 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-10 19:21:54 +00:00
arcum42 cef77785cb Fix the yuv2rgb.cpp issues, per Zeydlitz's patch in issue 100. fast_memcpy works in Linux now as of r727, so I'll leave it enabled for a while, and if it seems stable, I'll remove the switch for it, and have it permanently enabled.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@735 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-10 12:25:45 +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
gabest11 d541a8da45 GSdx: sse2/ssse3 build fixed
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@730 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-10 04:37:41 +00:00
Jake.Stine 22a0eeb3e3 Minor cleanups to NTFS_CompressFile error handling, and the Linux YUV/RGB thingie.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@729 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-10 01:32:08 +00:00
Jake.Stine aef3af8a29 nneeve improves the software-emulated FPU accuracy ("Full" mode in Advanced Dialog).
Appended notes:
 * ADD in iFPUd should be bit accurate (unless it isn't. needs TESTING)
 * MUL in iFPUd with Software Emulate MUL is as much as I could get near bit accurate (not quite enough, probably. needs TESTING)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@728 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-09 23:54:38 +00:00
Jake.Stine 5dc76238bf Fixed a bug in memcpy_fast that caused memory corruption on blocks not aligned to 32-bits in length (this might fix the linux memcpy fast problem too).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@727 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-09 21:52:33 +00:00
cottonvibes 04fba65901 something.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@726 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-09 19:53:41 +00:00
cottonvibes a5d95b75c5 more lower instructions implemented
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@725 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-09 11:09:44 +00:00
cottonvibes 80f3dc5840 started on the lower instructions
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@724 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-09 08:24:52 +00:00
cottonvibes a44c6f0f83 microVU's upper instruction implementations (second pass) finished (except for clip instruction)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@723 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-09 05:28:37 +00:00
mattmenke 0c9abd6765 LilyPad: GSDX10 + fullscreen + escape workaround that's lamer than the last one, but seems to work much better and should cause no issues with GSDX+DX9, other than a slight delay.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@722 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-09 04:22:37 +00:00
gabest11 120971ec4f GSdx: Implemented edge anti-aliasing (aa1) for software mode, bios or ffx are good test subjects (not many other games use it). It's still a bit slow but could be improved a lot by not doing 4 pixels with sse for each single edge pixel, that's just a lot of unnecessary texture lookups. The bios config screen cubes are still bogus, gs_user on aa1 isn't too helpful...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@721 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-09 01:42:56 +00:00
Jake.Stine ca4ce225a0 Linux: inline asm fixes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@720 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-08 23:28:39 +00:00
Jake.Stine 71e2dc2fb4 Many small bugfixes and optimizations:
* Fixed Memcard init so that Memcard1 isn't default in both slots (oops!)
 * Fixed Memcard path logic so that cards outside your pcsx2 folder can be browsed/selected.
 * Fixed CDVD-to-BIOS time sync (I simply forgot a function call!)
 * Optimized yuvrgb_sse2, by using Mod/RM form instructions.
 * Win32: Same optimization applied to FreezeXMMRegs and FreezeMMXRegs (linux already had this optimization)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@719 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-08 20:10:09 +00:00
arcum42 25df8958b2 Linux: Straighten up or remove a few Windows/Linux differences in the code (experamental), remove some dead code, fix a mistake in the Linux version of memcpy_amd_ (still broken, though), and change optimization levels due to gcc optimization induced errors.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@718 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-08 12:37:35 +00:00
cottonvibes 804050aaef A frog in a well won't know the ocean.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@717 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-08 09:05:53 +00:00
refraction d42bf82f7b added some missing CRC's for the ffx hack when MTGS is enabled
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@715 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-07 21:15:09 +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
refraction e88cf84e9c Fixed a silly error (on my part) which stopped the Gran Turismo games loading, looks like it was the same reason Tekken 5 broke too.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@713 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-07 13:10:12 +00:00
tmkkmac 661d5442a8 Fixed a bug in the new patch code introduced in r669, and applied a patch for ICC from Issue 69. Thanks, feal87 :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@712 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-07 12:27:55 +00:00
tmkkmac 60b7edd273 A fix for some VU clamp functions, by Nneeve.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@711 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-07 11:42:45 +00:00
cottonvibes c904878257 implemented more microVU 'crap' :D
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@710 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-07 04:21:26 +00:00
mattmenke d0703dd50f LilyPad: Safely exit fullscreen on escape hack now sends the escape back to PCSX2 as well after un-maximizing the GS window.
Minor changes to the general config screen's hack section.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@709 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-07 02:58:51 +00:00
cottonvibes 4f63ac1101 implemented alot of microVU shit...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@708 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-07 02:38:05 +00:00
arcum42 56f802c80f Linux: Fix up the .S files to match recent changes. Make changes to SafeArray to avoid compiler warnings on every file.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@706 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-07 00:48:57 +00:00
refraction 5cc9704989 Fixed bug in VIF causing Tenchu "weapons" and some backgrounds not to be displayed which was introduced in r454
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@705 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-07 00:47:30 +00:00
refraction 056d8c8417 Fix for games which start VIF1 off while the DMA is paused (Crash of the Titans being one of them)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@704 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 22:59:01 +00:00
ramapcsx2 4b3d1ccab3 More block manager fixes/optimizations by Pseudonym.
This should be the last one (but you never know :p ).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@703 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 21:03:39 +00:00
Jake.Stine 954b7a5255 Buged my last commit (as usual). This one fixes savestate support. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@702 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 20:57:14 +00:00
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