mirror of
				https://git.zaroz.cloud/nintendo-back-up/yuzu/yuzu.git
				synced 2025-05-12 00:45:25 +00:00 
			
		
		
		
	service/btm: Add basic implementation of GetCoreImpl()
Based off information on SwIPC and Switch Brew.
This commit is contained in:
		
							parent
							
								
									ca7655be3a
								
							
						
					
					
						commit
						7ce6858086
					
				| @ -4,6 +4,9 @@ | ||||
| 
 | ||||
| #include <memory> | ||||
| 
 | ||||
| #include "common/logging/log.h" | ||||
| #include "core/hle/ipc_helpers.h" | ||||
| #include "core/hle/kernel/hle_ipc.h" | ||||
| #include "core/hle/service/btm/btm.h" | ||||
| #include "core/hle/service/service.h" | ||||
| #include "core/hle/service/sm/sm.h" | ||||
| @ -65,17 +68,48 @@ public: | ||||
|     } | ||||
| }; | ||||
| 
 | ||||
| class IBtmSystemCore final : public ServiceFramework<IBtmSystemCore> { | ||||
| public: | ||||
|     explicit IBtmSystemCore() : ServiceFramework{"IBtmSystemCore"} { | ||||
|         // clang-format off
 | ||||
|         static const FunctionInfo functions[] = { | ||||
|             {0, nullptr, "StartGamepadPairingImpl"}, | ||||
|             {1, nullptr, "CancelGamepadPairingImpl"}, | ||||
|             {2, nullptr, "ClearGamepadPairingDatabaseImpl"}, | ||||
|             {3, nullptr, "GetPairedGamepadCountImpl"}, | ||||
|             {4, nullptr, "EnableRadioImpl"}, | ||||
|             {5, nullptr, "DisableRadioImpl"}, | ||||
|             {6, nullptr, "GetRadioOnOffImpl"}, | ||||
|             {7, nullptr, "AcquireRadioEventImpl"}, | ||||
|             {8, nullptr, "AcquireGamepadPairingEventImpl"}, | ||||
|             {9, nullptr, "IsGamepadPairingStartedImpl"}, | ||||
|         }; | ||||
|         // clang-format on
 | ||||
| 
 | ||||
|         RegisterHandlers(functions); | ||||
|     } | ||||
| }; | ||||
| 
 | ||||
| class BTM_SYS final : public ServiceFramework<BTM_SYS> { | ||||
| public: | ||||
|     explicit BTM_SYS() : ServiceFramework{"btm:sys"} { | ||||
|         // clang-format off
 | ||||
|         static const FunctionInfo functions[] = { | ||||
|             {0, nullptr, "GetCoreImpl"}, | ||||
|             {0, &BTM_SYS::GetCoreImpl, "GetCoreImpl"}, | ||||
|         }; | ||||
|         // clang-format on
 | ||||
| 
 | ||||
|         RegisterHandlers(functions); | ||||
|     } | ||||
| 
 | ||||
| private: | ||||
|     void GetCoreImpl(Kernel::HLERequestContext& ctx) { | ||||
|         IPC::ResponseBuilder rb{ctx, 2, 0, 1}; | ||||
|         rb.Push(RESULT_SUCCESS); | ||||
|         rb.PushIpcInterface<IBtmSystemCore>(); | ||||
| 
 | ||||
|         LOG_DEBUG(Service_BTM, "called"); | ||||
|     } | ||||
| }; | ||||
| 
 | ||||
| void InstallInterfaces(SM::ServiceManager& sm) { | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Lioncash
						Lioncash