summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinus Nielsen Feltzing <linus@haxx.se>2002-07-30 09:00:11 +0000
committerLinus Nielsen Feltzing <linus@haxx.se>2002-07-30 09:00:11 +0000
commit217023ff67281a0315c2582e4a83a4460f55b8b5 (patch)
tree96c55b664a213331f660b52c8bf8ca7e018e14fd
parent17cf49a8c45f10ea22ee6c8fc187a7851aef10a9 (diff)
downloadrockbox-217023ff67281a0315c2582e4a83a4460f55b8b5.zip
rockbox-217023ff67281a0315c2582e4a83a4460f55b8b5.tar.gz
rockbox-217023ff67281a0315c2582e4a83a4460f55b8b5.tar.bz2
rockbox-217023ff67281a0315c2582e4a83a4460f55b8b5.tar.xz
show_info() now updates the display continuously
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1494 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/main_menu.c44
1 files changed, 25 insertions, 19 deletions
diff --git a/apps/main_menu.c b/apps/main_menu.c
index dfe5b46..556c414 100644
--- a/apps/main_menu.c
+++ b/apps/main_menu.c
@@ -137,33 +137,39 @@ void show_info(void)
char s[32];
int buflen = ((mp3end - mp3buf) * 100) / 0x100000;
int integer, decimal;
-
- lcd_clear_display();
- lcd_puts(0, 0, "Rockbox info:");
- /* TODO: add disk size/usage info, battery charge etc here? */
-
- integer = buflen / 100;
- decimal = buflen % 100;
+ bool done = false;
+
+ while(!done)
+ {
+ lcd_clear_display();
+ lcd_puts(0, 0, "Rockbox info:");
+
+ integer = buflen / 100;
+ decimal = buflen % 100;
#ifdef HAVE_LCD_CHARCELLS
- snprintf(s, sizeof(s), "Buf: %d.%02dMb", integer, decimal);
- lcd_puts(0, 0, s);
+ snprintf(s, sizeof(s), "Buf: %d.%02dMb", integer, decimal);
+ lcd_puts(0, 0, s);
#else
- snprintf(s, sizeof(s), "Buffer: %d.%02d Mb", integer, decimal);
- lcd_puts(0, 2, s);
+ snprintf(s, sizeof(s), "Buffer: %d.%02d Mb", integer, decimal);
+ lcd_puts(0, 2, s);
#endif
-
+
#ifdef HAVE_LCD_CHARCELLS
- snprintf(s, sizeof(s), "Batt: %d%%", battery_level());
- lcd_puts(0, 1, s);
+ snprintf(s, sizeof(s), "Batt: %d%%", battery_level());
+ lcd_puts(0, 1, s);
#else
- snprintf(s, sizeof(s), "Battery: %d%%", battery_level());
- lcd_puts(0, 3, s);
+ snprintf(s, sizeof(s), "Battery: %d%%", battery_level());
+ lcd_puts(0, 3, s);
#endif
- lcd_update();
+ lcd_update();
- /* Wait for a key to be pushed */
- while(button_get(true) & BUTTON_REL);
+ sleep(HZ/2);
+
+ /* Wait for a key to be pushed */
+ if(button_get(false) & ~BUTTON_REL)
+ done = true;
+ }
}
void main_menu(void)