sig_wait(): Don't call proc_shecule() with interrupts disabled
[bertos.git] / app / demo / demo.c
index bec5f9775a7df6b0caf396ee103d61896ffbbe7d..ed64a12d404f78ac6ef3e2703955d8da9c5e18fc 100644 (file)
@@ -32,7 +32,7 @@
  *
  * \version $Id: demo.c 18242 2007-10-08 17:35:23Z marco $
  *
- * \author Bernardo Innocenti <bernie@develer.com>
+ * \author Bernie Innocenti <bernie@codewiz.org>
  *
  * \brief Windowing system test.
  */
@@ -223,9 +223,13 @@ void win_demo(Bitmap *bm)
 
 void proc_demo(void)
 {
-       extern void proc_test(void);
-// FIXME: proc_test() cause segmentation fault. 
-       proc_test();
+       proc_testRun();
+}
+
+void timer_demo(void)
+{
+       timer_testRun();
+       timer_testTearDown();
 }
 
 
@@ -278,6 +282,7 @@ static struct MenuItem main_items[] =
        { (const_iptr_t)"Bounce!",     0, (MenuHook)bouncing_logo,(iptr_t)&lcd_bitmap    },
        { (const_iptr_t)"Hello World", 0, (MenuHook)hello_world,  (iptr_t)&lcd_bitmap    },
        { (const_iptr_t)"Scheduling",  0, (MenuHook)proc_demo,    (iptr_t)&lcd_bitmap    },
+       { (const_iptr_t)"Timer Test",  0, (MenuHook)timer_demo,   (iptr_t)&lcd_bitmap    },
        { (const_iptr_t)"Menu MX",     0, (MenuHook)menu_handle,  (iptr_t)&mx_menu       },
        { (const_iptr_t)"Display",     0, (MenuHook)menu_handle,  (iptr_t)&display_menu  },
        { (const_iptr_t)"Settings",    0, (MenuHook)menu_handle,  (iptr_t)&settings_menu },
@@ -297,6 +302,7 @@ int main(int argc, char *argv[])
 
        menu_handle(&main_menu);
 
+       timer_cleanup();
        emul_cleanup();
        return 0;
 }