summaryrefslogtreecommitdiff
path: root/firmware/export/lcd.h
diff options
context:
space:
mode:
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 */