mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-31 05:40:04 +00:00 
			
		
		
		
	- renamed hle_syscall to just syscall
- added service.h as an initial service interface
This commit is contained in:
		
							parent
							
								
									7ea7585898
								
							
						
					
					
						commit
						02fbd42e7f
					
				
					 7 changed files with 157 additions and 106 deletions
				
			
		|  | @ -153,7 +153,7 @@ | ||||||
|     <ClCompile Include="file_sys\directory_file_system.cpp" /> |     <ClCompile Include="file_sys\directory_file_system.cpp" /> | ||||||
|     <ClCompile Include="file_sys\meta_file_system.cpp" /> |     <ClCompile Include="file_sys\meta_file_system.cpp" /> | ||||||
|     <ClCompile Include="hle\hle.cpp" /> |     <ClCompile Include="hle\hle.cpp" /> | ||||||
|     <ClCompile Include="hle\hle_syscall.cpp" /> |     <ClCompile Include="hle\syscall.cpp" /> | ||||||
|     <ClCompile Include="hw\hw.cpp" /> |     <ClCompile Include="hw\hw.cpp" /> | ||||||
|     <ClCompile Include="hw\hw_lcd.cpp" /> |     <ClCompile Include="hw\hw_lcd.cpp" /> | ||||||
|     <ClCompile Include="loader.cpp" /> |     <ClCompile Include="loader.cpp" /> | ||||||
|  | @ -186,7 +186,8 @@ | ||||||
|     <ClInclude Include="file_sys\meta_file_system.h" /> |     <ClInclude Include="file_sys\meta_file_system.h" /> | ||||||
|     <ClInclude Include="hle\function_wrappers.h" /> |     <ClInclude Include="hle\function_wrappers.h" /> | ||||||
|     <ClInclude Include="hle\hle.h" /> |     <ClInclude Include="hle\hle.h" /> | ||||||
|     <ClInclude Include="hle\hle_syscall.h" /> |     <ClInclude Include="hle\service\service.h" /> | ||||||
|  |     <ClInclude Include="hle\syscall.h" /> | ||||||
|     <ClInclude Include="hw\hw.h" /> |     <ClInclude Include="hw\hw.h" /> | ||||||
|     <ClInclude Include="hw\hw_lcd.h" /> |     <ClInclude Include="hw\hw_lcd.h" /> | ||||||
|     <ClInclude Include="loader.h" /> |     <ClInclude Include="loader.h" /> | ||||||
|  |  | ||||||
|  | @ -25,6 +25,9 @@ | ||||||
|     <Filter Include="hle"> |     <Filter Include="hle"> | ||||||
|       <UniqueIdentifier>{8b62769e-3e2a-4a57-a7bc-b3b2933c2bc7}</UniqueIdentifier> |       <UniqueIdentifier>{8b62769e-3e2a-4a57-a7bc-b3b2933c2bc7}</UniqueIdentifier> | ||||||
|     </Filter> |     </Filter> | ||||||
|  |     <Filter Include="hle\service"> | ||||||
|  |       <UniqueIdentifier>{812c5189-ca49-4704-b842-3ffad09092d3}</UniqueIdentifier> | ||||||
|  |     </Filter> | ||||||
|   </ItemGroup> |   </ItemGroup> | ||||||
|   <ItemGroup> |   <ItemGroup> | ||||||
|     <ClCompile Include="arm\disassembler\arm_disasm.cpp"> |     <ClCompile Include="arm\disassembler\arm_disasm.cpp"> | ||||||
|  | @ -78,10 +81,10 @@ | ||||||
|     <ClCompile Include="mem_map_funcs.cpp" /> |     <ClCompile Include="mem_map_funcs.cpp" /> | ||||||
|     <ClCompile Include="system.cpp" /> |     <ClCompile Include="system.cpp" /> | ||||||
|     <ClCompile Include="core_timing.cpp" /> |     <ClCompile Include="core_timing.cpp" /> | ||||||
|     <ClCompile Include="hle\hle_syscall.cpp"> |     <ClCompile Include="hle\hle.cpp"> | ||||||
|       <Filter>hle</Filter> |       <Filter>hle</Filter> | ||||||
|     </ClCompile> |     </ClCompile> | ||||||
|     <ClCompile Include="hle\hle.cpp"> |     <ClCompile Include="hle\syscall.cpp"> | ||||||
|       <Filter>hle</Filter> |       <Filter>hle</Filter> | ||||||
|     </ClCompile> |     </ClCompile> | ||||||
|   </ItemGroup> |   </ItemGroup> | ||||||
|  | @ -163,7 +166,10 @@ | ||||||
|     <ClInclude Include="hle\function_wrappers.h"> |     <ClInclude Include="hle\function_wrappers.h"> | ||||||
|       <Filter>hle</Filter> |       <Filter>hle</Filter> | ||||||
|     </ClInclude> |     </ClInclude> | ||||||
|     <ClInclude Include="hle\hle_syscall.h"> |     <ClInclude Include="hle\service\service.h"> | ||||||
|  |       <Filter>hle\service</Filter> | ||||||
|  |     </ClInclude> | ||||||
|  |     <ClInclude Include="hle\syscall.h"> | ||||||
|       <Filter>hle</Filter> |       <Filter>hle</Filter> | ||||||
|     </ClInclude> |     </ClInclude> | ||||||
|   </ItemGroup> |   </ItemGroup> | ||||||
|  |  | ||||||
|  | @ -5,7 +5,7 @@ | ||||||
| #include <vector> | #include <vector> | ||||||
| 
 | 
 | ||||||
| #include "core/hle/hle.h" | #include "core/hle/hle.h" | ||||||
| #include "core/hle/hle_syscall.h" | #include "core/hle/syscall.h" | ||||||
| 
 | 
 | ||||||
| ////////////////////////////////////////////////////////////////////////////////////////////////////
 | ////////////////////////////////////////////////////////////////////////////////////////////////////
 | ||||||
| 
 | 
 | ||||||
|  | @ -41,7 +41,7 @@ void RegisterModule(std::string name, int num_functions, const FunctionDef* func | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void RegisterAllModules() { | void RegisterAllModules() { | ||||||
|     Register_Syscall(); |     Syscall::Register(); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void Init() { | void Init() { | ||||||
|  |  | ||||||
|  | @ -1,37 +0,0 @@ | ||||||
| // Copyright 2014 Citra Emulator Project
 |  | ||||||
| // Licensed under GPLv2
 |  | ||||||
| // Refer to the license.txt file included.  
 |  | ||||||
| 
 |  | ||||||
| #pragma once |  | ||||||
| 
 |  | ||||||
| #include "common/common_types.h" |  | ||||||
| 
 |  | ||||||
| ////////////////////////////////////////////////////////////////////////////////////////////////////
 |  | ||||||
| 
 |  | ||||||
| //template <class T>
 |  | ||||||
| //class KernelObject {
 |  | ||||||
| //public:
 |  | ||||||
| //	virtual ~KernelObject() {}
 |  | ||||||
| //
 |  | ||||||
| //	T GetNative() const {
 |  | ||||||
| //        return m_native;
 |  | ||||||
| //    }
 |  | ||||||
| //
 |  | ||||||
| //    void SetNative(const T& native) {
 |  | ||||||
| //        m_native = native;
 |  | ||||||
| //    }
 |  | ||||||
| //
 |  | ||||||
| //	virtual const char *GetTypeName() {return "[BAD KERNEL OBJECT TYPE]";}
 |  | ||||||
| //	virtual const char *GetName() {return "[UNKNOWN KERNEL OBJECT]";}
 |  | ||||||
| //
 |  | ||||||
| //private:
 |  | ||||||
| //    T m_native;
 |  | ||||||
| //};
 |  | ||||||
| 
 |  | ||||||
| //class Handle : public KernelObject<u32> {
 |  | ||||||
| //    const char* GetTypeName() { 
 |  | ||||||
| //        return "Handle";
 |  | ||||||
| //    }
 |  | ||||||
| //};
 |  | ||||||
| 
 |  | ||||||
| void Register_Syscall(); |  | ||||||
							
								
								
									
										60
									
								
								src/core/hle/service/service.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								src/core/hle/service/service.h
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,60 @@ | ||||||
|  | // Copyright 2014 Citra Emulator Project
 | ||||||
|  | // Licensed under GPLv2
 | ||||||
|  | // Refer to the license.txt file included.
 | ||||||
|  | 
 | ||||||
|  | #pragma once | ||||||
|  | 
 | ||||||
|  | #include <string> | ||||||
|  | 
 | ||||||
|  | #include "common/common_types.h" | ||||||
|  | #include "core/hle/syscall.h" | ||||||
|  | 
 | ||||||
|  | ////////////////////////////////////////////////////////////////////////////////////////////////////
 | ||||||
|  | // Namespace Service
 | ||||||
|  | 
 | ||||||
|  | namespace Service { | ||||||
|  | 
 | ||||||
|  | typedef s32 NativeUID; | ||||||
|  | 
 | ||||||
|  | /// Interface to a CTROS service
 | ||||||
|  | class Interface { | ||||||
|  | public: | ||||||
|  | 
 | ||||||
|  |     virtual ~Interface() { | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     /**
 | ||||||
|  |      * Gets the UID for the serice | ||||||
|  |      * @return UID of service in native format | ||||||
|  |      */ | ||||||
|  |     NativeUID GetUID() const { | ||||||
|  |         return (NativeUID)m_uid; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     /**
 | ||||||
|  |      * Gets the string name used by CTROS for a service | ||||||
|  |      * @return String name of service | ||||||
|  |      */ | ||||||
|  |     virtual std::string GetName() { | ||||||
|  |         return "[UNKNOWN SERVICE NAME]"; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     /**
 | ||||||
|  |      * Gets the string name used by CTROS for a service | ||||||
|  |      * @return Port name of service | ||||||
|  |      */ | ||||||
|  |     virtual std::string GetPort() { | ||||||
|  |         return "[UNKNOWN SERVICE PORT]"; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     /**
 | ||||||
|  |      * Called when svcSendSyncRequest is called, loads command buffer and executes comand | ||||||
|  |      * @return Return result of svcSendSyncRequest passed back to user app | ||||||
|  |      */ | ||||||
|  |     virtual Syscall::Result Sync() = 0; | ||||||
|  | 
 | ||||||
|  | private: | ||||||
|  |     u32 m_uid; | ||||||
|  | }; | ||||||
|  | 
 | ||||||
|  | } // namespace
 | ||||||
|  | @ -2,15 +2,15 @@ | ||||||
| // Licensed under GPLv2
 | // Licensed under GPLv2
 | ||||||
| // Refer to the license.txt file included.  
 | // Refer to the license.txt file included.  
 | ||||||
| 
 | 
 | ||||||
|  | #include <map> | ||||||
|  | 
 | ||||||
| #include "core/hle/function_wrappers.h" | #include "core/hle/function_wrappers.h" | ||||||
| #include "core/hle/hle_syscall.h" | #include "core/hle/syscall.h" | ||||||
| 
 | 
 | ||||||
| ////////////////////////////////////////////////////////////////////////////////////////////////////
 | ////////////////////////////////////////////////////////////////////////////////////////////////////
 | ||||||
|  | // Namespace Syscall
 | ||||||
| 
 | 
 | ||||||
| typedef u32 Handle; | namespace Syscall { | ||||||
| typedef s32 Result; |  | ||||||
| 
 |  | ||||||
| ////////////////////////////////////////////////////////////////////////////////////////////////////
 |  | ||||||
| 
 | 
 | ||||||
| Result SVC_ConnectToPort(void* out, const char* port_name) { | Result SVC_ConnectToPort(void* out, const char* port_name) { | ||||||
|     NOTICE_LOG(OSHLE, "svcConnectToPort called, port_name: %s", port_name); |     NOTICE_LOG(OSHLE, "svcConnectToPort called, port_name: %s", port_name); | ||||||
|  | @ -64,23 +64,23 @@ const HLE::FunctionDef Syscall_Table[] = { | ||||||
|     {0x2B,  NULL,                           "svcGetProcessInfo"}, |     {0x2B,  NULL,                           "svcGetProcessInfo"}, | ||||||
|     {0x2C,  NULL,                           "svcGetThreadInfo"}, |     {0x2C,  NULL,                           "svcGetThreadInfo"}, | ||||||
|     {0x2D,  WrapI_VC<SVC_ConnectToPort>,    "svcConnectToPort"}, |     {0x2D,  WrapI_VC<SVC_ConnectToPort>,    "svcConnectToPort"}, | ||||||
|     {0x2E   NULL,                           "svcSendSyncRequest1"}, |     {0x2E,  NULL,                           "svcSendSyncRequest1"}, | ||||||
|     {0x2F   NULL,                           "svcSendSyncRequest2"}, |     {0x2F,  NULL,                           "svcSendSyncRequest2"}, | ||||||
|     {0x30   NULL,                           "svcSendSyncRequest3"}, |     {0x30,  NULL,                           "svcSendSyncRequest3"}, | ||||||
|     {0x31   NULL,                           "svcSendSyncRequest4"}, |     {0x31,  NULL,                           "svcSendSyncRequest4"}, | ||||||
|     {0x32   NULL,                           "svcSendSyncRequest"}, |     {0x32,  NULL,                           "svcSendSyncRequest"}, | ||||||
|     {0x33   NULL,                           "svcOpenProcess"}, |     {0x33,  NULL,                           "svcOpenProcess"}, | ||||||
|     {0x34   NULL,                           "svcOpenThread"}, |     {0x34,  NULL,                           "svcOpenThread"}, | ||||||
|     {0x35   NULL,                           "svcGetProcessId"}, |     {0x35,  NULL,                           "svcGetProcessId"}, | ||||||
|     {0x36   NULL,                           "svcGetProcessIdOfThread"}, |     {0x36,  NULL,                           "svcGetProcessIdOfThread"}, | ||||||
|     {0x37   NULL,                           "svcGetThreadId"}, |     {0x37,  NULL,                           "svcGetThreadId"}, | ||||||
|     {0x38   NULL,                           "svcGetResourceLimit"}, |     {0x38,  NULL,                           "svcGetResourceLimit"}, | ||||||
|     {0x39   NULL,                           "svcGetResourceLimitLimitValues"}, |     {0x39,  NULL,                           "svcGetResourceLimitLimitValues"}, | ||||||
|     {0x3A   NULL,                           "svcGetResourceLimitCurrentValues"}, |     {0x3A,  NULL,                           "svcGetResourceLimitCurrentValues"}, | ||||||
|     {0x3B   NULL,                           "svcGetThreadContext"}, |     {0x3B,  NULL,                           "svcGetThreadContext"}, | ||||||
|     {0x3C   NULL,                           "svcBreak"}, |     {0x3C,  NULL,                           "svcBreak"}, | ||||||
|     {0x3D   NULL,                           "svcOutputDebugString"}, |     {0x3D,  NULL,                           "svcOutputDebugString"}, | ||||||
|     {0x3E   NULL,                           "svcControlPerformanceCounter"}, |     {0x3E,  NULL,                           "svcControlPerformanceCounter"}, | ||||||
|     {0x3F,  NULL,                           "Unknown"}, |     {0x3F,  NULL,                           "Unknown"}, | ||||||
|     {0x40,  NULL,                           "Unknown"}, |     {0x40,  NULL,                           "Unknown"}, | ||||||
|     {0x41,  NULL,                           "Unknown"}, |     {0x41,  NULL,                           "Unknown"}, | ||||||
|  | @ -89,24 +89,24 @@ const HLE::FunctionDef Syscall_Table[] = { | ||||||
|     {0x44,  NULL,                           "Unknown"}, |     {0x44,  NULL,                           "Unknown"}, | ||||||
|     {0x45,  NULL,                           "Unknown"}, |     {0x45,  NULL,                           "Unknown"}, | ||||||
|     {0x46,  NULL,                           "Unknown"}, |     {0x46,  NULL,                           "Unknown"}, | ||||||
|     {0x47   NULL,                           "svcCreatePort"}, |     {0x47,  NULL,                           "svcCreatePort"}, | ||||||
|     {0x48   NULL,                           "svcCreateSessionToPort"}, |     {0x48,  NULL,                           "svcCreateSessionToPort"}, | ||||||
|     {0x49   NULL,                           "svcCreateSession"}, |     {0x49,  NULL,                           "svcCreateSession"}, | ||||||
|     {0x4A   NULL,                           "svcAcceptSession"}, |     {0x4A,  NULL,                           "svcAcceptSession"}, | ||||||
|     {0x4B   NULL,                           "svcReplyAndReceive1"}, |     {0x4B,  NULL,                           "svcReplyAndReceive1"}, | ||||||
|     {0x4C   NULL,                           "svcReplyAndReceive2"}, |     {0x4C,  NULL,                           "svcReplyAndReceive2"}, | ||||||
|     {0x4D   NULL,                           "svcReplyAndReceive3"}, |     {0x4D,  NULL,                           "svcReplyAndReceive3"}, | ||||||
|     {0x4E   NULL,                           "svcReplyAndReceive4"}, |     {0x4E,  NULL,                           "svcReplyAndReceive4"}, | ||||||
|     {0x4F   NULL,                           "svcReplyAndReceive"}, |     {0x4F,  NULL,                           "svcReplyAndReceive"}, | ||||||
|     {0x50   NULL,                           "svcBindInterrupt"}, |     {0x50,  NULL,                           "svcBindInterrupt"}, | ||||||
|     {0x51   NULL,                           "svcUnbindInterrupt"}, |     {0x51,  NULL,                           "svcUnbindInterrupt"}, | ||||||
|     {0x52   NULL,                           "svcInvalidateProcessDataCache"}, |     {0x52,  NULL,                           "svcInvalidateProcessDataCache"}, | ||||||
|     {0x53   NULL,                           "svcStoreProcessDataCache"}, |     {0x53,  NULL,                           "svcStoreProcessDataCache"}, | ||||||
|     {0x54   NULL,                           "svcFlushProcessDataCache"}, |     {0x54,  NULL,                           "svcFlushProcessDataCache"}, | ||||||
|     {0x55   NULL,                           "svcStartInterProcessDma"}, |     {0x55,  NULL,                           "svcStartInterProcessDma"}, | ||||||
|     {0x56   NULL,                           "svcStopDma"}, |     {0x56,  NULL,                           "svcStopDma"}, | ||||||
|     {0x57   NULL,                           "svcGetDmaState"}, |     {0x57,  NULL,                           "svcGetDmaState"}, | ||||||
|     {0x58   NULL,                           "svcRestartDma"}, |     {0x58,  NULL,                           "svcRestartDma"}, | ||||||
|     {0x59,  NULL,                           "Unknown"}, |     {0x59,  NULL,                           "Unknown"}, | ||||||
|     {0x5A,  NULL,                           "Unknown"}, |     {0x5A,  NULL,                           "Unknown"}, | ||||||
|     {0x5B,  NULL,                           "Unknown"}, |     {0x5B,  NULL,                           "Unknown"}, | ||||||
|  | @ -114,38 +114,40 @@ const HLE::FunctionDef Syscall_Table[] = { | ||||||
|     {0x5D,  NULL,                           "Unknown"}, |     {0x5D,  NULL,                           "Unknown"}, | ||||||
|     {0x5E,  NULL,                           "Unknown"}, |     {0x5E,  NULL,                           "Unknown"}, | ||||||
|     {0x5F,  NULL,                           "Unknown"}, |     {0x5F,  NULL,                           "Unknown"}, | ||||||
|     {0x60   NULL,                           "svcDebugActiveProcess"}, |     {0x60,  NULL,                           "svcDebugActiveProcess"}, | ||||||
|     {0x61   NULL,                           "svcBreakDebugProcess"}, |     {0x61,  NULL,                           "svcBreakDebugProcess"}, | ||||||
|     {0x62   NULL,                           "svcTerminateDebugProcess"}, |     {0x62,  NULL,                           "svcTerminateDebugProcess"}, | ||||||
|     {0x63   NULL,                           "svcGetProcessDebugEvent"}, |     {0x63,  NULL,                           "svcGetProcessDebugEvent"}, | ||||||
|     {0x64   NULL,                           "svcContinueDebugEvent"}, |     {0x64,  NULL,                           "svcContinueDebugEvent"}, | ||||||
|     {0x65   NULL,                           "svcGetProcessList"}, |     {0x65,  NULL,                           "svcGetProcessList"}, | ||||||
|     {0x66   NULL,                           "svcGetThreadList"}, |     {0x66,  NULL,                           "svcGetThreadList"}, | ||||||
|     {0x67   NULL,                           "svcGetDebugThreadContext"}, |     {0x67,  NULL,                           "svcGetDebugThreadContext"}, | ||||||
|     {0x68   NULL,                           "svcSetDebugThreadContext"}, |     {0x68,  NULL,                           "svcSetDebugThreadContext"}, | ||||||
|     {0x69   NULL,                           "svcQueryDebugProcessMemory"}, |     {0x69,  NULL,                           "svcQueryDebugProcessMemory"}, | ||||||
|     {0x6A   NULL,                           "svcReadProcessMemory"}, |     {0x6A,  NULL,                           "svcReadProcessMemory"}, | ||||||
|     {0x6B   NULL,                           "svcWriteProcessMemory"}, |     {0x6B,  NULL,                           "svcWriteProcessMemory"}, | ||||||
|     {0x6C   NULL,                           "svcSetHardwareBreakPoint"}, |     {0x6C,  NULL,                           "svcSetHardwareBreakPoint"}, | ||||||
|     {0x6D   NULL,                           "svcGetDebugThreadParam"}, |     {0x6D,  NULL,                           "svcGetDebugThreadParam"}, | ||||||
|     {0x6E,  NULL,                           "Unknown"}, |     {0x6E,  NULL,                           "Unknown"}, | ||||||
|     {0x6F,  NULL,                           "Unknown"}, |     {0x6F,  NULL,                           "Unknown"}, | ||||||
|     {0x70   NULL,                           "svcControlProcessMemory"}, |     {0x70,  NULL,                           "svcControlProcessMemory"}, | ||||||
|     {0x71   NULL,                           "svcMapProcessMemory"}, |     {0x71,  NULL,                           "svcMapProcessMemory"}, | ||||||
|     {0x72   NULL,                           "svcUnmapProcessMemory"}, |     {0x72,  NULL,                           "svcUnmapProcessMemory"}, | ||||||
|     {0x73,  NULL,                           "Unknown"}, |     {0x73,  NULL,                           "Unknown"}, | ||||||
|     {0x74,  NULL,                           "Unknown"}, |     {0x74,  NULL,                           "Unknown"}, | ||||||
|     {0x75,  NULL,                           "Unknown"}, |     {0x75,  NULL,                           "Unknown"}, | ||||||
|     {0x76   NULL,                           "svcTerminateProcess"}, |     {0x76,  NULL,                           "svcTerminateProcess"}, | ||||||
|     {0x77,  NULL,                           "Unknown"}, |     {0x77,  NULL,                           "Unknown"}, | ||||||
|     {0x78   NULL,                           "svcCreateResourceLimit"}, |     {0x78,  NULL,                           "svcCreateResourceLimit"}, | ||||||
|     {0x79,  NULL,                           "Unknown"}, |     {0x79,  NULL,                           "Unknown"}, | ||||||
|     {0x7A,  NULL,                           "Unknown"}, |     {0x7A,  NULL,                           "Unknown"}, | ||||||
|     {0x7B,  NULL,                           "Unknown"}, |     {0x7B,  NULL,                           "Unknown"}, | ||||||
|     {0x7C   NULL,                           "svcKernelSetState"}, |     {0x7C,  NULL,                           "svcKernelSetState"}, | ||||||
|     {0x7D   NULL,                           "svcQueryProcessMemory"}, |     {0x7D,  NULL,                           "svcQueryProcessMemory"}, | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| void Register_Syscall() { | void Register() { | ||||||
|     HLE::RegisterModule("SyscallTable", ARRAY_SIZE(Syscall_Table), Syscall_Table); |     HLE::RegisterModule("SyscallTable", ARRAY_SIZE(Syscall_Table), Syscall_Table); | ||||||
| } | } | ||||||
|  | 
 | ||||||
|  | } // namespace
 | ||||||
							
								
								
									
										19
									
								
								src/core/hle/syscall.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								src/core/hle/syscall.h
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,19 @@ | ||||||
|  | // Copyright 2014 Citra Emulator Project
 | ||||||
|  | // Licensed under GPLv2
 | ||||||
|  | // Refer to the license.txt file included.  
 | ||||||
|  | 
 | ||||||
|  | #pragma once | ||||||
|  | 
 | ||||||
|  | #include "common/common_types.h" | ||||||
|  | 
 | ||||||
|  | ////////////////////////////////////////////////////////////////////////////////////////////////////
 | ||||||
|  | // Namespace Syscall
 | ||||||
|  | 
 | ||||||
|  | namespace Syscall { | ||||||
|  | 
 | ||||||
|  | typedef u32 Handle; | ||||||
|  | typedef s32 Result; | ||||||
|  | 
 | ||||||
|  | void Register(); | ||||||
|  | 
 | ||||||
|  | } // namespace
 | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue