Package: pal Version: 0.4.3-5 Severity: wishlist Tags: patch Hi Carsten,
right now, pal wakes up every 0.1s when started with -m. This is bad for my battery. Attached is a patch to only wake up every 25.5s. Please note that keypresses still are going to be reported back to pal at once by ncurses, the only drawback I'm aware of is that interrupt handling can be delayed as pal records them but can only do its actions after the ncurses-timeout of 25.5s happened, for example after an SIGWINCH (window-resize). thanks, youam
diff -u pal-0.4.3/debian/changelog pal-0.4.3/debian/changelog --- pal-0.4.3/debian/changelog +++ pal-0.4.3/debian/changelog @@ -1,3 +1,9 @@ +pal (0.4.3-3.1) unstable; urgency=low + + * make pal wake up less often in manage mode + + -- Uli Martens <u...@youam.net> Thu, 26 Feb 2009 05:21:12 +0100 + pal (0.4.3-3) unstable; urgency=low * Recode austria.pal from ISO-8859 to UTF-8. (Closes: #499389) diff -u pal-0.4.3/debian/patches/series pal-0.4.3/debian/patches/series --- pal-0.4.3/debian/patches/series +++ pal-0.4.3/debian/patches/series @@ -3,0 +4 @@ +52_debian_make_pal_manage_wake_up_less_often.patch only in patch2: unchanged: --- pal-0.4.3.orig/debian/patches/52_debian_make_pal_manage_wake_up_less_often.patch +++ pal-0.4.3/debian/patches/52_debian_make_pal_manage_wake_up_less_often.patch @@ -0,0 +1,16 @@ +pal (0.4.3-3) * pal -m used to wake up every tenth of a second. ncurses + enforces a maximum sleep time of 25.5 seconds, which is still + a lot better when you're running on battery + +--- pal-0.4.3.orig/src/manage.c ++++ pal-0.4.3/src/manage.c +@@ -413,7 +413,8 @@ + keypad(stdscr, TRUE); /* enable keyboard mapping */ + (void) nonl(); /* tell curses not to do NL->CR/NL on output */ + (void) cbreak(); /* take input chars one at a time, no wait for \n */ +- (void) halfdelay(1); /* always return from getch() within a tenth of a second */ ++ (void) halfdelay(255); /* try not to wake up. ncurses still forces a wakeup ++ every 25.5 seconds when in non-linebuffered-mode */ + (void) noecho(); /* echo input - in color */ + + signal(SIGINT, pal_manage_finish); /* setup function to call on Ctrl+C */