Implemented tlbie instruction

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4875 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
skidau 2010-01-18 04:39:01 +00:00
parent 8245e4115d
commit 9df31a9747
1 changed files with 10 additions and 4 deletions

View File

@ -665,10 +665,16 @@ void tlbia(UGeckoInstruction _inst)
void tlbie(UGeckoInstruction _inst) void tlbie(UGeckoInstruction _inst)
{ {
// invalid entry // Invalidate TLB entry
// int entry = _inst.RB; u32 _Address = m_GPR[_inst.RB];
for (int i = 0; i < 16; i++)
//MessageBox(0,"TLBIE","TLBIE",0); {
if ((_Address & ~0xfff) == (PowerPC::ppcState.tlb_va[(PowerPC::ppcState.tlb_last + i) & 15]))
{
PowerPC::ppcState.tlb_pa[(PowerPC::ppcState.tlb_last + i) & 15] = 0;
PowerPC::ppcState.tlb_va[(PowerPC::ppcState.tlb_last + i) & 15] = 0;
}
}
} }
void tlbsync(UGeckoInstruction _inst) void tlbsync(UGeckoInstruction _inst)