|
@@ -2,11 +2,34 @@
|
|
|
// Licensed under GPLv2 or any later version
|
|
// Licensed under GPLv2 or any later version
|
|
|
// Refer to the license.txt file included.
|
|
// Refer to the license.txt file included.
|
|
|
|
|
|
|
|
|
|
+#include "common/logging/log.h"
|
|
|
|
|
+#include "core/core.h"
|
|
|
|
|
+#include "core/hle/ipc_helpers.h"
|
|
|
#include "core/hle/service/glue/bgtc.h"
|
|
#include "core/hle/service/glue/bgtc.h"
|
|
|
|
|
|
|
|
namespace Service::Glue {
|
|
namespace Service::Glue {
|
|
|
|
|
|
|
|
BGTC_T::BGTC_T(Core::System& system_) : ServiceFramework{system_, "bgtc:t"} {
|
|
BGTC_T::BGTC_T(Core::System& system_) : ServiceFramework{system_, "bgtc:t"} {
|
|
|
|
|
+ // clang-format off
|
|
|
|
|
+ static const FunctionInfo functions[] = {
|
|
|
|
|
+ {100, &BGTC_T::OpenTaskService, "OpenTaskService"},
|
|
|
|
|
+ };
|
|
|
|
|
+ // clang-format on
|
|
|
|
|
+
|
|
|
|
|
+ RegisterHandlers(functions);
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+BGTC_T::~BGTC_T() = default;
|
|
|
|
|
+
|
|
|
|
|
+void BGTC_T::OpenTaskService(Kernel::HLERequestContext& ctx) {
|
|
|
|
|
+ LOG_DEBUG(Service_BGTC, "called");
|
|
|
|
|
+
|
|
|
|
|
+ IPC::ResponseBuilder rb{ctx, 2, 0, 1};
|
|
|
|
|
+ rb.Push(RESULT_SUCCESS);
|
|
|
|
|
+ rb.PushIpcInterface<ITaskService>(system);
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+ITaskService::ITaskService(Core::System& system_) : ServiceFramework{system_, "ITaskService"} {
|
|
|
// clang-format off
|
|
// clang-format off
|
|
|
static const FunctionInfo functions[] = {
|
|
static const FunctionInfo functions[] = {
|
|
|
{1, nullptr, "NotifyTaskStarting"},
|
|
{1, nullptr, "NotifyTaskStarting"},
|
|
@@ -20,16 +43,18 @@ BGTC_T::BGTC_T(Core::System& system_) : ServiceFramework{system_, "bgtc:t"} {
|
|
|
{13, nullptr, "UnscheduleTask"},
|
|
{13, nullptr, "UnscheduleTask"},
|
|
|
{14, nullptr, "GetScheduleEvent"},
|
|
{14, nullptr, "GetScheduleEvent"},
|
|
|
{15, nullptr, "SchedulePeriodicTask"},
|
|
{15, nullptr, "SchedulePeriodicTask"},
|
|
|
|
|
+ {16, nullptr, "Unknown16"},
|
|
|
{101, nullptr, "GetOperationMode"},
|
|
{101, nullptr, "GetOperationMode"},
|
|
|
{102, nullptr, "WillDisconnectNetworkWhenEnteringSleep"},
|
|
{102, nullptr, "WillDisconnectNetworkWhenEnteringSleep"},
|
|
|
{103, nullptr, "WillStayHalfAwakeInsteadSleep"},
|
|
{103, nullptr, "WillStayHalfAwakeInsteadSleep"},
|
|
|
|
|
+ {200, nullptr, "Unknown200"},
|
|
|
};
|
|
};
|
|
|
// clang-format on
|
|
// clang-format on
|
|
|
|
|
|
|
|
RegisterHandlers(functions);
|
|
RegisterHandlers(functions);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-BGTC_T::~BGTC_T() = default;
|
|
|
|
|
|
|
+ITaskService::~ITaskService() = default;
|
|
|
|
|
|
|
|
BGTC_SC::BGTC_SC(Core::System& system_) : ServiceFramework{system_, "bgtc:sc"} {
|
|
BGTC_SC::BGTC_SC(Core::System& system_) : ServiceFramework{system_, "bgtc:sc"} {
|
|
|
// clang-format off
|
|
// clang-format off
|