summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--firmware/lcd.c18
-rw-r--r--firmware/lcd.h4
2 files changed, 21 insertions, 1 deletions
diff --git a/firmware/lcd.c b/firmware/lcd.c
index 5d31529ec0..5e1672b321 100644
--- a/firmware/lcd.c
+++ b/firmware/lcd.c
@@ -580,6 +580,7 @@ void lcd_invertrect (int x, int y, int nx, int ny)
580} 580}
581 581
582#define DRAW_PIXEL(x,y) display[x][y/8] |= (1<<(y%7)) 582#define DRAW_PIXEL(x,y) display[x][y/8] |= (1<<(y%7))
583#define CLEAR_PIXEL(x,y) display[x][y/8] &= ~(1<<(y%7))
583 584
584void lcd_drawline( int x1, int y1, int x2, int y2 ) 585void lcd_drawline( int x1, int y1, int x2, int y2 )
585{ 586{
@@ -651,6 +652,23 @@ void lcd_drawline( int x1, int y1, int x2, int y2 )
651 } 652 }
652} 653}
653 654
655/*
656 * Set a single pixel
657 */
658void lcd_drawpixel(int x, int y)
659{
660 DRAW_PIXEL(x,y);
661}
662
663/*
664 * Clear a single pixel
665 */
666void lcd_clearpixel(int x, int y)
667{
668 CLEAR_PIXEL(x,y);
669}
670
671
654#else 672#else
655/* no LCD defined, no code to use */ 673/* no LCD defined, no code to use */
656#endif 674#endif
diff --git a/firmware/lcd.h b/firmware/lcd.h
index 6b0d861f76..dcfa1d587e 100644
--- a/firmware/lcd.h
+++ b/firmware/lcd.h
@@ -132,7 +132,9 @@ void lcd_bitmap (const unsigned char *src, int x, int y, int nx, int ny,
132void lcd_clearrect (int x, int y, int nx, int ny); 132void lcd_clearrect (int x, int y, int nx, int ny);
133void lcd_fillrect (int x, int y, int nx, int ny); 133void lcd_fillrect (int x, int y, int nx, int ny);
134void lcd_invertrect (int x, int y, int nx, int ny); 134void lcd_invertrect (int x, int y, int nx, int ny);
135 135void lcd_drawline( int x1, int y1, int x2, int y2 );
136void lcd_drawpixel(int x, int y);
137void lcd_clearpixel(int x, int y);
136#endif 138#endif
137 139
138 140