forked from ShuriZma/suyu
1
0
Fork 0

hle: removed PARAM64 macro (this was incorrect), made several bug fixes accordingly for decoding U64 function parameters

This commit is contained in:
bunnei 2014-05-28 21:20:00 -04:00
parent 46aef01d04
commit 9fd5d6c7d8
2 changed files with 2 additions and 3 deletions

View File

@ -750,11 +750,11 @@ template<int func(void*, u32, u32, u32, u32, u32)> void WrapI_VUUUUU(){
} }
template<int func(u32, s64)> void WrapI_US64() { template<int func(u32, s64)> void WrapI_US64() {
int retval = func(PARAM(0), PARAM64(1)); int retval = func(PARAM(0), ((PARAM(3) << 32) | PARAM(2)));
RETURN(retval); RETURN(retval);
} }
template<int func(void*, void*, u32, u32, s64)> void WrapI_VVUUS64() { template<int func(void*, void*, u32, u32, s64)> void WrapI_VVUUS64() {
int retval = func(Memory::GetPointer(PARAM(0)), Memory::GetPointer(PARAM(1)), PARAM(2), PARAM(3), PARAM(4)); int retval = func(Memory::GetPointer(PARAM(5)), Memory::GetPointer(PARAM(1)), PARAM(2), PARAM(3), ((PARAM(4) << 32) | PARAM(0)));
RETURN(retval); RETURN(retval);
} }

View File

@ -10,7 +10,6 @@
//////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////
#define PARAM(n) Core::g_app_core->GetReg(n) #define PARAM(n) Core::g_app_core->GetReg(n)
#define PARAM64(n) (Core::g_app_core->GetReg(n) | ((u64)Core::g_app_core->GetReg(n + 1) << 32))
#define RETURN(n) Core::g_app_core->SetReg(0, n) #define RETURN(n) Core::g_app_core->SetReg(0, n)
//////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////