mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-01-24 06:51:17 +01:00
make mtmsr end jit blocks - makes some wii homebrew go a little bit further
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@192 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
2b8a85ac5a
commit
e4792fafaf
@ -282,9 +282,9 @@ bool CBoot::EmulatedBIOS_Wii(bool _bDebug)
|
||||
Memory::Write_U16(0x0000, 0x000030e0); // PADInit
|
||||
|
||||
// clear exception handler
|
||||
for (int i=0x3000; i<=0x3038; i+=4)
|
||||
for (int i = 0x3000; i <= 0x3038; i += 4)
|
||||
{
|
||||
Memory::Write_U32(0x00000000, i);
|
||||
Memory::Write_U32(0x00000000, 0x80000000 + i);
|
||||
}
|
||||
|
||||
// app
|
||||
|
@ -58,7 +58,7 @@ namespace Jit64
|
||||
MOV(32, R(ECX), M(&SRR1));
|
||||
AND(32, R(EAX), Imm32(~mask));
|
||||
AND(32, R(ECX), Imm32(mask));
|
||||
OR(32, R(EAX), R(ECX));
|
||||
OR(32, R(EAX), R(ECX));
|
||||
// MSR &= 0xFFFDFFFF; //TODO: VERIFY
|
||||
AND(32, R(EAX), Imm32(0xFFFDFFFF));
|
||||
MOV(32, M(&MSR), R(EAX));
|
||||
|
@ -87,7 +87,7 @@ namespace Jit64
|
||||
// fall through
|
||||
default:
|
||||
gpr.Lock(d);
|
||||
gpr.LoadToX64(d,false);
|
||||
gpr.LoadToX64(d, false);
|
||||
MOV(32, gpr.R(d), M(&PowerPC::ppcState.spr[iIndex]));
|
||||
gpr.UnlockAll();
|
||||
break;
|
||||
@ -97,8 +97,11 @@ namespace Jit64
|
||||
void mtmsr(UGeckoInstruction inst)
|
||||
{
|
||||
INSTRUCTION_START;
|
||||
gpr.LoadToX64(inst.RS);
|
||||
gpr.LoadToX64(inst.RS, true, false);
|
||||
MOV(32, M(&MSR), gpr.R(inst.RS));
|
||||
gpr.Flush(FLUSH_ALL);
|
||||
fpr.Flush(FLUSH_ALL);
|
||||
WriteExit(js.compilerPC + 4, 0);
|
||||
}
|
||||
|
||||
void mfmsr(UGeckoInstruction inst)
|
||||
|
@ -360,7 +360,7 @@ GekkoOPTemplate table31[] =
|
||||
{19, CInterpreter::mfcr, Jit64::Default, {"mfcr", OPTYPE_SYSTEM, 0}},
|
||||
{83, CInterpreter::mfmsr, Jit64::mfmsr, {"mfmsr", OPTYPE_SYSTEM, 0}},
|
||||
{144, CInterpreter::mtcrf, Jit64::Default, {"mtcrf", OPTYPE_SYSTEM, 0}},
|
||||
{146, CInterpreter::mtmsr, Jit64::mtmsr, {"mtmsr", OPTYPE_SYSTEM, 0}},
|
||||
{146, CInterpreter::mtmsr, Jit64::mtmsr, {"mtmsr", OPTYPE_SYSTEM, FL_ENDBLOCK}},
|
||||
{210, CInterpreter::mtsr, Jit64::Default, {"mtsr", OPTYPE_SYSTEM, 0}},
|
||||
{242, CInterpreter::mtsrin, Jit64::Default, {"mtsrin", OPTYPE_SYSTEM, 0}},
|
||||
{339, CInterpreter::mfspr, Jit64::mfspr, {"mfspr", OPTYPE_SYSTEM, 0}},
|
||||
|
Loading…
x
Reference in New Issue
Block a user