Browse Source

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 năm trước cách đây
mục cha
commit
56374c8633
1 tập tin đã thay đổi với 21 bổ sung0 xóa
  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();