From 540a693eae210d090b87426ead8cfac5893a9ef8 Mon Sep 17 00:00:00 2001
From: bunnei <ericbunnie@gmail.com>
Date: Fri, 16 May 2014 23:23:56 -0400
Subject: [PATCH] updated APT_U::GetLockHandle to return a valid handle

---
 src/core/hle/service/apt.cpp | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/core/hle/service/apt.cpp b/src/core/hle/service/apt.cpp
index 709ac54935..ddb975607c 100644
--- a/src/core/hle/service/apt.cpp
+++ b/src/core/hle/service/apt.cpp
@@ -19,7 +19,11 @@ void Initialize(Service::Interface* self) {
 
 void GetLockHandle(Service::Interface* self) {
     u32* cmd_buff = Service::GetCommandBuffer();
-    cmd_buff[5] = 0x00000000; // TODO: This should be an actual mutex handle
+    u32 flags = cmd_buff[1];
+
+    // TODO: This should be an actual mutex handle. Games will check that this is not non-zero 
+    // (NULL), and fail if such. A faked non-zero value will at least enable further booting. 
+    cmd_buff[5] = 0xDEADBEEF;
 }
 
 const Interface::FunctionInfo FunctionTable[] = {
-- 
GitLab