Commit Graph

1016 Commits

Author SHA1 Message Date
cottonvibes ac1ecd5812 microVU: more flag "stuff" xD
<JakeStine>cotton: your commits always contain "stuff"
<JakeStine>I think you should rename one of your files to "microVU_stuff"
<Dwarg>And maybe others called "microVU_junk" and "microVU_crap"
<Dwarg>Then you could be much clearer
<Dwarg>"Fixed some junk, broke some crap, added some stuff...."
<JakeStine>lol
<cotton>lol

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@972 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-14 03:34:47 +00:00
Jake.Stine 6cceed6268 Many Emitter updates:
* added implementations for MOV and Shift instructions (SHL, SHR, ROL, ROR, etc).
 * Improved compilation optimization considerably, by improving inlining selection in cases where constant propagation can be resolved reliably.
 * Moved lots of code around, so that the new emitter and the legacy emitter are more clearly separated; and renamed some vars.
 * Changed recompilers to initialize the recBlocks array to 0xcc instead of 0xcd (fills the blocks with the single-byte instruction INT3, which fixes the misalignment mess that would sometimes happen when using disasm views on the RecBlocks contents).
 * Switched back to /O2 (Optimize for Speed) instead of /Ox, since MSVC (for me) generally fails to optimize Thread-Local storage in /Ox mode.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@971 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-14 01:26:57 +00:00
cottonvibes 2711d14f0c microVU: bug fixes on some flag handling stuff.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@970 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-14 00:15:18 +00:00
refraction 44446b47e7 fixed a minor bug from saqib's earlier commit
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@969 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-13 12:15:31 +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
cottonvibes 6e1805de36 microVU: minor changes...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@967 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-13 05:39:18 +00:00
cottonvibes 557564edc2 microVU: changed flag handling algorithms some more...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@966 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-13 03:46:19 +00:00
msakhtar c43412948f Added a check to to clear QWC register if the upper 16bits are set. This fixes most of the broken backgrounds in movies.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@965 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-12 23:31:59 +00:00
msakhtar 7471f251d7 Added a check to to clear QWC register if the upper 16bits are set. This fixes most of the broken backgrounds in movies.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@964 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-12 23:31:27 +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
gabest11 6830f07f27 GSdx: GoW2, try #3
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@962 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-12 19:46:42 +00:00
refraction 85cf1ab6dc Fix for MGS3 corruption from r955, i don't know why but where vifRegs was set previously, it was completely ignored, regardless of the fact the code has run through there before doing anything else O_o
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@961 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-12 15:51:24 +00:00
cottonvibes a3c1669024 microVU: more flag stuff (div/sqrt/rsqrt flags set at proper time)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@960 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-12 10:23:25 +00:00
cottonvibes 5b0d9b6723 microVU: fried my brain with some very-complex VU flag-handling logic/algorithms (hopefully they work as expected)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@959 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-12 08:29:53 +00:00
refraction 97fac9e635 resolves Issue 143 Altered Beast
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@958 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-12 04:56:06 +00:00
drkiiraziel f3370ce28f --updated to r956
--uses test8 instead of test32 when possible
--exception handling checks are a bit more strict

git-svn-id: http://pcsx2.googlecode.com/svn/branches/vtlb-exp@957 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-12 02:49:23 +00:00
refraction e100933069 Look over there! A THREE HEADED MONKEY!
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@956 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-11 19:23:39 +00:00
refraction 4df3f80d30 Optimized and split up the unpack call a bit so less checks are being run, should bring an overall speed increase. Also got rid of some duplicate pointer rubbish which was all over the place.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@955 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-11 17:45:14 +00:00
refraction a388d2969c Fixed bug from Issue 144.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@954 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-11 13:23:05 +00:00
cottonvibes 076e9e5386 more microVU stuff...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@953 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-11 09:25:47 +00:00
gabest11 9c8a9712a9 GSdx: GoW2 fix #2, pal version this time
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@952 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-11 08:54:48 +00:00
drkiiraziel 3fb09c2192 --BTS r/m+r added for emitter
--Uses BTS + bit arrays for manual block tracking, instead of full invalidation.It makes some games much much faster and doesn't seem to affect he rest (still, testing is needed).Okami that uses some sort of SMC works .. but i'm sure there are some bugs left in it


git-svn-id: http://pcsx2.googlecode.com/svn/branches/vtlb-exp@951 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 20:26:43 +00:00
gabest11 cf995d0716 GSdx: GoW2 fix, 16 bit drawing that caused the green overlay is skipped (character shadow)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@950 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 19:55:05 +00:00
cottonvibes 653286a692 forgot to add microVU_Execution.inl in the last commit xD
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@949 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 19:47:13 +00:00
cottonvibes 6775b8a5cc microVU:
- added microVU_Execution.inl
- dispatcher stuff is now recompiled with pcsx2's emitter instead of using inline asm, its cleaner than inline asm and its more portable since the asm won't have to be ported to GCC.
- lots of first-pass implementation for lower opcodes
- implemented documented branch behavior (first pass stuff only)
Note: theres some undocumented stuff branches do according to Nneeve's tests, but i won't implement those for now since 99% of games shouldn't need it, and according to the tests, the behavior seems kind-of random/erratic.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@948 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 19:45:27 +00:00
refraction 8738f75ba7 Fixed alignment problems noticed in Digital Devil Saga
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@947 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 13:42:37 +00:00
refraction 756127d096 Fixed recently discovered bug from VIF which could have potentially happened anywhere jNODEFAULT is used (nobody noticed lol)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@946 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 13:29:20 +00:00
refraction e1bf40546f Why this broke Tekken 5 i don't know! (answers on a postcard) anyhow, fixed :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@945 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 13:15:52 +00:00
refraction 432b060109 Fix for one small bug, doesnt fix tekken 5 tho :(
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@944 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 13:08:19 +00:00
gabest11 b0da55cb89 GSdx: this should probably fix taking snapshots with dx9, also upped the version to .15, since the revision number has passed what the last release still had from the old repository.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@943 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 07:12:29 +00:00
arcum42 b1769a2061 Take care of Issue 139.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@942 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 01:50:31 +00:00
arcum42 f127f69b3e A few tweaks to the unpacking code. _UNPACKPart isn't really neccessary anymore, and optimised writeXYZW a little.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@941 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 01:34:04 +00:00
refraction 19362d3c55 More unpack changes, tried to simplify a few sums a bit when processing skipping and a few other misc bits
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@940 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 00:02:42 +00:00
arcum42 98258eeffe Yes, more Vif work. writeX, writeY, writeZ, and writeW are all merged into one function.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@939 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-09 23:57:58 +00:00
refraction ccacbedc50 last silly mistake, promise :P
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@938 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-09 23:20:13 +00:00
refraction 08d6f10d57 Slap my wrists for the silliest error ever :p only thing that gave it away was the sirens on top of the heads in Ape Escape 3 had no light lol
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@937 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-09 23:06:11 +00:00
drkiiraziel f5e99af1ab --No longer uses 2 hacks/buffers, it just stores the info needed to generate the memops directly on the code
git-svn-id: http://pcsx2.googlecode.com/svn/branches/vtlb-exp@936 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-09 23:01:56 +00:00
refraction feaed9f4fa The last changes to clean up Vif wouldn't have worked in some situations, tried to rearrange it and space things out and skipping unnecessary checks
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@935 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-09 21:02:37 +00:00
drkiiraziel 6c88e99cf2 --This breaks linux.
--Basic vtlb code rewrite for full mapping using exceptions
--This is buggy & leaks ram for now


git-svn-id: http://pcsx2.googlecode.com/svn/branches/vtlb-exp@934 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-09 20:44:26 +00:00
refraction cf0c393514 Fixed Outlaw Tennis error on the loading bar, as a strange side effect, this fixes the missing textures in Crash N Burn too. What is more annoying is this code use to be in the emulator ages ago (before processing skipping) and it was removed as we didn't think it actually had a use! :D
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@933 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-09 20:15:01 +00:00
drkiiraziel c81e012e51 git-svn-id: http://pcsx2.googlecode.com/svn/branches/vtlb-exp@932 96395faa-99c1-11dd-bbfe-3dabce05a288 2009-04-09 19:21:45 +00:00
arcum42 88ae29ac56 More Vif Unpacking cleanup. (And probably not the last of it.)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@931 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-09 15:22:59 +00:00
mattmenke 62d6c0f3e7 LilyPad: Debug line removed.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@930 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-09 02:07:45 +00:00
mattmenke 76b52a97a1 LilyPad: Small/large motor defaults should work for most devices, when creating new effect bindings.
Keyboard queue fixed up a bit, mainly to favor escape down when PCSX2 is dying.

Fix for ignore bindings being swapped with the swap pad bindings buttons.

Updated version number, thinking of releasing soon.  No known bugs, not that much more to do.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@929 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-09 02:02:49 +00:00
refraction 1250953ff0 Fixed Gradius V, had to destroy the templates arcum did a bit to get it to work without ape escape crashing (sorry mate lol. Took out my V3_# discovery, ape escape is getting spikey now, so ill just remove it. Also altered V2_# to work slightly different incase the packet starts on the Y vector, it now wont suffer underrunning (possible bad data)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@928 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-08 21:19:50 +00:00
Nneeve 57f9c2bc64 Disabled a VU recompiler option that caused some SPS in Ratchet and Clank and didn't actually affect speed.
Modified VU stalling logic of MR32 and MTIR instructions and modified FDIV stalling.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@927 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-08 18:19:48 +00:00
ramapcsx2 f4e9178c06 backing up some changes
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@926 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-08 17:15:51 +00:00
arcum42 08c6f68aba Fix Linux again (and again and again and again...)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@925 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-08 13:34:51 +00:00
cottonvibes e3a87fecd9 microVU:
-fixed rm instructions to work with Jake's emitter changes
-implemented the case where upper and lower instructions write to same reg at once (the lower instruction's result is discarded)
-implemented more first pass analyzing stuff
-fixed various bugs...

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@924 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-08 10:07:14 +00:00
Jake.Stine 3dd99a0932 More updates to the new emitter: switched over some Push/Pop instructions, did a fully compliant implementation of LEa (both 16 and 32!), and fixed a couple small bugs in the ModRM/Sib encoder regarding EBP as an [index*scale] formation.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@923 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-08 06:25:40 +00:00