IDebugFunctions, IOverlayFunctions, IAppletCommonFunctions

This commit is contained in:
Isaac Marovitz 2023-11-10 11:28:37 -05:00
parent 874fffe576
commit f4a2e7c925
No known key found for this signature in database
GPG key ID: 97250B2B09A132E1
6 changed files with 578 additions and 0 deletions

View file

@ -0,0 +1,163 @@
using Ryujinx.Common.Logging;
using Ryujinx.Horizon.Common;
using Ryujinx.Horizon.Sdk.Am.Controllers;
using Ryujinx.Horizon.Sdk.Sf;
namespace Ryujinx.Horizon.Am.Ipc.Controllers
{
partial class AppletCommonFunctions : IAppletCommonFunctions
{
[CmifCommand(0)]
public Result SetTerminateResult()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(10)]
public Result ReadThemeStorage()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(11)]
public Result WriteThemeStorage()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(20)]
public Result PushToAppletBoundChannel()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(21)]
public Result TryPopFromAppletBoundChannel()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(40)]
public Result GetDisplayLogicalResolution()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(42)]
public Result SetDisplayMagnification()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(50)]
public Result SetHomeButtonDoubleClickEnabled()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(51)]
public Result GetHomeButtonDoubleClickEnabled()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(52)]
public Result IsHomeButtonShortPressedBlocked()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(60)]
public Result IsVrModeCurtainRequired()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(61)]
public Result IsSleepRequiredByHighTemperature()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(62)]
public Result IsSleepRequiredByLowBattery()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(70)]
public Result SetCpuBoostRequestPriority()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(80)]
public Result SetHandlingCaptureButtonShortPressedMessageEnabledForApplet()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(81)]
public Result SetHandlingCaptureButtonLongPressedMessageEnabledForApplet()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(90)]
public Result OpenNamedChannelAsParent()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(91)]
public Result OpenNamedChannelAsChild()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(100)]
public Result SetApplicationCoreUsageMode()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
}
}

View file

@ -0,0 +1,202 @@
using Ryujinx.Common.Logging;
using Ryujinx.Horizon.Common;
using Ryujinx.Horizon.Sdk.Am.Controllers;
using Ryujinx.Horizon.Sdk.Sf;
namespace Ryujinx.Horizon.Am.Ipc.Controllers
{
partial class DebugFunctions : IDebugFunctions
{
[CmifCommand(0)]
public Result NotifyMessageToHomeMenuForDebug()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(1)]
public Result OpenMainApplication()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(10)]
public Result PerformSystemButtonPressing()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(20)]
public Result InvalidateTransitionLayer()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(30)]
public Result RequestLaunchApplicationWithUserAndArgumentForDebug()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(31)]
public Result RequestLaunchApplicationByApplicationLaunchInfoForDebug()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(40)]
public Result GetAppletResourceUsageInfo()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(50)]
public Result AddSystemProgramIdAndAppletIdForDebug()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(51)]
public Result AddOperationConfirmedLibraryAppletIdForDebug()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(52)]
public Result GetProgramIdFromAppletIdForDebug()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(100)]
public Result SetCpuBoostModeForApplet()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(101)]
public Result CancelCpuBoostModeForApplet()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(110)]
public Result PushToAppletBoundChannelForDebug()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(111)]
public Result TryPopFromAppletBoundChannelForDebug()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(120)]
public Result AlarmSettingNotificationEnableAppEventReserve()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(121)]
public Result AlarmSettingNotificationDisableAppEventReserve()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(122)]
public Result AlarmSettingNotificationPushAppEventNotify()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(130)]
public Result FriendInvitationSetApplicationParameter()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(131)]
public Result FriendInvitationClearApplicationParameter()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(132)]
public Result FriendInvitationPushApplicationParameter()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(140)]
public Result RestrictPowerOperationForSecureLaunchModeForDebug()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(200)]
public Result CreateFloatingLibraryAppletAccepterForDebug()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(300)]
public Result TerminateAllRunningApplicationsForDebug()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(900)]
public Result GetGrcProcessLaunchedSystemEvent()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
}
}

View file

@ -0,0 +1,130 @@
using Ryujinx.Common.Logging;
using Ryujinx.Horizon.Common;
using Ryujinx.Horizon.Sdk.Am.Controllers;
using Ryujinx.Horizon.Sdk.Sf;
namespace Ryujinx.Horizon.Am.Ipc.Controllers
{
partial class OverlayFunctions : IOverlayFunctions
{
[CmifCommand(0)]
public Result BeginToWatchShortHomeButtonMessage()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(1)]
public Result EndToWatchShortHomeButtonMessage()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(2)]
public Result GetApplicationIdForLogo()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(3)]
public Result SetGpuTimeSliceBoost()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(4)]
public Result SetAutoSleepTimeAndDimmingTimeEnabled()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(5)]
public Result TerminateApplicationAndSetReason()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(6)]
public Result SetScreenShotPermissionGlobally()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(10)]
public Result StartShutdownSequenceForOverlay()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(11)]
public Result StartRebootSequenceForOverlay()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(20)]
public Result SetHandlingHomeButtonShortPressedEnabled()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(21)]
public Result SetHandlingTouchScreenInputEnabled()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(30)]
public Result SetHealthWarningShowingState()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(31)]
public Result IsHealthWarningRequired()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(90)]
public Result SetRequiresGpuResourceUse()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
[CmifCommand(101)]
public Result BeginToObserveHidInputForDevelop()
{
Logger.Stub?.PrintStub(LogClass.ServiceAm);
return Result.Success;
}
}
}

View file

@ -0,0 +1,28 @@
using Ryujinx.Horizon.Common;
namespace Ryujinx.Horizon.Sdk.Am.Controllers
{
public interface IAppletCommonFunctions
{
Result SetTerminateResult();
Result ReadThemeStorage();
Result WriteThemeStorage();
Result PushToAppletBoundChannel();
Result TryPopFromAppletBoundChannel();
Result GetDisplayLogicalResolution();
Result SetDisplayMagnification();
Result SetHomeButtonDoubleClickEnabled();
Result GetHomeButtonDoubleClickEnabled();
Result IsHomeButtonShortPressedBlocked();
Result IsVrModeCurtainRequired();
Result IsSleepRequiredByHighTemperature();
Result IsSleepRequiredByLowBattery();
Result SetCpuBoostRequestPriority();
Result SetHandlingCaptureButtonShortPressedMessageEnabledForApplet();
Result SetHandlingCaptureButtonLongPressedMessageEnabledForApplet();
Result OpenNamedChannelAsParent();
Result OpenNamedChannelAsChild();
Result SetApplicationCoreUsageMode();
// 300 (17.0.0+) Unknown Function
}
}

View file

@ -0,0 +1,32 @@
using Ryujinx.Horizon.Common;
namespace Ryujinx.Horizon.Sdk.Am.Controllers
{
public interface IDebugFunctions
{
Result NotifyMessageToHomeMenuForDebug();
Result OpenMainApplication();
Result PerformSystemButtonPressing();
Result InvalidateTransitionLayer();
Result RequestLaunchApplicationWithUserAndArgumentForDebug();
Result RequestLaunchApplicationByApplicationLaunchInfoForDebug();
Result GetAppletResourceUsageInfo();
Result AddSystemProgramIdAndAppletIdForDebug();
Result AddOperationConfirmedLibraryAppletIdForDebug();
Result GetProgramIdFromAppletIdForDebug();
Result SetCpuBoostModeForApplet();
Result CancelCpuBoostModeForApplet();
Result PushToAppletBoundChannelForDebug();
Result TryPopFromAppletBoundChannelForDebug();
Result AlarmSettingNotificationEnableAppEventReserve();
Result AlarmSettingNotificationDisableAppEventReserve();
Result AlarmSettingNotificationPushAppEventNotify();
Result FriendInvitationSetApplicationParameter();
Result FriendInvitationClearApplicationParameter();
Result FriendInvitationPushApplicationParameter();
Result RestrictPowerOperationForSecureLaunchModeForDebug();
Result CreateFloatingLibraryAppletAccepterForDebug();
Result TerminateAllRunningApplicationsForDebug();
Result GetGrcProcessLaunchedSystemEvent();
}
}

View file

@ -0,0 +1,23 @@
using Ryujinx.Horizon.Common;
namespace Ryujinx.Horizon.Sdk.Am.Controllers
{
public interface IOverlayFunctions
{
Result BeginToWatchShortHomeButtonMessage();
Result EndToWatchShortHomeButtonMessage();
Result GetApplicationIdForLogo();
Result SetGpuTimeSliceBoost();
Result SetAutoSleepTimeAndDimmingTimeEnabled();
Result TerminateApplicationAndSetReason();
Result SetScreenShotPermissionGlobally();
Result StartShutdownSequenceForOverlay();
Result StartRebootSequenceForOverlay();
Result SetHandlingHomeButtonShortPressedEnabled();
Result SetHandlingTouchScreenInputEnabled();
Result SetHealthWarningShowingState();
Result IsHealthWarningRequired();
Result SetRequiresGpuResourceUse();
Result BeginToObserveHidInputForDevelop();
}
}