diff options
-rw-r--r-- | firmware/drivers/lcd-h100.c | 6 | ||||
-rw-r--r-- | firmware/drivers/lcd-recorder.c | 6 | ||||
-rw-r--r-- | firmware/export/lcd.h | 4 |
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 | ||
313 | static void setpixel(int x, int y) | 313 | static 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 | ||
318 | static void clearpixel(int x, int y) | 318 | static 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 | ||
323 | static void flippixel(int x, int y) | 323 | static 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 | ||
328 | static void nopixel(int x, int y) | 328 | static 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 | ||
372 | static void setpixel(int x, int y) | 372 | static 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 | ||
377 | static void clearpixel(int x, int y) | 377 | static 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 | ||
382 | static void flippixel(int x, int y) | 382 | static 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 | ||
387 | static void nopixel(int x, int y) | 387 | static 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 | |||
125 | typedef void lcd_pixelfunc_type(int x, int y); /* for b&w */ | 129 | typedef void lcd_pixelfunc_type(int x, int y); /* for b&w */ |
126 | typedef void lcd_blockfunc_type(unsigned char *address, unsigned mask, unsigned bits); | 130 | typedef void lcd_blockfunc_type(unsigned char *address, unsigned mask, unsigned bits); |
127 | 131 | ||