Просмотр исходного кода

Add 5.0.0 IPCs (#300)

* Implement 5.0.0 IPC

* Align ControlWithContext
Starlet 7 лет назад
Родитель
Сommit
e07b0265c6
2 измененных файлов с 10 добавлено и 6 удалено
  1. 4 2
      Ryujinx.HLE/OsHle/Ipc/IpcHandler.cs
  2. 6 4
      Ryujinx.HLE/OsHle/Ipc/IpcMessageType.cs

+ 4 - 2
Ryujinx.HLE/OsHle/Ipc/IpcHandler.cs

@@ -21,7 +21,8 @@ namespace Ryujinx.HLE.OsHle.Ipc
             {
                 BinaryReader ReqReader = new BinaryReader(Raw);
 
-                if (Request.Type == IpcMessageType.Request)
+                if (Request.Type == IpcMessageType.Request ||
+                    Request.Type == IpcMessageType.RequestWithContext)
                 {
                     Response.Type = IpcMessageType.Response;
 
@@ -44,7 +45,8 @@ namespace Ryujinx.HLE.OsHle.Ipc
                         Response.RawData = ResMS.ToArray();
                     }
                 }
-                else if (Request.Type == IpcMessageType.Control)
+                else if (Request.Type == IpcMessageType.Control ||
+                         Request.Type == IpcMessageType.ControlWithContext)
                 {
                     long Magic = ReqReader.ReadInt64();
                     long CmdId = ReqReader.ReadInt64();

+ 6 - 4
Ryujinx.HLE/OsHle/Ipc/IpcMessageType.cs

@@ -2,9 +2,11 @@ namespace Ryujinx.HLE.OsHle.Ipc
 {
     enum IpcMessageType
     {
-        Response     = 0,
-        CloseSession = 2,
-        Request      = 4,
-        Control      = 5
+        Response           = 0,
+        CloseSession       = 2,
+        Request            = 4,
+        Control            = 5,
+        RequestWithContext = 6,
+        ControlWithContext = 7
     }
 }