From 52c678945063436da28a9801ce4a739ad0473579 Mon Sep 17 00:00:00 2001 From: Alexander Levin Date: Fri, 21 Jan 2011 17:16:45 +0000 Subject: Add a delay between text scroll rounds when scrolling forward similarly to how it's done when scrolling bidirectionally (FS#11892) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29104 a1c6a512-1295-4272-9138-f99709370657 --- firmware/drivers/lcd-bitmap-common.c | 6 ++++-- firmware/drivers/lcd-charcell.c | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/firmware/drivers/lcd-bitmap-common.c b/firmware/drivers/lcd-bitmap-common.c index 8e3b52c246..fa18f9fa1f 100644 --- a/firmware/drivers/lcd-bitmap-common.c +++ b/firmware/drivers/lcd-bitmap-common.c @@ -470,8 +470,10 @@ void LCDFN(scroll_fn)(void) } else { /* scroll forward the whole time */ - if (s->offset >= s->width) - s->offset %= s->width; + if (s->offset >= s->width) { + s->offset = 0; + s->start_tick = current_tick + LCDFN(scroll_info).delay * 2; + } } LCDFN(putsxyofs_style)(xpos, ypos, s->line, s->style, s->width, pf->height, s->offset); diff --git a/firmware/drivers/lcd-charcell.c b/firmware/drivers/lcd-charcell.c index aa12ef16c0..e5b52d48a9 100644 --- a/firmware/drivers/lcd-charcell.c +++ b/firmware/drivers/lcd-charcell.c @@ -605,8 +605,10 @@ void lcd_scroll_fn(void) } else /* scroll forward the whole time */ { - if (s->offset >= s->len) - s->offset -= s->len; + if (s->offset >= s->len) { + s->offset = 0; + s->start_tick = current_tick + lcd_scroll_info.delay * 2; + } } lcd_putsxyofs(xpos, ypos, s->offset, s->line); -- cgit v1.2.3