summaryrefslogtreecommitdiff
path: root/firmware/kernel.c
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/kernel.c')
-rw-r--r--firmware/kernel.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/firmware/kernel.c b/firmware/kernel.c
index f86a188..4ccf2bb 100644
--- a/firmware/kernel.c
+++ b/firmware/kernel.c
@@ -435,6 +435,11 @@ void sleep(int ticks)
unsigned stop = USEC_TIMER + ticks * (1000000/HZ);
while (TIME_BEFORE(USEC_TIMER, stop))
switch_thread();
+#elif defined(CREATIVE_ZVM) && defined(BOOTLOADER)
+ // hacky..
+ long sleep_ticks = current_tick + ticks + 1;
+ while (sleep_ticks > current_tick)
+ switch_thread();
#else
disable_irq();
sleep_thread(ticks);