mirror of https://github.com/PCSX2/pcsx2.git
Slightly safer way of handling filling writes in the Dynarec, disabled a debug message i don't think we need any more.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4528 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
parent
44a1d17c9d
commit
15f7b2b6d8
|
@ -188,7 +188,7 @@ _vifT void vifUnpackSetup(const u32 *data) {
|
|||
vifStruct& vifX = GetVifX;
|
||||
|
||||
if ((vifXRegs.cycle.wl == 0) && (vifXRegs.cycle.wl < vifXRegs.cycle.cl)) {
|
||||
DevCon.WriteLn("Vif%d CL %d, WL %d", idx, vifXRegs.cycle.cl, vifXRegs.cycle.wl);
|
||||
//DevCon.WriteLn("Vif%d CL %d, WL %d Mode %x Mask %x Num %x", idx, vifXRegs.cycle.cl, vifXRegs.cycle.wl, vifXRegs.mode, vifXRegs.mask, (vifXRegs.code >> 16) & 0xff);
|
||||
vifX.cmd = 0;
|
||||
return; // Skipping write and 0 write-cycles, so do nothing!
|
||||
}
|
||||
|
|
|
@ -80,8 +80,8 @@ __fi void VifUnpackSSE_Dynarec::SetMasks(int cS) const {
|
|||
u32 m1 = m0 & 0xaaaaaaaa;
|
||||
u32 m2 =(~m1>>1) & m0;
|
||||
u32 m3 = (m1>>1) & ~m0;
|
||||
if((m2&&(doMask||isFill))||doMode) { xMOVAPS(xmmRow, ptr128[&vif.MaskRow]); }
|
||||
if (m3&&(doMask||isFill)) {
|
||||
if((m2&&doMask)||doMode) { xMOVAPS(xmmRow, ptr128[&vif.MaskRow]); }
|
||||
if (m3&&doMask) {
|
||||
xMOVAPS(xmmCol0, ptr128[&vif.MaskCol]);
|
||||
if ((cS>=2) && (m3&0x0000ff00)) xPSHUF.D(xmmCol1, xmmCol0, _v1);
|
||||
if ((cS>=3) && (m3&0x00ff0000)) xPSHUF.D(xmmCol2, xmmCol0, _v2);
|
||||
|
@ -271,7 +271,7 @@ _vifT __fi void dVifUnpack(const u8* data, bool isFill) {
|
|||
VIFregisters& vifRegs = vifXRegs;
|
||||
|
||||
const u8 upkType = (vif.cmd & 0x1f) | (vif.usn << 5);
|
||||
const int doMask = (vif.cmd & 0x10);
|
||||
const int doMask = isFill? 1 : (vif.cmd & 0x10);
|
||||
|
||||
_vBlock.upkType = upkType;
|
||||
_vBlock.num = (u8&)vifRegs.num;
|
||||
|
|
Loading…
Reference in New Issue