aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/arm/dyncom/arm_dyncom.cpp
diff options
context:
space:
mode:
authorGravatar Lioncash <mathew1800@gmail.com>2015-07-26 05:39:54 -0400
committerGravatar Lioncash <mathew1800@gmail.com>2015-07-26 13:18:32 -0400
commit0ecc6e2f0421aef95f0dd30466e4c69e15020e83 (patch)
treefe4f331b08d95df3cae818347b3b94079686e222 /src/core/arm/dyncom/arm_dyncom.cpp
parent392c7feba0cd152e46ffbe6089def35082fa2692 (diff)
dyncom: Use ARMul_State as an object
Gets rid of C-like parameter passing.
Diffstat (limited to 'src/core/arm/dyncom/arm_dyncom.cpp')
-rw-r--r--src/core/arm/dyncom/arm_dyncom.cpp11
1 files changed, 1 insertions, 10 deletions
diff --git a/src/core/arm/dyncom/arm_dyncom.cpp b/src/core/arm/dyncom/arm_dyncom.cpp
index a51a3acf..9228a49a 100644
--- a/src/core/arm/dyncom/arm_dyncom.cpp
+++ b/src/core/arm/dyncom/arm_dyncom.cpp
@@ -18,16 +18,7 @@
#include "core/core_timing.h"
ARM_DynCom::ARM_DynCom(PrivilegeMode initial_mode) {
- state = Common::make_unique<ARMul_State>();
-
- // Reset the core to initial state
- ARMul_Reset(state.get());
-
- // Switch to the desired privilege mode.
- switch_mode(state.get(), initial_mode);
-
- state->Reg[13] = 0x10000000; // Set stack pointer to the top of the stack
- state->Reg[15] = 0x00000000;
+ state = Common::make_unique<ARMul_State>(initial_mode);
}
ARM_DynCom::~ARM_DynCom() {