diff -r 1193bd7d460f -r 6b80a37fdf8d brewpanel/slcd.c --- a/brewpanel/slcd.c Sat Nov 28 21:00:29 2015 +0100 +++ b/brewpanel/slcd.c Wed Dec 02 17:16:41 2015 +0100 @@ -141,8 +141,9 @@ struct slcdDataStruct *lcd = slcds [fd]; int i; - for (i = 0 ; i < 8 ; i++) + for (i = 0 ; i < 8 ; i++) { lcd->cgram[index][i] = data[i]; + } } @@ -152,7 +153,13 @@ { struct slcdDataStruct *lcd = slcds [fd]; - SDLGui_Char(dlg, fd, lcd->x + (lcd->cx * 12) + 12, lcd->y + (lcd->cy * 18) + 8, data); + if (data < 16) + /* + * Character 0..7 and 8..15 are the same. + */ + SDLGui_CGChar(dlg, fd, lcd->x + (lcd->cx * 12) + 12, lcd->y + (lcd->cy * 18) + 8, lcd->cgram[data & 0x07]); + else + SDLGui_Char(dlg, fd, lcd->x + (lcd->cx * 12) + 12, lcd->y + (lcd->cy * 18) + 8, data); if (++lcd->cx == lcd->cols) { lcd->cx = 0;