srv: added a real mutex for GetProcSemaphore (instead of stubbed)

master
bunnei 2014-05-26 21:55:55 +07:00
parent 9f7ed2d027
commit 96b2105524
1 changed files with 10 additions and 3 deletions

@ -5,21 +5,28 @@
#include "core/hle/hle.h"
#include "core/hle/service/srv.h"
#include "core/hle/service/service.h"
#include "core/hle/kernel/mutex.h"
////////////////////////////////////////////////////////////////////////////////////////////////////
// Namespace SRV
namespace SRV {
Handle g_mutex = 0;
void Initialize(Service::Interface* self) {
NOTICE_LOG(OSHLE, "SRV::Sync - Initialize");
DEBUG_LOG(OSHLE, "SRV::Initialize called");
if (!g_mutex) {
g_mutex = Kernel::CreateMutex(false);
}
}
void GetProcSemaphore(Service::Interface* self) {
DEBUG_LOG(OSHLE, "SRV::GetProcSemaphore called");
// Get process semaphore?
u32* cmd_buff = Service::GetCommandBuffer();
cmd_buff[3] = 0xDEADBEEF; // Return something... 0 == NULL, raises an exception
cmd_buff[1] = 0; // No error
cmd_buff[3] = g_mutex; // Return something... 0 == NULL, raises an exception
}
void GetServiceHandle(Service::Interface* self) {