From bfd42d6b5903ce1c5080281aeddaa95e70285800 Mon Sep 17 00:00:00 2001 From: Maurus Cuelenaere Date: Tue, 1 Sep 2009 07:57:56 +0000 Subject: [PATCH] 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 --- bootloader/ondavx747.c | 13 +++++++++---- 1 file 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; } }