common/lcd_console: cleanup lcd_drawchars/lcd_putc_xy

the capability of drawing some *str with count from lcd_drawchars is unnary.
It is always called from lcd_putc_xy with one character of and count = 1.

So we simply rename lcd_drawchars into lcd_putc_xy and remove the loops inside.

Signed-off-by: Hannes Petermaier <hannes.petermaier@br-automation.com>
Signed-off-by: Hannes Petermaier <oe5hpm@oevsv.at>
Acked-by: Nikita Kiryanov <nikita@compulab.co.il>
This commit is contained in:
Hannes Petermaier 2015-03-27 08:01:35 +01:00 committed by Anatolij Gustschin
parent 4564faeafb
commit 97562c12f1

View File

@ -55,18 +55,17 @@ int lcd_get_screen_columns(void)
return console_cols;
}
static void lcd_drawchars(ushort x, ushort y, uchar *str, int count)
static void lcd_putc_xy(ushort x, ushort y, char c)
{
uchar *dest;
ushort row;
int fg_color, bg_color;
int i;
dest = (uchar *)(lcd_console_address +
y * lcd_line_length + x * NBITS(LCD_BPP) / 8);
for (row = 0; row < VIDEO_FONT_HEIGHT; ++row, dest += lcd_line_length) {
uchar *s = str;
int i;
#if LCD_BPP == LCD_COLOR16
ushort *d = (ushort *)dest;
#elif LCD_BPP == LCD_COLOR32
@ -77,23 +76,15 @@ static void lcd_drawchars(ushort x, ushort y, uchar *str, int count)
fg_color = lcd_getfgcolor();
bg_color = lcd_getbgcolor();
for (i = 0; i < count; ++i) {
uchar c, bits;
c = *s++;
uchar bits;
bits = video_fontdata[c * VIDEO_FONT_HEIGHT + row];
for (c = 0; c < 8; ++c) {
for (i = 0; i < 8; ++i) {
*d++ = (bits & 0x80) ? fg_color : bg_color;
bits <<= 1;
}
}
}
}
static inline void lcd_putc_xy(ushort x, ushort y, uchar c)
{
lcd_drawchars(x, y, &c, 1);
}
static void console_scrollup(void)