浏览代码

prepo: Implement RequestImmediateTransmission and GetTransmissionStatus (#1033)

* prepo: Implement RequestImmediateTransmission and GetTransmissionStatus

This implement RequestImmediateTransmission and GetTransmissionStatus of the prepo service accurately to RE.
Since we don't use reports, I've explained what the calls do in the real service.

Close #958

* fix comment
Ac_K 6 年之前
父节点
当前提交
56374c8633
共有 1 个文件被更改,包括 21 次插入0 次删除
  1. 21 0
      Ryujinx.HLE/HOS/Services/Prepo/IPrepoService.cs

+ 21 - 0
Ryujinx.HLE/HOS/Services/Prepo/IPrepoService.cs

@@ -49,6 +49,27 @@ namespace Ryujinx.HLE.HOS.Services.Prepo
             return ProcessReport(context, withUserID: true);
         }
 
+        [Command(10200)]
+        // RequestImmediateTransmission()
+        public ResultCode RequestImmediateTransmission(ServiceCtx context)
+        {
+            // It signals an event of nn::prepo::detail::service::core::TransmissionStatusManager that requests the transmission of the report.
+            // Since we don't use reports it's fine to do nothing.
+
+            return ResultCode.Success;
+        }
+
+        [Command(10300)]
+        // GetTransmissionStatus() -> u32
+        public ResultCode GetTransmissionStatus(ServiceCtx context)
+        {
+            // It returns the transmission result of nn::prepo::detail::service::core::TransmissionStatusManager.
+            // Since we don't use reports it's fine to return ResultCode.Success.
+            context.ResponseData.Write((int)ResultCode.Success);
+
+            return ResultCode.Success;
+        }
+
         private ResultCode ProcessReport(ServiceCtx context, bool withUserID)
         {
             UserId  userId   = withUserID ? context.RequestData.ReadStruct<UserId>() : new UserId();