|
|
|
@ -26,13 +26,18 @@
|
|
|
|
|
namespace Service::AM {
|
|
|
|
|
|
|
|
|
|
IWindowController::IWindowController() : ServiceFramework("IWindowController") {
|
|
|
|
|
// clang-format off
|
|
|
|
|
static const FunctionInfo functions[] = {
|
|
|
|
|
{0, nullptr, "CreateWindow"},
|
|
|
|
|
{1, &IWindowController::GetAppletResourceUserId, "GetAppletResourceUserId"},
|
|
|
|
|
{10, &IWindowController::AcquireForegroundRights, "AcquireForegroundRights"},
|
|
|
|
|
{11, nullptr, "ReleaseForegroundRights"},
|
|
|
|
|
{12, nullptr, "RejectToChangeIntoBackground"},
|
|
|
|
|
{20, nullptr, "SetAppletWindowVisibility"},
|
|
|
|
|
{21, nullptr, "SetAppletGpuTimeSlice"},
|
|
|
|
|
};
|
|
|
|
|
// clang-format on
|
|
|
|
|
|
|
|
|
|
RegisterHandlers(functions);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -87,6 +92,7 @@ void IAudioController::GetLibraryAppletExpectedMasterVolume(Kernel::HLERequestCo
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
IDisplayController::IDisplayController() : ServiceFramework("IDisplayController") {
|
|
|
|
|
// clang-format off
|
|
|
|
|
static const FunctionInfo functions[] = {
|
|
|
|
|
{0, nullptr, "GetLastForegroundCaptureImage"},
|
|
|
|
|
{1, nullptr, "UpdateLastForegroundCaptureImage"},
|
|
|
|
@ -117,7 +123,11 @@ IDisplayController::IDisplayController() : ServiceFramework("IDisplayController"
|
|
|
|
|
{25, nullptr, "ReleaseLastForegroundCaptureSharedBuffer"},
|
|
|
|
|
{26, nullptr, "AcquireCallerAppletCaptureSharedBuffer"},
|
|
|
|
|
{27, nullptr, "ReleaseCallerAppletCaptureSharedBuffer"},
|
|
|
|
|
// 6.0.0+
|
|
|
|
|
{28, nullptr, "TakeScreenShotOfOwnLayerEx"},
|
|
|
|
|
};
|
|
|
|
|
// clang-format on
|
|
|
|
|
|
|
|
|
|
RegisterHandlers(functions);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -128,6 +138,7 @@ IDebugFunctions::~IDebugFunctions() = default;
|
|
|
|
|
|
|
|
|
|
ISelfController::ISelfController(std::shared_ptr<NVFlinger::NVFlinger> nvflinger)
|
|
|
|
|
: ServiceFramework("ISelfController"), nvflinger(std::move(nvflinger)) {
|
|
|
|
|
// clang-format off
|
|
|
|
|
static const FunctionInfo functions[] = {
|
|
|
|
|
{0, nullptr, "Exit"},
|
|
|
|
|
{1, &ISelfController::LockExit, "LockExit"},
|
|
|
|
@ -136,10 +147,8 @@ ISelfController::ISelfController(std::shared_ptr<NVFlinger::NVFlinger> nvflinger
|
|
|
|
|
{4, nullptr, "LeaveFatalSection"},
|
|
|
|
|
{9, &ISelfController::GetLibraryAppletLaunchableEvent, "GetLibraryAppletLaunchableEvent"},
|
|
|
|
|
{10, &ISelfController::SetScreenShotPermission, "SetScreenShotPermission"},
|
|
|
|
|
{11, &ISelfController::SetOperationModeChangedNotification,
|
|
|
|
|
"SetOperationModeChangedNotification"},
|
|
|
|
|
{12, &ISelfController::SetPerformanceModeChangedNotification,
|
|
|
|
|
"SetPerformanceModeChangedNotification"},
|
|
|
|
|
{11, &ISelfController::SetOperationModeChangedNotification, "SetOperationModeChangedNotification"},
|
|
|
|
|
{12, &ISelfController::SetPerformanceModeChangedNotification, "SetPerformanceModeChangedNotification"},
|
|
|
|
|
{13, &ISelfController::SetFocusHandlingMode, "SetFocusHandlingMode"},
|
|
|
|
|
{14, &ISelfController::SetRestartMessageEnabled, "SetRestartMessageEnabled"},
|
|
|
|
|
{15, nullptr, "SetScreenShotAppletIdentityInfo"},
|
|
|
|
@ -165,7 +174,12 @@ ISelfController::ISelfController(std::shared_ptr<NVFlinger::NVFlinger> nvflinger
|
|
|
|
|
{69, nullptr, "IsAutoSleepDisabled"},
|
|
|
|
|
{70, nullptr, "ReportMultimediaError"},
|
|
|
|
|
{80, nullptr, "SetWirelessPriorityMode"},
|
|
|
|
|
{90, nullptr, "GetAccumulatedSuspendedTickValue"},
|
|
|
|
|
{91, nullptr, "GetAccumulatedSuspendedTickChangedEvent"},
|
|
|
|
|
{1000, nullptr, "GetDebugStorageChannel"},
|
|
|
|
|
};
|
|
|
|
|
// clang-format on
|
|
|
|
|
|
|
|
|
|
RegisterHandlers(functions);
|
|
|
|
|
|
|
|
|
|
auto& kernel = Core::System::GetInstance().Kernel();
|
|
|
|
@ -312,6 +326,7 @@ void ISelfController::GetIdleTimeDetectionExtension(Kernel::HLERequestContext& c
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ICommonStateGetter::ICommonStateGetter() : ServiceFramework("ICommonStateGetter") {
|
|
|
|
|
// clang-format off
|
|
|
|
|
static const FunctionInfo functions[] = {
|
|
|
|
|
{0, &ICommonStateGetter::GetEventHandle, "GetEventHandle"},
|
|
|
|
|
{1, &ICommonStateGetter::ReceiveMessage, "ReceiveMessage"},
|
|
|
|
@ -336,11 +351,12 @@ ICommonStateGetter::ICommonStateGetter() : ServiceFramework("ICommonStateGetter"
|
|
|
|
|
{52, nullptr, "SwitchLcdBacklight"},
|
|
|
|
|
{55, nullptr, "IsInControllerFirmwareUpdateSection"},
|
|
|
|
|
{60, &ICommonStateGetter::GetDefaultDisplayResolution, "GetDefaultDisplayResolution"},
|
|
|
|
|
{61, &ICommonStateGetter::GetDefaultDisplayResolutionChangeEvent,
|
|
|
|
|
"GetDefaultDisplayResolutionChangeEvent"},
|
|
|
|
|
{61, &ICommonStateGetter::GetDefaultDisplayResolutionChangeEvent, "GetDefaultDisplayResolutionChangeEvent"},
|
|
|
|
|
{62, nullptr, "GetHdcpAuthenticationState"},
|
|
|
|
|
{63, nullptr, "GetHdcpAuthenticationStateChangeEvent"},
|
|
|
|
|
};
|
|
|
|
|
// clang-format on
|
|
|
|
|
|
|
|
|
|
RegisterHandlers(functions);
|
|
|
|
|
|
|
|
|
|
auto& kernel = Core::System::GetInstance().Kernel();
|
|
|
|
@ -432,11 +448,14 @@ class IStorageAccessor final : public ServiceFramework<IStorageAccessor> {
|
|
|
|
|
public:
|
|
|
|
|
explicit IStorageAccessor(std::vector<u8> buffer)
|
|
|
|
|
: ServiceFramework("IStorageAccessor"), buffer(std::move(buffer)) {
|
|
|
|
|
// clang-format off
|
|
|
|
|
static const FunctionInfo functions[] = {
|
|
|
|
|
{0, &IStorageAccessor::GetSize, "GetSize"},
|
|
|
|
|
{10, &IStorageAccessor::Write, "Write"},
|
|
|
|
|
{11, &IStorageAccessor::Read, "Read"},
|
|
|
|
|
};
|
|
|
|
|
// clang-format on
|
|
|
|
|
|
|
|
|
|
RegisterHandlers(functions);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -489,10 +508,13 @@ class IStorage final : public ServiceFramework<IStorage> {
|
|
|
|
|
public:
|
|
|
|
|
explicit IStorage(std::vector<u8> buffer)
|
|
|
|
|
: ServiceFramework("IStorage"), buffer(std::move(buffer)) {
|
|
|
|
|
// clang-format off
|
|
|
|
|
static const FunctionInfo functions[] = {
|
|
|
|
|
{0, &IStorage::Open, "Open"},
|
|
|
|
|
{1, nullptr, "OpenTransferStorage"},
|
|
|
|
|
};
|
|
|
|
|
// clang-format on
|
|
|
|
|
|
|
|
|
|
RegisterHandlers(functions);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -512,6 +534,7 @@ private:
|
|
|
|
|
class ILibraryAppletAccessor final : public ServiceFramework<ILibraryAppletAccessor> {
|
|
|
|
|
public:
|
|
|
|
|
explicit ILibraryAppletAccessor() : ServiceFramework("ILibraryAppletAccessor") {
|
|
|
|
|
// clang-format off
|
|
|
|
|
static const FunctionInfo functions[] = {
|
|
|
|
|
{0, &ILibraryAppletAccessor::GetAppletStateChangedEvent, "GetAppletStateChangedEvent"},
|
|
|
|
|
{1, nullptr, "IsCompleted"},
|
|
|
|
@ -532,6 +555,8 @@ public:
|
|
|
|
|
{150, nullptr, "RequestForAppletToGetForeground"},
|
|
|
|
|
{160, nullptr, "GetIndirectLayerConsumerHandle"},
|
|
|
|
|
};
|
|
|
|
|
// clang-format on
|
|
|
|
|
|
|
|
|
|
RegisterHandlers(functions);
|
|
|
|
|
|
|
|
|
|
auto& kernel = Core::System::GetInstance().Kernel();
|
|
|
|
@ -624,13 +649,13 @@ void ILibraryAppletCreator::CreateStorage(Kernel::HLERequestContext& ctx) {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
IApplicationFunctions::IApplicationFunctions() : ServiceFramework("IApplicationFunctions") {
|
|
|
|
|
// clang-format off
|
|
|
|
|
static const FunctionInfo functions[] = {
|
|
|
|
|
{1, &IApplicationFunctions::PopLaunchParameter, "PopLaunchParameter"},
|
|
|
|
|
{10, nullptr, "CreateApplicationAndPushAndRequestToStart"},
|
|
|
|
|
{11, nullptr, "CreateApplicationAndPushAndRequestToStartForQuest"},
|
|
|
|
|
{12, nullptr, "CreateApplicationAndRequestToStart"},
|
|
|
|
|
{13, &IApplicationFunctions::CreateApplicationAndRequestToStartForQuest,
|
|
|
|
|
"CreateApplicationAndRequestToStartForQuest"},
|
|
|
|
|
{13, &IApplicationFunctions::CreateApplicationAndRequestToStartForQuest, "CreateApplicationAndRequestToStartForQuest"},
|
|
|
|
|
{20, &IApplicationFunctions::EnsureSaveData, "EnsureSaveData"},
|
|
|
|
|
{21, &IApplicationFunctions::GetDesiredLanguage, "GetDesiredLanguage"},
|
|
|
|
|
{22, &IApplicationFunctions::SetTerminateResult, "SetTerminateResult"},
|
|
|
|
@ -638,10 +663,8 @@ IApplicationFunctions::IApplicationFunctions() : ServiceFramework("IApplicationF
|
|
|
|
|
{24, nullptr, "GetLaunchStorageInfoForDebug"},
|
|
|
|
|
{25, nullptr, "ExtendSaveData"},
|
|
|
|
|
{26, nullptr, "GetSaveDataSize"},
|
|
|
|
|
{30, &IApplicationFunctions::BeginBlockingHomeButtonShortAndLongPressed,
|
|
|
|
|
"BeginBlockingHomeButtonShortAndLongPressed"},
|
|
|
|
|
{31, &IApplicationFunctions::EndBlockingHomeButtonShortAndLongPressed,
|
|
|
|
|
"EndBlockingHomeButtonShortAndLongPressed"},
|
|
|
|
|
{30, &IApplicationFunctions::BeginBlockingHomeButtonShortAndLongPressed, "BeginBlockingHomeButtonShortAndLongPressed"},
|
|
|
|
|
{31, &IApplicationFunctions::EndBlockingHomeButtonShortAndLongPressed, "EndBlockingHomeButtonShortAndLongPressed"},
|
|
|
|
|
{32, &IApplicationFunctions::BeginBlockingHomeButton, "BeginBlockingHomeButton"},
|
|
|
|
|
{33, &IApplicationFunctions::EndBlockingHomeButton, "EndBlockingHomeButton"},
|
|
|
|
|
{40, &IApplicationFunctions::NotifyRunning, "NotifyRunning"},
|
|
|
|
@ -666,6 +689,8 @@ IApplicationFunctions::IApplicationFunctions() : ServiceFramework("IApplicationF
|
|
|
|
|
{1000, nullptr, "CreateMovieMaker"},
|
|
|
|
|
{1001, nullptr, "PrepareForJit"},
|
|
|
|
|
};
|
|
|
|
|
// clang-format on
|
|
|
|
|
|
|
|
|
|
RegisterHandlers(functions);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -807,6 +832,7 @@ void InstallInterfaces(SM::ServiceManager& service_manager,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
IHomeMenuFunctions::IHomeMenuFunctions() : ServiceFramework("IHomeMenuFunctions") {
|
|
|
|
|
// clang-format off
|
|
|
|
|
static const FunctionInfo functions[] = {
|
|
|
|
|
{10, &IHomeMenuFunctions::RequestToGetForeground, "RequestToGetForeground"},
|
|
|
|
|
{11, nullptr, "LockForeground"},
|
|
|
|
@ -815,7 +841,10 @@ IHomeMenuFunctions::IHomeMenuFunctions() : ServiceFramework("IHomeMenuFunctions"
|
|
|
|
|
{21, nullptr, "GetPopFromGeneralChannelEvent"},
|
|
|
|
|
{30, nullptr, "GetHomeButtonWriterLockAccessor"},
|
|
|
|
|
{31, nullptr, "GetWriterLockAccessorEx"},
|
|
|
|
|
{100, nullptr, "PopRequestLaunchApplicationForDebug"},
|
|
|
|
|
};
|
|
|
|
|
// clang-format on
|
|
|
|
|
|
|
|
|
|
RegisterHandlers(functions);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -828,6 +857,7 @@ void IHomeMenuFunctions::RequestToGetForeground(Kernel::HLERequestContext& ctx)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
IGlobalStateController::IGlobalStateController() : ServiceFramework("IGlobalStateController") {
|
|
|
|
|
// clang-format off
|
|
|
|
|
static const FunctionInfo functions[] = {
|
|
|
|
|
{0, nullptr, "RequestToEnterSleep"},
|
|
|
|
|
{1, nullptr, "EnterSleep"},
|
|
|
|
@ -841,18 +871,23 @@ IGlobalStateController::IGlobalStateController() : ServiceFramework("IGlobalStat
|
|
|
|
|
{14, nullptr, "ShouldSleepOnBoot"},
|
|
|
|
|
{15, nullptr, "GetHdcpAuthenticationFailedEvent"},
|
|
|
|
|
};
|
|
|
|
|
// clang-format on
|
|
|
|
|
|
|
|
|
|
RegisterHandlers(functions);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
IGlobalStateController::~IGlobalStateController() = default;
|
|
|
|
|
|
|
|
|
|
IApplicationCreator::IApplicationCreator() : ServiceFramework("IApplicationCreator") {
|
|
|
|
|
// clang-format off
|
|
|
|
|
static const FunctionInfo functions[] = {
|
|
|
|
|
{0, nullptr, "CreateApplication"},
|
|
|
|
|
{1, nullptr, "PopLaunchRequestedApplication"},
|
|
|
|
|
{10, nullptr, "CreateSystemApplication"},
|
|
|
|
|
{100, nullptr, "PopFloatingApplicationForDevelopment"},
|
|
|
|
|
};
|
|
|
|
|
// clang-format on
|
|
|
|
|
|
|
|
|
|
RegisterHandlers(functions);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -860,6 +895,7 @@ IApplicationCreator::~IApplicationCreator() = default;
|
|
|
|
|
|
|
|
|
|
IProcessWindingController::IProcessWindingController()
|
|
|
|
|
: ServiceFramework("IProcessWindingController") {
|
|
|
|
|
// clang-format off
|
|
|
|
|
static const FunctionInfo functions[] = {
|
|
|
|
|
{0, nullptr, "GetLaunchReason"},
|
|
|
|
|
{11, nullptr, "OpenCallingLibraryApplet"},
|
|
|
|
@ -870,6 +906,8 @@ IProcessWindingController::IProcessWindingController()
|
|
|
|
|
{40, nullptr, "ReserveToStartAndWaitAndUnwindThis"},
|
|
|
|
|
{41, nullptr, "ReserveToStartAndWait"},
|
|
|
|
|
};
|
|
|
|
|
// clang-format on
|
|
|
|
|
|
|
|
|
|
RegisterHandlers(functions);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|