aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE
diff options
context:
space:
mode:
authorAc_K <Acoustik666@gmail.com>2021-03-25 23:25:49 +0100
committerGitHub <noreply@github.com>2021-03-25 23:25:49 +0100
commit53b9267b47a1541d596b763894c75fdecf5698e9 (patch)
treebe92b777fda4725b77bf53152537ad4da05c7bc3 /Ryujinx.HLE
parente5741fae2d4c7baa63d71f7fb56ea7d0eac8fe36 (diff)
am/ectx: Implement SetRequestExitToLibraryAppletAtExecuteNextProgramEnabled and add service placeholder (#2136)
* am/ectx: Implement SetRequestExitToLibraryAppletAtExecuteNextProgramEnabled and add service placeholder This PR implements `am` service call `SetRequestExitToLibraryAppletAtExecuteNextProgramEnabled` (closes #2028) accordingly to RE and adds placeholder for the `ectx` service. Both were added in 11.0.0+ firmware and are needed to boots games which needs this version. Some games are now playable/bootable: * Remove unused warning
Diffstat (limited to 'Ryujinx.HLE')
-rw-r--r--Ryujinx.HLE/HOS/Services/Am/AppletAE/AllSystemAppletProxiesService/SystemAppletProxy/ICommonStateGetter.cs13
-rw-r--r--Ryujinx.HLE/HOS/Services/Ectx/IReaderForSystem.cs8
-rw-r--r--Ryujinx.HLE/HOS/Services/Ectx/IWriterForApplication.cs8
-rw-r--r--Ryujinx.HLE/HOS/Services/Ectx/IWriterForSystem.cs8
4 files changed, 37 insertions, 0 deletions
diff --git a/Ryujinx.HLE/HOS/Services/Am/AppletAE/AllSystemAppletProxiesService/SystemAppletProxy/ICommonStateGetter.cs b/Ryujinx.HLE/HOS/Services/Am/AppletAE/AllSystemAppletProxiesService/SystemAppletProxy/ICommonStateGetter.cs
index 17b8dddf..27f2d1c8 100644
--- a/Ryujinx.HLE/HOS/Services/Am/AppletAE/AllSystemAppletProxiesService/SystemAppletProxy/ICommonStateGetter.cs
+++ b/Ryujinx.HLE/HOS/Services/Am/AppletAE/AllSystemAppletProxiesService/SystemAppletProxy/ICommonStateGetter.cs
@@ -13,7 +13,10 @@ namespace Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.Sys
private Lbl.LblControllerServer _lblControllerServer;
private bool _vrModeEnabled;
+#pragma warning disable CS0169
private bool _lcdBacklighOffEnabled;
+ private bool _requestExitToLibraryAppletAtExecuteNextProgramEnabled;
+#pragma warning restore CS0169
private int _messageEventHandle;
private int _displayResolutionChangedEventHandle;
@@ -237,5 +240,15 @@ namespace Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.Sys
{
return (ResultCode)_apmSystemManagerServer.GetCurrentPerformanceConfiguration(context);
}
+
+ [Command(900)] // 11.0.0+
+ // SetRequestExitToLibraryAppletAtExecuteNextProgramEnabled()
+ public ResultCode SetRequestExitToLibraryAppletAtExecuteNextProgramEnabled(ServiceCtx context)
+ {
+ // TODO : Find where the field is used.
+ _requestExitToLibraryAppletAtExecuteNextProgramEnabled = true;
+
+ return ResultCode.Success;
+ }
}
} \ No newline at end of file
diff --git a/Ryujinx.HLE/HOS/Services/Ectx/IReaderForSystem.cs b/Ryujinx.HLE/HOS/Services/Ectx/IReaderForSystem.cs
new file mode 100644
index 00000000..52fe8702
--- /dev/null
+++ b/Ryujinx.HLE/HOS/Services/Ectx/IReaderForSystem.cs
@@ -0,0 +1,8 @@
+namespace Ryujinx.HLE.HOS.Services.Ectx
+{
+ [Service("ectx:r")] // 11.0.0+
+ class IReaderForSystem : IpcService
+ {
+ public IReaderForSystem(ServiceCtx context) { }
+ }
+} \ No newline at end of file
diff --git a/Ryujinx.HLE/HOS/Services/Ectx/IWriterForApplication.cs b/Ryujinx.HLE/HOS/Services/Ectx/IWriterForApplication.cs
new file mode 100644
index 00000000..9401a6d7
--- /dev/null
+++ b/Ryujinx.HLE/HOS/Services/Ectx/IWriterForApplication.cs
@@ -0,0 +1,8 @@
+namespace Ryujinx.HLE.HOS.Services.Ectx
+{
+ [Service("ectx:aw")] // 11.0.0+
+ class IWriterForApplication : IpcService
+ {
+ public IWriterForApplication(ServiceCtx context) { }
+ }
+} \ No newline at end of file
diff --git a/Ryujinx.HLE/HOS/Services/Ectx/IWriterForSystem.cs b/Ryujinx.HLE/HOS/Services/Ectx/IWriterForSystem.cs
new file mode 100644
index 00000000..621ec777
--- /dev/null
+++ b/Ryujinx.HLE/HOS/Services/Ectx/IWriterForSystem.cs
@@ -0,0 +1,8 @@
+namespace Ryujinx.HLE.HOS.Services.Ectx
+{
+ [Service("ectx:w")] // 11.0.0+
+ class IWriterForSystem : IpcService
+ {
+ public IWriterForSystem(ServiceCtx context) { }
+ }
+} \ No newline at end of file