summaryrefslogtreecommitdiff
path: root/firmware/export/lcd.h
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2005-07-06 22:58:02 +0000
committerJens Arnold <amiconn@rockbox.org>2005-07-06 22:58:02 +0000
commitf894a4c2691fbde1758a05407cb5eadcaec4a6c8 (patch)
tree46cb7ce63c794020175ab251cf0299663be8bf3c /firmware/export/lcd.h
parent1076eb1d2720b88757616f642be0c39c6a3b76df (diff)
downloadrockbox-f894a4c2691fbde1758a05407cb5eadcaec4a6c8.tar.gz
rockbox-f894a4c2691fbde1758a05407cb5eadcaec4a6c8.zip
4-shades greyscale graphics core for iriver H1x0. 4-grey rockbox logo and light grey background in splash() boxes. Simplified the splash() box creation as the new graphics core does clipping. Adapted screendump feature and added flexible preprocessing to construct the bmp header. Rockboy now uses 4-grey mode as well. 4-grey support for win32 simulator. Fixed win32 player sim to not use double bitmap conversion via a recorder-like framebuffer, and correctly display double-height text. X11 simulator temporarily adapted. The display won't be distorted, but it still shows b&w only.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7046 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/export/lcd.h')
-rw-r--r--firmware/export/lcd.h21
1 files changed, 20 insertions, 1 deletions
diff --git a/firmware/export/lcd.h b/firmware/export/lcd.h
index 5f93e7cbc3..f5f16d0f0a 100644
--- a/firmware/export/lcd.h
+++ b/firmware/export/lcd.h
@@ -121,7 +121,7 @@ extern void lcd_jump_scroll_delay(int ms);
121#define DRMODE_INVERSEVID 4 /* used as bit modifier for basic modes */ 121#define DRMODE_INVERSEVID 4 /* used as bit modifier for basic modes */
122 122
123/* Low-level drawing function types */ 123/* Low-level drawing function types */
124typedef void lcd_pixelfunc_type(int x, int y); /* for b&w */ 124typedef void lcd_pixelfunc_type(int x, int y);
125typedef void lcd_blockfunc_type(unsigned char *address, unsigned mask, unsigned bits); 125typedef void lcd_blockfunc_type(unsigned char *address, unsigned mask, unsigned bits);
126 126
127#if defined(HAVE_LCD_BITMAP) || defined(SIMULATOR) 127#if defined(HAVE_LCD_BITMAP) || defined(SIMULATOR)
@@ -131,7 +131,12 @@ typedef void lcd_blockfunc_type(unsigned char *address, unsigned mask, unsigned
131#define INVERT_PIXEL(x,y) lcd_framebuffer[(y)>>3][(x)] ^= (1<<((y)&7)) 131#define INVERT_PIXEL(x,y) lcd_framebuffer[(y)>>3][(x)] ^= (1<<((y)&7))
132 132
133/* Memory copy of display bitmap */ 133/* Memory copy of display bitmap */
134#if LCD_DEPTH == 1
134extern unsigned char lcd_framebuffer[LCD_HEIGHT/8][LCD_WIDTH]; 135extern unsigned char lcd_framebuffer[LCD_HEIGHT/8][LCD_WIDTH];
136#elif LCD_DEPTH == 2
137#define MAX_LEVEL 3
138extern unsigned char lcd_framebuffer[LCD_HEIGHT/4][LCD_WIDTH];
139#endif
135 140
136extern void lcd_set_invert_display(bool yesno); 141extern void lcd_set_invert_display(bool yesno);
137extern void lcd_set_flip(bool yesno); 142extern void lcd_set_flip(bool yesno);
@@ -165,6 +170,20 @@ extern void lcd_invertscroll(int x, int y);
165extern void lcd_bidir_scroll(int threshold); 170extern void lcd_bidir_scroll(int threshold);
166extern void lcd_scroll_step(int pixels); 171extern void lcd_scroll_step(int pixels);
167 172
173#if LCD_DEPTH > 1
174extern void lcd_set_foreground(int brightness);
175extern int lcd_get_foreground(void);
176extern void lcd_set_background(int brightness);
177extern int lcd_get_background(void);
178extern void lcd_mono_bitmap_part(const unsigned char *src, int src_x, int src_y,
179 int stride, int x, int y, int width, int height);
180extern void lcd_mono_bitmap(const unsigned char *src, int x, int y, int width,
181 int height);
182#else /* LCD_DEPTH == 1 */
183#define lcd_mono_bitmap lcd_bitmap
184#define lcd_mono_bitmap_part lcd_bitmap_part
185#endif
186
168#endif /* CHARCELLS / BITMAP */ 187#endif /* CHARCELLS / BITMAP */
169 188
170/* internal usage, but in multiple drivers */ 189/* internal usage, but in multiple drivers */