From d69c4995f67aef16ea5cc1ae881cbdfc38977e03 Mon Sep 17 00:00:00 2001 From: Jörg Hohensohn Date: Sat, 23 Oct 2004 16:28:06 +0000 Subject: the flash plugins are now checking the battery level first git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5332 a1c6a512-1295-4272-9138-f99709370657 --- apps/plugins/firmware_flash.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'apps/plugins/firmware_flash.c') diff --git a/apps/plugins/firmware_flash.c b/apps/plugins/firmware_flash.c index 880b030748..972d998ca8 100644 --- a/apps/plugins/firmware_flash.c +++ b/apps/plugins/firmware_flash.c @@ -637,8 +637,6 @@ void DoUserDialog(char* filename) tCheckROM result; bool is_romless; - rb->lcd_setfont(FONT_SYSFIXED); - /* this can only work if Rockbox runs in DRAM, not flash ROM */ if ((UINT8*)rb >= FB && (UINT8*)rb < FB + 4096*1024) /* 4 MB max */ { /* we're running from flash */ @@ -653,6 +651,13 @@ void DoUserDialog(char* filename) return; /* exit */ } + /* refuse to work if the power may fail meanwhile */ + if (!rb->battery_level_safe()) + { + rb->splash(HZ*3, true, "Battery too low!"); + return; /* exit */ + } + /* check boot ROM */ result = CheckBootROM(); if (result == eUnknown) @@ -682,6 +687,8 @@ void DoUserDialog(char* filename) return; /* exit */ } + rb->lcd_setfont(FONT_SYSFIXED); + rc = GetFlashInfo(&FlashInfo); ShowFlashInfo(&FlashInfo); if (FlashInfo.size == 0) /* no valid chip */ @@ -881,6 +888,13 @@ void DoUserDialog(char* filename) return; /* exit */ } + /* refuse to work if the power may fail meanwhile */ + if (!rb->battery_level_safe()) + { + rb->splash(HZ*3, true, "Batt. too low!"); + return; /* exit */ + } + /* check boot ROM */ result = CheckBootROM(); if (result == eUnknown) -- cgit v1.2.3