Fix typo that broke a few games in r2853. Thanks for spotting it, arcum :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2855 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
ramapcsx2 2010-04-15 10:14:42 +00:00
parent 43530ff703
commit e0bbb8f59d
1 changed files with 9 additions and 5 deletions

View File

@ -98,14 +98,18 @@ static void DmaExec( void (*func)(), u32 mem, u32 value )
//It's invalid for the hardware to write a DMA while it is active, not without Suspending the DMAC
if (chcr.STR && reg->chcr.STR && dmacRegs->ctrl.DMAE) {
if((reg->chcr._u32 & 0xff) == (chcr._u32 & 0xff)) //Tried to start another DMA in the same mode
{
DevCon.Warning(L"DMAExec32 Attempt to run DMA while one is already active in %s(%x)", ChcrName(mem), mem);
}
else //Just trying to change mode without stopping the DMA, so we dont care really :P
{
HW_LOG("Attempted to change modes while DMA active, ignoring");
// When DMA is active only STR field is writable, so we just
// call the dma transfer function w/o modifying CHCR contents...
//func();
Registers::Thaw();
return; // Test with Gust games and fatal frame
// When DMA is active only STR field is writable, so we just
// call the dma transfer function w/o modifying CHCR contents...
//func();
Registers::Thaw();
return; // Test with Gust games and fatal frame
}
}
// Note: pad is the padding right above qwc, so we're testing whether qwc