diff options
Diffstat (limited to '')
| -rw-r--r-- | src/core/hle/service/hid/hid.cpp | 13 | ||||
| -rw-r--r-- | src/core/hle/service/hid/hid.h | 1 |
2 files changed, 13 insertions, 1 deletions
diff --git a/src/core/hle/service/hid/hid.cpp b/src/core/hle/service/hid/hid.cpp index 41bddf870..ba1da4181 100644 --- a/src/core/hle/service/hid/hid.cpp +++ b/src/core/hle/service/hid/hid.cpp | |||
| @@ -195,7 +195,7 @@ Hid::Hid(Core::System& system) : ServiceFramework("hid"), system(system) { | |||
| 195 | {101, &Hid::GetSupportedNpadStyleSet, "GetSupportedNpadStyleSet"}, | 195 | {101, &Hid::GetSupportedNpadStyleSet, "GetSupportedNpadStyleSet"}, |
| 196 | {102, &Hid::SetSupportedNpadIdType, "SetSupportedNpadIdType"}, | 196 | {102, &Hid::SetSupportedNpadIdType, "SetSupportedNpadIdType"}, |
| 197 | {103, &Hid::ActivateNpad, "ActivateNpad"}, | 197 | {103, &Hid::ActivateNpad, "ActivateNpad"}, |
| 198 | {104, nullptr, "DeactivateNpad"}, | 198 | {104, &Hid::DeactivateNpad, "DeactivateNpad"}, |
| 199 | {106, &Hid::AcquireNpadStyleSetUpdateEventHandle, "AcquireNpadStyleSetUpdateEventHandle"}, | 199 | {106, &Hid::AcquireNpadStyleSetUpdateEventHandle, "AcquireNpadStyleSetUpdateEventHandle"}, |
| 200 | {107, &Hid::DisconnectNpad, "DisconnectNpad"}, | 200 | {107, &Hid::DisconnectNpad, "DisconnectNpad"}, |
| 201 | {108, &Hid::GetPlayerLedPattern, "GetPlayerLedPattern"}, | 201 | {108, &Hid::GetPlayerLedPattern, "GetPlayerLedPattern"}, |
| @@ -470,6 +470,17 @@ void Hid::ActivateNpad(Kernel::HLERequestContext& ctx) { | |||
| 470 | applet_resource->ActivateController(HidController::NPad); | 470 | applet_resource->ActivateController(HidController::NPad); |
| 471 | } | 471 | } |
| 472 | 472 | ||
| 473 | void Hid::DeactivateNpad(Kernel::HLERequestContext& ctx) { | ||
| 474 | IPC::RequestParser rp{ctx}; | ||
| 475 | const auto applet_resource_user_id{rp.Pop<u64>()}; | ||
| 476 | |||
| 477 | LOG_DEBUG(Service_HID, "called, applet_resource_user_id={}", applet_resource_user_id); | ||
| 478 | |||
| 479 | IPC::ResponseBuilder rb{ctx, 2}; | ||
| 480 | rb.Push(RESULT_SUCCESS); | ||
| 481 | applet_resource->DeactivateController(HidController::NPad); | ||
| 482 | } | ||
| 483 | |||
| 473 | void Hid::AcquireNpadStyleSetUpdateEventHandle(Kernel::HLERequestContext& ctx) { | 484 | void Hid::AcquireNpadStyleSetUpdateEventHandle(Kernel::HLERequestContext& ctx) { |
| 474 | IPC::RequestParser rp{ctx}; | 485 | IPC::RequestParser rp{ctx}; |
| 475 | const auto npad_id{rp.Pop<u32>()}; | 486 | const auto npad_id{rp.Pop<u32>()}; |
diff --git a/src/core/hle/service/hid/hid.h b/src/core/hle/service/hid/hid.h index 35b663679..01852e019 100644 --- a/src/core/hle/service/hid/hid.h +++ b/src/core/hle/service/hid/hid.h | |||
| @@ -99,6 +99,7 @@ private: | |||
| 99 | void GetSupportedNpadStyleSet(Kernel::HLERequestContext& ctx); | 99 | void GetSupportedNpadStyleSet(Kernel::HLERequestContext& ctx); |
| 100 | void SetSupportedNpadIdType(Kernel::HLERequestContext& ctx); | 100 | void SetSupportedNpadIdType(Kernel::HLERequestContext& ctx); |
| 101 | void ActivateNpad(Kernel::HLERequestContext& ctx); | 101 | void ActivateNpad(Kernel::HLERequestContext& ctx); |
| 102 | void DeactivateNpad(Kernel::HLERequestContext& ctx); | ||
| 102 | void AcquireNpadStyleSetUpdateEventHandle(Kernel::HLERequestContext& ctx); | 103 | void AcquireNpadStyleSetUpdateEventHandle(Kernel::HLERequestContext& ctx); |
| 103 | void DisconnectNpad(Kernel::HLERequestContext& ctx); | 104 | void DisconnectNpad(Kernel::HLERequestContext& ctx); |
| 104 | void GetPlayerLedPattern(Kernel::HLERequestContext& ctx); | 105 | void GetPlayerLedPattern(Kernel::HLERequestContext& ctx); |