bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

console-console status


From: Marcus Brinkmann
Subject: console-console status
Date: Wed, 28 Aug 2002 04:05:58 +0200
User-agent: Mutt/1.4i

Hi,

I hacked console-console a bit today, and it works now to some extent!

The VGA graphic card is programmed, the font is read out, dynamic font
allocation works, and integration with libcons works, too.  There seems to
be one or two races in the scrolling code, which need some debugging, but I
also remember an issue in the protocol with that, so maybe it's just that
one design bug (the current line wraps around too early).

The color palette is not programmed yet, so some colors are messed up.  For
efficiency I want the palette to be 1:1 with the console colors, so I don't
need to translate the color number.  But I guess even if I would calculate
the color number with a small table it would not hurt efficiency too much.

Unfortunately, having 512 different glyphs on screen limits the numbers of
available foreground colors to 8, making it hard to do something useful with
the BOLD attribute.  So there is a real trade off (I previously thought it's
the number of background colors limited, which would not have been bad, we
would only have lost the blinking bit).  I think I will provide two modes:

1. Many-glyphs-mode.  This will only provide 8 out of 16 colors (the 16 is
eight colors which can be bold == highlighted == bright or not).  The
missing colors will be mapped to some other "close" colors if they are
needed.  Obviously this will mess up some programs which use lots of
foreground colors, but I don't know if such programs exist.  Even my
mutt config only uses 5 or 6 foreground colors.  So it seems that 8
is enough for most applications.  The needed colors will be allocated
dynamically, so you aer not stuck to a fixed set.  Normal and bright colors
can be mixed arbitrarily.  Note that the DIM attribute is the same as BOLD
BLACK, so that consumes one color.

In this mode, you have 512 different glyphs at the same time available.

2. Many-colors-mode.  This will only provide up to 256 different glyphs at
the same time, but all 16 possible foreground colors.

If you want to try this out, note that the current incarnation of the
program doesn't provide any input handler, and does not restore the card
font, so you need a remote terminal to work with it conveniently.

Oh, and despite the hash table and reference counting of glyphs, it is quite
fast.  It usually consumes less resources than term, the application running
or console-ncurses.  aafire runs smoothly on it.

And it doesn't show the display artifact bug that console-ncurses shows, so
that is an ncursesw bug.

Thanks,
Marcus


-- 
`Rhubarb is no Egyptian god.' GNU      http://www.gnu.org    marcus@gnu.org
Marcus Brinkmann              The Hurd http://www.gnu.org/software/hurd/
Marcus.Brinkmann@ruhr-uni-bochum.de
http://www.marcus-brinkmann.de/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]