0
0
Fork 0
mirror of https://github.com/GreemDev/Ryujinx.git synced 2024-12-23 05:45:47 +00:00

Updates to nifm, irs and nvdrv services (#679)

This commit is contained in:
HorrorTroll 2019-04-25 20:03:00 +07:00 committed by jduncanator
parent 26be1cb4e2
commit 6e8c080968
3 changed files with 50 additions and 12 deletions

View file

@ -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)
{

View file

@ -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;
}
}
}

View file

@ -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);