root/drivers/char/README.unicode

/* [previous][next][first][last][top][bottom][index][help] */
The Linux kernel code has been rewritten to use Unicode to map
characters to fonts.  By downloading a single Unicode-to-font table,
both the eight-bit character sets and UTF-8 mode are changed to use
the font as indicated.

This changes the semantics of the eight-bit character tables subtly.
The four character tables are now:

Map symbol      Map name                        Escape code (G0)

LAT1_MAP        Latin-1 (ISO 8859-1)            ESC ( B
GRAF_MAP        DEC VT100 pseudographics        ESC ( 0
IBMPC_MAP       IBM code page 437               ESC ( U
USER_MAP        User defined                    ESC ( K

In particular, ESC ( U is no longer "straight to font", since the font
might be completely different than the IBM character set.  This
permits for example the use of block graphics even with a Latin-1 font
loaded.

In accordance with the Unicode standard/ISO 10646 the range U+F000 to
U+F8FF has been reserved for OS-wide allocation (the Unicode Standard
refers to this as a "Corporate Zone").  U+F000 was picked as the
starting point since it lets the direct-mapping area start on a large
power of two (in case 1024- or 2048-character fonts ever become
necessary).  This leaves U+E000 to U+EFFF as End User Zone.

The Unicodes in the range U+F000 to U+F1FF have been hard-coded to map
directly to the loaded font, bypassing the translation table.  The
user-defined map now defaults to U+F000 to U+F1FF, emulating the
previous behaviour.

In addition, the following characters not present in Unicode 1.1.4 (at
least, I have not found them!) have been defined; these are used by
the DEC VT graphics map:

U+F800 DEC VT GRAPHICS HORIZONTAL LINE SCAN 1
U+F801 DEC VT GRAPHICS HORIZONTAL LINE SCAN 3
U+F803 DEC VT GRAPHICS HORIZONTAL LINE SCAN 7
U+F804 DEC VT GRAPHICS HORIZONTAL LINE SCAN 9

The DEC VT220 uses a 6x10 character matrix, and these characters form
a smooth progression in the DEC VT graphics character set.  I have
omitted the scan 5 line, since it is also used as a block-graphics
character, and hence has been coded as U+2500 FORMS LIGHT HORIZONTAL.
However, I left U+F802 blank should the need arise.  

        H. Peter Anvin <Peter.Anvin@linux.org>
        Yggdrasil Computing, Inc.

/* [previous][next][first][last][top][bottom][index][help] */