Dec 312017
A small non-resident DOS keyboard buffer expander.
File KBE11.ZIP from The Programmer’s Corner in
Category Utilities for DOS and Windows Machines
A small non-resident DOS keyboard buffer expander.
File Name File Size Zip Size Zip Type
KBE.COM 275 260 deflated
KBE.DOC 3914 1715 deflated
RTEST.COM 287 248 deflated

Download File KBE11.ZIP Here

Contents of the KBE.DOC file

KBE: Keyboard Buffer Extender

A non-resident keyboard type-ahead memory extender

Ver 1.1 (c) 1991 W.C. Parke


KBE extends the MS-DOS keyboard type-ahead buffer from 16 keystrokes to
128 keystrokes. The extension is performed without requiring any extra
DOS memory, i.e. KBE does not allocate any additional memory from DOS
for itself or for the keyboard type-ahead buffer. The extended memory
for the keyboard is taken from a reserved but as-yet unused portion of
DOS memory in the DOS data area.

KBE is NOT a Terminate-and-Stay-Resident program! It does its job, then
departs from memory. Moreover, KBE is small and fast (it was written in
assembly code, resulting in a code 1/40th the size of a competing
utility written in a higher level language which performs the same
operations as KBE).


The syntax for operating KBE is:

KBE { on | off }

Typing the command


without any following parameters will show the current size of the keyboard
type-ahead buffer, while

KBE on
KBE off

sets the keyboard type-ahead buffer to the 128-key buffer or back to the
16-key default DOS buffer. The program will respond with a screen
message showing the current state of the buffer. If you do not wish
to see this message (as, for example, when executing KBE from within
the AUTOEXEC.BAT file, use the syntax:


to redirect the console output to the null device driver.

For batch file operation, KBE sets the ERRORLEVEL variable to:

No command parameter 0
16 keystroke buffer 1
128 keystroke buffer 2

Testing KBE:

To see the effect of the extended keyboard buffer, execute a DOS command
which takes a few seconds to finish, such as TYPE for a large document
file. While the file is being displayed on the screen, press and hold
down the 'x' key. If the document file display has not yet finished,
your x's will be stored away in the keyboard buffer. After the file
display is finished, the DOS will read the buffer and display the x's.
With KBE turned off, you will not be able to store more than 16 x's.
when the buffer fills and you attempt to store more by holding the 'x'
key down, DOS will beep through the speaker to signal that the buffer
cannot accept more input. With KBE on, you can type up to 128
characters on the keyboard while DOS is busy performing some other
activity. This is particularly convenient when you want DOS to perform
a sequence of operations from keyboard entry, but you do not wish to
wait for DOS to finish one operation before you give the next

Testing Reserved Memory:

For those who are concerned that another program may have been designed
to make use of the same reserved DOS data buffer that KBE uses, the
utility RTEST is included. First, check that KBE has not set up its
keyboard buffer. This can be done by typing KBE to see if the response
is '...buffer is currently off'.

RTEST should be run twice. Once just after booting your computer use
RTEST with the syntax

RTEST initialize

(only first letter of 'initialize' is needed). This will initialize the
reserved DOS memory. Do not turn on KBE itself during these tests unless
you wish to see what effect such a program will have on the results of
RTEST. Then after running your suite of programs you would normally
use, run RTEST again, using the syntax:

RTEST review

You will then get a message on the screen to inform you whether the
reserved DOS memory has been used by one of your programs or not. If
your programs follow strict DOS protocol, none should have used that
memory. This is the most likely case. You can then feel confident in
using KBE to expand your keyboard type-ahead buffer.

 December 31, 2017  Add comments

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>