diff options
author | bunnei <bunneidev@gmail.com> | 2014-07-22 03:25:35 +0200 |
---|---|---|
committer | bunnei <bunneidev@gmail.com> | 2014-08-06 05:54:27 +0200 |
commit | 1b247b80312349fcc3790a6f0705f214ab999364 (patch) | |
tree | 1c4a5d586fee120262df40d6cc7bb10247eed748 /src/core/hle/service | |
parent | SVC: Removed ArbitrateAddress log message that spams to much. (diff) | |
download | yuzu-1b247b80312349fcc3790a6f0705f214ab999364.tar yuzu-1b247b80312349fcc3790a6f0705f214ab999364.tar.gz yuzu-1b247b80312349fcc3790a6f0705f214ab999364.tar.bz2 yuzu-1b247b80312349fcc3790a6f0705f214ab999364.tar.lz yuzu-1b247b80312349fcc3790a6f0705f214ab999364.tar.xz yuzu-1b247b80312349fcc3790a6f0705f214ab999364.tar.zst yuzu-1b247b80312349fcc3790a6f0705f214ab999364.zip |
Diffstat (limited to 'src/core/hle/service')
-rw-r--r-- | src/core/hle/service/srv.cpp | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/core/hle/service/srv.cpp b/src/core/hle/service/srv.cpp index f45c0efc2..8f8413d02 100644 --- a/src/core/hle/service/srv.cpp +++ b/src/core/hle/service/srv.cpp @@ -5,28 +5,30 @@ #include "core/hle/hle.h" #include "core/hle/service/srv.h" #include "core/hle/service/service.h" -#include "core/hle/kernel/mutex.h" +#include "core/hle/kernel/event.h" //////////////////////////////////////////////////////////////////////////////////////////////////// // Namespace SRV namespace SRV { -Handle g_mutex = 0; +Handle g_event_handle = 0; void Initialize(Service::Interface* self) { DEBUG_LOG(OSHLE, "called"); - if (!g_mutex) { - g_mutex = Kernel::CreateMutex(true, "SRV:Lock"); - } } void GetProcSemaphore(Service::Interface* self) { DEBUG_LOG(OSHLE, "called"); - // Get process semaphore? + u32* cmd_buff = Service::GetCommandBuffer(); - cmd_buff[1] = 0; // No error - cmd_buff[3] = g_mutex; // Return something... 0 == nullptr, raises an exception + + // TODO(bunnei): Change to a semaphore once these have been implemented + g_event_handle = Kernel::CreateEvent(RESETTYPE_ONESHOT, "SRV:Event"); + Kernel::SetEventLocked(g_event_handle, false); + + cmd_buff[1] = 0; // No error + cmd_buff[3] = g_event_handle; } void GetServiceHandle(Service::Interface* self) { |