summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorRobert Hak <adiamas@rockbox.org>2002-05-31 07:04:13 +0000
committerRobert Hak <adiamas@rockbox.org>2002-05-31 07:04:13 +0000
commit6ae63b78e29610bd5e80bde8317e33e81e48a977 (patch)
tree1da083005670cee9ebf29c8163e60e423bd38cf1 /apps
parentb66890fc52e0d944d8f3b99e9f5618a4c10bad90 (diff)
merged the splash screen and version info
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@838 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r--apps/main_menu.c35
1 files changed, 20 insertions, 15 deletions
diff --git a/apps/main_menu.c b/apps/main_menu.c
index e98aa89233..961cd0be4f 100644
--- a/apps/main_menu.c
+++ b/apps/main_menu.c
@@ -34,14 +34,14 @@
extern void tetris(void);
#endif
-int show_logo(void)
+int show_logo( void )
{
#ifdef HAVE_LCD_BITMAP
unsigned char buffer[112 * 8];
+ char version[32];
int failure;
- int width=0;
- int height=0;
+ int height, width, font_h, font_w;
failure = read_bmp_file("/rockbox112.bmp", &width, &height, buffer);
@@ -58,20 +58,31 @@ int show_logo(void)
lcd_clear_display();
- for(i=0, eline=0; i< height; i+=8, eline++) {
+ for(i=0, eline=0; i < height; i+=8, eline++) {
/* the bitmap function doesn't work with full-height bitmaps
so we "stripe" the logo output */
lcd_bitmap(&buffer[eline*width], 0, 10+i, width,
(height-i)>8?8:height-i, false);
}
}
- lcd_update();
+ snprintf(version, sizeof(version), "Ver. %s", appsversion);
+ lcd_getfontsize(0, &font_w, &font_h);
+
+ /* lcd_puts needs line height in Chars on screen not pixels */
+ width = ((LCD_WIDTH/font_w) - strlen(version)) / 2;
+ height = ((height+10)/font_h)+1;
+
+ lcd_puts(width, height, version);
#else
char *rockbox = "ROCKbox!";
lcd_puts(0, 0, rockbox);
+ lcd_puts(0, 1, appsversion);
#endif
+ lcd_update();
+
+
return 0;
}
@@ -80,14 +91,6 @@ void show_splash(void)
if (show_logo() != 0)
return;
- sleep(HZ*2);
-}
-
-void version(void)
-{
- lcd_clear_display();
- lcd_puts(0,0,appsversion);
- lcd_update();
button_get(true);
}
@@ -95,7 +98,7 @@ void main_menu(void)
{
int m;
enum {
- Tetris, Screen_Saver, Splash, Credits, Sound, Version
+ Tetris, Screen_Saver, Splash, Credits, Sound
};
/* main menu */
@@ -107,10 +110,12 @@ void main_menu(void)
#endif
{ Splash, "Splash", show_splash },
{ Credits, "Credits", show_credits },
- { Version, "Version", version }
};
m=menu_init( items, sizeof items / sizeof(struct menu_items) );
menu_run(m);
menu_exit(m);
}
+
+
+