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