summaryrefslogtreecommitdiffstats
path: root/src/core/hle/kernel/svc_wrap.h
diff options
context:
space:
mode:
authorSergi Granell <xerpi.g.12@gmail.com>2022-02-08 19:46:45 +0100
committerSergi Granell <xerpi.g.12@gmail.com>2022-02-15 00:45:19 +0100
commitc3242abe95ec7b4b2279401ed08affb5b3e3e1da (patch)
treef2e8ad3536399e9a18b80642395ecf85ce41182b /src/core/hle/kernel/svc_wrap.h
parentMerge pull request #7871 from german77/svc2 (diff)
downloadyuzu-c3242abe95ec7b4b2279401ed08affb5b3e3e1da.tar
yuzu-c3242abe95ec7b4b2279401ed08affb5b3e3e1da.tar.gz
yuzu-c3242abe95ec7b4b2279401ed08affb5b3e3e1da.tar.bz2
yuzu-c3242abe95ec7b4b2279401ed08affb5b3e3e1da.tar.lz
yuzu-c3242abe95ec7b4b2279401ed08affb5b3e3e1da.tar.xz
yuzu-c3242abe95ec7b4b2279401ed08affb5b3e3e1da.tar.zst
yuzu-c3242abe95ec7b4b2279401ed08affb5b3e3e1da.zip
Diffstat (limited to '')
-rw-r--r--src/core/hle/kernel/svc_wrap.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/core/hle/kernel/svc_wrap.h b/src/core/hle/kernel/svc_wrap.h
index a60adfcab..d309f166c 100644
--- a/src/core/hle/kernel/svc_wrap.h
+++ b/src/core/hle/kernel/svc_wrap.h
@@ -669,4 +669,26 @@ void SvcWrap32(Core::System& system) {
FuncReturn(system, retval);
}
+// Used by CreateCodeMemory32
+template <ResultCode func(Core::System&, Handle*, u32, u32)>
+void SvcWrap32(Core::System& system) {
+ Handle handle = 0;
+
+ const u32 retval = func(system, &handle, Param32(system, 1), Param32(system, 2)).raw;
+
+ system.CurrentArmInterface().SetReg(1, handle);
+ FuncReturn(system, retval);
+}
+
+// Used by ControlCodeMemory32
+template <ResultCode func(Core::System&, Handle, u32, u64, u64, Svc::MemoryPermission)>
+void SvcWrap32(Core::System& system) {
+ const u32 retval =
+ func(system, Param32(system, 0), Param32(system, 1), Param(system, 2), Param(system, 4),
+ static_cast<Svc::MemoryPermission>(Param32(system, 6)))
+ .raw;
+
+ FuncReturn(system, retval);
+}
+
} // namespace Kernel