diff options
-rw-r--r-- | src/core/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/core/core.vcxproj | 4 | ||||
-rw-r--r-- | src/core/core.vcxproj.filters | 12 | ||||
-rw-r--r-- | src/core/hle/hle.cpp | 14 | ||||
-rw-r--r-- | src/core/hle/hle.h | 2 | ||||
-rw-r--r-- | src/core/hle/kernel/thread.cpp | 2 | ||||
-rw-r--r-- | src/core/hle/service/service.h | 2 | ||||
-rw-r--r-- | src/core/hle/svc.cpp (renamed from src/core/hle/syscall.cpp) | 12 | ||||
-rw-r--r-- | src/core/hle/svc.h (renamed from src/core/hle/syscall.h) | 4 |
9 files changed, 28 insertions, 26 deletions
diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt index b0597db38..e006502da 100644 --- a/src/core/CMakeLists.txt +++ b/src/core/CMakeLists.txt @@ -33,7 +33,7 @@ set(SRCS core.cpp hle/hle.cpp hle/config_mem.cpp hle/coprocessor.cpp - hle/syscall.cpp + hle/svc.cpp hle/kernel/kernel.cpp hle/kernel/thread.cpp hle/service/apt.cpp diff --git a/src/core/core.vcxproj b/src/core/core.vcxproj index f077154ee..6eb58a636 100644 --- a/src/core/core.vcxproj +++ b/src/core/core.vcxproj @@ -175,7 +175,7 @@ <ClCompile Include="hle\service\hid.cpp" /> <ClCompile Include="hle\service\service.cpp" /> <ClCompile Include="hle\service\srv.cpp" /> - <ClCompile Include="hle\syscall.cpp" /> + <ClCompile Include="hle\svc.cpp" /> <ClCompile Include="hw\hw.cpp" /> <ClCompile Include="hw\lcd.cpp" /> <ClCompile Include="hw\ndma.cpp" /> @@ -223,7 +223,7 @@ <ClInclude Include="hle\service\hid.h" /> <ClInclude Include="hle\service\service.h" /> <ClInclude Include="hle\service\srv.h" /> - <ClInclude Include="hle\syscall.h" /> + <ClInclude Include="hle\svc.h" /> <ClInclude Include="hw\hw.h" /> <ClInclude Include="hw\lcd.h" /> <ClInclude Include="hw\ndma.h" /> diff --git a/src/core/core.vcxproj.filters b/src/core/core.vcxproj.filters index 6aedeb54b..fc4e35edb 100644 --- a/src/core/core.vcxproj.filters +++ b/src/core/core.vcxproj.filters @@ -84,9 +84,6 @@ <ClCompile Include="hle\hle.cpp"> <Filter>hle</Filter> </ClCompile> - <ClCompile Include="hle\syscall.cpp"> - <Filter>hle</Filter> - </ClCompile> <ClCompile Include="hle\service\service.cpp"> <Filter>hle\service</Filter> </ClCompile> @@ -162,6 +159,9 @@ <ClCompile Include="hle\kernel\thread.cpp"> <Filter>hle\kernel</Filter> </ClCompile> + <ClCompile Include="hle\svc.cpp"> + <Filter>hle</Filter> + </ClCompile> </ItemGroup> <ItemGroup> <ClInclude Include="arm\disassembler\arm_disasm.h"> @@ -226,9 +226,6 @@ <ClInclude Include="hle\service\service.h"> <Filter>hle\service</Filter> </ClInclude> - <ClInclude Include="hle\syscall.h"> - <Filter>hle</Filter> - </ClInclude> <ClInclude Include="hle\service\apt.h"> <Filter>hle\service</Filter> </ClInclude> @@ -289,6 +286,9 @@ <ClInclude Include="hle\kernel\thread.h"> <Filter>hle\kernel</Filter> </ClInclude> + <ClInclude Include="hle\svc.h"> + <Filter>hle</Filter> + </ClInclude> </ItemGroup> <ItemGroup> <Text Include="CMakeLists.txt" /> diff --git a/src/core/hle/hle.cpp b/src/core/hle/hle.cpp index 452384571..080c36abf 100644 --- a/src/core/hle/hle.cpp +++ b/src/core/hle/hle.cpp @@ -6,7 +6,7 @@ #include "core/mem_map.h" #include "core/hle/hle.h" -#include "core/hle/syscall.h" +#include "core/hle/svc.h" #include "core/hle/service/service.h" //////////////////////////////////////////////////////////////////////////////////////////////////// @@ -15,17 +15,17 @@ namespace HLE { static std::vector<ModuleDef> g_module_db; -const FunctionDef* GetSyscallInfo(u32 opcode) { +const FunctionDef* GetSVCInfo(u32 opcode) { u32 func_num = opcode & 0xFFFFFF; // 8 bits if (func_num > 0xFF) { - ERROR_LOG(HLE,"Unknown syscall: 0x%02X", func_num); + ERROR_LOG(HLE,"Unknown SVC: 0x%02X", func_num); return NULL; } return &g_module_db[0].func_table[func_num]; } -void CallSyscall(u32 opcode) { - const FunctionDef *info = GetSyscallInfo(opcode); +void CallSVC(u32 opcode) { + const FunctionDef *info = GetSVCInfo(opcode); if (!info) { return; @@ -33,7 +33,7 @@ void CallSyscall(u32 opcode) { if (info->func) { info->func(); } else { - ERROR_LOG(HLE, "Unimplemented SysCall function %s(..)", info->name.c_str()); + ERROR_LOG(HLE, "Unimplemented SVC function %s(..)", info->name.c_str()); } } @@ -54,7 +54,7 @@ void RegisterModule(std::string name, int num_functions, const FunctionDef* func } void RegisterAllModules() { - Syscall::Register(); + SVC::Register(); } void Init() { diff --git a/src/core/hle/hle.h b/src/core/hle/hle.h index 452546e1f..c075147c3 100644 --- a/src/core/hle/hle.h +++ b/src/core/hle/hle.h @@ -34,7 +34,7 @@ struct ModuleDef { void RegisterModule(std::string name, int num_functions, const FunctionDef *func_table); -void CallSyscall(u32 opcode); +void CallSVC(u32 opcode); void EatCycles(u32 cycles); diff --git a/src/core/hle/kernel/thread.cpp b/src/core/hle/kernel/thread.cpp index cfc5327a3..136fff021 100644 --- a/src/core/hle/kernel/thread.cpp +++ b/src/core/hle/kernel/thread.cpp @@ -15,7 +15,7 @@ #include "core/core.h" #include "core/mem_map.h" #include "core/hle/hle.h" -#include "core/hle/syscall.h" +#include "core/hle/svc.h" #include "core/hle/kernel/kernel.h" #include "core/hle/kernel/thread.h" diff --git a/src/core/hle/service/service.h b/src/core/hle/service/service.h index f334dbcb8..eba730efb 100644 --- a/src/core/hle/service/service.h +++ b/src/core/hle/service/service.h @@ -14,7 +14,7 @@ #include "core/mem_map.h" #include "core/hle/kernel/kernel.h" -#include "core/hle/syscall.h" +#include "core/hle/svc.h" //////////////////////////////////////////////////////////////////////////////////////////////////// // Namespace Service diff --git a/src/core/hle/syscall.cpp b/src/core/hle/svc.cpp index 9a1235246..a9141699c 100644 --- a/src/core/hle/syscall.cpp +++ b/src/core/hle/svc.cpp @@ -13,14 +13,14 @@ #include "core/hle/kernel/thread.h" #include "core/hle/function_wrappers.h" -#include "core/hle/syscall.h" +#include "core/hle/svc.h" #include "core/hle/service/service.h" #include "core/hle/kernel/thread.h" //////////////////////////////////////////////////////////////////////////////////////////////////// -// Namespace Syscall +// Namespace SVC -namespace Syscall { +namespace SVC { enum ControlMemoryOperation { MEMORY_OPERATION_HEAP = 0x00000003, @@ -123,6 +123,8 @@ Result WaitSynchronizationN(void* _out, void* _handles, u32 handle_count, u32 wa for (u32 i = 0; i < handle_count; i++) { DEBUG_LOG(SVC, "\thandle[%d]=0x%08X", i, handles[i]); } + __KernelReschedule("WaitSynchronizationN"); + return 0; } @@ -212,7 +214,7 @@ Result CreateEvent(void* _event, u32 reset_type) { return 0; } -const HLE::FunctionDef Syscall_Table[] = { +const HLE::FunctionDef SVC_Table[] = { {0x00, NULL, "Unknown"}, {0x01, WrapI_VUUUUU<ControlMemory>, "ControlMemory"}, {0x02, WrapI_VVU<QueryMemory>, "QueryMemory"}, @@ -342,7 +344,7 @@ const HLE::FunctionDef Syscall_Table[] = { }; void Register() { - HLE::RegisterModule("SyscallTable", ARRAY_SIZE(Syscall_Table), Syscall_Table); + HLE::RegisterModule("SVC_Table", ARRAY_SIZE(SVC_Table), SVC_Table); } } // namespace diff --git a/src/core/hle/syscall.h b/src/core/hle/svc.h index 3da349ed5..5c35977d1 100644 --- a/src/core/hle/syscall.h +++ b/src/core/hle/svc.h @@ -39,9 +39,9 @@ enum ResetType { }; //////////////////////////////////////////////////////////////////////////////////////////////////// -// Namespace Syscall +// Namespace SVC -namespace Syscall { +namespace SVC { void Register(); |