mirror of
https://github.com/Ryujinx/Ryujinx.git
synced 2024-08-16 21:58:42 +02:00
Updates to nifm, irs and nvdrv services (#679)
This commit is contained in:
parent
26be1cb4e2
commit
6e8c080968
3 changed files with 50 additions and 12 deletions
|
@ -17,6 +17,7 @@ namespace Ryujinx.HLE.HOS.Services.Friend
|
|||
_commands = new Dictionary<int, ServiceProcessRequest>
|
||||
{
|
||||
{ 10101, GetFriendList },
|
||||
{ 10600, DeclareOpenOnlinePlaySession },
|
||||
{ 10601, DeclareCloseOnlinePlaySession },
|
||||
{ 10610, UpdateUserPresence }
|
||||
};
|
||||
|
@ -61,6 +62,23 @@ namespace Ryujinx.HLE.HOS.Services.Friend
|
|||
return 0;
|
||||
}
|
||||
|
||||
// DeclareOpenOnlinePlaySession(nn::account::Uid)
|
||||
public long DeclareOpenOnlinePlaySession(ServiceCtx context)
|
||||
{
|
||||
UInt128 uuid = new UInt128(
|
||||
context.RequestData.ReadInt64(),
|
||||
context.RequestData.ReadInt64());
|
||||
|
||||
if (context.Device.System.State.TryGetUser(uuid, out UserProfile profile))
|
||||
{
|
||||
profile.OnlinePlayState = OpenCloseState.Open;
|
||||
}
|
||||
|
||||
Logger.PrintStub(LogClass.ServiceFriend, new { UserId = uuid.ToString(), profile.OnlinePlayState });
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
// DeclareCloseOnlinePlaySession(nn::account::Uid)
|
||||
public long DeclareCloseOnlinePlaySession(ServiceCtx context)
|
||||
{
|
||||
|
|
|
@ -20,10 +20,11 @@ namespace Ryujinx.HLE.HOS.Services.Irs
|
|||
{
|
||||
_commands = new Dictionary<int, ServiceProcessRequest>
|
||||
{
|
||||
{ 302, ActivateIrsensor },
|
||||
{ 303, DeactivateIrsensor },
|
||||
{ 304, GetIrsensorSharedMemoryHandle },
|
||||
{ 311, GetNpadIrCameraHandle }
|
||||
{ 302, ActivateIrsensor },
|
||||
{ 303, DeactivateIrsensor },
|
||||
{ 304, GetIrsensorSharedMemoryHandle },
|
||||
{ 311, GetNpadIrCameraHandle },
|
||||
{ 319, ActivateIrsensorWithFunctionLevel }
|
||||
};
|
||||
|
||||
_irsSharedMem = irsSharedMem;
|
||||
|
@ -103,5 +104,16 @@ namespace Ryujinx.HLE.HOS.Services.Irs
|
|||
default: throw new ArgumentOutOfRangeException(nameof(npadId));
|
||||
}
|
||||
}
|
||||
|
||||
// ActivateIrsensorWithFunctionLevel(nn::applet::AppletResourceUserId, nn::irsensor::PackedFunctionLevel, pid)
|
||||
public long ActivateIrsensorWithFunctionLevel(ServiceCtx context)
|
||||
{
|
||||
long appletResourceUserId = context.RequestData.ReadInt64();
|
||||
long packedFunctionLevel = context.RequestData.ReadInt64();
|
||||
|
||||
Logger.PrintStub(LogClass.ServiceIrs, new { appletResourceUserId, packedFunctionLevel });
|
||||
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -42,14 +42,15 @@ namespace Ryujinx.HLE.HOS.Services.Nv
|
|||
{
|
||||
_commands = new Dictionary<int, ServiceProcessRequest>()
|
||||
{
|
||||
{ 0, Open },
|
||||
{ 1, Ioctl },
|
||||
{ 2, Close },
|
||||
{ 3, Initialize },
|
||||
{ 4, QueryEvent },
|
||||
{ 8, SetClientPid },
|
||||
{ 11, Ioctl },
|
||||
{ 13, FinishInitialize }
|
||||
{ 0, Open },
|
||||
{ 1, Ioctl },
|
||||
{ 2, Close },
|
||||
{ 3, Initialize },
|
||||
{ 4, QueryEvent },
|
||||
{ 8, SetClientPid },
|
||||
{ 9, DumpGraphicsMemoryInfo },
|
||||
{ 11, Ioctl },
|
||||
{ 13, FinishInitialize }
|
||||
};
|
||||
|
||||
_event = new KEvent(system);
|
||||
|
@ -148,6 +149,13 @@ namespace Ryujinx.HLE.HOS.Services.Nv
|
|||
return 0;
|
||||
}
|
||||
|
||||
public long DumpGraphicsMemoryInfo(ServiceCtx context)
|
||||
{
|
||||
Logger.PrintStub(LogClass.ServiceNv);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
public long FinishInitialize(ServiceCtx context)
|
||||
{
|
||||
Logger.PrintStub(LogClass.ServiceNv);
|
||||
|
|
Loading…
Reference in a new issue