|
|
|
@ -19,33 +19,6 @@ |
|
|
|
#include "core/arm/skyeye_common/armstate.h"
|
|
|
|
#include "core/arm/skyeye_common/vfp/vfp.h"
|
|
|
|
|
|
|
|
/***************************************************************************\
|
|
|
|
* Returns a new instantiation of the ARMulator's state * |
|
|
|
\***************************************************************************/ |
|
|
|
ARMul_State* ARMul_NewState(ARMul_State* state) |
|
|
|
{ |
|
|
|
state->Emulate = RUN; |
|
|
|
state->Mode = USER32MODE; |
|
|
|
|
|
|
|
state->lateabtSig = HIGH; |
|
|
|
state->bigendSig = LOW; |
|
|
|
|
|
|
|
return state; |
|
|
|
} |
|
|
|
|
|
|
|
/***************************************************************************\
|
|
|
|
* Call this routine to set ARMulator to model a certain processor * |
|
|
|
\***************************************************************************/ |
|
|
|
|
|
|
|
void ARMul_SelectProcessor(ARMul_State* state, unsigned properties) |
|
|
|
{ |
|
|
|
state->is_v4 = (properties & (ARM_v4_Prop | ARM_v5_Prop)) != 0; |
|
|
|
state->is_v5 = (properties & ARM_v5_Prop) != 0; |
|
|
|
state->is_v5e = (properties & ARM_v5e_Prop) != 0; |
|
|
|
state->is_v6 = (properties & ARM_v6_Prop) != 0; |
|
|
|
state->is_v7 = (properties & ARM_v7_Prop) != 0; |
|
|
|
} |
|
|
|
|
|
|
|
// Resets certain MPCore CP15 values to their ARM-defined reset values.
|
|
|
|
static void ResetMPCoreCP15Registers(ARMul_State* cpu) |
|
|
|
{ |
|
|
|
@ -104,9 +77,7 @@ static void ResetMPCoreCP15Registers(ARMul_State* cpu) |
|
|
|
cpu->CP15[CP15_TLB_DEBUG_CONTROL] = 0x00000000; |
|
|
|
} |
|
|
|
|
|
|
|
/***************************************************************************\
|
|
|
|
* Call this routine to set up the initial machine state (or perform a RESET * |
|
|
|
\***************************************************************************/ |
|
|
|
// Performs a reset
|
|
|
|
void ARMul_Reset(ARMul_State* state) |
|
|
|
{ |
|
|
|
VFPInit(state); |
|
|
|
@ -125,4 +96,5 @@ void ARMul_Reset(ARMul_State* state) |
|
|
|
state->abortSig = LOW; |
|
|
|
|
|
|
|
state->NumInstrs = 0; |
|
|
|
state->Emulate = RUN; |
|
|
|
} |