From 6f6d5158de18a7ca134406d55446c27f6db48a1a Mon Sep 17 00:00:00 2001 From: bunnei Date: Sat, 12 Apr 2014 23:31:39 -0400 Subject: added OS memory read/write for thread command buffer --- src/core/hle/hle.h | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src/core/hle/hle.h') diff --git a/src/core/hle/hle.h b/src/core/hle/hle.h index 2bd1f99a2..5ee90bcdc 100644 --- a/src/core/hle/hle.h +++ b/src/core/hle/hle.h @@ -17,7 +17,10 @@ namespace HLE { enum { - OS_THREAD_COMMAND_BUFFER_ADDR = 0xA0004000, + CMD_BUFFER_ADDR = 0xA0010000, ///< Totally arbitrary unused address space + CMD_BUFFER_SIZE = 0x10000, + CMD_BUFFER_MASK = (CMD_BUFFER_SIZE - 1), + CMD_BUFFER_ADDR_END = (CMD_BUFFER_ADDR + CMD_BUFFER_SIZE), }; typedef u32 Addr; @@ -35,6 +38,14 @@ struct ModuleDef { const FunctionDef* func_table; }; +// Read from memory used by CTROS HLE functions +template +inline void Read(T &var, const u32 addr); + +// Write to memory used by CTROS HLE functions +template +inline void Write(u32 addr, const T data); + void RegisterModule(std::string name, int num_functions, const FunctionDef *func_table); void CallSyscall(u32 opcode); -- cgit v1.2.3