From ada919fc1122c314b239212a40d15c5ab131becd Mon Sep 17 00:00:00 2001 From: William Wilgus Date: Mon, 26 Oct 2020 14:11:38 -0400 Subject: FIX RED framebuffer viewport rewrite Change-Id: I4cb8f580e15440d06f8d5fabb2fbf5147c67b49c --- firmware/drivers/lcd-bitmap-common.c | 10 +++++----- firmware/target/coldfire/iaudio/x5/lcd-x5.c | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) (limited to 'firmware') diff --git a/firmware/drivers/lcd-bitmap-common.c b/firmware/drivers/lcd-bitmap-common.c index 183ab75820..d195fd8ebe 100644 --- a/firmware/drivers/lcd-bitmap-common.c +++ b/firmware/drivers/lcd-bitmap-common.c @@ -332,8 +332,8 @@ static void LCDFN(putsxyofs)(int x, int y, int ofs, const unsigned char *str) static void LCDFN(putsxyofs)(int x, int y, int ofs, const unsigned char *str) { unsigned short *ucs; - struct font* pf = font_get(LCDFN(current_vp)->font); - int vp_flags = current_vp->flags; + struct font* pf = font_get(LCDFN(current_viewport)->font); + int vp_flags = LCDFN(current_viewport)->flags; const unsigned char *bits; int width; @@ -345,13 +345,13 @@ static void LCDFN(putsxyofs)(int x, int y, int ofs, const unsigned char *str) /* center takes precedence */ if (vp_flags & VP_FLAG_ALIGN_CENTER) { - x = ((current_vp->width - w)/ 2) + x; + x = ((LCDFN(current_viewport)->width - w)/ 2) + x; if (x < 0) x = 0; } else { - x = current_vp->width - w - x; + x = LCDFN(current_viewport)->width - w - x; x += ofs; ofs = 0; } @@ -362,7 +362,7 @@ static void LCDFN(putsxyofs)(int x, int y, int ofs, const unsigned char *str) { const unsigned short next_ch = ucs[1]; - if (x >= current_vp->width) + if (x >= LCDFN(current_viewport)->width) break; /* Get proportional width and glyph bits */ diff --git a/firmware/target/coldfire/iaudio/x5/lcd-x5.c b/firmware/target/coldfire/iaudio/x5/lcd-x5.c index cf6e301c16..266a381c40 100644 --- a/firmware/target/coldfire/iaudio/x5/lcd-x5.c +++ b/firmware/target/coldfire/iaudio/x5/lcd-x5.c @@ -494,7 +494,7 @@ void lcd_update(void) lcd_begin_write_gram(); - lcd_write_data((unsigned short *)lcd_framebuffer, LCD_WIDTH*LCD_HEIGHT); + lcd_write_data((unsigned short *)FBADDR(0,0), LCD_WIDTH*LCD_HEIGHT); } /* lcd_update */ /* Update a fraction of the display. */ -- cgit v1.2.3