|
| |
| | |
File name: UKEX.DOC Revised: 1996.03.08
Created by: Ulf Ronald Andersson Creation date: 1991.02.21
File purpose: Documentation of UKEX.PRG Version: 4.4
-----------------------------------------------------------------------------
This is an extensive revision/rewrite made by me (U.R. Andersson),
based on KBEXT.PRG 2.00 by the original author. (Roland Waldi)
All features of that version remain but with several enhancements
and extensions. The original documentation is still valid as far as
it goes, and is included further on in this file.
One exception to old doc validity is that I have redefined the filenames
of the keyboard tables loaded by UKEX to be "DEF*.KBD" and "ALT*.KBD".
This is to allow more consistent naming of multiple files.
e.g. DEF_GBR.KBD ALT_GBR.KBD DEF_USA.KBD ALT_USA.KBD
Reverse order revision history follows:
-----------------------------------------------------------------------------
Changes in version 4.4 of January 1996:
A bug in the xbios Supexec function of all MagiX/MagiC versions so
far (eg: MagiC 4.02) makes it impossible to stack arguments for use
by a subroutine called via Supexec (contrary to _all_ Atari versions).
This caused the XBRA routines of earlier UKEX versions to bomb.
I have written a patch for this bug (for my 'LaceScan' releases),
but still decided to rewrite all my code that used such arguments.
If current trends continue most people will soon regard MagiC as
the norm to follow, and Atari's TOS as an aberration to ignore...
Built in keyboards have been changed again, and for once I made my
own needs (and my friends') dictate the result which is:
DEF_SWE.KBD as default keys and
ALT_SWE.KBD as alternate keys
But you can still replace these with your own favourites, simply by
copying those KBD files into the AUTO folder.
Previously the internal (or loaded) 'Alternate' keys were not active
after boot, but had to be activated by the key sequence Alt-A .
I've finally grown tired of this, so now they are active after boot.
In all other aspects, the program is identical to version 4.3.
-----------------------------------------------------------------------------
Changes in version 4.3 of August 1993:
1: This version has multiple stack handling to avoid the problems that
previous versions had under TOS 2.06 and MultiTOS (stack overflows).
2: A new command is added to allow loading of keyboard table files.
3: To achieve language independence, all command key locations are defined
by the currently active keyboard tables. Since is on the same
key for all languages, Alt-Esc is the new command to deactivate UKEX.
This is useful to reactivate the ROM tables after loading erroneous
keyboard files (where the other commands may be hard to find).
4: The collection of keyboard table files has been extended to include most
keyboard layouts of Europe as well as one for USA.
All these are in the folder KBD_DEF\ with names of the form DEF_xxx.KBD,
where "xxx" is the standard (ISO-3166) 3-char nationality abbreviation.
The only exceptions are a few mixed layouts named DEF_xxyy.KBD, where
"xx" and "yy" are the 2-char abbreviations of the two nationalities.
5: The built-in keyboard tables of UKEX have been altered and are now:
DEF_GBR.KBD as default keyboard
DEF_USA.KBD as alternate keyboard
To make UKEX boot with keyboards of your own choice instead, such as
for example Swedish and French, simply proceed as follows:
1: Copy KBD_DEF\DEF_SWE.KBD to AUTO\DEF_SWE.KBD of your boot drive.
2: Copy KBD_DEF\DEF_FRA.KBD to AUTO\ALT_FRA.KBD of your boot drive.
You may also place the files in the root folder of the drive, since UKEX
will attempt to find them there if not found in AUTO\.
To activate these keyboards directly (without rebooting), simply make the
same folder into current directory (Active window) and press Alt-Ctrl-L.
The command sequences are now as follows:
Alt Control A
When UKEX is active this is used to toggle ALT-handling on/off.
When UKEX is passive (after Alt Control Esc) this reactivates UKEX.
Alt Control S
This swaps the DEFault and ALTernate keyboards of UKEX.
Alt Control L
This loads new data files for both UKEX keyboards from current
drive and directory using the names: DEF*.KBD and ALT*.KBD.
If either file is missing, the corresponding table is unchanged.
Alt Control Esc replaces Alt Control Q
This quits UKEX use of its NON-ALT tables, reactivating TOS keyboard.
If ALT-handling was active before this command it will remain active.
-----------------------------------------------------------------------------
Changes in version 4.2 of May 1992:
1: The 3 command sequences (ALT-CTRL A etc.) are no longer just masked as
illegal keycodes, but instead completely removed from the keyboard buffer.
This means that MONST.PRG and others no longer dislike UKEX.
2: A different method is used to access the 'Kbshift' variable, which makes
UKEX compatible with all TOS older than TOS 1.4.
Since 'Kbshift' is defined in the OS header of newer TOS, access to this
variable is now compatible with all existing TOS.
NB: UKEX has now been tested error-free on KAOS 1.4.2
NB: TOS 2.6 however, only works with UKEX 4.2 until given a command sequence,
it may then bomb out, for some reason that I, as yet, don't know.
Any information on changes in keyboard handling of TOS 2.6 will be
greatly appreciated if you send it to my address, given further on.
-----------------------------------------------------------------------------
Changes in version 4.1 of March 1992:
The ALT-key translation is now turned off as default, since some few
programs (eg. MONST & AMONST) are allergic to the ALT-CTRL-A sequence.
Thus these programs needed ALT-CTRL-A before being run, which was not
practical with AMONST which can activate at any time (on errors).
ALT-key translation can be activated again simply by pressing the
ALT-CTRL-A combination as is also described below.
NB: My address (given further below) is altered in this DOC version
NB: since I moved in June 1991.
-----------------------------------------------------------------------------
Enhancements & Extensions in version 4.0 of May 1991:
1: The program is renamed to UKEX.PRG (User Keyboard EXtender),
to avoid mixups.
2: From this version all vectors use XBRA protocol,
which is also used to avoid installation conflicts.
Thus, reinstalling UKEX has no effect, except a message.
3: Handling of ALT-keys can now be toggled on/off,
so other programs can use them freely, except for the 3 commands.
This is done with , the same command that
activates normal translation, which now has this toggle function
when used while translation is active.
4: ALT-translation can now also be inhibited for individual keys,
by specifying ascii NUL ($00) in such keys' table positions.
-----------------------------------------------------------------------------
Enhancements & Extensions in version 3.0:
1: Routine linked to system interrupt etv_timer has been sped up
considerably, though it now handles more cases.
2: The single TOS-dependent system variable, is now accessed in
accordance with modern TOS standards. This makes it compatible
with all TOS >= 1.4 . Older TOS access is as before.
3: Keyboard tables have been extended so that ALT-keys now use
separate tables for CAPS & SHIFT, just like normal keys.
This makes it practical to use ALT-keys for alternative language,
since the ALT-tables work exactly like the normal ones.
4: Old program translated keys without regard to CONTROL.
New program passes all ALT+CONTROL keys unaltered, except for 3
which are used to command new features as shown in 5..7 .
5: ALT CONTROL S will cause UKEX to Swap the non-ALT key tables
with the ALT-tables, effectively switching language.
6: ALT CONTROL Q will cause UKEX to Quit translating non-ALT keys,
which thus revert to the default BIOS definitions.
This is also a possible language switch.
NB: From UKEX version 4.3 the letter Q in the command is replaced by Esc.
7: ALT CONTROL A will cause UKEX to Activate translation.
For further details, please study the enclosed source file.
Hope you enjoy this program, which remains FREEWARE
Ulf Ronald Andersson
H”ders V„g 7
S-145 70 Norsborg
Sweden
NB: If the Swedish characters in my street address come out wrong on
NB: your computer, use 'Hoeders Vaeg 7' which will be understood at
NB: our post office even though it is incorrect.
Here follows the original documentation by Roland Waldi:
-----------------------------------------------------------------------------
KBEXT.PRG (Version 2.00-87/07)
------------------------------
Put KBEXT.PRG into the AUTO folder, or start it at any time from the
desktop (but only once a session). It will establish a memory
resident extension to the keyboard interrupt handler, which allows
in addition to the NORMAL, SHIFT and CAPS-LOCK keyboard tables also
ALT and ALT-SHIFT keyboard tables to be used, thus allowing about
128 additional characters to be entered directly from the keyboard
pressing the ALT key.
If you use KBEXT.PRG as it is, you will get the following keyboard
layout (which is close to the US and GB
version of the ATARI keyboard for the non-ALT keys):
NORMAL:
F1 /F2 /F3 /F4 /F5 /F6 /F7 /F8 /F9 /F10/
Esc 1 2 3 4 5 6 7 8 9 0 - = ` Bsp Help Undo ( ) / *
Tab q w e r t y u i o p [ ] Del Insrt Up Clr 7 8 9 -
Ctrl a s d f g h j k l ; ' Ret # Left Dwn Rght 4 5 6 +
Shft \ z x c v b n m , . / Shft 1 2 3 Ent
Alt -----Space----- CpsL 0 .
SHIFT (note that no digits appear with the cursor keys, which
means you need not release the SHIFT key to move the cursor!)
F11/F12/F13/F14/F15/F16/F17/F18/F19/F20/
Esc ! @ # $ % ^ & * ( ) _ + º Bsp Help Undo ( ) / *
Tab Q W E R T Y U I O P { } Del Insrt Up Clr 7 8 9 -
Ctrl A S D F G H J K L : " Ret ~ Left Dwn Rght 4 5 6 +
Shft | Z X C V B N M < > ? Shft 1 2 3 Ent
Alt -----Space----- CpsL 0 .
CAPS-LOCK:
F1 /F2 /F3 /F4 /F5 /F6 /F7 /F8 /F9 /F10/
Esc 1 2 3 4 5 6 7 8 9 0 - = ` Bsp Help Undo ( ) / *
Tab Q W E R T Y U I O P [ ] Del Insrt Up Clr 7 8 9 -
Ctrl A S D F G H J K L ; ' Ret # Left Dwn Rght 4 5 6 +
Shft \ Z X C V B N M , . / Shft 1 2 3 Ent
Alt -----Space----- CpsL 0 .
ALT:
F1 /F2 /F3 /F4 /F5 /F6 /F7 /F8 /F9 /F10/
Esc » « œ ¬ ¿ © ½ ù ø ² ž ð Ë Bsp SDump à á í ï
Tab ‘  ‰ Õ ç ˜ ‹ ” ã Ç õ Del LMous MUp RMs ¡ Œ Ù
Ctrl „ ž ë Ÿ Ä Æ À Ì Í È Ê Ret † MLeft MDn MRgt ƒ … Ø
Shft ´ ° ± ‡ Þ Ã ¤ æ Û Ü ³ Shft ‚ ˆ Š Ent
Alt -----Space----- CpsL é å
SHIFT & ALT:
F11/F12/F13/F14/F15/F16/F17/F18/F19/F20/
Esc ¹ Ý › ö ª ¾ ú ¦ § ÷ ñ ÿ Bsp SDump ® ¯ è ¶
Tab ’ Ö î Ô Ó š ì ™ ¼ Ï ô Del LMous Mup RMs ¢ “ • Ú
Ctrl Ž ä Å Î â É Á Ñ Ò Ó Ô Ret Mleft Mdn Mrgt £ – — ×
Shft µ · ¸ € û ß ¥ Ð ó ò ¨ Shft ý þ Ent
Alt -----Space----- CpsL ê ü
There are two ways to change the keyboard assignment:
1. Change the keyboard tables in KBEXT.ASM and reassemble the
program. You may have to change some control statements
to fit your assembler's requirements, but the program is
written to make changes even to MEGAMAX-C-Inline-Assembler
not too hard (Use a minimal INIT.C here to save memory).
2. Use any PD keyboard-changing program, which allows to
save a xxx.KBD file (check if it has 384 bytes), e.g.
MOBZKEY.ACC, and make two files: DEFAULT.KBD for the
normal keyboard assignment, and ALT.KBD with the
unshifted and shifted ALT keyboard assignments (don't
change the caps-lock table here, you will need CAPS LOCK
to type into the file-selector box, since MOBZKEY changes
the keyboard assignment immediately!).
Put these two files into the \AUTO\ folder of your boot disk,
if you use KBEXT at boot time, or into the \AUTO\ folder of
your working disk containig KBEXT.PRG otherwise.
From now on the tables in these datasets will be used, when KBEXT
is run.
A third possibility would be to make the files DEFAULT.KBD
and ALT.KBD mentioned in (2)
by a separate program, a file monitor etc.
The format of a KBD file is simply 3 times 128 bytes of the
keyboard tables (one byte per character)
for normal, shifted and caps-lock. The key
numbers (hexadecimal) are:
3B /3C /3D /3E /3F /40 /41 /42 /43 /44 /
01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 29 0E 62 61 63 64 65 66
0F 10 11 12 13 14 15 16 17 18 19 1A 1B 53 52 48 47 67 68 69 4A
[1D] 1E 1F 20 21 22 23 24 25 26 27 28 1C 2B 4B 50 4D 6A 6B 6C 4E
[2A](60)2C 2D 2E 2F 30 31 32 33 34 35 [36] 6D 6E 6F 72
[38] -------39------ [3A] 70 71
Note that US keyboards don't have the key (60). You should assign
0 to all function keys, and to the positions that do not belong
to any key. Key number redefinitions with the ALT key are
automatically taken into account by KBEXT, after reading the ALT.KBD
file.
Enjoy, Roland Waldi, WALDI @ DHDIHEP1.BITNET
-----------------------------------------------------------------------------
End of file: UKEX.DOC
|
| | | | |