From f68de21ad1cd267029b60ee3767d219c46f5fba0 Mon Sep 17 00:00:00 2001 From: bunnei Date: Thu, 10 Apr 2014 19:58:28 -0400 Subject: added initial modules for setting up SysCall HLE --- src/core/hle/hle.h | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 src/core/hle/hle.h (limited to 'src/core/hle/hle.h') diff --git a/src/core/hle/hle.h b/src/core/hle/hle.h new file mode 100644 index 00000000..6780b52c --- /dev/null +++ b/src/core/hle/hle.h @@ -0,0 +1,35 @@ +// Copyright 2014 Citra Emulator Project +// Licensed under GPLv2 +// Refer to the license.txt file included. + +#pragma once + +#include "common/common_types.h" +#include "core/core.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////// + +typedef void (*HLEFunc)(); +typedef void (*SysCallFunc)(); + +struct HLEFunction { + u32 id; + HLEFunc func; + const char* name; + u32 flags; +}; + +struct HLEModule { + const char* name; + int num_funcs; + const HLEFunction* func_table; +}; + +struct SysCall { + u8 id; + SysCallFunc func; + const char* name; +}; + +#define PARAM(n) Core::g_app_core->GetReg(n) +#define RETURN(n) Core::g_app_core->SetReg(0, n) -- cgit v1.2.3