- Trippled the number of cached textures, many games constantly recreated them
- Don't clear some shaders at each drawcall (in dx10) , which is a nice speedup (but could potentially be bad, please check..)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1584 96395faa-99c1-11dd-bbfe-3dabce05a288
Instead of just having live/dead programs, we now have young/old/dead programs.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1578 96395faa-99c1-11dd-bbfe-3dabce05a288
- Finished implementing regAlloc. Sadly the speedgain wasn't great (0%~2% in the games I tried). I think the speedup should be bigger with a CPU that supports SSE4.1, but I don't have one to test :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1573 96395faa-99c1-11dd-bbfe-3dabce05a288
- Automatic texture filtering should be ok now, occasionally point filtering was used. Tested it on the ps2 and figured with no mip levels LoD and minification settings are just ignored altogether.
- Also run a few tests on the gather instruction with the reference rasterizer and found a fatal flaw with it. It returns the four samples for bilinear sampling (in a funny order, which isn't documented of course, x = bl, y = br, z = tr, w = tl), but there is no way to guess which four were selected exactly. Due to some hidden rounding error it might grab different texels than I would when calculating the position of the upper-left texel, of which the fractional part is be used for the interpolation. When the texel positions do not match it leaves annoying discontinuity errors. Oh well...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1571 96395faa-99c1-11dd-bbfe-3dabce05a288
I'll list what I think should be fixed:
Dawn of Mana SPS <- Should be fixed, untested
ToTa Characters <- Should be fixed, untested
FFXII SPS in Barheim Passage <- Should be fixed, untested
KH1 floor bug <- Fixed for me, but theres still other sps on characters caused by something else
Most-likely SPS in some other games is fixed as well...
If anyone can confirm the games I listed are fixed, please leave a comment :D
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1568 96395faa-99c1-11dd-bbfe-3dabce05a288
- trying the dx10.1-only "gather" shader instruction for palletized lookups ("8-bit texture" mode), saves 4 instructions which isn't much but still... (not tested, don't have ati)
- may fix the intel gma "no output" bug (don't have gma either :P)
- and the usual small code optimizations
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1549 96395faa-99c1-11dd-bbfe-3dabce05a288
- More regalloc work/fixes
- Implemented some untested SSE4.1 optimizations (can't test since don't have sse4.1 cpu)
pcsx2:
- Added an SSE4 instruction to the legacy emitter (just a wrapper to the new emitter function).
Note: Currently tri-ace fix and logical min-max code (thing that mad DaZ safe to use) is broken with mVU. Will fix later.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1547 96395faa-99c1-11dd-bbfe-3dabce05a288
- Fixed Micro Program Logging (broke it on my last commit)
- More regAlloc work
- Big Cleanup, deleted about a thousand lines of obsolete code.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1546 96395faa-99c1-11dd-bbfe-3dabce05a288
Once I rewrite my lower opcodes to use regAlloc, I can remove all the flushes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1545 96395faa-99c1-11dd-bbfe-3dabce05a288
- Added *.MDF Disc Images to the "Run ISO" file browser.
I'm not entirely sure if theres any file system differences between .mdf and .iso (couldn't find much info on it); but all my .mdf files are working as-is with gigaherz's code, so I think compatibility should be fine.
- Moved "Run ISO" menu option above "Run BIOS" since users will run ISO's more often than the bios xD
microVU:
- More work in progress stuff... hopefully I finish within the next few days.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1543 96395faa-99c1-11dd-bbfe-3dabce05a288
This patch by matsuri makes playing with vsync a lot nicer, so thanks for that one ;)
Note: For now its directx 10 only, due to dx9 needing a swapchain reset..
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1526 96395faa-99c1-11dd-bbfe-3dabce05a288
Remove unnecessary re-checks at startup, so the cdvd info only shows up once (and every time the plugin notifies of a disk change).
Add a condition to print which shouldn't be printing always.
Add a little "hack" to Mechacon command 0x80 ... will get rid of it later if it doesn't help.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1525 96395faa-99c1-11dd-bbfe-3dabce05a288