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.h27
1 files changed, 16 insertions, 11 deletions
diff --git a/firmware/export/lcd.h b/firmware/export/lcd.h
index fecf3f5426..c4edc478de 100644
--- a/firmware/export/lcd.h
+++ b/firmware/export/lcd.h
@@ -237,25 +237,30 @@ static inline unsigned lcd_color_to_native(unsigned color)
237#define LCD_DEFAULT_BG LCD_WHITE 237#define LCD_DEFAULT_BG LCD_WHITE
238#endif 238#endif
239 239
240/* Memory copy of display bitmap */ 240/* Frame buffer dimensions */
241#if LCD_DEPTH == 1 241#if LCD_DEPTH == 1
242extern fb_data lcd_framebuffer[LCD_HEIGHT/8][LCD_WIDTH]; 242#if LCD_PIXELFORMAT == HORIZONTAL_PACKING
243#define LCD_FBWIDTH ((LCD_WIDTH+7)/8)
244#else /* LCD_PIXELFORMAT == VERTICAL_PACKING */
245#define LCD_FBHEIGHT ((LCD_HEIGHT+7)/8)
246#endif
243#elif LCD_DEPTH == 2 247#elif LCD_DEPTH == 2
244#if LCD_PIXELFORMAT == HORIZONTAL_PACKING 248#if LCD_PIXELFORMAT == HORIZONTAL_PACKING
245#define LCD_FBWIDTH ((LCD_WIDTH+3)/4) 249#define LCD_FBWIDTH ((LCD_WIDTH+3)/4)
246extern fb_data lcd_framebuffer[LCD_HEIGHT][LCD_FBWIDTH]; 250#else /* LCD_PIXELFORMAT == VERTICAL_PACKING */
247#else 251#define LCD_FBHEIGHT ((LCD_HEIGHT+3)/4)
248extern fb_data lcd_framebuffer[LCD_HEIGHT/4][LCD_WIDTH];
249#endif 252#endif
250#elif LCD_DEPTH == 16 253#endif /* LCD_DEPTH */
251extern fb_data lcd_framebuffer[LCD_HEIGHT][LCD_WIDTH]; 254/* Set defaults if not defined different yet. The defaults apply to both
252#elif LCD_DEPTH == 18 255 * dimensions for LCD_DEPTH >= 8 */
253extern fb_data lcd_framebuffer[LCD_HEIGHT][LCD_WIDTH];
254#endif
255
256#ifndef LCD_FBWIDTH 256#ifndef LCD_FBWIDTH
257#define LCD_FBWIDTH LCD_WIDTH 257#define LCD_FBWIDTH LCD_WIDTH
258#endif 258#endif
259#ifndef LCD_FBHEIGHT
260#define LCD_FBHEIGHT LCD_HEIGHT
261#endif
262/* The actual framebuffer */
263extern fb_data lcd_framebuffer[LCD_FBHEIGHT][LCD_FBWIDTH];
259 264
260/** Port-specific functions. Enable in port config file. **/ 265/** Port-specific functions. Enable in port config file. **/
261#ifdef HAVE_LCD_ENABLE 266#ifdef HAVE_LCD_ENABLE