..:: PCSX2 Forums ::..

Full Version: [BUG REPORT] ERROR FiFo.cpp
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
GAME: Ratchet & Clank 2: Going Commando PS2 (Video History)

Version of PCSX2: V1.0.0 r5350

..\..\FiFo.cpp(47) : assertion failed:
Function: ReadFIFO_VIF1
Thread: EE Core
Condition: vif1Regs.stat.FQC != 0
Message: FQC = 0 on VIF FIFO READ!

Stacktrace:
[00] 0x003D3434
[01] 0x004FE112
[02] 0x00118555
[03] 0x000BD3CE
[04] 0x0016B63E
[05] 0x000E4F41
[06] 0x000E566E
[07] 0x000E56A6
[08] ptw32_throw
[09] endthreadex
[10] endthreadex
[11] BaseThreadInitThunk
[12] RtlInitializeExceptionChain
[13] RtlInitializeExceptionChain
---------------------------------------------------------------------
FiFo.cpp:

Line: 41
void __fastcall ReadFIFO_VIF1(mem128_t* out)
{
if (vif1Regs.stat.test(VIF1_STAT_INT | VIF1_STAT_VSS | VIF1_STAT_VIS | VIF1_STAT_VFS) )
DevCon.Warning( "Reading from vif1 fifo when stalled" );

ZeroQWC(out); // Clear first in case no data gets written...
pxAssertRel(vif1Regs.stat.FQC != 0, "FQC = 0 on VIF FIFO READ!");
if (vif1Regs.stat.FDR) {
if (vif1Regs.stat.FQC > vif1.GSLastDownloadSize) {
DevCon.Warning("Warning! GS Download size < FIFO count!");
}
if (vif1Regs.stat.FQC > 0) {
GetMTGS().WaitGS();
GSreadFIFO((u64*)out);
vif1.GSLastDownloadSize--;
GUNIT_LOG("ReadFIFO_VIF1");
if (vif1.GSLastDownloadSize <= 16)
gifRegs.stat.OPH = false;
vif1Regs.stat.FQC = min((u32)16, vif1.GSLastDownloadSize);
}
}

VIF_LOG("ReadFIFO/VIF1 -> %ls", out->ToString().c_str());
}
Line: 64
I had trouble with that but just disable speedhacks as it only happens twice in the game
there are a few things you didn't specify.
please read this, and edit your post according to what is stated.

moved out of bug reports.
Make sure you enable the ee timing fix, the ratchet games have some dma troubles.