From 0979426e63516d9eaff8f7bf99f5ff814d8747f9 Mon Sep 17 00:00:00 2001 From: Thomas Guillemard Date: Fri, 11 May 2018 04:40:52 +0200 Subject: [PATCH] Implement ISystemDisplayService::GetDisplayMode & Add IManagerDisplayService::SetLayerVisibility stub (#118) * Add ISystemDisplayService::GetDisplayMode & IManagerDisplayService::SetLayerVisibility Also add some missing PrintStub calls * Fix import ordering & Fix incorrect value for the third word in GetDisplayMode --- .../OsHle/Services/Vi/IManagerDisplayService.cs | 14 ++++++++++++-- .../OsHle/Services/Vi/ISystemDisplayService.cs | 15 ++++++++++++++- 2 files changed, 26 insertions(+), 3 deletions(-) diff --git a/Ryujinx.Core/OsHle/Services/Vi/IManagerDisplayService.cs b/Ryujinx.Core/OsHle/Services/Vi/IManagerDisplayService.cs index 3c792501..b0bb96e0 100644 --- a/Ryujinx.Core/OsHle/Services/Vi/IManagerDisplayService.cs +++ b/Ryujinx.Core/OsHle/Services/Vi/IManagerDisplayService.cs @@ -1,5 +1,6 @@ using Ryujinx.Core.OsHle.Ipc; using System.Collections.Generic; +using Ryujinx.Core.Logging; namespace Ryujinx.Core.OsHle.Services.Vi { @@ -15,24 +16,33 @@ namespace Ryujinx.Core.OsHle.Services.Vi { { 2010, CreateManagedLayer }, { 2011, DestroyManagedLayer }, - { 6000, AddToLayerStack } + { 6000, AddToLayerStack }, + { 6002, SetLayerVisibility } }; } public static long CreateManagedLayer(ServiceCtx Context) { + Context.Ns.Log.PrintStub(LogClass.ServiceVi, "Stubbed."); Context.ResponseData.Write(0L); //LayerId - return 0; } public long DestroyManagedLayer(ServiceCtx Context) { + Context.Ns.Log.PrintStub(LogClass.ServiceVi, "Stubbed."); return 0; } public static long AddToLayerStack(ServiceCtx Context) { + Context.Ns.Log.PrintStub(LogClass.ServiceVi, "Stubbed."); + return 0; + } + + public static long SetLayerVisibility(ServiceCtx Context) + { + Context.Ns.Log.PrintStub(LogClass.ServiceVi, "Stubbed."); return 0; } } diff --git a/Ryujinx.Core/OsHle/Services/Vi/ISystemDisplayService.cs b/Ryujinx.Core/OsHle/Services/Vi/ISystemDisplayService.cs index 3bdeb32a..693a02c4 100644 --- a/Ryujinx.Core/OsHle/Services/Vi/ISystemDisplayService.cs +++ b/Ryujinx.Core/OsHle/Services/Vi/ISystemDisplayService.cs @@ -1,3 +1,4 @@ +using Ryujinx.Core.Logging; using Ryujinx.Core.OsHle.Ipc; using System.Collections.Generic; @@ -14,17 +15,29 @@ namespace Ryujinx.Core.OsHle.Services.Vi m_Commands = new Dictionary() { { 2205, SetLayerZ }, - { 2207, SetLayerVisibility } + { 2207, SetLayerVisibility }, + { 3200, GetDisplayMode } }; } public static long SetLayerZ(ServiceCtx Context) { + Context.Ns.Log.PrintStub(LogClass.ServiceVi, "Stubbed."); return 0; } public static long SetLayerVisibility(ServiceCtx Context) { + Context.Ns.Log.PrintStub(LogClass.ServiceVi, "Stubbed."); + return 0; + } + + public static long GetDisplayMode(ServiceCtx Context) + { + Context.ResponseData.Write(1280); + Context.ResponseData.Write(720); + Context.ResponseData.Write(60.0f); + Context.ResponseData.Write(0); return 0; } }