Some of the changes from xkeyb 1.12 to xkeyb 1.13
=================================================

xKEYB 1.13 is an hibrid experiment, which combines old code with
new totally rewritten code. Many core parts of the driver have been
rewritten, borrowing code from the forthcomming FD-KEYB 2.0 (codenamed
"TAURUS") keyboard driver. That's why it can be expected to have some
unnoticed bugs.

XKeyb 1.13 can be found at:
http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/dos/xkeyb/

The core components that have been rewritten would have these efects, that
are nevertheless difficult to detect:
- some circuits have been shortened
- stability in some critical situations has been improved
- code has been cleared and cleaned
- final executable size is around 100bytes smaller that it would have been

From the user's point of view, the most noticeable facts are that:
- PC437.KEY is now a NECCESSARY file for XKEYB to work. It should be placed
in current directory, same directory as XKEYB or visible through PATH.
- After PC437 is parsed (basic PC with codepage 437), then the particular
configuration file (SP, UK, FR, DE,...) is parsed, and the key assignments
overwrite those of PC437 (individually). Therefore, you can strip down the
.KEY file, including only those rows that differ respect to PC437.KEY. As an
example, see the SP.KEY provided. I'd be very grateful if you strip your own
.KEY file, so that I can include it in the official release. Older .KEY files
are, however, still compatible with XKEYB 1.13
- New XFunction ready to be used:
  249: Break (flushes the buffers, calls int 1Bh)
  (behaves as Break=Ctrl+Pause)
- The different error exit codes can now be easily catched through exit code
  (errorlevel)
- in the API function ax=AD94h, the behaviour has changed. There's no longer
  a distinction between real and virtual scancode (values returned at AH and
  BH will be the same)
- BIOS variable 0040h:0096h "last E0 prefix" value is now tracked and in fact,
  is internally used
- XKEYB 1.13 will now work with APL software, and bypasses their dirty trick,
  although this doesn't mean it is compatible, and the trick won't have any
  effect
- Option /E is removed, as it isn't compatible at all with MS Keyb
- Included french .KEY file now has the appropriate COMBI sequences
- Included JP106 for Japanese keyboard, codepage 932, by Takeshi Hamasaki
(note: xkeyb 1.13 internals does not offer all the support required for writing 
full Japanese .KEY configuration files, but this contribution is highly appreciated)
- BR275 and PC850 tuned up by Henrique Peron

A couple of bugs have been fixed, too:
- Ctrl+Ins/Del/Up/Down no longer produce anything
- Possible weird behaviour of Alt+keys affected by NumLock not being numbers
  is avoided
- A potential bug with functions GetKey/SetKey from the API is fixed (due
  to reworking the core)
- When you overload the driver over other driver, now it is checked first
  that the requested configuration file exists
- Alt+NumPad with PAUSE now behaves just as BIOS
- F11 and F12 scancodes need to be patched too, as with F1-F10
- Better response to multiple shifting (ctrl, alt,...) keys being pressed
- KEY file patched so that the PrintScreen function is recovered.


Do let me know about any problem you may find.

Best wishes,

Aitor Santamaria_Merino
aitor.sm@wanadoo.es