summaryrefslogtreecommitdiffstats
path: root/bootloader
diff options
context:
space:
mode:
authorMaurus Cuelenaere <mcuelenaere@gmail.com>2009-09-01 07:57:56 +0000
committerMaurus Cuelenaere <mcuelenaere@gmail.com>2009-09-01 07:57:56 +0000
commitbfd42d6b5903ce1c5080281aeddaa95e70285800 (patch)
treea0ab0dfc0a56c61f1554ffc4492c4b5c3945a0b8 /bootloader
parenteb369bf50f5a0adf061455b27ad5a023e6b4106b (diff)
downloadrockbox-bfd42d6b5903ce1c5080281aeddaa95e70285800.tar.gz
rockbox-bfd42d6b5903ce1c5080281aeddaa95e70285800.tar.bz2
rockbox-bfd42d6b5903ce1c5080281aeddaa95e70285800.zip
Onda VX747/VX777 bootloader: power off after holding the poweroff button for 2 seconds (BUTTON_REPEAT doesn't seem to work in bootloader)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22589 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'bootloader')
-rw-r--r--bootloader/ondavx747.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/bootloader/ondavx747.c b/bootloader/ondavx747.c
index 0cae73c174..20f47d5224 100644
--- a/bootloader/ondavx747.c
+++ b/bootloader/ondavx747.c
@@ -188,7 +188,7 @@ static void reset_configuration(void)
static int boot_menu(void)
{
const char* strings[] = {"Boot Rockbox", "Boot OF", "USB mode", "Reset Rockbox configuration"};
- int button, touch;
+ int button, touch, poweroff_repeat = 0;
unsigned int i;
verbose = true;
@@ -206,7 +206,7 @@ redraw:
while(1)
{
button = button_get_w_tmo(HZ/4);
- if(button & (BUTTON_TOUCHSCREEN|BUTTON_REPEAT))
+ if(button & BUTTON_TOUCHSCREEN)
{
touch = button_get_data();
unsigned int x = touch & 0xFFFF, y = touch >> 16;
@@ -242,8 +242,13 @@ redraw:
if(found != -1)
goto redraw;
}
- else if(button & (BUTTON_POWER|BUTTON_REPEAT))
- power_off();
+ else if(button & BUTTON_POWER)
+ {
+ if(poweroff_repeat++ > 8)
+ power_off();
+ }
+ else
+ poweroff_repeat = 0;
}
}