diff options
author | bunnei <bunneidev@gmail.com> | 2018-01-17 03:32:59 +0100 |
---|---|---|
committer | bunnei <bunneidev@gmail.com> | 2018-01-17 03:34:27 +0100 |
commit | 4b156d2e6418d619bdd7610b9827af09bfbef086 (patch) | |
tree | bdf507d4424cae7e4dd0766b7b678cbdaea03042 | |
parent | Merge pull request #55 from bunnei/subv-improvements (diff) | |
download | yuzu-4b156d2e6418d619bdd7610b9827af09bfbef086.tar yuzu-4b156d2e6418d619bdd7610b9827af09bfbef086.tar.gz yuzu-4b156d2e6418d619bdd7610b9827af09bfbef086.tar.bz2 yuzu-4b156d2e6418d619bdd7610b9827af09bfbef086.tar.lz yuzu-4b156d2e6418d619bdd7610b9827af09bfbef086.tar.xz yuzu-4b156d2e6418d619bdd7610b9827af09bfbef086.tar.zst yuzu-4b156d2e6418d619bdd7610b9827af09bfbef086.zip |
-rw-r--r-- | src/core/CMakeLists.txt | 4 | ||||
-rw-r--r-- | src/core/hle/service/acc/acc.cpp | 16 | ||||
-rw-r--r-- | src/core/hle/service/acc/acc.h | 16 | ||||
-rw-r--r-- | src/core/hle/service/acc/acc_u0.cpp | 26 | ||||
-rw-r--r-- | src/core/hle/service/acc/acc_u0.h | 22 | ||||
-rw-r--r-- | src/core/hle/service/service.cpp | 2 |
6 files changed, 86 insertions, 0 deletions
diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt index 2eab81ad6..20e41038b 100644 --- a/src/core/CMakeLists.txt +++ b/src/core/CMakeLists.txt @@ -37,6 +37,8 @@ set(SRCS hle/kernel/wait_object.cpp hle/lock.cpp hle/romfs.cpp + hle/service/acc/acc.cpp + hle/service/acc/acc_u0.cpp hle/service/am/am.cpp hle/service/am/applet_oe.cpp hle/service/aoc/aoc_u.cpp @@ -124,6 +126,8 @@ set(HEADERS hle/lock.h hle/result.h hle/romfs.h + hle/service/acc/acc.h + hle/service/acc/acc_u0.h hle/service/am/am.h hle/service/am/applet_oe.h hle/service/aoc/aoc_u.h diff --git a/src/core/hle/service/acc/acc.cpp b/src/core/hle/service/acc/acc.cpp new file mode 100644 index 000000000..5716577d6 --- /dev/null +++ b/src/core/hle/service/acc/acc.cpp @@ -0,0 +1,16 @@ +// Copyright 2018 yuzu emulator team +// Licensed under GPLv2 or any later version +// Refer to the license.txt file included. + +#include "core/hle/service/acc/acc.h" +#include "core/hle/service/acc/acc_u0.h" + +namespace Service { +namespace Account { + +void InstallInterfaces(SM::ServiceManager& service_manager) { + std::make_shared<ACC_U0>()->InstallAsService(service_manager); +} + +} // namespace Account +} // namespace Service diff --git a/src/core/hle/service/acc/acc.h b/src/core/hle/service/acc/acc.h new file mode 100644 index 000000000..44d024f48 --- /dev/null +++ b/src/core/hle/service/acc/acc.h @@ -0,0 +1,16 @@ +// Copyright 2018 yuzu emulator team +// 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 Account { + +/// Registers all ACC services with the specified service manager. +void InstallInterfaces(SM::ServiceManager& service_manager); + +} // namespace Account +} // namespace Service diff --git a/src/core/hle/service/acc/acc_u0.cpp b/src/core/hle/service/acc/acc_u0.cpp new file mode 100644 index 000000000..147f4e62e --- /dev/null +++ b/src/core/hle/service/acc/acc_u0.cpp @@ -0,0 +1,26 @@ +// Copyright 2018 yuzu emulator team +// 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/acc/acc_u0.h" + +namespace Service { +namespace Account { + +void ACC_U0::InitializeApplicationInfo(Kernel::HLERequestContext& ctx) { + LOG_WARNING(Service, "(STUBBED) called"); + IPC::RequestBuilder rb{ctx, 2}; + rb.Push(RESULT_SUCCESS); +} + +ACC_U0::ACC_U0() : ServiceFramework("acc:u0") { + static const FunctionInfo functions[] = { + {100, &ACC_U0::InitializeApplicationInfo, "InitializeApplicationInfo"}, + }; + RegisterHandlers(functions); +} + +} // namespace Account +} // namespace Service diff --git a/src/core/hle/service/acc/acc_u0.h b/src/core/hle/service/acc/acc_u0.h new file mode 100644 index 000000000..ac243d5b8 --- /dev/null +++ b/src/core/hle/service/acc/acc_u0.h @@ -0,0 +1,22 @@ +// Copyright 2018 yuzu emulator team +// 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 Account { + +class ACC_U0 final : public ServiceFramework<ACC_U0> { +public: + ACC_U0(); + ~ACC_U0() = default; + +private: + void InitializeApplicationInfo(Kernel::HLERequestContext& ctx); +}; + +} // namespace Account +} // namespace Service diff --git a/src/core/hle/service/service.cpp b/src/core/hle/service/service.cpp index 44623d40f..fe76b381c 100644 --- a/src/core/hle/service/service.cpp +++ b/src/core/hle/service/service.cpp @@ -14,6 +14,7 @@ #include "core/hle/kernel/process.h" #include "core/hle/kernel/server_port.h" #include "core/hle/kernel/thread.h" +#include "core/hle/service/acc/acc.h" #include "core/hle/service/am/am.h" #include "core/hle/service/aoc/aoc_u.h" #include "core/hle/service/apm/apm.h" @@ -164,6 +165,7 @@ void Init() { SM::g_service_manager = std::make_shared<SM::ServiceManager>(); SM::ServiceManager::InstallInterfaces(SM::g_service_manager); + Account::InstallInterfaces(*SM::g_service_manager); AM::InstallInterfaces(*SM::g_service_manager); AOC::InstallInterfaces(*SM::g_service_manager); APM::InstallInterfaces(*SM::g_service_manager); |