aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStarlet <gpyron@mail.com>2018-07-29 00:40:02 -0400
committergdkchan <gab.dark.100@gmail.com>2018-07-29 01:40:02 -0300
commite07b0265c6516b15ceccd06ca5bd56e79449f2c9 (patch)
tree910714082d05afc9d108212eacb9f662555c6f30
parent3208173620a0003d09d8e756729ca905ff14c47f (diff)
Add 5.0.0 IPCs (#300)
* Implement 5.0.0 IPC * Align ControlWithContext
-rw-r--r--Ryujinx.HLE/OsHle/Ipc/IpcHandler.cs6
-rw-r--r--Ryujinx.HLE/OsHle/Ipc/IpcMessageType.cs10
2 files changed, 10 insertions, 6 deletions
diff --git a/Ryujinx.HLE/OsHle/Ipc/IpcHandler.cs b/Ryujinx.HLE/OsHle/Ipc/IpcHandler.cs
index 9b46cf4b..cdb844cf 100644
--- a/Ryujinx.HLE/OsHle/Ipc/IpcHandler.cs
+++ b/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();
diff --git a/Ryujinx.HLE/OsHle/Ipc/IpcMessageType.cs b/Ryujinx.HLE/OsHle/Ipc/IpcMessageType.cs
index f596fea4..3db6844e 100644
--- a/Ryujinx.HLE/OsHle/Ipc/IpcMessageType.cs
+++ b/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
}
} \ No newline at end of file