Ignore exit flag on branch delay slot (#899)

This commit is contained in:
gdkchan 2020-01-21 22:11:43 -03:00 committed by Thog
parent d6b9babe1d
commit 532ccf929a
5 changed files with 42 additions and 1 deletions

View file

@ -58,6 +58,8 @@ namespace Ryujinx.Graphics.Gpu
private int _pipeOp;
private bool _ignoreExitFlag;
private int _pc;
/// <summary>
@ -232,12 +234,19 @@ namespace Ryujinx.Graphics.Gpu
{
FetchOpCode(mme);
}
else
{
// The delay slot instruction exit flag should be ignored.
_ignoreExitFlag = true;
}
return true;
}
}
bool exit = (_opCode & 0x80) != 0;
bool exit = (_opCode & 0x80) != 0 && !_ignoreExitFlag;
_ignoreExitFlag = false;
return !exit;
}