diff --git a/apps/gui/list.c b/apps/gui/list.c
index bd63021..e3b0d6a 100644
--- a/apps/gui/list.c
+++ b/apps/gui/list.c
@@ -943,9 +943,7 @@
         case ACTION_STD_PREV:
         case ACTION_STD_PREVREPEAT:
             gui_synclist_select_previous(lists);
-#ifndef SIMULATOR
             if (queue_count(&button_queue) < FRAMEDROP_TRIGGER)
-#endif
                 gui_synclist_draw(lists);
             yield();
             return ACTION_STD_PREV;
@@ -953,9 +951,7 @@
         case ACTION_STD_NEXT:
         case ACTION_STD_NEXTREPEAT:
             gui_synclist_select_next(lists);
-#ifndef SIMULATOR
             if (queue_count(&button_queue) < FRAMEDROP_TRIGGER)
-#endif
                 gui_synclist_draw(lists);
             yield();
             return ACTION_STD_NEXT;
diff --git a/firmware/kernel.c b/firmware/kernel.c
index 310832c..b073915 100644
--- a/firmware/kernel.c
+++ b/firmware/kernel.c
@@ -345,7 +345,7 @@
 {
     int oldlevel = set_irq_level(HIGHEST_IRQ_LEVEL);
     unsigned int wr;
-    
+
     lock_cores();
     
     wr = q->write++ & QUEUE_LENGTH_MASK;
@@ -495,23 +495,20 @@
 int queue_count(const struct event_queue *q)
 {
     int oldlevel = set_irq_level(HIGHEST_IRQ_LEVEL);
-    int result = 0;
+    int result;
     
 #if NUM_CORES > 1
     if (!q->irq_safe)
         lock_cores();
 #endif
     
-    if (q->read <= q->write)
-        result = q->write - q->read;
-    else
-        result = QUEUE_LENGTH - (q->read - q->write);
-    
+    result = q->write - q->read;
+
 #if NUM_CORES > 1
     if (!q->irq_safe)
         unlock_cores();
 #endif
-    
+
     set_irq_level(oldlevel);
     
     return result;
diff --git a/uisimulator/sdl/kernel.c b/uisimulator/sdl/kernel.c
index 8918ff7..98d509f 100644
--- a/uisimulator/sdl/kernel.c
+++ b/uisimulator/sdl/kernel.c
@@ -281,6 +281,11 @@
     set_irq_level(oldlevel);
 }
 
+int queue_count(const struct event_queue *q)
+{
+    return q->write - q->read;
+}
+
 void switch_thread(bool save_context, struct thread_entry **blocked_list)
 {
     (void)save_context;
