Initial support for the new 12.x IPC system (#2182)

* Rename CommandAttribute as CommandHIpcAttribute to prepare for 12.x changes

* Implement inital support for TIPC and adds SM command ids

* *Ipc to *ipc

* Missed a ref in last commit...

* CommandAttributeTIpc to CommandAttributeTipc

* Addresses comment and fixes some bugs around

TIPC doesn't have any padding requirements as buffer C isn't a thing
Fix for RegisterService inverting two argument only on TIPC
This commit is contained in:
Mary 2021-04-14 00:01:24 +02:00 committed by GitHub
parent faa654dbaf
commit 0746b83edf
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
132 changed files with 1077 additions and 951 deletions

View file

@ -28,7 +28,7 @@ namespace Ryujinx.HLE.HOS.Services.Pctl.ParentalControlServiceFactory
}
}
[Command(1)] // 4.0.0+
[CommandHipc(1)] // 4.0.0+
// Initialize()
public ResultCode Initialize(ServiceCtx context)
{
@ -73,7 +73,7 @@ namespace Ryujinx.HLE.HOS.Services.Pctl.ParentalControlServiceFactory
return resultCode;
}
[Command(1001)]
[CommandHipc(1001)]
// CheckFreeCommunicationPermission()
public ResultCode CheckFreeCommunicationPermission(ServiceCtx context)
{
@ -92,14 +92,14 @@ namespace Ryujinx.HLE.HOS.Services.Pctl.ParentalControlServiceFactory
return ResultCode.Success;
}
[Command(1013)] // 4.0.0+
[CommandHipc(1013)] // 4.0.0+
// ConfirmStereoVisionPermission()
public ResultCode ConfirmStereoVisionPermission(ServiceCtx context)
{
return IsStereoVisionPermittedImpl();
}
[Command(1018)]
[CommandHipc(1018)]
// IsFreeCommunicationAvailable()
public ResultCode IsFreeCommunicationAvailable(ServiceCtx context)
{
@ -116,7 +116,7 @@ namespace Ryujinx.HLE.HOS.Services.Pctl.ParentalControlServiceFactory
return ResultCode.Success;
}
[Command(1031)]
[CommandHipc(1031)]
// IsRestrictionEnabled() -> b8
public ResultCode IsRestrictionEnabled(ServiceCtx context)
{
@ -130,7 +130,7 @@ namespace Ryujinx.HLE.HOS.Services.Pctl.ParentalControlServiceFactory
return ResultCode.Success;
}
[Command(1061)] // 4.0.0+
[CommandHipc(1061)] // 4.0.0+
// ConfirmStereoVisionRestrictionConfigurable()
public ResultCode ConfirmStereoVisionRestrictionConfigurable(ServiceCtx context)
{
@ -149,7 +149,7 @@ namespace Ryujinx.HLE.HOS.Services.Pctl.ParentalControlServiceFactory
}
}
[Command(1062)] // 4.0.0+
[CommandHipc(1062)] // 4.0.0+
// GetStereoVisionRestriction() -> bool
public ResultCode GetStereoVisionRestriction(ServiceCtx context)
{
@ -170,7 +170,7 @@ namespace Ryujinx.HLE.HOS.Services.Pctl.ParentalControlServiceFactory
return ResultCode.Success;
}
[Command(1063)] // 4.0.0+
[CommandHipc(1063)] // 4.0.0+
// SetStereoVisionRestriction(bool)
public ResultCode SetStereoVisionRestriction(ServiceCtx context)
{
@ -194,14 +194,14 @@ namespace Ryujinx.HLE.HOS.Services.Pctl.ParentalControlServiceFactory
return ResultCode.Success;
}
[Command(1064)] // 5.0.0+
[CommandHipc(1064)] // 5.0.0+
// ResetConfirmedStereoVisionPermission()
public ResultCode ResetConfirmedStereoVisionPermission(ServiceCtx context)
{
return ResultCode.Success;
}
[Command(1065)] // 5.0.0+
[CommandHipc(1065)] // 5.0.0+
// IsStereoVisionPermitted() -> bool
public ResultCode IsStereoVisionPermitted(ServiceCtx context)
{