10-24-2009, 10:05 AM
pcsx2 0.9.7, svn 2064, all configurations, new gui only:
the game is very slow if i zoom the camera in or a character from the game will drawn zoomed in. the log window displays the message "Ignoring Unmapped GIFtag Register, Index = ee". the problem is the output to the log window, them is very very slow and the game goes down to 5 - 10 fps by me (a result from spamming the log message). temporary i have changed the code in the GIFpath.cpp from
static void __fastcall RegHandlerUNMAPPED(const u32* data)
{
const int regidx = ((u8*)data)[8];
// Known "unknowns":
// the bios likes to write to 0x7f using an EOP giftag with NLOOP set to 4.
// Not sure what it's trying to accomplish exactly. Ignoring seems to work fine.
if( regidx != 0x7f )
Console.Notice( "Ignoring Unmapped GIFtag Register, Index = %02x", regidx );
}
to
int lastregidx = 0x7f;
static void __fastcall RegHandlerUNMAPPED(const u32* data)
{
const int regidx = ((u8*)data)[8];
// Known "unknowns":
// the bios likes to write to 0x7f using an EOP giftag with NLOOP set to 4.
// Not sure what it's trying to accomplish exactly. Ignoring seems to work fine.
if( regidx != 0x7f && regidx != lastregidx )
{
Console.Notice( "Ignoring Unmapped GIFtag Register, Index = %02x", regidx );
lastregidx = regidx;
}
}
and so stops the log spam. is it not the best way, i think a better way is a array that hold the found unmapped register and stops the spamming of all unhandled register by logging them once (i check the last found register only).
cu deathcore
the game is very slow if i zoom the camera in or a character from the game will drawn zoomed in. the log window displays the message "Ignoring Unmapped GIFtag Register, Index = ee". the problem is the output to the log window, them is very very slow and the game goes down to 5 - 10 fps by me (a result from spamming the log message). temporary i have changed the code in the GIFpath.cpp from
static void __fastcall RegHandlerUNMAPPED(const u32* data)
{
const int regidx = ((u8*)data)[8];
// Known "unknowns":
// the bios likes to write to 0x7f using an EOP giftag with NLOOP set to 4.
// Not sure what it's trying to accomplish exactly. Ignoring seems to work fine.
if( regidx != 0x7f )
Console.Notice( "Ignoring Unmapped GIFtag Register, Index = %02x", regidx );
}
to
int lastregidx = 0x7f;
static void __fastcall RegHandlerUNMAPPED(const u32* data)
{
const int regidx = ((u8*)data)[8];
// Known "unknowns":
// the bios likes to write to 0x7f using an EOP giftag with NLOOP set to 4.
// Not sure what it's trying to accomplish exactly. Ignoring seems to work fine.
if( regidx != 0x7f && regidx != lastregidx )
{
Console.Notice( "Ignoring Unmapped GIFtag Register, Index = %02x", regidx );
lastregidx = regidx;
}
}
and so stops the log spam. is it not the best way, i think a better way is a array that hold the found unmapped register and stops the spamming of all unhandled register by logging them once (i check the last found register only).
cu deathcore