From a827ad23ae6d090042b63042a415aef4931b5e66 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Rydg=C3=A5rd?= Date: Mon, 6 Nov 2017 00:27:51 +0100 Subject: [PATCH] Don't use "threadsafe events" for Ge stuff. --- Core/HLE/sceGe.cpp | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/Core/HLE/sceGe.cpp b/Core/HLE/sceGe.cpp index bcc5a467fe1d..fad468bfa8fc 100644 --- a/Core/HLE/sceGe.cpp +++ b/Core/HLE/sceGe.cpp @@ -251,20 +251,18 @@ void __GeDoState(PointerWrap &p) { void __GeShutdown() { } -// Warning: may be called from the GPU thread, if there is a separate one (multithread mode). bool __GeTriggerSync(GPUSyncType type, int id, u64 atTicks) { u64 userdata = (u64)id << 32 | (u64)type; s64 future = atTicks - CoreTiming::GetTicks(); if (type == GPU_SYNC_DRAW) { - s64 left = CoreTiming::UnscheduleThreadsafeEvent(geSyncEvent, userdata); + s64 left = CoreTiming::UnscheduleEvent(geSyncEvent, userdata); if (left > future) future = left; } - CoreTiming::ScheduleEvent_Threadsafe(future, geSyncEvent, userdata); + CoreTiming::ScheduleEvent(future, geSyncEvent, userdata); return true; } -// Warning: may be called from the GPU thread, if there is a separate one (multithread mode). bool __GeTriggerInterrupt(int listid, u32 pc, u64 atTicks) { GeInterruptData intrdata; intrdata.listid = listid; @@ -274,7 +272,7 @@ bool __GeTriggerInterrupt(int listid, u32 pc, u64 atTicks) { ge_pending_cb.push_back(intrdata); u64 userdata = (u64)listid << 32 | (u64) pc; - CoreTiming::ScheduleEvent_Threadsafe(atTicks - CoreTiming::GetTicks(), geInterruptEvent, userdata); + CoreTiming::ScheduleEvent(atTicks - CoreTiming::GetTicks(), geInterruptEvent, userdata); return true; }