X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=app%2Fdemo%2Fdemo.c;h=ed64a12d404f78ac6ef3e2703955d8da9c5e18fc;hb=03eac0b24146fe73d585c998eca4c1c2873f1acb;hp=35ece014397c938f45e337e60d4dadb84b82a80d;hpb=460402019f6f63ae31bcc19911bb93f58fbc4051;p=bertos.git diff --git a/app/demo/demo.c b/app/demo/demo.c old mode 100755 new mode 100644 index 35ece014..ed64a12d --- a/app/demo/demo.c +++ b/app/demo/demo.c @@ -1,64 +1,61 @@ /** * \file * * - * \version $Id$ + * \version $Id: demo.c 18242 2007-10-08 17:35:23Z marco $ * - * \author Bernardo Innocenti + * \author Bernie Innocenti * * \brief Windowing system test. */ -/*#* - *#* $Log$ - *#* Revision 1.9 2006/09/20 14:29:34 marco - *#* Add proc demo (not yet working). - *#* - *#* Revision 1.8 2006/06/02 12:27:36 bernie - *#* Tweak apparence; enable assertions. - *#* - *#* Revision 1.7 2006/05/27 22:31:18 bernie - *#* Clean it up a bit more. - *#* - *#* Revision 1.6 2006/05/27 17:16:38 bernie - *#* Make demos a bit more interesting. - *#* - *#* Revision 1.5 2006/05/15 07:25:29 bernie - *#* Move menu to gui/. - *#* - *#* Revision 1.4 2006/04/27 05:43:07 bernie - *#* Fix naming conventions. - *#* - *#* Revision 1.3 2006/04/11 00:07:32 bernie - *#* Implemenent MF_SAVESEL flag. - *#* - *#* Revision 1.2 2006/03/27 04:49:50 bernie - *#* Add bouncing logo demo. - *#* - *#* Revision 1.1 2006/03/22 09:52:13 bernie - *#* Add demo application. - *#* - *#* Revision 1.1 2006/01/23 23:14:29 bernie - *#* Implement simple, but impressive windowing system. - *#* - *#*/ +#include #include + #include +#include + #include #include #include #include + #include #include #include #include + #include #include -#include /** * Draw a pentacle in the provided bitmap. @@ -82,14 +79,14 @@ static void magic(struct Bitmap *bitmap, coord_t x, coord_t y) gfx_lineTo(bitmap, coords[i]/2 + x, coords[i+1]/3 + y); } -void hello_world(Bitmap *bm) +static void hello_world(Bitmap *bm) { + extern const Font font_ncenB18; const Font *old_font = bm->font; gfx_bitmapClear(bm); /* Set big font */ - extern const Font font_ncenB18; gfx_setFont(bm, &font_ncenB18); text_xprintf(bm, 1, 0, STYLEF_BOLD | TEXT_FILL | TEXT_CENTER, @@ -105,12 +102,12 @@ void hello_world(Bitmap *bm) /** * Show the splash screen */ -void bouncing_logo(Bitmap *bm) +static void bouncing_logo(Bitmap *bm) { const long SPEED_SCALE = 1000; const long GRAVITY_ACCEL = 10; const long BOUNCE_ELASTICITY = 2; - long h = (long)(-project_grl_logo.height) * SPEED_SCALE; + long h = (long)(-bertos_logo.height) * SPEED_SCALE; long speed = 1000; /* Repeat until logo stands still on the bottom edge */ @@ -132,9 +129,9 @@ void bouncing_logo(Bitmap *bm) /* Update graphics */ gfx_bitmapClear(bm); gfx_blitImage(bm, - (bm->width - project_grl_logo.width) / 2, + (bm->width - bertos_logo.width) / 2, h / SPEED_SCALE, - &project_grl_logo); + &bertos_logo); lcd_blitBitmap(bm); timer_delay(10); @@ -148,8 +145,8 @@ void win_demo(Bitmap *bm) Window root_win, small_win, large_win; Bitmap small_bm, large_bm; - uint8_t small_raster[RASTER_SIZE(small_width, small_height)]; - uint8_t large_raster[RASTER_SIZE(large_width, large_height)]; + uint8_t small_raster[RAST_SIZE(small_width, small_height)]; + uint8_t large_raster[RAST_SIZE(large_width, large_height)]; win_create(&root_win, bm); @@ -226,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(); } @@ -281,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 }, @@ -300,6 +302,7 @@ int main(int argc, char *argv[]) menu_handle(&main_menu); + timer_cleanup(); emul_cleanup(); return 0; }