mirror of
https://github.com/Rockbox/rockbox.git
synced 2025-11-13 07:02:31 -05:00
Screen buffer transposed, such that bytes in X-direction are consecutive. This enables my turbocharged lcd_write_data() for regular screen updates. Please check the X11 sim, Win32 works.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4177 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
2d720b2a79
commit
5040cc53ec
6 changed files with 40 additions and 37 deletions
|
|
@ -23,7 +23,7 @@
|
|||
#include "lcd.h"
|
||||
#include "lcd-playersim.h"
|
||||
|
||||
unsigned char lcd_framebuffer[LCD_WIDTH][LCD_HEIGHT/8]; /* the display */
|
||||
unsigned char lcd_framebuffer[LCD_HEIGHT/8][LCD_WIDTH]; /* the display */
|
||||
char bitmap[LCD_HEIGHT][LCD_WIDTH]; /* the ui display */
|
||||
|
||||
BITMAPINFO2 bmi =
|
||||
|
|
@ -80,7 +80,7 @@ void lcd_update()
|
|||
|
||||
for (x = 0; x < LCD_WIDTH; x++)
|
||||
for (y = 0; y < LCD_HEIGHT; y++)
|
||||
bitmap[y][x] = ((lcd_framebuffer[x][y/8] >> (y & 7)) & 1);
|
||||
bitmap[y][x] = ((lcd_framebuffer[y/8][x] >> (y & 7)) & 1);
|
||||
|
||||
InvalidateRect (hGUIWnd, NULL, FALSE);
|
||||
|
||||
|
|
@ -107,7 +107,7 @@ void lcd_update_rect(int x_start, int y_start,
|
|||
|
||||
for (x = x_start; x < xmax; x++)
|
||||
for (y = y_start; y < ymax; y++)
|
||||
bitmap[y][x] = ((lcd_framebuffer[x][y/8] >> (y & 7)) & 1);
|
||||
bitmap[y][x] = ((lcd_framebuffer[y/8][x] >> (y & 7)) & 1);
|
||||
|
||||
/* Bagder: If I only knew how, I would make this call only invalidate
|
||||
the actual rectangle we want updated here, this NULL thing here will
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue