summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--firmware/drivers/lcd-ipodvideo.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/firmware/drivers/lcd-ipodvideo.c b/firmware/drivers/lcd-ipodvideo.c
index 62d097ea72..066616959e 100644
--- a/firmware/drivers/lcd-ipodvideo.c
+++ b/firmware/drivers/lcd-ipodvideo.c
@@ -181,18 +181,18 @@ void lcd_update_rect(int x, int y, int width, int height)
181 while ((inw(0x30030000) & 0x2) == 0); 181 while ((inw(0x30030000) & 0x2) == 0);
182 182
183 { 183 {
184 int r;
185 int line_size = (LCD_WIDTH - width);
186 unsigned short *src = (unsigned short*)&lcd_framebuffer[y][x]; 184 unsigned short *src = (unsigned short*)&lcd_framebuffer[y][x];
187 for (r = 0; r < height; r++) { 185 unsigned short *end = &src[LCD_WIDTH * height];
186 int line_rem = (LCD_WIDTH - width);
187 while (src < end) {
188 /* for each column */ 188 /* for each column */
189 unsigned short *end = src + width; 189 unsigned short *end_line = src + width;
190 while (src < end) { 190 while (src < end_line) {
191 /* write out two pixels */ 191 /* write out two pixels */
192 outw(*(src++), 0x30000000); 192 outw(*(src++), 0x30000000);
193 outw(*(src++), 0x30000000); 193 outw(*(src++), 0x30000000);
194 } 194 }
195 src += line_size; 195 src += line_rem;
196 } 196 }
197 } 197 }
198 198