summaryrefslogtreecommitdiff
path: root/src/core/hle/function_wrappers.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/hle/function_wrappers.h')
-rw-r--r--src/core/hle/function_wrappers.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/core/hle/function_wrappers.h b/src/core/hle/function_wrappers.h
index 5949cb470..1ac6032a6 100644
--- a/src/core/hle/function_wrappers.h
+++ b/src/core/hle/function_wrappers.h
@@ -87,8 +87,16 @@ template<ResultCode func(u32, s64)> void Wrap() {
87 } 87 }
88} 88}
89 89
90template<ResultCode func(void*, void*, u32)> void Wrap(){ 90template<ResultCode func(MemoryInfo*, PageInfo*, u32)> void Wrap() {
91 FuncReturn(func(Memory::GetPointer(PARAM(0)), Memory::GetPointer(PARAM(1)), PARAM(2)).raw); 91 MemoryInfo memory_info = {};
92 PageInfo page_info = {};
93 u32 retval = func(&memory_info, &page_info, PARAM(2)).raw;
94 Core::g_app_core->SetReg(1, memory_info.base_address);
95 Core::g_app_core->SetReg(2, memory_info.size);
96 Core::g_app_core->SetReg(3, memory_info.permission);
97 Core::g_app_core->SetReg(4, memory_info.state);
98 Core::g_app_core->SetReg(5, page_info.flags);
99 FuncReturn(retval);
92} 100}
93 101
94template<ResultCode func(s32*, u32)> void Wrap(){ 102template<ResultCode func(s32*, u32)> void Wrap(){