svn commit: r187373 - head/sys/dev/syscons/teken
Ed Schouten
ed at FreeBSD.org
Sat Jan 17 14:53:54 PST 2009
Author: ed
Date: Sat Jan 17 22:53:53 2009
New Revision: 187373
URL: http://svn.freebsd.org/changeset/base/187373
Log:
Make vidcontrol's color setting work again.
It turns out I forgot to implement two escape sequences that allows the
user to change the default foreground and background colors. I thought
they were implemented by syscons itself, but vidcontrol just generates
some escape sequences, which get interpreted by the terminal emulator.
Reported by: mgp (forums)
Modified:
head/sys/dev/syscons/teken/sequences
head/sys/dev/syscons/teken/teken_subr_compat.h
Modified: head/sys/dev/syscons/teken/sequences
==============================================================================
--- head/sys/dev/syscons/teken/sequences Sat Jan 17 21:31:47 2009 (r187372)
+++ head/sys/dev/syscons/teken/sequences Sat Jan 17 22:53:53 2009 (r187373)
@@ -100,6 +100,8 @@ TBC Tab Clear ^[ [ g r
VPA Vertical Position Absolute ^[ [ d n
# Cons25 compatibility sequences
+C25ADBG Cons25 set adapter background ^[ [ = G r
+C25ADFG Cons25 set adapter foreground ^[ [ = F r
C25CURS Cons25 set cursor type ^[ [ = S r
C25VTSW Cons25 switch virtual terminal ^[ [ z r
Modified: head/sys/dev/syscons/teken/teken_subr_compat.h
==============================================================================
--- head/sys/dev/syscons/teken/teken_subr_compat.h Sat Jan 17 21:31:47 2009 (r187372)
+++ head/sys/dev/syscons/teken/teken_subr_compat.h Sat Jan 17 22:53:53 2009 (r187373)
@@ -34,6 +34,29 @@ teken_subr_cons25_set_cursor_type(teken_
}
static void
+teken_subr_cons25_set_adapter_background(teken_t *t, unsigned int c)
+{
+
+ t->t_defattr.ta_bgcolor = c % 8;
+ t->t_curattr.ta_bgcolor = c % 8;
+}
+
+static void
+teken_subr_cons25_set_adapter_foreground(teken_t *t, unsigned int c)
+{
+
+ t->t_defattr.ta_fgcolor = c % 8;
+ t->t_curattr.ta_fgcolor = c % 8;
+ if (c >= 8) {
+ t->t_defattr.ta_format |= TF_BOLD;
+ t->t_curattr.ta_format |= TF_BOLD;
+ } else {
+ t->t_defattr.ta_format &= ~TF_BOLD;
+ t->t_curattr.ta_format &= ~TF_BOLD;
+ }
+}
+
+static void
teken_subr_cons25_switch_virtual_terminal(teken_t *t, unsigned int vt)
{
More information about the svn-src-head
mailing list