The way it works now is:
- Base mode: 0=normal (cdvd plugin), 1=load elf, 2=use iso loader, 3=emulate no disc
- Bios flag: 65536+base = mode startup through bios boot process. Default is to skip bios.
So for example to load X.iso using the internal iso loader, and executing through the bios, you would now do: pcsx2.exe -bootmode 65538 X.iso
This needs implementing in linux side, and maybe changing it so it's nicer user-wise (for example, reading the number as HEX would make it 10002 instead of 65538).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1593 96395faa-99c1-11dd-bbfe-3dabce05a288
microVU: minor fixes.
The ps2's VUs (and FPU) pretty much always do sqrt(abs(x)) whenever doing sqrt's.
SSE's sqrt will give you a NaN if x is negative instead, so force abs(x) before doing sqrt (unless the value is known to be positive).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1592 96395faa-99c1-11dd-bbfe-3dabce05a288
Saw that SSE4.1 has ptest, and I wanted to try it out xD
untested though cuz I don't have an SSE4.1 cpu :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1585 96395faa-99c1-11dd-bbfe-3dabce05a288
- 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