KEY file pack v1.0 for KEYB v2.0 pre1
=====================================

This package contains 81 KEY files meant to be used  with  keyboards
of 62 countries and regions, plus Esperanto. They must  be  compiled
with the KEY file Compiler program (KC), which generates a  KL  file
named after the original KEY file. However, the resulting name might
not be familiar to the user.

All files can be recompiled with other name, according to the user's
wish. The spanish keyboard, for instance, is released as "SP" so  to
comply with MS-DOS v6.22(c) standards but it can be recompiled  with
the name of "ES". More details on recompiling: please refer  to  the
documentation files found on the KC (KEY file Compiler) package.

Some KEY files assist two or more different keyboards at  one  time;
that is the case of the SU.KEY file, which is the same for a finnish
and a swedish keyboard. In that case, typing "KC SU" will generate a
"SU.KL" file; however, SU.KEY was encoded in such a way that it also
accepts "KC SU SV", so that the KC program reads the SU.KEY file and
generates a "SV.KL" file, so that the user can type "KEYB SV" as  it
is done on MS-DOS v6.22(c), for instance. Likewise, the bosnian file
(BA.KEY) is encoded in such a way to provide a "HR.KL" or  a "SI.KL"
file when compiled. For those who are used to and for  compatibility
purposes with the major industry, the BA.KEY file can also  generate
a "YU.KL" file; the same goes to the serbian keyboard, which can  be
compiled to generate either a "SR.KL" or a "YC.KL" file.

If you're interested in knowing all the possible names for a layout,
please download the package containing the source files. Browse  the
file you want to analyze (e.g. "SP.KEY") and read the last  section:
[GENERAL], where you'll find the possible names for a  keyboard.  In
the spanish case, you'll find "ES".

Those names were picked according to MS-DOS v6.22(c) and IBM OS/2(c)
standards; however, it's possible to change them or to include a new
"Name=" statement into the [GENERAL] section. For example, you could
insert "Name=PT" for a brazilian keyboard in order to use  the  same
two-letter code defined for that on Microsoft Windows(tm). Important
to notice is that there isn't a two-letter limit as it may seem. You
could define "Name=Brasil", for instance. (Yes, the name is  written
with "s" in portuguese ;-))

There are some files on the list above which match no standard; they
seem not to be available under any OS/2 or MS-DOS released on  those
MS-DOS(c) v6.22 or IBM PC-DOS(c) 6.2 days. The scots gaelic keyboard
fits on this case. The solution found was to use the ISO-639.2  code
for that language.

Conflict: There are OSes which apply "SL" to the slovak keyboard and
"SI" to the slovenian keyboard while other OSes apply  "SK"  to  the
former and "SL" to the latter. In this case, the 2-letter's Internet
top-level domain was selected. So, "SK" goes to the slovak  keyboard
while "SI" applies to the slovenian keyboard.

Different keyboards for a same language: there are several languages
which are assisted by two (or more) different keyboards. In order to
distinguish them, the major industry defined  2-  or  3-digit  codes
known as "identifiers". Therefore (and taking the polish case as  an
example), the "polish for programmers'" keyboard  (which seems to be
much more used and is a 101-key keyboard) is simply referred  to  as
"PL" while the Microsoft version (which seems not to  be  much  used
and is a 102-key keyboard) is referred to as "PL214".

Redundancy: there are some countries on the  list  above  for  which
there are no particular layouts; nonetheless,  they  are  listed  to
comply with MS-DOS standards. Countries like Chile  and  Mexico  use
the latin-american keyboard while others like South Africa  and  New
Zealand use the US keyboard.

Latvia and Lithuania: it seems that there are no codepages for those
keyboards which provide the Euro sign.

cp859: There are a few keyboards for which it was provided an  extra
functionality, in order to comply with OS/2 standards. Those are the
french, belgian, finnish, swedish and estonian  keyboards. They will
provide "s" and "z" (small  and  capital)  letters  with  the  caron
accent (which is a "down under" circumflex accent), as well  as  the
capital Y with diaresis, the small and capital ligature "oe" and the
Euro sign. On the other hand, some minor used characters such as the
fractions, some stand-alone accents  and  the  broken  bar  are  not
available. On  cases  where  keyboards  provide  labeled  characters
(which are not available on cp859) on  some  keys, those  keys  will
echo nothing if pressed. Ligature "oe / OE" is found on <AltGr>+<O>.

It was defined that all keyboards should provide the Euro  sign; so,
even non-european keyboards (such as the brazilians  or  the  latin-
american keyboards) also provide that sign, which is generally found
under <AltGr> + <E> (Brazilian ABNT: <Shift> + <AltGr> + <E>) unless
labeled elsewhere on the keyboard.

In order to ensure that the Euro sign  is  available, the  codepages
containing such sign were made primary, unlike what seems to  happen
on OSes from the major industry. The norwegian  case, for  instance,
is defined on MS-DOS as using cp850 as the primary codepage while on
FreeDOS, that is defined as using cp858 as the primary codepage.

Codepages pointing to different CPI files:  cp858, for  instance, is
referred to as being found at EGA.CPI file on most cases  but  there
are some cases (like the armenian) where that codepage is also found
on EGA6.CPI. Some codepages were redundantly included into more than
one CPI file in order to make it easy for the user to find  all  CPs
related to the keyboard on the same CPI file.

The japanese keyboard: please refer to JP106.TXT for details.

The information collected to allow the encoding of all the keyboards
available on this package was sometimes contradictory; therefore, it
is asked to the user which finds any discrepancy to provide feedback
to me (Henrique Peron, hperon@terra.com.br) as soon as possible.

I, on behalf of all affected users, thank in advance.
