aboutsummaryrefslogtreecommitdiff
path: root/ARMInterpreter_Branch.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ARMInterpreter_Branch.cpp')
-rw-r--r--ARMInterpreter_Branch.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/ARMInterpreter_Branch.cpp b/ARMInterpreter_Branch.cpp
index 879b64f..354dad3 100644
--- a/ARMInterpreter_Branch.cpp
+++ b/ARMInterpreter_Branch.cpp
@@ -85,6 +85,14 @@ s32 T_BLX_REG(ARM* cpu)
return C_S(2) + C_N(1);
}
+s32 T_B(ARM* cpu)
+{
+ s32 offset = (s32)((cpu->CurInstr & 0x7FF) << 21) >> 20;
+ cpu->JumpTo(cpu->R[15] + offset + 1);
+
+ return C_S(2) + C_N(1);
+}
+
s32 T_BL_LONG_1(ARM* cpu)
{
s32 offset = (s32)((cpu->CurInstr & 0x7FF) << 21) >> 9;