summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbunnei <ericbunnie@gmail.com>2014-04-17 02:41:33 +0200
committerbunnei <ericbunnie@gmail.com>2014-04-17 02:41:33 +0200
commitde3dcd38f6572da88a67e625e6aa98c2a2f786d7 (patch)
treea829306a3e12733409e549fa7223a232364ac418
parent- added stubbed out GSP::Gpu service interface (diff)
downloadyuzu-de3dcd38f6572da88a67e625e6aa98c2a2f786d7.tar
yuzu-de3dcd38f6572da88a67e625e6aa98c2a2f786d7.tar.gz
yuzu-de3dcd38f6572da88a67e625e6aa98c2a2f786d7.tar.bz2
yuzu-de3dcd38f6572da88a67e625e6aa98c2a2f786d7.tar.lz
yuzu-de3dcd38f6572da88a67e625e6aa98c2a2f786d7.tar.xz
yuzu-de3dcd38f6572da88a67e625e6aa98c2a2f786d7.tar.zst
yuzu-de3dcd38f6572da88a67e625e6aa98c2a2f786d7.zip
-rw-r--r--src/core/hle/function_wrappers.h541
-rw-r--r--src/core/hle/hle.cpp2
-rw-r--r--src/core/hle/hle.h1
-rw-r--r--src/core/hle/syscall.cpp264
4 files changed, 413 insertions, 395 deletions
diff --git a/src/core/hle/function_wrappers.h b/src/core/hle/function_wrappers.h
index 22588d95d..7d9389769 100644
--- a/src/core/hle/function_wrappers.h
+++ b/src/core/hle/function_wrappers.h
@@ -25,659 +25,659 @@
//32bit wrappers
template<void func()> void WrapV_V() {
- func();
+ func();
}
template<u32 func()> void WrapU_V() {
- RETURN(func());
+ RETURN(func());
}
template<int func(void *, const char *)> void WrapI_VC() {
- u32 retval = func(Memory::GetPointer(PARAM(0)), Memory::GetCharPointer(PARAM(1)));
- RETURN(retval);
+ u32 retval = func(Memory::GetPointer(PARAM(0)), Memory::GetCharPointer(PARAM(1)));
+ RETURN(retval);
}
template<u32 func(int, void *, int)> void WrapU_IVI() {
- u32 retval = func(PARAM(0), Memory::GetPointer(PARAM(1)), PARAM(2));
- RETURN(retval);
+ u32 retval = func(PARAM(0), Memory::GetPointer(PARAM(1)), PARAM(2));
+ RETURN(retval);
}
template<int func(const char *, int, int, u32)> void WrapI_CIIU() {
- u32 retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ u32 retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<int func(int, const char *, u32, void *, void *, u32, int)> void WrapI_ICUVVUI() {
- u32 retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)), PARAM(2), Memory::GetPointer(PARAM(3)),Memory::GetPointer(PARAM(4)), PARAM(5), PARAM(6) );
- RETURN(retval);
+ u32 retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)), PARAM(2), Memory::GetPointer(PARAM(3)),Memory::GetPointer(PARAM(4)), PARAM(5), PARAM(6) );
+ RETURN(retval);
}
// Hm, do so many params get passed in registers?
template<int func(const char *, int, const char *, int, int, int, int, int)> void WrapI_CICIIIII() {
- u32 retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), Memory::GetCharPointer(PARAM(2)),
- PARAM(3), PARAM(4), PARAM(5), PARAM(6), PARAM(7));
- RETURN(retval);
+ u32 retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), Memory::GetCharPointer(PARAM(2)),
+ PARAM(3), PARAM(4), PARAM(5), PARAM(6), PARAM(7));
+ RETURN(retval);
}
// Hm, do so many params get passed in registers?
template<int func(const char *, int, int, int, int, int, int)> void WrapI_CIIIIII() {
- u32 retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2),
- PARAM(3), PARAM(4), PARAM(5), PARAM(6));
- RETURN(retval);
+ u32 retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2),
+ PARAM(3), PARAM(4), PARAM(5), PARAM(6));
+ RETURN(retval);
}
// Hm, do so many params get passed in registers?
template<int func(int, int, int, int, int, int, u32)> void WrapI_IIIIIIU() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4), PARAM(5), PARAM(6));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4), PARAM(5), PARAM(6));
+ RETURN(retval);
}
// Hm, do so many params get passed in registers?
template<int func(int, int, int, int, int, int, int, int, u32)> void WrapI_IIIIIIIIU() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4), PARAM(5), PARAM(6), PARAM(7), PARAM(8));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4), PARAM(5), PARAM(6), PARAM(7), PARAM(8));
+ RETURN(retval);
}
template<u32 func(int, void *)> void WrapU_IV() {
- u32 retval = func(PARAM(0), Memory::GetPointer(PARAM(1)));
- RETURN(retval);
+ u32 retval = func(PARAM(0), Memory::GetPointer(PARAM(1)));
+ RETURN(retval);
}
template<float func()> void WrapF_V() {
- RETURNF(func());
+ RETURNF(func());
}
// TODO: Not sure about the floating point parameter passing
template<float func(int, float, u32)> void WrapF_IFU() {
- RETURNF(func(PARAM(0), PARAMF(0), PARAM(1)));
+ RETURNF(func(PARAM(0), PARAMF(0), PARAM(1)));
}
template<u32 func(u32)> void WrapU_U() {
- u32 retval = func(PARAM(0));
- RETURN(retval);
+ u32 retval = func(PARAM(0));
+ RETURN(retval);
}
template<u32 func(u32, int)> void WrapU_UI() {
- u32 retval = func(PARAM(0), PARAM(1));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1));
+ RETURN(retval);
}
template<int func(u32)> void WrapI_U() {
- int retval = func(PARAM(0));
- RETURN(retval);
+ int retval = func(PARAM(0));
+ RETURN(retval);
}
template<int func(u32, int)> void WrapI_UI() {
- int retval = func(PARAM(0), PARAM(1));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1));
+ RETURN(retval);
}
template<int func(u32, int, int, u32)> void WrapI_UIIU() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<u32 func(int, u32, int)> void WrapU_IUI() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template<int func(u32, u32)> void WrapI_UU() {
- int retval = func(PARAM(0), PARAM(1));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1));
+ RETURN(retval);
}
template<int func(u32, float, float)> void WrapI_UFF() {
- // Not sure about the float arguments.
- int retval = func(PARAM(0), PARAMF(0), PARAMF(1));
- RETURN(retval);
+ // Not sure about the float arguments.
+ int retval = func(PARAM(0), PARAMF(0), PARAMF(1));
+ RETURN(retval);
}
template<int func(u32, u32, u32)> void WrapI_UUU() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template<int func(u32, u32, u32, int)> void WrapI_UUUI() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<int func(u32, u32, u32, int, int, int,int )> void WrapI_UUUIIII() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4), PARAM(5), PARAM(6));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4), PARAM(5), PARAM(6));
+ RETURN(retval);
}
template<int func(u32, u32, u32, u32)> void WrapI_UUUU() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<int func(u32, u32, u32, u32, u32)> void WrapI_UUUUU() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
+ RETURN(retval);
}
template<int func()> void WrapI_V() {
- int retval = func();
- RETURN(retval);
+ int retval = func();
+ RETURN(retval);
}
template<u32 func(int)> void WrapU_I() {
- u32 retval = func(PARAM(0));
- RETURN(retval);
+ u32 retval = func(PARAM(0));
+ RETURN(retval);
}
template<u32 func(int, int, u32)> void WrapU_IIU() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template<int func(int)> void WrapI_I() {
- int retval = func(PARAM(0));
- RETURN(retval);
+ int retval = func(PARAM(0));
+ RETURN(retval);
}
template<void func(u32)> void WrapV_U() {
- func(PARAM(0));
+ func(PARAM(0));
}
template<void func(int)> void WrapV_I() {
- func(PARAM(0));
+ func(PARAM(0));
}
template<void func(u32, u32)> void WrapV_UU() {
- func(PARAM(0), PARAM(1));
+ func(PARAM(0), PARAM(1));
}
template<void func(int, int)> void WrapV_II() {
- func(PARAM(0), PARAM(1));
+ func(PARAM(0), PARAM(1));
}
template<void func(u32, const char *)> void WrapV_UC() {
- func(PARAM(0), Memory::GetCharPointer(PARAM(1)));
+ func(PARAM(0), Memory::GetCharPointer(PARAM(1)));
}
template<int func(u32, const char *)> void WrapI_UC() {
- int retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)));
- RETURN(retval);
+ int retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)));
+ RETURN(retval);
}
template<int func(u32, const char *, int)> void WrapI_UCI() {
- int retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)), PARAM(2));
- RETURN(retval);
+ int retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)), PARAM(2));
+ RETURN(retval);
}
template<u32 func(u32, int , int , int, int, int)> void WrapU_UIIIII() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4), PARAM(5));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4), PARAM(5));
+ RETURN(retval);
}
template<u32 func(u32, int , int , int, u32)> void WrapU_UIIIU() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
+ RETURN(retval);
}
template<u32 func(u32, int , int , int, int, int, int)> void WrapU_UIIIIII() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4), PARAM(5), PARAM(6));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4), PARAM(5), PARAM(6));
+ RETURN(retval);
}
template<u32 func(u32, u32)> void WrapU_UU() {
- u32 retval = func(PARAM(0), PARAM(1));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1));
+ RETURN(retval);
}
template<u32 func(u32, u32, int)> void WrapU_UUI() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template<u32 func(u32, u32, int, int)> void WrapU_UUII() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<u32 func(const char *, u32, u32, u32)> void WrapU_CUUU() {
- u32 retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ u32 retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<void func(u32, int, u32, int, int)> void WrapV_UIUII() {
- func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
+ func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
}
template<u32 func(u32, int, u32, int, int)> void WrapU_UIUII() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
+ RETURN(retval);
}
template<int func(u32, int, u32, int, int)> void WrapI_UIUII() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
+ RETURN(retval);
}
template<u32 func(u32, int, u32, int)> void WrapU_UIUI() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<int func(u32, int, u32, int)> void WrapI_UIUI() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<u32 func(u32, int, u32)> void WrapU_UIU() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template<u32 func(u32, int, u32, u32)> void WrapU_UIUU() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<u32 func(u32, int, int)> void WrapU_UII() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template<u32 func(u32, int, int, u32)> void WrapU_UIIU() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<int func(u32, int, int, u32, u32)> void WrapI_UIIUU() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
+ RETURN(retval);
}
template<int func(u32, u32, int, int)> void WrapI_UUII() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<int func(u32, u32, int, int, int)> void WrapI_UUIII() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
+ RETURN(retval);
}
template<void func(u32, int, int, int)> void WrapV_UIII() {
- func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
}
template<void func(u32, int, int, int, int, int)> void WrapV_UIIIII() {
- func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4), PARAM(5));
+ func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4), PARAM(5));
}
template<void func(u32, int, int)> void WrapV_UII() {
- func(PARAM(0), PARAM(1), PARAM(2));
+ func(PARAM(0), PARAM(1), PARAM(2));
}
template<u32 func(int, u32)> void WrapU_IU() {
- int retval = func(PARAM(0), PARAM(1));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1));
+ RETURN(retval);
}
template<int func(int, u32)> void WrapI_IU() {
- int retval = func(PARAM(0), PARAM(1));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1));
+ RETURN(retval);
}
template<int func(u32, u32, int)> void WrapI_UUI() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template<int func(u32, u32, int, u32)> void WrapI_UUIU() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<int func(int, int)> void WrapI_II() {
- int retval = func(PARAM(0), PARAM(1));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1));
+ RETURN(retval);
}
template<int func(int, int, int)> void WrapI_III() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template<int func(int, u32, int)> void WrapI_IUI() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template<int func(int, int, int, int)> void WrapI_IIII() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<int func(u32, int, int, int)> void WrapI_UIII() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<int func(int, int, int, u32, int)> void WrapI_IIIUI() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
+ RETURN(retval);
}
template<int func(int, u32, u32, int, int)> void WrapI_IUUII() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
+ RETURN(retval);
}
template<int func(int, const char *, int, u32, u32)> void WrapI_ICIUU() {
- int retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)), PARAM(2), PARAM(3), PARAM(4));
- RETURN(retval);
+ int retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)), PARAM(2), PARAM(3), PARAM(4));
+ RETURN(retval);
}
template<int func(int, int, u32)> void WrapI_IIU() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template<void func(int, u32)> void WrapV_IU() {
- func(PARAM(0), PARAM(1));
+ func(PARAM(0), PARAM(1));
}
template<void func(u32, int)> void WrapV_UI() {
- func(PARAM(0), PARAM(1));
+ func(PARAM(0), PARAM(1));
}
template<u32 func(const char *)> void WrapU_C() {
- u32 retval = func(Memory::GetCharPointer(PARAM(0)));
- RETURN(retval);
+ u32 retval = func(Memory::GetCharPointer(PARAM(0)));
+ RETURN(retval);
}
template<u32 func(const char *, const char *, const char *, u32)> void WrapU_CCCU() {
- u32 retval = func(Memory::GetCharPointer(PARAM(0)),
- Memory::GetCharPointer(PARAM(1)), Memory::GetCharPointer(PARAM(2)),
- PARAM(3));
- RETURN(retval);
+ u32 retval = func(Memory::GetCharPointer(PARAM(0)),
+ Memory::GetCharPointer(PARAM(1)), Memory::GetCharPointer(PARAM(2)),
+ PARAM(3));
+ RETURN(retval);
}
template<int func(const char *)> void WrapI_C() {
- int retval = func(Memory::GetCharPointer(PARAM(0)));
- RETURN(retval);
+ int retval = func(Memory::GetCharPointer(PARAM(0)));
+ RETURN(retval);
}
template<int func(const char *, u32)> void WrapI_CU() {
- int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1));
- RETURN(retval);
+ int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1));
+ RETURN(retval);
}
template<int func(const char *, u32, int)> void WrapI_CUI() {
- int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2));
- RETURN(retval);
+ int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template<int func(int, const char *, int, u32)> void WrapI_ICIU() {
- int retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)), PARAM(2), PARAM(3));
- RETURN(retval);
+ int retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<int func(const char *, int, u32)> void WrapI_CIU() {
- int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2));
- RETURN(retval);
+ int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template<int func(const char *, u32, u32)> void WrapI_CUU() {
- int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2));
- RETURN(retval);
+ int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template<int func(const char *, u32, u32, u32)> void WrapI_CUUU() {
- int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2),
- PARAM(3));
- RETURN(retval);
+ int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2),
+ PARAM(3));
+ RETURN(retval);
}
template<int func(const char *, const char*, int, int)> void WrapI_CCII() {
- int retval = func(Memory::GetCharPointer(PARAM(0)), Memory::GetCharPointer(PARAM(1)), PARAM(2), PARAM(3));
- RETURN(retval);
+ int retval = func(Memory::GetCharPointer(PARAM(0)), Memory::GetCharPointer(PARAM(1)), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<int func(const char *, u32, u32, int, u32, u32)> void WrapI_CUUIUU() {
- int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2),
- PARAM(3), PARAM(4), PARAM(5));
- RETURN(retval);
+ int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2),
+ PARAM(3), PARAM(4), PARAM(5));
+ RETURN(retval);
}
template<int func(const char *, int, int, u32, int, int)> void WrapI_CIIUII() {
- int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2),
- PARAM(3), PARAM(4), PARAM(5));
- RETURN(retval);
+ int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2),
+ PARAM(3), PARAM(4), PARAM(5));
+ RETURN(retval);
}
template<int func(const char *, int, u32, u32, u32)> void WrapI_CIUUU() {
- int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2),
- PARAM(3), PARAM(4));
- RETURN(retval);
+ int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2),
+ PARAM(3), PARAM(4));
+ RETURN(retval);
}
template<int func(const char *, u32, u32, u32, u32, u32)> void WrapI_CUUUUU() {
- int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2),
- PARAM(3), PARAM(4), PARAM(5));
- RETURN(retval);
+ int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2),
+ PARAM(3), PARAM(4), PARAM(5));
+ RETURN(retval);
}
template<u32 func(const char *, u32)> void WrapU_CU() {
- u32 retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1));
- RETURN((u32) retval);
+ u32 retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1));
+ RETURN((u32) retval);
}
template<u32 func(u32, const char *)> void WrapU_UC() {
- u32 retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)));
- RETURN(retval);
+ u32 retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)));
+ RETURN(retval);
}
template<u32 func(const char *, u32, u32)> void WrapU_CUU() {
- u32 retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2));
- RETURN((u32) retval);
+ u32 retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2));
+ RETURN((u32) retval);
}
template<u32 func(int, int, int)> void WrapU_III() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template<u32 func(int, int)> void WrapU_II() {
- u32 retval = func(PARAM(0), PARAM(1));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1));
+ RETURN(retval);
}
template<u32 func(int, int, int, int)> void WrapU_IIII() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<u32 func(int, u32, u32)> void WrapU_IUU() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template<u32 func(int, u32, u32, u32)> void WrapU_IUUU() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<u32 func(int, u32, u32, u32, u32)> void WrapU_IUUUU() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
+ RETURN(retval);
}
template<u32 func(u32, u32, u32)> void WrapU_UUU() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template<void func(int, u32, u32)> void WrapV_IUU() {
- func(PARAM(0), PARAM(1), PARAM(2));
+ func(PARAM(0), PARAM(1), PARAM(2));
}
template<void func(int, int, u32)> void WrapV_IIU() {
- func(PARAM(0), PARAM(1), PARAM(2));
+ func(PARAM(0), PARAM(1), PARAM(2));
}
template<void func(u32, int, u32)> void WrapV_UIU() {
- func(PARAM(0), PARAM(1), PARAM(2));
+ func(PARAM(0), PARAM(1), PARAM(2));
}
template<int func(u32, int, u32)> void WrapI_UIU() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template<void func(int, u32, u32, u32, u32)> void WrapV_IUUUU() {
- func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
+ func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
}
template<void func(u32, u32, u32)> void WrapV_UUU() {
- func(PARAM(0), PARAM(1), PARAM(2));
+ func(PARAM(0), PARAM(1), PARAM(2));
}
template<void func(u32, u32, u32, u32)> void WrapV_UUUU() {
- func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
}
template<void func(const char *, u32, int, u32)> void WrapV_CUIU() {
- func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2), PARAM(3));
+ func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2), PARAM(3));
}
template<int func(const char *, u32, int, u32)> void WrapI_CUIU() {
- int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<void func(u32, const char *, u32, int, u32)> void WrapV_UCUIU() {
- func(PARAM(0), Memory::GetCharPointer(PARAM(1)), PARAM(2), PARAM(3),
- PARAM(4));
+ func(PARAM(0), Memory::GetCharPointer(PARAM(1)), PARAM(2), PARAM(3),
+ PARAM(4));
}
template<int func(u32, const char *, u32, int, u32)> void WrapI_UCUIU() {
- int retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)), PARAM(2),
- PARAM(3), PARAM(4));
- RETURN(retval);
+ int retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)), PARAM(2),
+ PARAM(3), PARAM(4));
+ RETURN(retval);
}
template<void func(const char *, u32, int, int, u32)> void WrapV_CUIIU() {
- func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2), PARAM(3),
- PARAM(4));
+ func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2), PARAM(3),
+ PARAM(4));
}
template<int func(const char *, u32, int, int, u32)> void WrapI_CUIIU() {
- int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2),
- PARAM(3), PARAM(4));
- RETURN(retval);
+ int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2),
+ PARAM(3), PARAM(4));
+ RETURN(retval);
}
template<u32 func(u32, u32, u32, u32)> void WrapU_UUUU() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<u32 func(u32, const char *, u32, u32)> void WrapU_UCUU() {
- u32 retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)), PARAM(2), PARAM(3));
- RETURN(retval);
+ u32 retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<u32 func(u32, u32, u32, int)> void WrapU_UUUI() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<u32 func(u32, u32, u32, int, u32)> void WrapU_UUUIU() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
+ RETURN(retval);
}
template<u32 func(u32, u32, u32, int, u32, int)> void WrapU_UUUIUI() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4), PARAM(5));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4), PARAM(5));
+ RETURN(retval);
}
template<u32 func(u32, u32, int, u32)> void WrapU_UUIU() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<u32 func(u32, int, int, int)> void WrapU_UIII() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<int func(int, u32, u32, u32, u32)> void WrapI_IUUUU() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
+ RETURN(retval);
}
template<int func(int, u32, u32, u32, u32, u32)> void WrapI_IUUUUU() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4), PARAM(5));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4), PARAM(5));
+ RETURN(retval);
}
template<int func(int, u32, int, int)> void WrapI_IUII() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<u32 func(u32, u32, u32, u32, u32)> void WrapU_UUUUU() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
+ RETURN(retval);
}
template<void func(u32, u32, u32, u32, u32)> void WrapV_UUUUU() {
- func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
+ func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4));
}
template<u32 func(const char *, const char *)> void WrapU_CC() {
- int retval = func(Memory::GetCharPointer(PARAM(0)),
- Memory::GetCharPointer(PARAM(1)));
- RETURN(retval);
+ int retval = func(Memory::GetCharPointer(PARAM(0)),
+ Memory::GetCharPointer(PARAM(1)));
+ RETURN(retval);
}
template<void func(const char *, int)> void WrapV_CI() {
- func(Memory::GetCharPointer(PARAM(0)), PARAM(1));
+ func(Memory::GetCharPointer(PARAM(0)), PARAM(1));
}
template<u32 func(const char *, int)> void WrapU_CI() {
- int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1));
- RETURN(retval);
+ int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1));
+ RETURN(retval);
}
template<u32 func(const char *, int, int)> void WrapU_CII() {
- int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2));
- RETURN(retval);
+ int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template<int func(const char *, int, u32, int, u32)> void WrapU_CIUIU() {
- int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2),
- PARAM(3), PARAM(4));
- RETURN(retval);
+ int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2),
+ PARAM(3), PARAM(4));
+ RETURN(retval);
}
template<u32 func(const char *, int, u32, int, u32, int)> void WrapU_CIUIUI() {
- u32 retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2),
- PARAM(3), PARAM(4), PARAM(5));
- RETURN(retval);
+ u32 retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2),
+ PARAM(3), PARAM(4), PARAM(5));
+ RETURN(retval);
}
template<u32 func(u32, u32, u32, u32, u32, u32)> void WrapU_UUUUUU() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4),
- PARAM(5));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3), PARAM(4),
+ PARAM(5));
+ RETURN(retval);
}
template<int func(int, u32, u32, u32)> void WrapI_IUUU() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<int func(int, u32, u32)> void WrapI_IUU() {
- int retval = func(PARAM(0), PARAM(1), PARAM(2));
- RETURN(retval);
+ int retval = func(PARAM(0), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template<u32 func(u32, u32, u32, u32, u32, u32, u32)> void WrapU_UUUUUUU() {
@@ -686,33 +686,33 @@ template<u32 func(u32, u32, u32, u32, u32, u32, u32)> void WrapU_UUUUUUU() {
}
template<int func(u32, int, u32, u32)> void WrapI_UIUU() {
- u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
- RETURN(retval);
+ u32 retval = func(PARAM(0), PARAM(1), PARAM(2), PARAM(3));
+ RETURN(retval);
}
template<int func(int, const char *)> void WrapI_IC() {
- int retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)));
- RETURN(retval);
+ int retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)));
+ RETURN(retval);
}
template <int func(int, const char *, const char *, u32, int)> void WrapI_ICCUI() {
- int retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)), Memory::GetCharPointer(PARAM(2)), PARAM(3), PARAM(4));
- RETURN(retval);
+ int retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)), Memory::GetCharPointer(PARAM(2)), PARAM(3), PARAM(4));
+ RETURN(retval);
}
template <int func(int, const char *, const char *, int)> void WrapI_ICCI() {
- int retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)), Memory::GetCharPointer(PARAM(2)), PARAM(3));
- RETURN(retval);
+ int retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)), Memory::GetCharPointer(PARAM(2)), PARAM(3));
+ RETURN(retval);
}
template <int func(const char *, int, int)> void WrapI_CII() {
- int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2));
- RETURN(retval);
+ int retval = func(Memory::GetCharPointer(PARAM(0)), PARAM(1), PARAM(2));
+ RETURN(retval);
}
template <int func(int, const char *, int)> void WrapI_ICI() {
- int retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)), PARAM(2));
- RETURN(retval);
+ int retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)), PARAM(2));
+ RETURN(retval);
}
template<int func(int, void *, void *, void *, void *, u32, int)> void WrapI_IVVVVUI(){
@@ -724,3 +724,8 @@ template<int func(int, const char *, u32, void *, int, int, int)> void WrapI_ICU
u32 retval = func(PARAM(0), Memory::GetCharPointer(PARAM(1)), PARAM(2), Memory::GetPointer(PARAM(3)), PARAM(4), PARAM(5), PARAM(6));
RETURN(retval);
}
+
+template<int func(u32, s64)> void WrapI_US64() {
+ int retval = func(PARAM(0), PARAM64(2));
+ RETURN(retval);
+}
diff --git a/src/core/hle/hle.cpp b/src/core/hle/hle.cpp
index c173b82de..5672a659f 100644
--- a/src/core/hle/hle.cpp
+++ b/src/core/hle/hle.cpp
@@ -76,7 +76,7 @@ void CallSyscall(u32 opcode) {
if (info->func) {
info->func();
} else {
- ERROR_LOG(HLE, "Unimplemented HLE function %s", info->name);
+ ERROR_LOG(HLE, "Unimplemented SysCall function %s(..)", info->name.c_str());
}
}
diff --git a/src/core/hle/hle.h b/src/core/hle/hle.h
index d02948be3..628a1da89 100644
--- a/src/core/hle/hle.h
+++ b/src/core/hle/hle.h
@@ -10,6 +10,7 @@
////////////////////////////////////////////////////////////////////////////////////////////////////
#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)
////////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/core/hle/syscall.cpp b/src/core/hle/syscall.cpp
index 8225f168b..c5b887795 100644
--- a/src/core/hle/syscall.cpp
+++ b/src/core/hle/syscall.cpp
@@ -27,133 +27,145 @@ Result SendSyncRequest(Handle session) {
return 0;
}
+/// Close a handle
+Result CloseHandle(Handle handle) {
+ // ImplementMe
+ return 0;
+}
+
+/// Wait for a handle to synchronize, timeout after the specified nanoseconds
+Result WaitSynchronization1(Handle handle, s64 nanoseconds) {
+ // ImplementMe
+ return 0;
+}
+
const HLE::FunctionDef Syscall_Table[] = {
- {0x00, NULL, "Unknown"},
- {0x01, NULL, "ControlMemory"},
- {0x02, NULL, "QueryMemory"},
- {0x03, NULL, "ExitProcess"},
- {0x04, NULL, "GetProcessAffinityMask"},
- {0x05, NULL, "SetProcessAffinityMask"},
- {0x06, NULL, "GetProcessIdealProcessor"},
- {0x07, NULL, "SetProcessIdealProcessor"},
- {0x08, NULL, "CreateThread"},
- {0x09, NULL, "ExitThread"},
- {0x0A, NULL, "SleepThread"},
- {0x0B, NULL, "GetThreadPriority"},
- {0x0C, NULL, "SetThreadPriority"},
- {0x0D, NULL, "GetThreadAffinityMask"},
- {0x0E, NULL, "SetThreadAffinityMask"},
- {0x0F, NULL, "GetThreadIdealProcessor"},
- {0x10, NULL, "SetThreadIdealProcessor"},
- {0x11, NULL, "GetCurrentProcessorNumber"},
- {0x12, NULL, "Run"},
- {0x13, NULL, "CreateMutex"},
- {0x14, NULL, "ReleaseMutex"},
- {0x15, NULL, "CreateSemaphore"},
- {0x16, NULL, "ReleaseSemaphore"},
- {0x17, NULL, "CreateEvent"},
- {0x18, NULL, "SignalEvent"},
- {0x19, NULL, "ClearEvent"},
- {0x1A, NULL, "CreateTimer"},
- {0x1B, NULL, "SetTimer"},
- {0x1C, NULL, "CancelTimer"},
- {0x1D, NULL, "ClearTimer"},
- {0x1E, NULL, "CreateMemoryBlock"},
- {0x1F, NULL, "MapMemoryBlock"},
- {0x20, NULL, "UnmapMemoryBlock"},
- {0x21, NULL, "CreateAddressArbiter"},
- {0x22, NULL, "ArbitrateAddress"},
- {0x23, NULL, "CloseHandle"},
- {0x24, NULL, "WaitSynchronization1"},
- {0x25, NULL, "WaitSynchronizationN"},
- {0x26, NULL, "SignalAndWait"},
- {0x27, NULL, "DuplicateHandle"},
- {0x28, NULL, "GetSystemTick"},
- {0x29, NULL, "GetHandleInfo"},
- {0x2A, NULL, "GetSystemInfo"},
- {0x2B, NULL, "GetProcessInfo"},
- {0x2C, NULL, "GetThreadInfo"},
- {0x2D, WrapI_VC<ConnectToPort>, "ConnectToPort"},
- {0x2E, NULL, "SendSyncRequest1"},
- {0x2F, NULL, "SendSyncRequest2"},
- {0x30, NULL, "SendSyncRequest3"},
- {0x31, NULL, "SendSyncRequest4"},
- {0x32, WrapI_U<SendSyncRequest>, "SendSyncRequest"},
- {0x33, NULL, "OpenProcess"},
- {0x34, NULL, "OpenThread"},
- {0x35, NULL, "GetProcessId"},
- {0x36, NULL, "GetProcessIdOfThread"},
- {0x37, NULL, "GetThreadId"},
- {0x38, NULL, "GetResourceLimit"},
- {0x39, NULL, "GetResourceLimitLimitValues"},
- {0x3A, NULL, "GetResourceLimitCurrentValues"},
- {0x3B, NULL, "GetThreadContext"},
- {0x3C, NULL, "Break"},
- {0x3D, NULL, "OutputDebugString"},
- {0x3E, NULL, "ControlPerformanceCounter"},
- {0x3F, NULL, "Unknown"},
- {0x40, NULL, "Unknown"},
- {0x41, NULL, "Unknown"},
- {0x42, NULL, "Unknown"},
- {0x43, NULL, "Unknown"},
- {0x44, NULL, "Unknown"},
- {0x45, NULL, "Unknown"},
- {0x46, NULL, "Unknown"},
- {0x47, NULL, "CreatePort"},
- {0x48, NULL, "CreateSessionToPort"},
- {0x49, NULL, "CreateSession"},
- {0x4A, NULL, "AcceptSession"},
- {0x4B, NULL, "ReplyAndReceive1"},
- {0x4C, NULL, "ReplyAndReceive2"},
- {0x4D, NULL, "ReplyAndReceive3"},
- {0x4E, NULL, "ReplyAndReceive4"},
- {0x4F, NULL, "ReplyAndReceive"},
- {0x50, NULL, "BindInterrupt"},
- {0x51, NULL, "UnbindInterrupt"},
- {0x52, NULL, "InvalidateProcessDataCache"},
- {0x53, NULL, "StoreProcessDataCache"},
- {0x54, NULL, "FlushProcessDataCache"},
- {0x55, NULL, "StartInterProcessDma"},
- {0x56, NULL, "StopDma"},
- {0x57, NULL, "GetDmaState"},
- {0x58, NULL, "RestartDma"},
- {0x59, NULL, "Unknown"},
- {0x5A, NULL, "Unknown"},
- {0x5B, NULL, "Unknown"},
- {0x5C, NULL, "Unknown"},
- {0x5D, NULL, "Unknown"},
- {0x5E, NULL, "Unknown"},
- {0x5F, NULL, "Unknown"},
- {0x60, NULL, "DebugActiveProcess"},
- {0x61, NULL, "BreakDebugProcess"},
- {0x62, NULL, "TerminateDebugProcess"},
- {0x63, NULL, "GetProcessDebugEvent"},
- {0x64, NULL, "ContinueDebugEvent"},
- {0x65, NULL, "GetProcessList"},
- {0x66, NULL, "GetThreadList"},
- {0x67, NULL, "GetDebugThreadContext"},
- {0x68, NULL, "SetDebugThreadContext"},
- {0x69, NULL, "QueryDebugProcessMemory"},
- {0x6A, NULL, "ReadProcessMemory"},
- {0x6B, NULL, "WriteProcessMemory"},
- {0x6C, NULL, "SetHardwareBreakPoint"},
- {0x6D, NULL, "GetDebugThreadParam"},
- {0x6E, NULL, "Unknown"},
- {0x6F, NULL, "Unknown"},
- {0x70, NULL, "ControlProcessMemory"},
- {0x71, NULL, "MapProcessMemory"},
- {0x72, NULL, "UnmapProcessMemory"},
- {0x73, NULL, "Unknown"},
- {0x74, NULL, "Unknown"},
- {0x75, NULL, "Unknown"},
- {0x76, NULL, "TerminateProcess"},
- {0x77, NULL, "Unknown"},
- {0x78, NULL, "CreateResourceLimit"},
- {0x79, NULL, "Unknown"},
- {0x7A, NULL, "Unknown"},
- {0x7B, NULL, "Unknown"},
- {0x7C, NULL, "KernelSetState"},
- {0x7D, NULL, "QueryProcessMemory"},
+ {0x00, NULL, "Unknown"},
+ {0x01, NULL, "ControlMemory"},
+ {0x02, NULL, "QueryMemory"},
+ {0x03, NULL, "ExitProcess"},
+ {0x04, NULL, "GetProcessAffinityMask"},
+ {0x05, NULL, "SetProcessAffinityMask"},
+ {0x06, NULL, "GetProcessIdealProcessor"},
+ {0x07, NULL, "SetProcessIdealProcessor"},
+ {0x08, NULL, "CreateThread"},
+ {0x09, NULL, "ExitThread"},
+ {0x0A, NULL, "SleepThread"},
+ {0x0B, NULL, "GetThreadPriority"},
+ {0x0C, NULL, "SetThreadPriority"},
+ {0x0D, NULL, "GetThreadAffinityMask"},
+ {0x0E, NULL, "SetThreadAffinityMask"},
+ {0x0F, NULL, "GetThreadIdealProcessor"},
+ {0x10, NULL, "SetThreadIdealProcessor"},
+ {0x11, NULL, "GetCurrentProcessorNumber"},
+ {0x12, NULL, "Run"},
+ {0x13, NULL, "CreateMutex"},
+ {0x14, NULL, "ReleaseMutex"},
+ {0x15, NULL, "CreateSemaphore"},
+ {0x16, NULL, "ReleaseSemaphore"},
+ {0x17, NULL, "CreateEvent"},
+ {0x18, NULL, "SignalEvent"},
+ {0x19, NULL, "ClearEvent"},
+ {0x1A, NULL, "CreateTimer"},
+ {0x1B, NULL, "SetTimer"},
+ {0x1C, NULL, "CancelTimer"},
+ {0x1D, NULL, "ClearTimer"},
+ {0x1E, NULL, "CreateMemoryBlock"},
+ {0x1F, NULL, "MapMemoryBlock"},
+ {0x20, NULL, "UnmapMemoryBlock"},
+ {0x21, NULL, "CreateAddressArbiter"},
+ {0x22, NULL, "ArbitrateAddress"},
+ {0x23, WrapI_U<CloseHandle>, "CloseHandle"},
+ {0x24, WrapI_US64<WaitSynchronization1>, "WaitSynchronization1"},
+ {0x25, NULL, "WaitSynchronizationN"},
+ {0x26, NULL, "SignalAndWait"},
+ {0x27, NULL, "DuplicateHandle"},
+ {0x28, NULL, "GetSystemTick"},
+ {0x29, NULL, "GetHandleInfo"},
+ {0x2A, NULL, "GetSystemInfo"},
+ {0x2B, NULL, "GetProcessInfo"},
+ {0x2C, NULL, "GetThreadInfo"},
+ {0x2D, WrapI_VC<ConnectToPort>, "ConnectToPort"},
+ {0x2E, NULL, "SendSyncRequest1"},
+ {0x2F, NULL, "SendSyncRequest2"},
+ {0x30, NULL, "SendSyncRequest3"},
+ {0x31, NULL, "SendSyncRequest4"},
+ {0x32, WrapI_U<SendSyncRequest>, "SendSyncRequest"},
+ {0x33, NULL, "OpenProcess"},
+ {0x34, NULL, "OpenThread"},
+ {0x35, NULL, "GetProcessId"},
+ {0x36, NULL, "GetProcessIdOfThread"},
+ {0x37, NULL, "GetThreadId"},
+ {0x38, NULL, "GetResourceLimit"},
+ {0x39, NULL, "GetResourceLimitLimitValues"},
+ {0x3A, NULL, "GetResourceLimitCurrentValues"},
+ {0x3B, NULL, "GetThreadContext"},
+ {0x3C, NULL, "Break"},
+ {0x3D, NULL, "OutputDebugString"},
+ {0x3E, NULL, "ControlPerformanceCounter"},
+ {0x3F, NULL, "Unknown"},
+ {0x40, NULL, "Unknown"},
+ {0x41, NULL, "Unknown"},
+ {0x42, NULL, "Unknown"},
+ {0x43, NULL, "Unknown"},
+ {0x44, NULL, "Unknown"},
+ {0x45, NULL, "Unknown"},
+ {0x46, NULL, "Unknown"},
+ {0x47, NULL, "CreatePort"},
+ {0x48, NULL, "CreateSessionToPort"},
+ {0x49, NULL, "CreateSession"},
+ {0x4A, NULL, "AcceptSession"},
+ {0x4B, NULL, "ReplyAndReceive1"},
+ {0x4C, NULL, "ReplyAndReceive2"},
+ {0x4D, NULL, "ReplyAndReceive3"},
+ {0x4E, NULL, "ReplyAndReceive4"},
+ {0x4F, NULL, "ReplyAndReceive"},
+ {0x50, NULL, "BindInterrupt"},
+ {0x51, NULL, "UnbindInterrupt"},
+ {0x52, NULL, "InvalidateProcessDataCache"},
+ {0x53, NULL, "StoreProcessDataCache"},
+ {0x54, NULL, "FlushProcessDataCache"},
+ {0x55, NULL, "StartInterProcessDma"},
+ {0x56, NULL, "StopDma"},
+ {0x57, NULL, "GetDmaState"},
+ {0x58, NULL, "RestartDma"},
+ {0x59, NULL, "Unknown"},
+ {0x5A, NULL, "Unknown"},
+ {0x5B, NULL, "Unknown"},
+ {0x5C, NULL, "Unknown"},
+ {0x5D, NULL, "Unknown"},
+ {0x5E, NULL, "Unknown"},
+ {0x5F, NULL, "Unknown"},
+ {0x60, NULL, "DebugActiveProcess"},
+ {0x61, NULL, "BreakDebugProcess"},
+ {0x62, NULL, "TerminateDebugProcess"},
+ {0x63, NULL, "GetProcessDebugEvent"},
+ {0x64, NULL, "ContinueDebugEvent"},
+ {0x65, NULL, "GetProcessList"},
+ {0x66, NULL, "GetThreadList"},
+ {0x67, NULL, "GetDebugThreadContext"},
+ {0x68, NULL, "SetDebugThreadContext"},
+ {0x69, NULL, "QueryDebugProcessMemory"},
+ {0x6A, NULL, "ReadProcessMemory"},
+ {0x6B, NULL, "WriteProcessMemory"},
+ {0x6C, NULL, "SetHardwareBreakPoint"},
+ {0x6D, NULL, "GetDebugThreadParam"},
+ {0x6E, NULL, "Unknown"},
+ {0x6F, NULL, "Unknown"},
+ {0x70, NULL, "ControlProcessMemory"},
+ {0x71, NULL, "MapProcessMemory"},
+ {0x72, NULL, "UnmapProcessMemory"},
+ {0x73, NULL, "Unknown"},
+ {0x74, NULL, "Unknown"},
+ {0x75, NULL, "Unknown"},
+ {0x76, NULL, "TerminateProcess"},
+ {0x77, NULL, "Unknown"},
+ {0x78, NULL, "CreateResourceLimit"},
+ {0x79, NULL, "Unknown"},
+ {0x7A, NULL, "Unknown"},
+ {0x7B, NULL, "Unknown"},
+ {0x7C, NULL, "KernelSetState"},
+ {0x7D, NULL, "QueryProcessMemory"},
};
void Register() {