diff options
| -rw-r--r-- | src/core/arm/dynarmic/arm_dynarmic.cpp | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/src/core/arm/dynarmic/arm_dynarmic.cpp b/src/core/arm/dynarmic/arm_dynarmic.cpp index a9cb973df..a521aec7c 100644 --- a/src/core/arm/dynarmic/arm_dynarmic.cpp +++ b/src/core/arm/dynarmic/arm_dynarmic.cpp | |||
| @@ -87,14 +87,21 @@ void ARM_Dynarmic::SetVFPReg(int index, u32 value) { | |||
| 87 | } | 87 | } |
| 88 | 88 | ||
| 89 | u32 ARM_Dynarmic::GetVFPSystemReg(VFPSystemRegister reg) const { | 89 | u32 ARM_Dynarmic::GetVFPSystemReg(VFPSystemRegister reg) const { |
| 90 | // TODO(bunnei): ImplementMe | 90 | if (reg == VFP_FPSCR) { |
| 91 | UNIMPLEMENTED(); | 91 | return jit->Fpscr(); |
| 92 | return 0; | 92 | } |
| 93 | |||
| 94 | // Dynarmic does not implement and/or expose other VFP registers, fallback to interpreter state | ||
| 95 | return interpreter_state->VFP[reg]; | ||
| 93 | } | 96 | } |
| 94 | 97 | ||
| 95 | void ARM_Dynarmic::SetVFPSystemReg(VFPSystemRegister reg, u32 value) { | 98 | void ARM_Dynarmic::SetVFPSystemReg(VFPSystemRegister reg, u32 value) { |
| 96 | // TODO(bunnei): ImplementMe | 99 | if (reg == VFP_FPSCR) { |
| 97 | UNIMPLEMENTED(); | 100 | jit->SetFpscr(value); |
| 101 | } | ||
| 102 | |||
| 103 | // Dynarmic does not implement and/or expose other VFP registers, fallback to interpreter state | ||
| 104 | interpreter_state->VFP[reg] = value; | ||
| 98 | } | 105 | } |
| 99 | 106 | ||
| 100 | u32 ARM_Dynarmic::GetCPSR() const { | 107 | u32 ARM_Dynarmic::GetCPSR() const { |