diff options
| author | 2018-07-26 08:50:32 -0400 | |
|---|---|---|
| committer | 2018-07-26 15:05:42 -0400 | |
| commit | 7550c2c86686ee19c8706580694bf08c3beb9746 (patch) | |
| tree | c637aad758414c3eafd747ed0f2c67ff5cf1d081 | |
| parent | service/hid: Add irs services (diff) | |
| download | yuzu-7550c2c86686ee19c8706580694bf08c3beb9746.tar.gz yuzu-7550c2c86686ee19c8706580694bf08c3beb9746.tar.xz yuzu-7550c2c86686ee19c8706580694bf08c3beb9746.zip | |
service/hid: Add the xcd:sys service
Diffstat (limited to '')
| -rw-r--r-- | src/core/CMakeLists.txt | 2 | ||||
| -rw-r--r-- | src/core/hle/service/hid/hid.cpp | 2 | ||||
| -rw-r--r-- | src/core/hle/service/hid/xcd.cpp | 37 | ||||
| -rw-r--r-- | src/core/hle/service/hid/xcd.h | 16 |
4 files changed, 57 insertions, 0 deletions
diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt index 73339e2e0..b74e495ef 100644 --- a/src/core/CMakeLists.txt +++ b/src/core/CMakeLists.txt | |||
| @@ -162,6 +162,8 @@ add_library(core STATIC | |||
| 162 | hle/service/hid/hid.h | 162 | hle/service/hid/hid.h |
| 163 | hle/service/hid/irs.cpp | 163 | hle/service/hid/irs.cpp |
| 164 | hle/service/hid/irs.h | 164 | hle/service/hid/irs.h |
| 165 | hle/service/hid/xcd.cpp | ||
| 166 | hle/service/hid/xcd.h | ||
| 165 | hle/service/ldn/ldn.cpp | 167 | hle/service/ldn/ldn.cpp |
| 166 | hle/service/ldn/ldn.h | 168 | hle/service/ldn/ldn.h |
| 167 | hle/service/ldr/ldr.cpp | 169 | hle/service/ldr/ldr.cpp |
diff --git a/src/core/hle/service/hid/hid.cpp b/src/core/hle/service/hid/hid.cpp index 64a6fdeed..ed4243db3 100644 --- a/src/core/hle/service/hid/hid.cpp +++ b/src/core/hle/service/hid/hid.cpp | |||
| @@ -15,6 +15,7 @@ | |||
| 15 | #include "core/hle/kernel/shared_memory.h" | 15 | #include "core/hle/kernel/shared_memory.h" |
| 16 | #include "core/hle/service/hid/hid.h" | 16 | #include "core/hle/service/hid/hid.h" |
| 17 | #include "core/hle/service/hid/irs.h" | 17 | #include "core/hle/service/hid/irs.h" |
| 18 | #include "core/hle/service/hid/xcd.h" | ||
| 18 | #include "core/hle/service/service.h" | 19 | #include "core/hle/service/service.h" |
| 19 | 20 | ||
| 20 | namespace Service::HID { | 21 | namespace Service::HID { |
| @@ -562,6 +563,7 @@ void InstallInterfaces(SM::ServiceManager& service_manager) { | |||
| 562 | std::make_shared<Hid>()->InstallAsService(service_manager); | 563 | std::make_shared<Hid>()->InstallAsService(service_manager); |
| 563 | std::make_shared<IRS>()->InstallAsService(service_manager); | 564 | std::make_shared<IRS>()->InstallAsService(service_manager); |
| 564 | std::make_shared<IRS_SYS>()->InstallAsService(service_manager); | 565 | std::make_shared<IRS_SYS>()->InstallAsService(service_manager); |
| 566 | std::make_shared<XCD_SYS>()->InstallAsService(service_manager); | ||
| 565 | } | 567 | } |
| 566 | 568 | ||
| 567 | } // namespace Service::HID | 569 | } // namespace Service::HID |
diff --git a/src/core/hle/service/hid/xcd.cpp b/src/core/hle/service/hid/xcd.cpp new file mode 100644 index 000000000..49f733f60 --- /dev/null +++ b/src/core/hle/service/hid/xcd.cpp | |||
| @@ -0,0 +1,37 @@ | |||
| 1 | // Copyright 2018 yuzu emulator team | ||
| 2 | // Licensed under GPLv2 or any later version | ||
| 3 | // Refer to the license.txt file included. | ||
| 4 | |||
| 5 | #include "core/hle/service/hid/xcd.h" | ||
| 6 | |||
| 7 | namespace Service::HID { | ||
| 8 | |||
| 9 | XCD_SYS::XCD_SYS() : ServiceFramework{"xcd:sys"} { | ||
| 10 | // clang-format off | ||
| 11 | static const FunctionInfo functions[] = { | ||
| 12 | {0, nullptr, "GetDataFormat"}, | ||
| 13 | {1, nullptr, "SetDataFormat"}, | ||
| 14 | {2, nullptr, "GetMcuState"}, | ||
| 15 | {3, nullptr, "SetMcuState"}, | ||
| 16 | {4, nullptr, "GetMcuVersionForNfc"}, | ||
| 17 | {5, nullptr, "CheckNfcDevicePower"}, | ||
| 18 | {10, nullptr, "SetNfcEvent"}, | ||
| 19 | {11, nullptr, "GetNfcInfo"}, | ||
| 20 | {12, nullptr, "StartNfcDiscovery"}, | ||
| 21 | {13, nullptr, "StopNfcDiscovery"}, | ||
| 22 | {14, nullptr, "StartNtagRead"}, | ||
| 23 | {15, nullptr, "StartNtagWrite"}, | ||
| 24 | {16, nullptr, "SendNfcRawData"}, | ||
| 25 | {17, nullptr, "RegisterMifareKey"}, | ||
| 26 | {18, nullptr, "ClearMifareKey"}, | ||
| 27 | {19, nullptr, "StartMifareRead"}, | ||
| 28 | {20, nullptr, "StartMifareWrite"}, | ||
| 29 | {101, nullptr, "GetAwakeTriggerReasonForLeftRail"}, | ||
| 30 | {102, nullptr, "GetAwakeTriggerReasonForRightRail"}, | ||
| 31 | }; | ||
| 32 | // clang-format on | ||
| 33 | |||
| 34 | RegisterHandlers(functions); | ||
| 35 | } | ||
| 36 | |||
| 37 | } // namespace Service::HID | ||
diff --git a/src/core/hle/service/hid/xcd.h b/src/core/hle/service/hid/xcd.h new file mode 100644 index 000000000..232a044df --- /dev/null +++ b/src/core/hle/service/hid/xcd.h | |||
| @@ -0,0 +1,16 @@ | |||
| 1 | // Copyright 2018 yuzu emulator team | ||
| 2 | // Licensed under GPLv2 or any later version | ||
| 3 | // Refer to the license.txt file included. | ||
| 4 | |||
| 5 | #pragma once | ||
| 6 | |||
| 7 | #include "core/hle/service/service.h" | ||
| 8 | |||
| 9 | namespace Service::HID { | ||
| 10 | |||
| 11 | class XCD_SYS final : public ServiceFramework<XCD_SYS> { | ||
| 12 | public: | ||
| 13 | explicit XCD_SYS(); | ||
| 14 | }; | ||
| 15 | |||
| 16 | } // namespace Service::HID | ||