Index: rockbox_svn/firmware/export/scroll_engine.h =================================================================== --- rockbox_svn.orig/firmware/export/scroll_engine.h +++ rockbox_svn/firmware/export/scroll_engine.h @@ -53,6 +53,7 @@ struct scrollinfo { #ifdef HAVE_LCD_COLOR int line_colour; #endif + int y_margin; }; #endif /* __LCD_H__ */ Index: rockbox_svn/firmware/drivers/lcd-1bit-vert.c =================================================================== --- rockbox_svn.orig/firmware/drivers/lcd-1bit-vert.c +++ rockbox_svn/firmware/drivers/lcd-1bit-vert.c @@ -792,6 +792,7 @@ void lcd_puts_scroll_style_offset(int x, s->startx = xmargin + x * s->width / s->len;; s->backward = false; lcd_scroll_info.lines |= (1<y_margin=ymargin; } else /* force a bit switch-off since it doesn't scroll */ @@ -828,6 +829,6 @@ static void scroll_thread(void) pf = font_get(curfont); xpos = s->startx; - ypos = ymargin + index * pf->height; + ypos = s->y_margin + index * pf->height; if (s->bidir) { /* scroll bidirectional */ Index: rockbox_svn/firmware/drivers/lcd-2bit-horz.c =================================================================== --- rockbox_svn.orig/firmware/drivers/lcd-2bit-horz.c +++ rockbox_svn/firmware/drivers/lcd-2bit-horz.c @@ -989,6 +989,7 @@ void lcd_puts_scroll_style_offset(int x, s->startx = xmargin + x * s->width / s->len;; s->backward = false; lcd_scroll_info.lines |= (1<y_margin=ymargin; } else /* force a bit switch-off since it doesn't scroll */ @@ -1025,6 +1026,6 @@ static void scroll_thread(void) pf = font_get(curfont); xpos = s->startx; - ypos = ymargin + index * pf->height; + ypos = s->y_margin + index * pf->height; if (s->bidir) { /* scroll bidirectional */ Index: rockbox_svn/firmware/drivers/lcd-2bit-vert.c =================================================================== --- rockbox_svn.orig/firmware/drivers/lcd-2bit-vert.c +++ rockbox_svn/firmware/drivers/lcd-2bit-vert.c @@ -1125,6 +1125,7 @@ void lcd_puts_scroll_style_offset(int x, s->startx = xmargin + x * s->width / s->len; s->backward = false; lcd_scroll_info.lines |= (1<y_margin=ymargin; } else /* force a bit switch-off since it doesn't scroll */ @@ -1161,6 +1162,6 @@ static void scroll_thread(void) pf = font_get(curfont); xpos = s->startx; - ypos = ymargin + index * pf->height; + ypos = s->y_margin + index * pf->height; if (s->bidir) { /* scroll bidirectional */ Index: rockbox_svn/firmware/drivers/lcd-remote-1bit-v.c =================================================================== --- rockbox_svn.orig/firmware/drivers/lcd-remote-1bit-v.c +++ rockbox_svn/firmware/drivers/lcd-remote-1bit-v.c @@ -791,6 +791,7 @@ void lcd_remote_puts_scroll_style_offset s->startx = xmargin + x * s->width / s->len;; s->backward = false; lcd_remote_scroll_info.lines |= (1<y_margin=ymargin; } else /* force a bit switch-off since it doesn't scroll */ @@ -857,6 +858,6 @@ static void scroll_thread(void) pf = font_get(curfont); xpos = s->startx; - ypos = ymargin + index * pf->height; + ypos = s->y_margin + index * pf->height; if (s->bidir) { /* scroll bidirectional */ Index: rockbox_svn/firmware/drivers/lcd-remote-2bit-vi.c =================================================================== --- rockbox_svn.orig/firmware/drivers/lcd-remote-2bit-vi.c +++ rockbox_svn/firmware/drivers/lcd-remote-2bit-vi.c @@ -1127,6 +1127,7 @@ void lcd_remote_puts_scroll_style_offset s->startx = xmargin + x * s->width / s->len;; s->backward = false; lcd_remote_scroll_info.lines |= (1<y_margin=ymargin; } else /* force a bit switch-off since it doesn't scroll */ @@ -1194,6 +1195,6 @@ static void scroll_thread(void) pf = font_get(curfont); xpos = s->startx; - ypos = ymargin + index * pf->height; + ypos = s->y_margin + index * pf->height; if (s->bidir) { /* scroll bidirectional */ Index: rockbox_svn/firmware/drivers/lcd-16bit.c =================================================================== --- rockbox_svn.orig/firmware/drivers/lcd-16bit.c +++ rockbox_svn/firmware/drivers/lcd-16bit.c @@ -946,6 +946,7 @@ void lcd_puts_scroll_style_offset(int x, s->line_colour = (style&STYLE_COLORED)? (style&STYLE_COLOR_MASK): -1; lcd_scroll_info.lines |= (1<y_margin=ymargin; } else /* force a bit switch-off since it doesn't scroll */ @@ -1001,6 +1002,6 @@ static void scroll_thread(void) pf = font_get(curfont); xpos = s->startx; - ypos = ymargin + index * pf->height; + ypos = s->y_margin + index * pf->height; if (s->bidir) { /* scroll bidirectional */