diff options
Diffstat (limited to 'Ryujinx.HLE/HOS/Services/Vi/ISystemDisplayService.cs')
| -rw-r--r-- | Ryujinx.HLE/HOS/Services/Vi/ISystemDisplayService.cs | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/Ryujinx.HLE/HOS/Services/Vi/ISystemDisplayService.cs b/Ryujinx.HLE/HOS/Services/Vi/ISystemDisplayService.cs index 076618d7..28702d6f 100644 --- a/Ryujinx.HLE/HOS/Services/Vi/ISystemDisplayService.cs +++ b/Ryujinx.HLE/HOS/Services/Vi/ISystemDisplayService.cs @@ -1,26 +1,18 @@ using Ryujinx.Common.Logging; -using Ryujinx.HLE.HOS.Ipc; -using System.Collections.Generic; namespace Ryujinx.HLE.HOS.Services.Vi { class ISystemDisplayService : IpcService { - private Dictionary<int, ServiceProcessRequest> _commands; - - public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => _commands; + private static IApplicationDisplayService _applicationDisplayService; public ISystemDisplayService(IApplicationDisplayService applicationDisplayService) { - _commands = new Dictionary<int, ServiceProcessRequest> - { - { 2205, SetLayerZ }, - { 2207, SetLayerVisibility }, - { 2312, applicationDisplayService.CreateStrayLayer }, - { 3200, GetDisplayMode } - }; + _applicationDisplayService = applicationDisplayService; } + [Command(2205)] + // SetLayerZ(u64, u64) public static long SetLayerZ(ServiceCtx context) { Logger.PrintStub(LogClass.ServiceVi); @@ -28,6 +20,8 @@ namespace Ryujinx.HLE.HOS.Services.Vi return 0; } + [Command(2207)] + // SetLayerVisibility(b8, u64) public static long SetLayerVisibility(ServiceCtx context) { Logger.PrintStub(LogClass.ServiceVi); @@ -35,6 +29,17 @@ namespace Ryujinx.HLE.HOS.Services.Vi return 0; } + [Command(2312)] // 1.0.0-6.2.0 + // CreateStrayLayer(u32, u64) -> (u64, u64, buffer<bytes, 6>) + public static long CreateStrayLayer(ServiceCtx context) + { + Logger.PrintStub(LogClass.ServiceVi); + + return _applicationDisplayService.CreateStrayLayer(context); + } + + [Command(3200)] + // GetDisplayMode(u64) -> nn::vi::DisplayModeInfo public static long GetDisplayMode(ServiceCtx context) { // TODO: De-hardcode resolution. |
