mirror of
https://github.com/PCSX2/pcsx2.git
synced 2026-11-14 10:10:12 +01:00
VIF: Always update MTVU thread with Row/Col Changes
Fixes graphical issues in Fatal Frame 2 when swapping to MTVU
This commit is contained in:
1 parent
9534b2af1d
commit
839b243bf1
2 files changed
+5
-3
No files matched your search
+3
-1
@@ -415,7 +415,7 @@ void VU_Thread::WaitVU()
|
||||
if (IsDone())
|
||||
break;
|
||||
//DevCon.WriteLn("WaitVU()");
|
||||
pxAssert(THREAD_VU1);
|
||||
//pxAssert(THREAD_VU1);
|
||||
KickStart();
|
||||
std::this_thread::yield(); // Give a chance to the MTVU thread to actually start
|
||||
ScopedLock lock(mtxBusy);
|
||||
@@ -463,6 +463,7 @@ void VU_Thread::WriteMicroMem(u32 vu_micro_addr, void* data, u32 size)
|
||||
Write(size);
|
||||
Write(data, size);
|
||||
CommitWritePos();
|
||||
KickStart();
|
||||
}
|
||||
|
||||
void VU_Thread::WriteDataMem(u32 vu_data_addr, void* data, u32 size)
|
||||
@@ -474,6 +475,7 @@ void VU_Thread::WriteDataMem(u32 vu_data_addr, void* data, u32 size)
|
||||
Write(size);
|
||||
Write(data, size);
|
||||
CommitWritePos();
|
||||
KickStart();
|
||||
}
|
||||
|
||||
void VU_Thread::WriteCol(vifStruct& _vif)
|
||||
|
||||
+2
-2
@@ -537,7 +537,7 @@ vifOp(vifCode_STCol) {
|
||||
}
|
||||
pass2 {
|
||||
u32 ret = _vifCode_STColRow<idx>(data, &vifX.MaskCol._u32[vifX.tag.addr]);
|
||||
if (idx && THREAD_VU1) { vu1Thread.WriteCol(vifX); }
|
||||
if (idx) { vu1Thread.WriteCol(vifX); }
|
||||
return ret;
|
||||
}
|
||||
pass3 { VifCodeLog("STCol"); }
|
||||
@@ -554,7 +554,7 @@ vifOp(vifCode_STRow) {
|
||||
}
|
||||
pass2 {
|
||||
u32 ret = _vifCode_STColRow<idx>(data, &vifX.MaskRow._u32[vifX.tag.addr]);
|
||||
if (idx && THREAD_VU1) { vu1Thread.WriteRow(vifX); }
|
||||
if (idx) { vu1Thread.WriteRow(vifX); }
|
||||
return ret;
|
||||
}
|
||||
pass3 { VifCodeLog("STRow"); }
|
||||
|
||||
Reference in new issue
Block a user