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