From f0009d8e61f463bfc6f22b17d2ace7b25e4d7dfb Mon Sep 17 00:00:00 2001 From: Exzap <13877693+Exzap@users.noreply.github.com> Date: Wed, 2 Sep 2026 06:11:06 +0200 Subject: [PATCH] TCL: Yield thread when waiting for ringbuffer space --- src/Cafe/OS/libs/TCL/TCL.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Cafe/OS/libs/TCL/TCL.cpp b/src/Cafe/OS/libs/TCL/TCL.cpp index b07606b5..b697ceca 100644 --- a/src/Cafe/OS/libs/TCL/TCL.cpp +++ b/src/Cafe/OS/libs/TCL/TCL.cpp @@ -2,6 +2,7 @@ #include "Cafe/OS/libs/TCL/TCL.h" #include "HW/Latte/Core/LattePM4.h" +#include "OS/libs/coreinit/coreinit_Time.h" namespace TCL { @@ -91,7 +92,7 @@ namespace TCL distance = TCL_RING_BUFFER_SIZE; if (distance >= numU32s + 1) // assume distance minus one, because we are never allowed to completely wrap around break; - _mm_pause(); + coreinit::OSSleepTicks(coreinit::EspressoTime::ConvertNsToTimerTicks(500000)); // sleep 0.5ms } }