diff options
| author | 2015-01-08 20:01:19 -0500 | |
|---|---|---|
| committer | 2015-01-08 20:01:19 -0500 | |
| commit | 0d0d6ef31a8a347a3660c5ff64639e6a9a65b331 (patch) | |
| tree | 4c04ce1ccae59017deb85c296dd3ab0de67e5c18 /src | |
| parent | Merge pull request #443 from Subv/sleep_thread (diff) | |
| parent | DynCom: Add a comment to GetTicks. (diff) | |
| download | yuzu-0d0d6ef31a8a347a3660c5ff64639e6a9a65b331.tar.gz yuzu-0d0d6ef31a8a347a3660c5ff64639e6a9a65b331.tar.xz yuzu-0d0d6ef31a8a347a3660c5ff64639e6a9a65b331.zip | |
Merge pull request #450 from Subv/ticks_fix
Timing: Use CoreTiming::GetTicks to keep track of ticks.
Diffstat (limited to 'src')
| -rw-r--r-- | src/core/arm/dyncom/arm_dyncom.cpp | 6 | ||||
| -rw-r--r-- | src/core/arm/dyncom/arm_dyncom.h | 3 |
2 files changed, 3 insertions, 6 deletions
diff --git a/src/core/arm/dyncom/arm_dyncom.cpp b/src/core/arm/dyncom/arm_dyncom.cpp index c779e3fd4..31eb879a2 100644 --- a/src/core/arm/dyncom/arm_dyncom.cpp +++ b/src/core/arm/dyncom/arm_dyncom.cpp | |||
| @@ -15,7 +15,7 @@ const static cpu_config_t s_arm11_cpu_info = { | |||
| 15 | "armv6", "arm11", 0x0007b000, 0x0007f000, NONCACHE | 15 | "armv6", "arm11", 0x0007b000, 0x0007f000, NONCACHE |
| 16 | }; | 16 | }; |
| 17 | 17 | ||
| 18 | ARM_DynCom::ARM_DynCom() : ticks(0) { | 18 | ARM_DynCom::ARM_DynCom() { |
| 19 | state = std::unique_ptr<ARMul_State>(new ARMul_State); | 19 | state = std::unique_ptr<ARMul_State>(new ARMul_State); |
| 20 | 20 | ||
| 21 | ARMul_EmulateInit(); | 21 | ARMul_EmulateInit(); |
| @@ -74,11 +74,11 @@ void ARM_DynCom::SetCPSR(u32 cpsr) { | |||
| 74 | } | 74 | } |
| 75 | 75 | ||
| 76 | u64 ARM_DynCom::GetTicks() const { | 76 | u64 ARM_DynCom::GetTicks() const { |
| 77 | return ticks; | 77 | // TODO(Subv): Remove ARM_DynCom::GetTicks() and use CoreTiming::GetTicks() directly once ARMemu is gone |
| 78 | return CoreTiming::GetTicks(); | ||
| 78 | } | 79 | } |
| 79 | 80 | ||
| 80 | void ARM_DynCom::AddTicks(u64 ticks) { | 81 | void ARM_DynCom::AddTicks(u64 ticks) { |
| 81 | this->ticks += ticks; | ||
| 82 | down_count -= ticks; | 82 | down_count -= ticks; |
| 83 | if (down_count < 0) | 83 | if (down_count < 0) |
| 84 | CoreTiming::Advance(); | 84 | CoreTiming::Advance(); |
diff --git a/src/core/arm/dyncom/arm_dyncom.h b/src/core/arm/dyncom/arm_dyncom.h index 7284dcd07..9e102a46e 100644 --- a/src/core/arm/dyncom/arm_dyncom.h +++ b/src/core/arm/dyncom/arm_dyncom.h | |||
| @@ -89,8 +89,5 @@ public: | |||
| 89 | void ExecuteInstructions(int num_instructions) override; | 89 | void ExecuteInstructions(int num_instructions) override; |
| 90 | 90 | ||
| 91 | private: | 91 | private: |
| 92 | |||
| 93 | std::unique_ptr<ARMul_State> state; | 92 | std::unique_ptr<ARMul_State> state; |
| 94 | u64 ticks; | ||
| 95 | |||
| 96 | }; | 93 | }; |