summaryrefslogtreecommitdiff
path: root/firmware/target/arm/ipod
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/target/arm/ipod')
-rw-r--r--firmware/target/arm/ipod/lcd-gray.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/firmware/target/arm/ipod/lcd-gray.c b/firmware/target/arm/ipod/lcd-gray.c
index d8695cdb10..883897b997 100644
--- a/firmware/target/arm/ipod/lcd-gray.c
+++ b/firmware/target/arm/ipod/lcd-gray.c
@@ -333,17 +333,18 @@ void lcd_update_rect(int x, int y, int width, int height)
333 x >>= 3; 333 x >>= 3;
334 width = xmax - x + 1; 334 width = xmax - x + 1;
335 335
336 for (; y <= ymax; y++) 336 void* (*fbaddr)(int x, int y) = FB_CURRENTVP_BUFFER->get_address_fn;
337 for (; y <= ymax; y++)
337 { 338 {
338 lcd_cmd_and_data(R_RAM_ADDR_SET, (y << 5) + addr_offset - x); 339 lcd_cmd_and_data(R_RAM_ADDR_SET, (y << 5) + addr_offset - x);
339 lcd_prepare_cmd(R_RAM_DATA); 340 lcd_prepare_cmd(R_RAM_DATA);
340 341 fb_data *data = fbaddr(2*x,y);
341#if defined(IPOD_MINI) || defined(IPOD_MINI2G) 342#if defined(IPOD_MINI) || defined(IPOD_MINI2G)
342 if (pix_offset == -2) 343 if (pix_offset == -2)
343 lcd_write_data_shifted(FBADDR(2*x, y), width); 344 lcd_write_data_shifted(data, width);
344 else 345 else
345#endif 346#endif
346 lcd_write_data(FBADDR(2*x, y), width); 347 lcd_write_data(data, width);
347 } 348 }
348} 349}
349 350