Index: rockbox_svn/firmware/export/lcd.h =================================================================== --- rockbox_svn.orig/firmware/export/lcd.h +++ rockbox_svn/firmware/export/lcd.h @@ -395,6 +395,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; scrolling_lines |= (1<y_margin=ymargin; } else /* force a bit switch-off since it doesn't scroll */ @@ -828,7 +829,7 @@ 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 */ if (s->offset <= 0) { 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; scrolling_lines |= (1<y_margin=ymargin; } else /* force a bit switch-off since it doesn't scroll */ @@ -1025,7 +1026,7 @@ 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 */ if (s->offset <= 0) { 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; scrolling_lines |= (1<y_margin=ymargin; } else /* force a bit switch-off since it doesn't scroll */ @@ -1161,7 +1162,7 @@ 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 */ if (s->offset <= 0) { 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; scrolling_lines |= (1<y_margin=ymargin; } else /* force a bit switch-off since it doesn't scroll */ @@ -857,7 +858,7 @@ 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 */ if (s->offset <= 0) { 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; scrolling_lines |= (1<y_margin=ymargin; } else /* force a bit switch-off since it doesn't scroll */ @@ -1194,7 +1195,7 @@ 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 */ if (s->offset <= 0) { 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; scrolling_lines |= (1<y_margin=ymargin; } else /* force a bit switch-off since it doesn't scroll */ @@ -1001,7 +1002,7 @@ 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 */ if (s->offset <= 0) {