IReadOnlyApplicationControlDataInterface.cs 887 B

1234567891011121314151617181920212223242526
  1. using LibHac.Common;
  2. using LibHac.Ns;
  3. namespace Ryujinx.HLE.HOS.Services.Ns
  4. {
  5. class IReadOnlyApplicationControlDataInterface : IpcService
  6. {
  7. public IReadOnlyApplicationControlDataInterface(ServiceCtx context) { }
  8. [CommandHipc(0)]
  9. // GetApplicationControlData(u8, u64) -> (unknown<4>, buffer<unknown, 6>)
  10. public ResultCode GetApplicationControlData(ServiceCtx context)
  11. {
  12. byte source = (byte)context.RequestData.ReadInt64();
  13. ulong titleId = context.RequestData.ReadUInt64();
  14. ulong position = context.Request.ReceiveBuff[0].Position;
  15. ApplicationControlProperty nacp = context.Device.Processes.ActiveApplication.ApplicationControlProperties;
  16. context.Memory.Write(position, SpanHelpers.AsByteSpan(ref nacp).ToArray());
  17. return ResultCode.Success;
  18. }
  19. }
  20. }