freebsd-nq/sys/dev/vt
Jean-Sébastien Pédron bdcaf97c3e vt(4): Add new vd_bitblt_text_t callback, and implement it for vt_vga
Compared to the deprecated vd_bitbltchr_t callback, vd_bitblt_text_t
receives:
    o  the whole text buffer
    o  the dirty area
    o  the mouse cursor (map, position, colors)

This allows the backend to perform optimization on how to draw things.
The goal is to remove vd_bitbltchr_t and vd_putchar_t, once all driver
are converted (only vt_vga is included in this commit).

In vt_vga, this allows to draw the text and the cursor in one pass,
without ever reading from video memory (because it has all the context).
The main benefit is the speed improvement: no more slideshow during
boot!

Other bugs fixed in vt_vga are:
    o  left-most characters are drawn properly (the left-most pixels were
       missing with bold characters and some wide letters such as 'm')
    o  no more black square around the cursor
    o  no cursor flickering when the text is scrolling

There are still many problems to fix: the known issues are marked with
"FIXME" inside the code.

MFC after:	1 week
2014-08-22 08:22:40 +00:00
..
colors vt(4): Colors are indexed against a console palette, not a VGA palette 2014-08-10 17:04:10 +00:00
font vt(4): Rename the "mouse_cursor" structure to "vt_mouse_cursor" 2014-08-21 19:42:24 +00:00
hw vt(4): Add new vd_bitblt_text_t callback, and implement it for vt_vga 2014-08-22 08:22:40 +00:00
logo
vt_buf.c vt(4): Constify vt_buf argument of vtbuf_iscursor() 2014-08-21 18:26:32 +00:00
vt_consolectl.c Use a common tunable to choose between vt(4)/sc(4) 2014-06-27 17:50:33 +00:00
vt_core.c vt(4): Add new vd_bitblt_text_t callback, and implement it for vt_vga 2014-08-22 08:22:40 +00:00
vt_font.c Increase vt(9) max glyph data to 1MB for CJK fonts with many glyphs 2014-01-01 19:38:15 +00:00
vt_sysmouse.c vt(4): Handle global and per-window mouse cursor toggle in one place 2014-08-21 13:04:34 +00:00
vt.h vt(4): Add new vd_bitblt_text_t callback, and implement it for vt_vga 2014-08-22 08:22:40 +00:00