IDeviceOperator.cs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. using LibHac;
  2. using LibHac.FsSrv;
  3. namespace Ryujinx.HLE.HOS.Services.Fs
  4. {
  5. class IDeviceOperator : IpcService
  6. {
  7. private LibHac.FsSrv.IDeviceOperator _baseOperator;
  8. public IDeviceOperator(LibHac.FsSrv.IDeviceOperator baseOperator)
  9. {
  10. _baseOperator = baseOperator;
  11. }
  12. [CommandHipc(0)]
  13. // IsSdCardInserted() -> b8 is_inserted
  14. public ResultCode IsSdCardInserted(ServiceCtx context)
  15. {
  16. Result result = _baseOperator.IsSdCardInserted(out bool isInserted);
  17. context.ResponseData.Write(isInserted);
  18. return (ResultCode)result.Value;
  19. }
  20. [CommandHipc(200)]
  21. // IsGameCardInserted() -> b8 is_inserted
  22. public ResultCode IsGameCardInserted(ServiceCtx context)
  23. {
  24. Result result = _baseOperator.IsGameCardInserted(out bool isInserted);
  25. context.ResponseData.Write(isInserted);
  26. return (ResultCode)result.Value;
  27. }
  28. [CommandHipc(202)]
  29. // GetGameCardHandle() -> u32 gamecard_handle
  30. public ResultCode GetGameCardHandle(ServiceCtx context)
  31. {
  32. Result result = _baseOperator.GetGameCardHandle(out GameCardHandle handle);
  33. context.ResponseData.Write(handle.Value);
  34. return (ResultCode)result.Value;
  35. }
  36. }
  37. }