Explorar o código

Merge pull request #15 from bsaleil/master

vi: Add IManagerDisplayService::CloseDisplay function
bunnei %!s(int64=8) %!d(string=hai) anos
pai
achega
22347e8844
Modificáronse 1 ficheiros con 10 adicións e 0 borrados
  1. 10 0
      src/core/hle/service/vi/vi.cpp

+ 10 - 0
src/core/hle/service/vi/vi.cpp

@@ -494,6 +494,7 @@ public:
     IManagerDisplayService(std::shared_ptr<NVFlinger> nv_flinger)
         : ServiceFramework("IManagerDisplayService"), nv_flinger(std::move(nv_flinger)) {
         static const FunctionInfo functions[] = {
+            {1020, &IManagerDisplayService::CloseDisplay, "CloseDisplay"},
             {1102, nullptr, "GetDisplayResolution"},
             {2010, &IManagerDisplayService::CreateManagedLayer, "CreateManagedLayer"},
             {6000, &IManagerDisplayService::AddToLayerStack, "AddToLayerStack"},
@@ -503,6 +504,15 @@ public:
     ~IManagerDisplayService() = default;
 
 private:
+    void CloseDisplay(Kernel::HLERequestContext& ctx) {
+        LOG_WARNING(Service, "(STUBBED) called");
+        IPC::RequestParser rp{ctx};
+        u64 display = rp.Pop<u64>();
+
+        IPC::RequestBuilder rb = rp.MakeBuilder(2, 0, 0, 0);
+        rb.Push(RESULT_SUCCESS);
+    }
+
     void CreateManagedLayer(Kernel::HLERequestContext& ctx) {
         LOG_WARNING(Service, "(STUBBED) called");
         IPC::RequestParser rp{ctx};