Subject: Re: Japanese with wscons?
To: None <>
From: MOCHIDA Shuji <>
List: tech-kern
Date: 02/04/2001 02:50:19
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

>>> It is better to look at multi-lingualized console stuff by Yoshio
>>> Inoue, which is available on the following URL:
>>> 		(unfortunatelly, written in japanese)

>> Unfortunately I can't read Japanese text at all. :(
> But I think you can read the source mentioned above. :)

 I tried to translate the web page to English. I hope it helps.
(But, it may be broken.)


Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename=world21-beta.txt

       For NetBSD 1.4 multi language console driver World21 1.2 beta

The default console driver of NetBSD 1.4 was replaced from pccons to
wscons as it's high functionalities.

So, I made World21 also have wscons functionalities.
However, the largest World21 feature gone, it isn't loadable kernel 
module any more. It deleted also the correspondence to
the Old Toshiba machines sold in Japan (640x400).

World21 1.2 beta 7 (2000/4/29)
(246Kbytes, MD5: 4769cc0bd3306fa956bc9bf4d339978d)

Old edition beta (obsolete)

Explanation of inside

Wscons of i386's structure is almost below:

         wscons = vga + wskbd + wsdisplay + wsemul_vt100 + compat_usl

World21 uses wskbd and compat_usl among those, and others replaced:

         vga          -> gvga
	 wsdisplay    -> wdpy
	 wsemul_vt100 -> wdpyemul_world21

(Thougn, wdpyemul_world21 and wsemul_vt100 are completely different,
as wdpyemul_world21 is derived from old World21's pc3 emulation)

I think, it wouldn't work with the VGA other than i386.(not tested.)
And, if you write code that replaces gvga, you may use World21 for 
console device. If your edition of World21 actually work, please inform me.


beta6 -> beta7 modifications

   * work with NetBSD 1.4.2
   * work with linux emulation XServer
   * small modifications for pc3 emulation reverse processing

beta5 -> beta6 modifications

   * libfont.a and others from linkkit of the XFree86 added to
     the distribution.
   * Added 800x600 16 color mode. However, it works with
     the same setting as VGA 16 color mode only.(more concrete,
     setting of FreeBSD/Linux kon's stealth).
   * Change the number of display mode.

beta4 -> beta5 modifications

   * Improve the performance of loading fonts of cons command.
     It can load fonts that conform to ISO2022, X11 suitable format.
     (allpied patch1). However, 1byte cord/code, kind of those which are
     the partially 2byte (example: VIDEOTEX-SUPPL) not supported.
   * Added coding systems: thai, koi8-r and koi8-u, (following, allpied
     patch1) latin7, latin8, latin9.
   * Change the way holding mapping data of the big5 with array.

beta3 -> beta4 modifications

   * Several Changes of coding system names.
   * Added ISO 8859-? coding system.
   * Added support of traditional chinese. You can use euc-tw coding
     system with loding CNS11643.1992-{1,2,3,4,5,6,7 } fonts.
     In addition, if you add CHINESE_BIG5 to the kernel configuration, 
     you can use big5 coding system. However, big5 encoding font can't be
     loaded. (use CNS encoding font instead.)
   * Disable designation, locking shift on EUC, SJIS. However, with 
     the EUC the other than the euc-tw, using newly added 
     iso2022 coding system, you can display, for example, JIS code:

           $ cons -c euc-jp -c iso2022

    (euc-tw is not conformed to ISO2022.)

beta2 -> beta3 modifications

   * cons command was rewritten completely. Especially the load of pcf
     fonts and data compressed file becomes possible, because of
     using the libfont.a of the XFree86.
   * Cleaned up source and inserted Copyright.
   * Corrected bug on mode13, dots of remainder
     appear in right hand edge and bottom (allpied patch3).

beta1 -> beta2 modifications

   * Terminal letter of escape sequence of changing scroll area chaned
     from 'q' to 'r'. If you added w21 entry to your termcap before, 
     adjust it. Function of pc3's 'r' (attribute setting of standout mode)
     moved to 's'.
   * Added function of BIOS font replacement. Diverted the command
     wsfontload of wscons. With -N, it identifies the code of the GR part
     (94/96, terminal letter of escape sequences) . For
     example, if you want to load ISO-8859-1 font iso01.f16 (*), 
     add following line to /etc/rc.local:

              wsfontload -f /dev/ttyE0 -N 96A iso01.f16

     However, it can be loaded by only the privilege
     user and on state of mode 1. There is no way yet to deal letters
     of the range 0x00-0x19, 0x80-0x9f. (Preparing mapping table,
     ISO-8859-7 rank may be dealed).

       (*) Appears at /usr/lib/kbd/consolefonts/ of Linux machine, or

   * Change default coding system from euc-japan to ctext.
   * You can use bigger font than 16x16 (to 24x24) on mode 13.
   * Change font table data structure inside kernel from array to list.
     So, you can easily add (ISO2022 conformed) character code support
     by modifying cons command.
   * Change cons -l output form.
   * Added functionality of displaying letters as ISO-8859-? letter of
     each national edition of ISO646 that escape sequence registered 
     in ISO2022, at the same time, has code table is defined in RFC1345.
     (28 kinds.) Add ISO646VAR to config option. Example, you can display
     '\' as yen-mark by following:

              printf '\033 (J'

   * Added font alias/unalias function. Changed 
     the argument of font unload command. Example:

              cons -u 1 94 B (unload of ASCII font)
	      cons -a 2 94 @ B (set old JIS -> new JIS alias)
	      cons -a 2 94 @ - (cancel old JIS alias)

     Though this old JIS -> new JIS alias was default on old world21, 
     now you must indicate explicitly.
   * You can change display mode or unload font with escape sequence.

          printf '\033[<mode number>p'   =   cons -m <mode number>
	  printf '\033[2;94;66p'         =   cons -u 2 94 B

     You can also set font alias/unalias and change coding system 
     with escape sequence.
   * Various bug fixes.

Modifications from World21 R1.1

   * It is not LKM as before. Now need kernel re-compiling.
   * Using wskbd on keyboard part, so you can do various settings
     with wsconsctl.
   * You can switch screens of console, X, SVGAlib application 
     by ALT + CTL + F?.
   * Performance up of scrolling of VGA text mode (mode 1).
   * May work other than i386?

difference from wscons

   * Only one screen for text. Plural X screen can be opened.

Obsolete beta edition and patch

World21 1.2 beta 6 (99/9/5)
(246Kbytes, MD5: 2fd167c939df103c86cc0dbf0b00de25)
beta6 patch-1(99/10/12)

World21 1.2 beta 5 (99/6/29)
(66Kbytes, MD5: a9428f29f14d5e88daffcb86a5a0f63e)
beta5 patch-1 (99/7/10)

World21 1.2 beta 4 (99/6/13)
(63Kbytes, MD5: 7da5480d596088384bf5a7807e8312bd)
World21 1.2 beta 3 (99/5/30)
(60Kbytes, MD5: 23314cfb3a4a5ff2b08157d84659fea7)
beta3 patch 4 (99/6/07) including patch 1-3.
beta3 patch 3 (99/6/06) including patch1 and patch2.
beta3 patch 2 (99/6/02) including patch1.
beta3 patch 1 (99/5/30)
(obsolete) World21 1.2 beta 2 (99/5/14)
(56Kbytes, MD5: 140f4bb09b42b3c75567fc430d92388d
(obsolete) beta2 patch 3 (including patch 1,2) (99/5/17)
(obsolete) beta2 patch 2 (including patch 1) (99/5/17)
(obsolete) beta2 patch 1 (99/5/16))

(obsolete) World21 1.2 beta 1 (99/4/23)
(50 Kbytes, MD5: e5361c6a4e3729cd23fd32d15ba706ea

Return Changes
INOUE Yoshinari