From fcd4c1a0dc1345ea3178167fad4582393788824b Mon Sep 17 00:00:00 2001 From: bunnei Date: Thu, 28 Dec 2017 23:44:39 -0500 Subject: service: Add empty interface for pctl:a. --- src/core/hle/service/pctl/pctl.cpp | 16 ++++++++++++++++ src/core/hle/service/pctl/pctl.h | 16 ++++++++++++++++ src/core/hle/service/pctl/pctl_a.cpp | 30 ++++++++++++++++++++++++++++++ src/core/hle/service/pctl/pctl_a.h | 22 ++++++++++++++++++++++ src/core/hle/service/service.cpp | 2 ++ 5 files changed, 86 insertions(+) create mode 100644 src/core/hle/service/pctl/pctl.cpp create mode 100644 src/core/hle/service/pctl/pctl.h create mode 100644 src/core/hle/service/pctl/pctl_a.cpp create mode 100644 src/core/hle/service/pctl/pctl_a.h (limited to 'src/core/hle') diff --git a/src/core/hle/service/pctl/pctl.cpp b/src/core/hle/service/pctl/pctl.cpp new file mode 100644 index 000000000..1b92f9f84 --- /dev/null +++ b/src/core/hle/service/pctl/pctl.cpp @@ -0,0 +1,16 @@ +// Copyright 2017 Citra Emulator Project +// Licensed under GPLv2 or any later version +// Refer to the license.txt file included. + +#include "core/hle/service/pctl/pctl.h" +#include "core/hle/service/pctl/pctl_a.h" + +namespace Service { +namespace PCTL { + +void InstallInterfaces(SM::ServiceManager& service_manager) { + std::make_shared()->InstallAsService(service_manager); +} + +} // namespace PCTL +} // namespace Service diff --git a/src/core/hle/service/pctl/pctl.h b/src/core/hle/service/pctl/pctl.h new file mode 100644 index 000000000..132eb0cc1 --- /dev/null +++ b/src/core/hle/service/pctl/pctl.h @@ -0,0 +1,16 @@ +// Copyright 2017 Citra Emulator Project +// Licensed under GPLv2 or any later version +// Refer to the license.txt file included. + +#pragma once + +#include "core/hle/service/service.h" + +namespace Service { +namespace PCTL { + +/// Registers all PCTL services with the specified service manager. +void InstallInterfaces(SM::ServiceManager& service_manager); + +} // namespace PCTL +} // namespace Service diff --git a/src/core/hle/service/pctl/pctl_a.cpp b/src/core/hle/service/pctl/pctl_a.cpp new file mode 100644 index 000000000..97cd1d2ee --- /dev/null +++ b/src/core/hle/service/pctl/pctl_a.cpp @@ -0,0 +1,30 @@ +// Copyright 2017 Citra Emulator Project +// Licensed under GPLv2 or any later version +// Refer to the license.txt file included. + +#include "common/logging/log.h" +#include "core/hle/ipc_helpers.h" +#include "core/hle/service/pctl/pctl_a.h" + +namespace Service { +namespace PCTL { + +void InstallInterfaces(SM::ServiceManager& service_manager) { + std::make_shared()->InstallAsService(service_manager); +} + +void PCTL_A::GetService(Kernel::HLERequestContext& ctx) { + LOG_WARNING(Service, "(STUBBED) called"); + IPC::RequestBuilder rb{ctx, 1}; + rb.Push(RESULT_SUCCESS); +} + +PCTL_A::PCTL_A() : ServiceFramework("pctl:a") { + static const FunctionInfo functions[] = { + {0, &PCTL_A::GetService, "GetService"}, + }; + RegisterHandlers(functions); +} + +} // namespace PCTL +} // namespace Service diff --git a/src/core/hle/service/pctl/pctl_a.h b/src/core/hle/service/pctl/pctl_a.h new file mode 100644 index 000000000..b61622cec --- /dev/null +++ b/src/core/hle/service/pctl/pctl_a.h @@ -0,0 +1,22 @@ +// Copyright 2017 Citra Emulator Project +// Licensed under GPLv2 or any later version +// Refer to the license.txt file included. + +#pragma once + +#include "core/hle/service/service.h" + +namespace Service { +namespace PCTL { + +class PCTL_A final : public ServiceFramework { +public: + PCTL_A(); + ~PCTL_A() = default; + +private: + void GetService(Kernel::HLERequestContext& ctx); +}; + +} // namespace PCTL +} // namespace Service diff --git a/src/core/hle/service/service.cpp b/src/core/hle/service/service.cpp index 3394ea414..0fba224e1 100644 --- a/src/core/hle/service/service.cpp +++ b/src/core/hle/service/service.cpp @@ -22,6 +22,7 @@ #include "core/hle/service/gsp_gpu.h" #include "core/hle/service/hid/hid.h" #include "core/hle/service/lm/lm.h" +#include "core/hle/service/pctl/pctl.h" #include "core/hle/service/service.h" #include "core/hle/service/sm/controller.h" #include "core/hle/service/sm/sm.h" @@ -173,6 +174,7 @@ void Init() { AOC::InstallInterfaces(*SM::g_service_manager); APM::InstallInterfaces(*SM::g_service_manager); LM::InstallInterfaces(*SM::g_service_manager); + PCTL::InstallInterfaces(*SM::g_service_manager); HID::Init(); -- cgit v1.2.3