diff options
Diffstat (limited to 'firmware/drivers')
-rw-r--r-- | firmware/drivers/lcd.c | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/firmware/drivers/lcd.c b/firmware/drivers/lcd.c index 1c2ecb22a3..2d095f2a5f 100644 --- a/firmware/drivers/lcd.c +++ b/firmware/drivers/lcd.c | |||
@@ -879,17 +879,14 @@ void lcd_puts(int x, int y, unsigned char *str) | |||
879 | } | 879 | } |
880 | 880 | ||
881 | 881 | ||
882 | /* | ||
883 | * Put a string at specified bit position | ||
884 | */ | ||
882 | void lcd_putsxy(int x, int y, unsigned char *str, int thisfont) | 885 | void lcd_putsxy(int x, int y, unsigned char *str, int thisfont) |
883 | { | 886 | { |
884 | #ifdef LOADABLE_FONTS | 887 | #ifdef LCD_PROPFONTS |
885 | lcd_putsldfxy(x,y,str); | ||
886 | (void)thisfont; | ||
887 | #elif LCD_PROPFONTS | ||
888 | lcd_putspropxy(x,y,str,thisfont); | 888 | lcd_putspropxy(x,y,str,thisfont); |
889 | #else | 889 | #else |
890 | /* | ||
891 | * Put a string at specified bit position | ||
892 | */ | ||
893 | 890 | ||
894 | int nx = fonts[thisfont]; | 891 | int nx = fonts[thisfont]; |
895 | int ny = fontheight[thisfont]; | 892 | int ny = fontheight[thisfont]; |
@@ -898,6 +895,13 @@ void lcd_putsxy(int x, int y, unsigned char *str, int thisfont) | |||
898 | int lcd_x = x; | 895 | int lcd_x = x; |
899 | int lcd_y = y; | 896 | int lcd_y = y; |
900 | 897 | ||
898 | #ifdef LOADABLE_FONTS | ||
899 | if ( _font ) { | ||
900 | lcd_putsldfxy(x,y,str); | ||
901 | return; | ||
902 | } | ||
903 | #endif | ||
904 | |||
901 | while (((ch = *str++) != '\0') && (lcd_x + nx < LCD_WIDTH)) | 905 | while (((ch = *str++) != '\0') && (lcd_x + nx < LCD_WIDTH)) |
902 | { | 906 | { |
903 | if (lcd_y + ny > LCD_HEIGHT) | 907 | if (lcd_y + ny > LCD_HEIGHT) |