Version: ======= vietdos 4.21 8/20/92 viet-std revised VISCII 1.1 vietdos 4.0 4/15/92 viet-std initial VISCII 1.0 vietdos 1.0 11/8/91 first release The TriChlor Group ([email protected]) Cuong Bui ([email protected]) vietdos allows PC running under DOS to enter and display Viet chars. It shows that it makes sense and feasible to integrate Viet chars in current computing env. There is no need to reinvent the wheel, plus it allows DOS to use Viet chars. By doing so, it opens up a large possibilities of using existing softwares with Viet characters, in effect, integrating Viet characters into current software environment. For ex., one can use existing 8-bit clean tools such as vi, more, type, grep , awk, pctools, xtree , word, wordperfect ... to process Vietnamese data. One can also use Vietnamese dedicated word-processors such as Viet, VPS ... "vnelvis", the Vietnamese version of "elvis", a clone of "vi", is also available. 1) Fonts: EGA 8x14 user loadable font. Fonts can be loaded on the fly: \7 to load My font \8 to load Viet font \9 to load Viet lowercase + line-drawing chars Some applications may reset the video mode, which in turn load the default My font. Just type \8 to reload Viet font. If you have VGA, and want to use the 8x16 font, use the "vietdosv" program. 2) Character code: viet-std 8bit code. The code is in the file "charsetvn.h" 3) Keyboard entry: viet-std keyboard entry. vietdos supports these features of viet-std specification: \V Vietnamese state \M English state <COM> compose char is \ <CLS> closure char is <ESC> instead of Control-a There are 2 supported modes for keyboard entry, English mode and Viet mode, switchable at anytime. English mode provides compatible entry of Viet characters . Viet mode was designed to minimize number of key strokes when entering large Viet documents. Both have their side effects. A user definable key is used as a compose/escape key, default is \ (backslash). In English AND Viet mode: \\ ------- \ (You have to type 2\ to get a \) \dd ------> d-bar \dD or \DD or \Dd -----> D-bar \a' \u+' \o+ESC ------> a' ------> u+' ------> o+ (The ESCAPE key is needed when no other char to be followed ) ------> a(x (a-breve and x, x is any char but \'`?~. ) \a(x In Viet mode: dd ------> d-bar e^` ------> e^` a' ------> a' a\' ------> (a)' ( a and ') \a' ------> a' To switch to Viet mode use \v or \V. To switch to English mode use \m or \M. (aMerican, My~) Examples: \m\DD\a~ mang ti\e^'ng \o+? trong tr\o+`i \dd\a^'t Ph\a?i c\o' danh g\i` v\o+'i n\u'i s\o^ng \vDDa~ mang tie^'ng o+? trong tro+`i dda^'t Pha?i co' danh gi` vo+'i nu'i so^ng Convention for adding tone marks : ( da^'u tra(ng (breve) ^ da^'u mu~ (circumflex) + da^'u mo'c (horn) ' da^'u sa('c (acute) ` da^'u huye^`n (grave) ? da^'u ho?i (hook-above) ~ da^'u nga~ (tilde) . da^'u na(.ng (dot-below) dd chu+~ dde^ (d-bar) The modifiers (^+ must comes before the tone marks '`?~. . 4) How to get the software: a) vietdos is free, contributed to the Vietnamese community in the spirit of further advancing our communication, as well as viet software development for a integrated Viet environment. You can anonymous ftp it from Site name: sonygate.Sony.Com [192.65.138.240] Login as anonymous, password is your email address. The file name is vietdosx.exe, under the directory ~ftp/tin/VN/DOS The VN directory contains softwares written for Unix and Xwindows, also by the TriChlor Group. The VN/DOS directory contains vietdos and other programs for use with DOS. b) You can send me mail . I'll try to send you the software via mail, however, I can not guarantee this because of my work schedule. My email address: [email protected] 5) Installing and testing vietdos After you get the software, you may need to unpack it using uudecode, uncompress, and tar. After unpacking, you should have a file called vietdosx.exe This is a self-extract file. Just run it, and it'll extract vietdos and documentations. Now run "vietdos" to establish Viet environment. Try "type doibo" , see if you can see the poem by Quang Du~ng. Run the "check.bat" program. It shows the power of integration. If you have a C compiler, compile and run the "testcc.c". I checked the followings , and they seem to work fine: echo, grep, more, cc, mkdir, cd, dir , type , sed elvis (vi clone), pwd, tar, mawk , pctools, xtree, wordperfect, MS-Word, brief ... 6) Utilities The viet78 package contains the viet7to8.exe and viet8to7.exe filters. Use the viet7to8 to convert mails , SCV articles, and older viet file to the 8 bit code use by vietdos. Use the viet8to7 to convert 8bit coded files for mailing or posting. For ex: viet8to7 this.mail | mail viet-net or viet7to8 saved_news > viet8.news This package is also on the Sony site, under VN/DOS/viet78x.exe KEYBOARD ENTRY ============== vietdos starts with Viet keyboard entry mode. The differences between Viet mode and aMerican mode is the way the keys are sent to applications. For ex., to enter char u+` (Viet mean "yes"): *In aMerican mode: \u+` There is no echo until the whole legal sequence is typed in. When a legal sequence is completed, 1 single char (u+`) is sent from vietdos. A compose sequence can be terminated by an illegal char or an escape char 'ESC' . For example \u+ESC send 1 char u-horn \u+a send 2 chars: u-horn , then 'a' \u+ESC\o+ESC send 2 chars: u-horn , then o-horn \u'\o+' send 2 chars: u-acute, then o-horn-acute The ESC key also terminates composing sequence in Viet mode. For examples, to enter type readme.vn while in Viet mode, one can use type readmeESC.me to prevent the "." from binding to the char "e" . *In Viet mode: to get char u+`, type in: u+` There will be immediate echo, so actually vietdos is sending 5 chars: <u> <backspace><u-horn> <backspace><u-horn-grave> This may present problem to application that process raw entry and only expecting 1 char. For ex, the "r" command to replace a single char in "vi" or "elvis". In this case, you don't need to switch back to aMerican mode in order to enter the u+` char. All you need to do in using the backslash compose sequence ( \u+` ). The backslash compose sequence works in either Viet or American mode. The trade-off is you don't see the char until the compose sequence completed. Another example is the 'dd' command in 'vi'. If you are using vietmode, when you type 'dd', the keyboard send d-bar to 'vi', which won't delete a line as you expected. Just use \Mdd\V , or d<ESC>d<ESC> to enter 'dd' ! ( vnelvis, a version of elvis, a "vi" editor clone, was ported by TriChlor to both Unix and DOS environment. We add the "vv" command , that do the same thing as "dd", delete a line. It also supports all Vietnamese chars in C0 space. ) The following examples should help clear up any questions. Noted that \M and \V tells what mode vietdos should be in, and chars inside a parenthesis is a single char: \Mu+2 \u+2 \u\+2 \u+\2 \Vu+2 \u+2 \u\+2 \u+\2 ---> (u)(+)(2) (u+)(2) (u)(+)(2) (u+)(2) ---> (u+)(2) (u+)(2) (u)(+)(2) (u+)(2) HOW IT WORKS ============ vietdos installs itself as a TSR, terminated but stay resident. When user types a key on the keyboard, the keyboard generates an interrupt to the PC. vietdos revectors this interrupt to itself, so it can process it. After processing, it passes the key on to the ROM BIOS, or the old interrupt processing routine. All programs therefore stay compatible, whether they read the keyboard directly, or thru the BIOS, or thru DOS. vietdos also keeps the Viet font in memory so it can reload the font any time necessary. You can switch between Viet font or My font any time. Currently, vietdos only supports the PC XT keyboard scan code. Your XT, 286, 386, 486 will still work. Most of time , there is a switch under the keyboard to change it to XT or AT mode. It supports EGA and VGA, since there is loadable font in these video cards. It was developed and tested on a 286 with DOS 3.0 and EGA. It was checked out for all DOS version from 3.0 to 5.0, on several 286/386/486 IBM clones. It won't work in Microsoft Windows, since Windows grabs its own keyboard. For Windows, use "winvnkey", also by the TriChlor group. To print, use printer program such as vlaser2 for HP laser printers. The TriChlor group is a group of us interesting in developing and providing free software for use with the Vietnamese language. If you are interested in helping, send email to : [email protected] with the subject contains SIGN-ON We can also be reached via email: [email protected] postal address: TriChlor 3388 Burgundy Dr. San Jose, CA 95132 The Viet-Std group has document for VISCII character set encoding. They can be reached at: email: [email protected] postal address: Viet-Std 1212 Somerset Dr. San Jose, CA 95132 CUSTOMIZING KEY =============== You can remap the default keys used for <COMPOSE> (\ backslash), modifiers, and tonemarks keys. Invoke vietdos with a string argument, beginning by char K, following with 10 chars, for ex. : vietdos K1234567890 with 1 : char to be used for compose 2 : da^'u tra(ng (breve) 3 : da^'u mu~ (circumflex) 4 : da^'u mo'c (horn) 5 : da^'u sa('c (acute) 6 : da^'u huye^`n (grave) 7 : da^'u ho?i (hook-above) 8 : da^'u nga~ (tilde) 9 : da^'u na(.ng (dot-below) 0 : chu+~ dd (d-bar) For ex.: vietdos K/678901234 will behave as VN-Lab (R) keyboard entry scheme. or vietdos K/'`?~.(^+d will use the char / as the compose char instead of the default \ . All 10 characters in the string must be printable (ASCII 33-126). If less than 10, result is unpredictable. CUSTOMIZING STARTING MODES: =========================== To set vietdos starting mode, invoke with command line parameters: V : Viet keyboard M : My (American) keyboard 7 : My font 8 : Viet font 9 : Viet lowercase + line drawing font For example: vietdos M 7 starts vietdos with My~ keyboard and My~ font, vietdos V 8 K/'`?~.(^+d starts vietdos with Viet keyboard, Viet font, and remap the compose key to / . Without any parameter, vietdos starts with Viet keyboard, Viet font. RELEASING vietdos ================= To disable vietdos , use control-alt-a . To enable vietdos again, use control-alt-a again. Control-alt-a is a toggle switch. To release vietdos from memory, and reclaim the space, use Control-alt-e. Only release vietdos at the DOS prompt. DO NOT release it while running a program. Another way to release vietdos is to run "mark" before running "vietdos", then run "release" to release "vietdos". The "mark" and "release" utilities are included in this directory. Normally, this is never necessary since vietdos only occupies 29KB. COPYRIGHT ========= This software is copyrighted by the TriChlor Group. All rights reserved. You can freely use, copy, distribute vietdos in any form, as long as you do not charge a fee for it, and include this file . No modification allowed. THANKS ====== A'nh Minh HAVE FUN ======== Bu`i Minh Cu+o+ng The TriChlor Group