10 changed files with 57 additions and 41 deletions
-
1src/core/CMakeLists.txt
-
1src/core/arm/dyncom/arm_dyncom.cpp
-
4src/core/arm/dyncom/arm_dyncom_dec.cpp
-
4src/core/arm/dyncom/arm_dyncom_dec.h
-
1src/core/arm/dyncom/arm_dyncom_interpreter.cpp
-
1src/core/arm/dyncom/arm_dyncom_thumb.cpp
-
34src/core/arm/skyeye_common/armdefs.h
-
1src/core/arm/skyeye_common/armmmu.h
-
9src/core/arm/skyeye_common/armsupp.cpp
-
42src/core/arm/skyeye_common/armsupp.h
@ -0,0 +1,42 @@ |
|||
// Copyright 2014 Citra Emulator Project |
|||
// Licensed under GPLv2 or any later version |
|||
// Refer to the license.txt file included. |
|||
|
|||
#pragma once |
|||
|
|||
#include "common/common_types.h" |
|||
|
|||
struct ARMul_State; |
|||
|
|||
#define BITS(s, a, b) ((s << ((sizeof(s) * 8 - 1) - b)) >> (sizeof(s) * 8 - b + a - 1)) |
|||
#define BIT(s, n) ((s >> (n)) & 1) |
|||
|
|||
#define POS(i) ( (~(i)) >> 31 ) |
|||
#define NEG(i) ( (i) >> 31 ) |
|||
|
|||
bool AddOverflow(u32, u32, u32); |
|||
bool SubOverflow(u32, u32, u32); |
|||
|
|||
void ARMul_SelectProcessor(ARMul_State*, unsigned); |
|||
|
|||
u32 AddWithCarry(u32, u32, u32, bool*, bool*); |
|||
bool ARMul_AddOverflowQ(u32, u32); |
|||
|
|||
u8 ARMul_SignedSaturatedAdd8(u8, u8); |
|||
u8 ARMul_SignedSaturatedSub8(u8, u8); |
|||
u16 ARMul_SignedSaturatedAdd16(u16, u16); |
|||
u16 ARMul_SignedSaturatedSub16(u16, u16); |
|||
|
|||
u8 ARMul_UnsignedSaturatedAdd8(u8, u8); |
|||
u16 ARMul_UnsignedSaturatedAdd16(u16, u16); |
|||
u8 ARMul_UnsignedSaturatedSub8(u8, u8); |
|||
u16 ARMul_UnsignedSaturatedSub16(u16, u16); |
|||
u8 ARMul_UnsignedAbsoluteDifference(u8, u8); |
|||
u32 ARMul_SignedSatQ(s32, u8, bool*); |
|||
u32 ARMul_UnsignedSatQ(s32, u8, bool*); |
|||
|
|||
bool InBigEndianMode(ARMul_State*); |
|||
bool InAPrivilegedMode(ARMul_State*); |
|||
|
|||
u32 ReadCP15Register(ARMul_State* cpu, u32 crn, u32 opcode_1, u32 crm, u32 opcode_2); |
|||
void WriteCP15Register(ARMul_State* cpu, u32 value, u32 crn, u32 opcode_1, u32 crm, u32 opcode_2); |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue