From a79b39b91347816ea14677b58af738b70df03e9c Mon Sep 17 00:00:00 2001
From: Ac_K <Acoustik666@gmail.com>
Date: Mon, 28 Jun 2021 20:54:45 +0200
Subject: no name: Mii Editor applet support (#2419)

* no name: Mii Editor applet support

* addresses gdkchan feedback

* Fix comment

* Bypass MountCounter of MiiDatabaseManager

* Fix GetSettingsPlatformRegion

* Disable Applet Menu for unsupported firmwares
---
 .../HOS/Services/Mii/IImageDatabaseService.cs      | 35 +++++++++++++++++++++-
 1 file changed, 34 insertions(+), 1 deletion(-)

(limited to 'Ryujinx.HLE/HOS/Services/Mii/IImageDatabaseService.cs')

diff --git a/Ryujinx.HLE/HOS/Services/Mii/IImageDatabaseService.cs b/Ryujinx.HLE/HOS/Services/Mii/IImageDatabaseService.cs
index a9f76902..1792bbb7 100644
--- a/Ryujinx.HLE/HOS/Services/Mii/IImageDatabaseService.cs
+++ b/Ryujinx.HLE/HOS/Services/Mii/IImageDatabaseService.cs
@@ -1,8 +1,41 @@
-namespace Ryujinx.HLE.HOS.Services.Mii
+using Ryujinx.Common.Logging;
+
+namespace Ryujinx.HLE.HOS.Services.Mii
 {
     [Service("miiimg")] // 5.0.0+
     class IImageDatabaseService : IpcService
     {
+        private uint _imageCount;
+        private bool _isDirty;
+
         public IImageDatabaseService(ServiceCtx context) { }
+
+        [CommandHipc(0)]
+        // Initialize(b8) -> b8
+        public ResultCode Initialize(ServiceCtx context)
+        {
+            // TODO: Service uses MiiImage:/database.dat if true, seems to use hardcoded data if false.
+            bool useHardcodedData = context.RequestData.ReadBoolean();
+
+            _imageCount = 0;
+            _isDirty    = false;
+
+            context.ResponseData.Write(_isDirty);
+
+            Logger.Stub?.PrintStub(LogClass.ServiceMii, new { useHardcodedData });
+
+            return ResultCode.Success;
+        }
+
+        [CommandHipc(11)]
+        // GetCount() -> u32
+        public ResultCode GetCount(ServiceCtx context)
+        {
+            context.ResponseData.Write(_imageCount);
+
+            Logger.Stub?.PrintStub(LogClass.ServiceMii);
+
+            return ResultCode.Success;
+        }
     }
 }
\ No newline at end of file
-- 
cgit v1.2.3-70-g09d2