display: Replace hard-coded display with new config based display

Introduce a new config based system for specifying the on-screen
contents of an lcd screen.  The default screen configuration (found in
klippy/extras/display/display.cfg) is the same as the previous
hard-coded display, so this should not change behavior for existing
users.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
Kevin O'Connor 2020-02-16 15:22:16 -05:00
parent 5acc181624
commit 2cf03ffa23
5 changed files with 379 additions and 171 deletions

View file

@ -102,6 +102,8 @@ class HD44780:
self.write_text(x, y, char)
return 1
return 0
def write_graphics(self, x, y, pixel_row, pixel_col):
pass
def clear(self):
spaces = ' ' * 40
self.text_framebuffers[0][:] = spaces
@ -187,11 +189,11 @@ HD44780_chars = [
TextGlyphs = {
'right_arrow': '\x7e',
'extruder': '\x00',
'bed': '\x01',
'bed': '\x01', 'bed_heat1': '\x01', 'bed_heat2': '\x01',
'feedrate': '\x02',
'clock': '\x03',
'degrees': '\x04',
'usb': '\x05',
'sd': '\x06',
'fan': '\x07',
'fan': '\x07', 'fan1': '\x07', 'fan2': '\x07',
}