summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--firmware/drivers/lcd-h100.c6
-rw-r--r--firmware/drivers/lcd-recorder.c6
-rw-r--r--firmware/export/lcd.h4
3 files changed, 10 insertions, 6 deletions
diff --git a/firmware/drivers/lcd-h100.c b/firmware/drivers/lcd-h100.c
index 666949ff72..23c88100b9 100644
--- a/firmware/drivers/lcd-h100.c
+++ b/firmware/drivers/lcd-h100.c
@@ -312,17 +312,17 @@ int lcd_getstringsize(const unsigned char *str, int *w, int *h)
312 312
313static void setpixel(int x, int y) 313static void setpixel(int x, int y)
314{ 314{
315 lcd_framebuffer[y/8][x] |= 1 << (y & 7); 315 DRAW_PIXEL(x, y);
316} 316}
317 317
318static void clearpixel(int x, int y) 318static void clearpixel(int x, int y)
319{ 319{
320 lcd_framebuffer[y/8][x] &= ~(1 << (y & 7)); 320 CLEAR_PIXEL(x, y);
321} 321}
322 322
323static void flippixel(int x, int y) 323static void flippixel(int x, int y)
324{ 324{
325 lcd_framebuffer[y/8][x] ^= 1 << (y & 7); 325 INVERT_PIXEL(x, y);
326} 326}
327 327
328static void nopixel(int x, int y) 328static void nopixel(int x, int y)
diff --git a/firmware/drivers/lcd-recorder.c b/firmware/drivers/lcd-recorder.c
index 1255516b51..d464e30f0a 100644
--- a/firmware/drivers/lcd-recorder.c
+++ b/firmware/drivers/lcd-recorder.c
@@ -371,17 +371,17 @@ int lcd_getstringsize(const unsigned char *str, int *w, int *h)
371 371
372static void setpixel(int x, int y) 372static void setpixel(int x, int y)
373{ 373{
374 lcd_framebuffer[y/8][x] |= 1 << (y & 7); 374 DRAW_PIXEL(x, y);
375} 375}
376 376
377static void clearpixel(int x, int y) 377static void clearpixel(int x, int y)
378{ 378{
379 lcd_framebuffer[y/8][x] &= ~(1 << (y & 7)); 379 CLEAR_PIXEL(x, y);
380} 380}
381 381
382static void flippixel(int x, int y) 382static void flippixel(int x, int y)
383{ 383{
384 lcd_framebuffer[y/8][x] ^= 1 << (y & 7); 384 INVERT_PIXEL(x, y);
385} 385}
386 386
387static void nopixel(int x, int y) 387static void nopixel(int x, int y)
diff --git a/firmware/export/lcd.h b/firmware/export/lcd.h
index 3824096aba..7456aa77a9 100644
--- a/firmware/export/lcd.h
+++ b/firmware/export/lcd.h
@@ -122,6 +122,10 @@ extern void lcd_jump_scroll_delay(int ms);
122#define DRMODE_SOLID 3 122#define DRMODE_SOLID 3
123#define DRMODE_INVERSEVID 4 /* used as bit modifier for basic modes */ 123#define DRMODE_INVERSEVID 4 /* used as bit modifier for basic modes */
124 124
125#define DRAW_PIXEL(x,y) lcd_framebuffer[(y)/8][(x)] |= (1<<((y)&7))
126#define CLEAR_PIXEL(x,y) lcd_framebuffer[(y)/8][(x)] &= ~(1<<((y)&7))
127#define INVERT_PIXEL(x,y) lcd_framebuffer[(y)/8][(x)] ^= (1<<((y)&7))
128
125typedef void lcd_pixelfunc_type(int x, int y); /* for b&w */ 129typedef void lcd_pixelfunc_type(int x, int y); /* for b&w */
126typedef void lcd_blockfunc_type(unsigned char *address, unsigned mask, unsigned bits); 130typedef void lcd_blockfunc_type(unsigned char *address, unsigned mask, unsigned bits);
127 131