diff options
Diffstat (limited to 'firmware/drivers/lcd-recorder.c')
-rw-r--r-- | firmware/drivers/lcd-recorder.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/firmware/drivers/lcd-recorder.c b/firmware/drivers/lcd-recorder.c index 65866ec83f..bec441c689 100644 --- a/firmware/drivers/lcd-recorder.c +++ b/firmware/drivers/lcd-recorder.c | |||
@@ -293,7 +293,7 @@ void lcd_update(void) | |||
293 | for (y = 0; y < LCD_HEIGHT/8; y++) | 293 | for (y = 0; y < LCD_HEIGHT/8; y++) |
294 | { | 294 | { |
295 | lcd_write_command (LCD_CNTL_PAGE | (y & 0xf)); | 295 | lcd_write_command (LCD_CNTL_PAGE | (y & 0xf)); |
296 | lcd_write_command (LCD_CNTL_HIGHCOL | ((xoffset>>4) & 0xf)); | 296 | lcd_write_command (LCD_CNTL_HIGHCOL | ((xoffset >> 4) & 0xf)); |
297 | lcd_write_command (LCD_CNTL_LOWCOL | (xoffset & 0xf)); | 297 | lcd_write_command (LCD_CNTL_LOWCOL | (xoffset & 0xf)); |
298 | 298 | ||
299 | lcd_write_data (lcd_framebuffer[y], LCD_WIDTH); | 299 | lcd_write_data (lcd_framebuffer[y], LCD_WIDTH); |
@@ -316,15 +316,13 @@ void lcd_update_rect(int x, int y, int width, int height) | |||
316 | return; /* nothing left to do, 0 is harmful to lcd_write_data() */ | 316 | return; /* nothing left to do, 0 is harmful to lcd_write_data() */ |
317 | if(ymax >= LCD_HEIGHT/8) | 317 | if(ymax >= LCD_HEIGHT/8) |
318 | ymax = LCD_HEIGHT/8-1; | 318 | ymax = LCD_HEIGHT/8-1; |
319 | |||
320 | x += xoffset; | ||
321 | 319 | ||
322 | /* Copy specified rectange bitmap to hardware */ | 320 | /* Copy specified rectange bitmap to hardware */ |
323 | for (; y <= ymax; y++) | 321 | for (; y <= ymax; y++) |
324 | { | 322 | { |
325 | lcd_write_command (LCD_CNTL_PAGE | (y & 0xf)); | 323 | lcd_write_command (LCD_CNTL_PAGE | (y & 0xf)); |
326 | lcd_write_command (LCD_CNTL_HIGHCOL | ((x >> 4) & 0xf)); | 324 | lcd_write_command (LCD_CNTL_HIGHCOL | (((x+xoffset) >> 4) & 0xf)); |
327 | lcd_write_command (LCD_CNTL_LOWCOL | (x & 0xf)); | 325 | lcd_write_command (LCD_CNTL_LOWCOL | ((x+xoffset) & 0xf)); |
328 | 326 | ||
329 | lcd_write_data (&lcd_framebuffer[y][x], width); | 327 | lcd_write_data (&lcd_framebuffer[y][x], width); |
330 | } | 328 | } |