summaryrefslogtreecommitdiffstats
path: root/src/core/memory/cheat_engine.cpp
diff options
context:
space:
mode:
authorgerman77 <juangerman-13@hotmail.com>2024-02-04 22:19:54 +0100
committergerman77 <juangerman-13@hotmail.com>2024-02-05 00:46:20 +0100
commit504abbd6e0ca8073e6a3e60776b2278bd0ffcaed (patch)
tree9f689eab1feb3d1a3b5de570f2fa107837449828 /src/core/memory/cheat_engine.cpp
parentMerge pull request #12892 from liamwhite/serialization-stuff (diff)
downloadyuzu-504abbd6e0ca8073e6a3e60776b2278bd0ffcaed.tar
yuzu-504abbd6e0ca8073e6a3e60776b2278bd0ffcaed.tar.gz
yuzu-504abbd6e0ca8073e6a3e60776b2278bd0ffcaed.tar.bz2
yuzu-504abbd6e0ca8073e6a3e60776b2278bd0ffcaed.tar.lz
yuzu-504abbd6e0ca8073e6a3e60776b2278bd0ffcaed.tar.xz
yuzu-504abbd6e0ca8073e6a3e60776b2278bd0ffcaed.tar.zst
yuzu-504abbd6e0ca8073e6a3e60776b2278bd0ffcaed.zip
Diffstat (limited to '')
-rw-r--r--src/core/memory/cheat_engine.cpp21
1 files changed, 12 insertions, 9 deletions
diff --git a/src/core/memory/cheat_engine.cpp b/src/core/memory/cheat_engine.cpp
index 96fa7fa3a..7a8c14c2b 100644
--- a/src/core/memory/cheat_engine.cpp
+++ b/src/core/memory/cheat_engine.cpp
@@ -9,6 +9,7 @@
#include "core/core_timing.h"
#include "core/hle/kernel/k_page_table.h"
#include "core/hle/kernel/k_process.h"
+#include "core/hle/kernel/k_process_page_table.h"
#include "core/hle/service/hid/hid_server.h"
#include "core/hle/service/sm/sm.h"
#include "core/memory.h"
@@ -85,8 +86,12 @@ VAddr StandardVmCallbacks::SanitizeAddress(VAddr in) const {
if ((in < metadata.main_nso_extents.base ||
in >= metadata.main_nso_extents.base + metadata.main_nso_extents.size) &&
(in < metadata.heap_extents.base ||
- in >= metadata.heap_extents.base + metadata.heap_extents.size)) {
- LOG_ERROR(CheatEngine,
+ in >= metadata.heap_extents.base + metadata.heap_extents.size) &&
+ (in < metadata.alias_extents.base ||
+ in >= metadata.heap_extents.base + metadata.alias_extents.size) &&
+ (in < metadata.aslr_extents.base ||
+ in >= metadata.heap_extents.base + metadata.aslr_extents.size)) {
+ LOG_DEBUG(CheatEngine,
"Cheat attempting to access memory at invalid address={:016X}, if this "
"persists, "
"the cheat may be incorrect. However, this may be normal early in execution if "
@@ -211,16 +216,14 @@ void CheatEngine::Initialize() {
.base = GetInteger(page_table.GetHeapRegionStart()),
.size = page_table.GetHeapRegionSize(),
};
-
- metadata.address_space_extents = {
- .base = GetInteger(page_table.GetAddressSpaceStart()),
- .size = page_table.GetAddressSpaceSize(),
- };
-
- metadata.alias_extents = {
+ metadata.aslr_extents = {
.base = GetInteger(page_table.GetAliasCodeRegionStart()),
.size = page_table.GetAliasCodeRegionSize(),
};
+ metadata.alias_extents = {
+ .base = GetInteger(page_table.GetAliasRegionStart()),
+ .size = page_table.GetAliasRegionSize(),
+ };
is_pending_reload.exchange(true);
}