diff options
Diffstat (limited to 'src/core/hle')
-rw-r--r-- | src/core/hle/hle.h | 28 | ||||
-rw-r--r-- | src/core/hle/hle_syscall.cpp | 4 | ||||
-rw-r--r-- | src/core/hle/hle_syscall.h | 3 |
3 files changed, 17 insertions, 18 deletions
diff --git a/src/core/hle/hle.h b/src/core/hle/hle.h index 6648c787f..35c8a4621 100644 --- a/src/core/hle/hle.h +++ b/src/core/hle/hle.h @@ -9,29 +9,31 @@ //////////////////////////////////////////////////////////////////////////////////////////////////// -typedef void (*HLEFunc)(); +#define PARAM(n) Core::g_app_core->GetReg(n) +#define RETURN(n) Core::g_app_core->SetReg(0, n) + +//////////////////////////////////////////////////////////////////////////////////////////////////// + +namespace HLE { -struct HLEFunction { +typedef void (*Func)(); + +struct FunctionDef { u32 id; - HLEFunc func; - const char* name; + Func func; + std::string name; }; -struct HLEModule { - const char* name; +struct ModuleDef { + std::string name; int num_funcs; - const HLEFunction* func_table; + const FunctionDef* func_table; }; -#define PARAM(n) Core::g_app_core->GetReg(n) -#define RETURN(n) Core::g_app_core->SetReg(0, n) - -namespace HLE { - void Init(); void Shutdown(); -void RegisterModule(const char *name, int num_functions, const HLEFunction *func_table); +void RegisterModule(std::string name, int num_functions, const FunctionDef *func_table); } // namespace diff --git a/src/core/hle/hle_syscall.cpp b/src/core/hle/hle_syscall.cpp index b17a2e220..fdcaa914f 100644 --- a/src/core/hle/hle_syscall.cpp +++ b/src/core/hle/hle_syscall.cpp @@ -15,10 +15,10 @@ Result SVC_ConnectToPort(void* out, const char* port_name) { return 0; } -const HLEFunction SysCallTable[] = { +const HLE::FunctionDef SysCall_Table[] = { {0x2D, WrapI_VC<SVC_ConnectToPort>, "svcConnectToPort"}, }; void Register_SysCall() { - HLE::RegisterModule("SysCallTable", ARRAY_SIZE(SysCallTable), SysCallTable); + HLE::RegisterModule("SysCallTable", ARRAY_SIZE(SysCall_Table), SysCall_Table); } diff --git a/src/core/hle/hle_syscall.h b/src/core/hle/hle_syscall.h index 643af0bf4..4faa14535 100644 --- a/src/core/hle/hle_syscall.h +++ b/src/core/hle/hle_syscall.h @@ -34,7 +34,4 @@ // } //}; - - - void Register_SysCall(); |