2023-03-31 21:16:46 +02:00
|
|
|
|
using LibHac.Ns;
|
|
|
|
|
using Ryujinx.Common.Utilities;
|
|
|
|
|
using System;
|
|
|
|
|
|
|
|
|
|
namespace Ryujinx.HLE.HOS.Services.Ns
|
2018-11-18 20:37:41 +01:00
|
|
|
|
{
|
2019-07-10 17:59:54 +02:00
|
|
|
|
[Service("ns:am")]
|
2018-11-18 20:37:41 +01:00
|
|
|
|
class IApplicationManagerInterface : IpcService
|
|
|
|
|
{
|
2019-07-12 03:13:43 +02:00
|
|
|
|
public IApplicationManagerInterface(ServiceCtx context) { }
|
2019-02-14 01:44:39 +01:00
|
|
|
|
|
2023-04-15 01:00:34 +02:00
|
|
|
|
[CommandCmif(400)]
|
2020-01-05 12:49:44 +01:00
|
|
|
|
// GetApplicationControlData(u8, u64) -> (unknown<4>, buffer<unknown, 6>)
|
2019-07-14 21:04:38 +02:00
|
|
|
|
public ResultCode GetApplicationControlData(ServiceCtx context)
|
2019-02-14 01:44:39 +01:00
|
|
|
|
{
|
2020-01-05 12:49:44 +01:00
|
|
|
|
byte source = (byte)context.RequestData.ReadInt64();
|
2020-04-28 03:44:29 +02:00
|
|
|
|
ulong titleId = context.RequestData.ReadUInt64();
|
2019-02-14 01:44:39 +01:00
|
|
|
|
|
2021-04-24 12:16:01 +02:00
|
|
|
|
ulong position = context.Request.ReceiveBuff[0].Position;
|
2019-02-14 01:44:39 +01:00
|
|
|
|
|
2023-03-31 21:16:46 +02:00
|
|
|
|
ApplicationControlProperty nacp = context.Device.Processes.ActiveApplication.ApplicationControlProperties;
|
2019-02-14 01:44:39 +01:00
|
|
|
|
|
2023-03-31 21:16:46 +02:00
|
|
|
|
context.Memory.Write(position, SpanHelpers.AsByteSpan(ref nacp).ToArray());
|
2019-02-14 01:44:39 +01:00
|
|
|
|
|
2019-07-14 21:04:38 +02:00
|
|
|
|
return ResultCode.Success;
|
2019-02-14 01:44:39 +01:00
|
|
|
|
}
|
2018-11-18 20:37:41 +01:00
|
|
|
|
}
|
2019-07-12 03:13:43 +02:00
|
|
|
|
}
|