Dec 102017
 
The Last Byte memory manager, version 2.31, Makes more memory available by taking advantage of various manufacturers chips. Advanced utilties.

Full Description of File


A set of ADVANCED UTILITIES to go with
THE LAST BYTE MEMORY MANAGER (vers. 2.31)
Requires the companion standard package,
TLB-V231.ZIP.


File TLB-A231.ZIP from The Programmer’s Corner in
Category Utilities for DOS and Windows Machines
The Last Byte memory manager, version 2.31, Makes more memory available by taking advantage of various manufacturers chips. Advanced utilties.
File Name File Size Zip Size Zip Type
ADVANCED.DOC 52030 12844 deflated
CONTENTS.DOC 2183 855 deflated
FILE_ID.DIZ 140 132 deflated
HIGHAPND.EXE 9945 9810 deflated
HIGHAPND.SYS 9865 9813 deflated
HIGHBFRS.EXE 10503 10365 deflated
HIGHDISK.SYS 10909 10858 deflated
HIGHEMS3.SYS 10025 9974 deflated
HIGHEMS4.SYS 12850 12787 deflated
HIGHENV.EXE 8378 8255 deflated
HIGHFILE.EXE 7084 6987 deflated
HIGHHOLE.EXE 8302 8170 deflated
HIGHKEY.EXE 12329 12198 deflated
HIGHMARK.EXE 7676 7572 deflated
HIGHRSVD.EXE 7138 7044 deflated
HIGHRSVD.SYS 7034 6998 deflated
HIGHSPLR.EXE 15456 15262 deflated
HIGHUMM.DOC 22591 5038 deflated
HIGHUNDO.EXE 9086 8963 deflated
TLBMM.EXE 3878 3826 deflated

Download File TLB-A231.ZIP Here

Contents of the ADVANCED.DOC file







ADVANCED UTILITIES

for

THE LAST BYTE MEMORY MANAGER (tm)

An Upper Memory Manager for MS-DOS






Version 2.31










Copyright (C) 1990-92
All Rights Reserved


by


KEY SOFTWARE PRODUCTS

440 Ninth Avenue
Menlo Park, California 94025
415-364-9847









The Last Byte Memory Manager is a trademark of Key Software Products.
MS-DOS and Windows 3.0 are trademarks of Microsoft Corporation.
DR-DOS is a trademark of Digital Research Incorporated.
4DOS is a trademark of J.P. Software.
Hyperdisk is a trademark of HyperWare.
Other company trademarks are used with the company name.






TABLE OF CONTENTS



CHAPTER 1 - HIGHAPND.EXE and HIGHAPND.SYS ............ 1
1.1 The APPEND= Option of LASTBYTE.SYS ....... 1
1.2 Using HIGHAPND.SYS .......................... 1
1.3 Using HIGHAPND.EXE .......................... 2
1.3.1 The HIGHAPND Report ..................... 2
1.3.2 Using HIGHAPND in .BAT Files .............. 2
1.4 Effect on EGA/VGA graphics .................... 2
1.5 The /HIRESGFX Option ......................... 3
1.5.1 /HIRESGFX=TRAPPED ..................... 3
1.5.2 /HIRESGFX=SENSED ...................... 3
1.5.3 /HIRESGFX=ALLOWED ..................... 3

CHAPTER 2 - HIGHBFRS.EXE (DOS 3 only) ................. 4
2.1 The BUFFERS= Option .................. 4
2.2 The /NORESTRICT Option ....................... 5
2.3 The /FLOPPY Option ........................... 5
2.4 The HIGHBFRS Report .......................... 5

CHAPTER 3 - HIGHDISK.SYS ........................... 7
3.1 Size and Directory Options .................... 7
3.2 The /NOSPLIT Option .......................... 7
3.3 Preloading Files into the Ram Disk .............. 8

CHAPTER 4 - HIGHEMS3.SYS and HIGHEMS4.SYS ............ 9
4.1 Controlling Memory Usage ..................... 9
4.2 The /NOSPLIT Option .......................... 9
4.3 The /RESTRICT Option ......................... 10

CHAPTER 5 - HIGHENV.EXE ............................ 11
5.1 The HIGHENV Report ........................... 11
5.2 The /PATCH Option ............................ 11
5.3 Setting the Environment Size .................. 12

CHAPTER 6 - HIGHFILE.EXE ........................... 14

CHAPTER 7 - HIGHHOLE.EXE ........................... 15
7.1 The HOLE=: Option of LASTBYTE.SYS .. 15

CHAPTER 8 - HIGHKEY.EXE ............................ 17
8.1 The /BUFSIZE=n Option ........................ 17
8.1.1 The HMA subparameter .................... 17
8.2 The /INSERT and /OVERSTRIKE Options ............ 17
8.3 The /HISTORY Option .......................... 17
8.4 Preloading the History Buffer ................. 17
8.5 The /NOSPLIT Option .......................... 18
8.6 Editing Commands ............................ 18

CHAPTER 9 - HIGHMARK.EXE and HIGHUNDO.EXE ............ 21

CHAPTER 10 - HIGHRSVD.EXE and HIGHRSVD.SYS ........... 22






TABLE OF CONTENTS


10.1 Reserving High-DOS Memory ................... 22
10.2 The HIGH Suboption .......................... 22

CHAPTER 11 - HIGHSPLR.EXE .......................... 23
11.1 Specifying the Buffer Size ................... 23
11.1.1 The HMA subparameter ................... 23
11.2 Specifying the Logical Device ................ 24
11.3 Specifying the Hardware Interrupt ............ 24
11.4 Specifying Flow Control ..................... 24
11.5 The MONITOR Option .......................... 24
11.6 The RESET Option ............................ 25
11.7 The NOTEST Option ........................... 25














































Nov 06, 1993 ADVANCED UTILITIES 1


CHAPTER 1 - HIGHAPND.EXE and HIGHAPND.SYS


HIGHAPND enables or disables an appendage of up to 96k onto the
end of conventional memory. When enabled, this can increase
conventional memory from 640k to as much as 736k.

HIGHAPND requires either a memory controller chip or an EGA or
VGA display adapter. If the memory controller chip can enable
shadow ram memory at A000, then shadow ram memory will be used
to extend conventional memory; otherwise, HIGHAPND will convert
the graphics display buffer of the EGA or VGA display adapter
into an extension of conventional memory.


1.1 The APPEND= Option of LASTBYTE.SYS

To use HIGHAPND, you must first allocate the memory to be
appended using the APPEND option of LASTBYTE.SYS. For example,
to allow HIGHAPND to append 64k to the end of the 640k of
Conventional memory, you must add the following option to
LASTBYTE.SYS:

DEVICE=C:\TLBMM\LASTBYTE.SYS ... APPEND=64 ...

Monochrome (MDA), Hercules, and CGA display adapters don't use
the 64k region starting at A000, and so this address space can
be used to extend conventional memory from 640k to 704k,
provided there is shadow ram available in this area. CGA
display adapters don't use the next 32k either, and so CGA users
may be able to extend conventional memory all the way to 736k.

EGA and VGA display adapters have a 64k hi-resolution graphics
display buffer that is located at A000. This buffer is only
needed when you are using only hi-resolution graphics. When the
display is in either text or low-resolution CGA graphics modes,
this memory is not used, and may be replaced (switched) with
shadow ram memory if available, or the display buffer itself may
be used as additional conventional memory. Since most EGA and
VGA adapters usually don't use the 32k region at B000, you
should even be able to extend conventional memory up to 736k.


1.2 Using HIGHAPND.SYS

To enable the appendage during CONFIG.SYS processing, place the
following command in your CONFIG.SYS file:

DEVICE=C:\TLBMM\HIGHAPND.SYS ON

To subsequently disable the appendage during CONFIG.SYS



Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 2


processing, use:

DEVICE=C:\TLBMM\HIGHAPND.SYS OFF


1.3 Using HIGHAPND.EXE

To enable the appendage during AUTOEXEC.BAT processing (or at
any time after the computer is booted), use the command:

C:\TLBMM\HIGHAPND ON

and to subsequently disable the appendage, use:

C:\TLBMM\HIGHAPND OFF


1.3.1 The HIGHAPND Report

HIGHAPND can be used without any command line options to
determine the current size of conventional memory and the state
of EGA/VGA hi-resolution graphics:

C:\TLBMM\HIGHAPND


1.3.2 Using HIGHAPND in .BAT Files

You can put these commands into a batch file to simplify
switching back and forth. For example, if you want the extra
memory all the time except when you need hi-res graphics for
Microsoft Windows, create a batch file like the following:

@ECHO OFF
C:\TLBMM\HIGHAPND OFF >NUL
WIN %1 %2
C:\TLBMM\HIGHAPND ON >NUL


1.4 Effect on EGA/VGA graphics

HIGHAPND will automatically disable any EGA or VGA hi-resolution
graphics capability whenever conventional memory has been
extended beyond 640k. This makes software that attempts to
sense what type of display adapter is installed think that you
have only a CGA adapter. Later, when you need the graphics
capability, you can disable the memory extension and
hi-resolution graphics will be automatically re-enabled.

If you have hi-res graphics disabled and run a program that
tries to use hi-res graphics without first sensing for an EGA or



Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 3


VGA adapter, LASTBYTE.SYS will notice the conflict, issue an
error message, and terminate the program. Some programs
redirect a few interrupts during their initialization and then
restore them before termination. LASTBYTE.SYS's termination of
graphics programs doesn't know how to restore these interrupts,
so in some cases you may have to reboot the computer. In other
words, if you experience this kind of program termination with
an application program, it's best to reboot and prepare a batch
file (as shown above) to run the program.


1.5 The /HIRESGFX Option

HIGHAPND provides more detailed control over this protection
through the /HIRESGFX option as described below. This may be
helpful, for example, with software that uses the 43 (50) line
text mode of the EGA (VGA) adapter. (The setting of this option
is only meaningful when HIGHAPND ON is in effect.)


1.5.1 /HIRESGFX=TRAPPED

Disables all EGA/VGA high-resolution graphics functions provided
by video BIOS interrupt 10h and makes programs think a CGA
adapter is installed. (This is the default.)


1.5.2 /HIRESGFX=SENSED

Disables all EGA/VGA high-resolution graphics functions provided
by video BIOS interrupt 10h, but does let programs sense the
presence of an EGA or VGA adapter.


1.5.3 /HIRESGFX=ALLOWED

Allows all video BIOS interrupt 10h function calls, even if they
might use the 64k EGA/VGA graphics display buffer at A000-AFFF.
















Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 4


CHAPTER 2 - HIGHBFRS.EXE (DOS 3 only)


HIGHBFRS can be used to place DOS 3.x buffers in upper memory.
Do NOT attempt to use HIGHBFRS with any other version of DOS -
it will NOT work.

Microsoft recommends setting the BUFFERS option in CONFIG.SYS
according to the type of application most frequently used.
Implicit within this recommendation is the assumption that you
won't change the value very often since it requires editing
CONFIG.SYS and rebooting.

In general, more buffers help when running programs that perform
random access on a relatively small number of disk records (such
as the index for a database program), or if your disk has many
subdirectories organized on several levels.

Since HIGHBFRS allows you to increase or decrease the number of
buffers dynamically, you could create some batch files to tune
the number of buffers to fit the application you're running at
the moment.


WARNING: Placing DOS buffers in high memory
can result in the loss of data. I.e., it can
damage the directory and file allocation tables
of your disk. Read everything in this section
before considering the use of this utility.


You MUST be careful that moving the DOS buffers into upper
memory does not cause DMA transfers into a 128k region of upper
memory that contains a 16-bit adapter, or else you may damage
the data on your disk. See the discussion of the RESTRICT
option of LASTBYTE.SYS, and the /NORESTRICT and /FLOPPY options
discussed below.


2.1 The BUFFERS= Option

HIGHBFRS defaults to the maximum number of buffers that will fit
in the free High-DOS memory up to the DOS limit of 99 buffers.
However, you will probably want to reserve some of this memory
for other uses. This option changes the number of DOS buffers
to the value specified; is a number from 1-99. For
example, the command:

C:\TLBMM\HIGHBFRS BUFFERS=20

will establish twenty buffers (about 10k) in High-DOS memory.



Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 5


You may run the HIGHBFRS command more than once to dynamically
change the number of buffers whenever you like. You may use
BUFFERS=MAXIMUM to establish as many buffers (up to 99) as will
fit in upper memory.


2.2 The /NORESTRICT Option

Each time you boot, LASTBYTE.SYS checks each of the three 128k
regions of upper memory for the presence of 16-bit adapters and
records this information for later use by HIGHBFRS. By default,
HIGHBFRS will only place buffers in those 128k regions where
there are no 16-bit adapters. You may override this default by
using the /NORESTRICT option on the HIGHBFRS command line, as
in:

C:\TLBMM\HIGHBFRS /NORESTRICT


Use of the /NORESTRICT option is not recommended


If none of the three 128k segments is considered "safe",
HIGHBFRS will default to the interception of floppy transfers as
described in the next section.


2.3 The /FLOPPY Option

If all three 128k upper memory regions contain 16-bit adapters,
then a second (different) solution may be both necessary and
sufficient. This option causes transfers between floppy disk
drives and upper memory to be redirected through an intermediate
sector buffer in conventional (low) memory. The corresponding
command line option would be:

C:\TLBMM\HIGHBFRS /FLOPPY

Almost all hard disk controllers use CPU instructions (rather
than DMA) to transfer data and thus do not incur this problem.


2.4 The HIGHBFRS Report

When HIGHBFRS is invoked with no command line arguments, it
simply reports the number of DOS buffers presently located in
upper memory and whether or not transfers between floppy disk
drives and upper memory are redirected. You may use the HIGHMEM
program to determine where the buffers have been placed in upper
memory.




Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 6
























































Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 7


CHAPTER 3 - HIGHDISK.SYS


HIGHDISK.SYS is a device driver that implements a ram disk in
upper memory. Bank-Switch Memory is allocated first, and if
that isn't enough, then High-DOS Memory is allocated to satisfy
the total request. HIGHDISK automatically loads itself into
upper memory; do not use either HIGHDRVR or the DEVICEHIGH
command; simply use a DEVICE command, as in:

DEVICE=C:\TLBMM\HIGHDISK.SYS

This example creates a ram disk that uses all available upper
memory, with 32 directory entries and sectors of 128 bytes
each.


3.1 Size and Directory Options

One to three numeric command line options may be used to control
the total size, sector size, and the number of root directory
entries using the following syntax:

DEVICE=C:\TLBMM\HIGHDISK.SYS [KBytes] [BytesPerSector] [RootDirEntries]

For example, the command:

DEVICE=C:\TLBMM\HIGHDISK.SYS 100 256 64

creates a 100k RAM disk with 256 bytes per sector and 64 root
directory entries. Other options (described below) can be
placed before, after, or in between these numeric parameters on
the command line.



NOTE: If you have used the command DOS=UMB or
DOS=HIGH,UMB with HIGHUMM.SYS to let DOS 5.0
manage the Upper Memory Blocks, you must limit
how much upper memory HIGHUMM can use so that
some will be available for HIGHDISK.



3.2 The /NOSPLIT Option

When HIGHDISK is installed, it tries to put most of its
executable code into the HMA or bank-switch memory if available,
leaving only a small stub in High-DOS memory. You can prevent
HIGHDISK from doing this by using the /NOSPLIT option, as in:




Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 8


DEVICE=C:\TLBMM\HIGHDISK /NOSPLIT


3.3 Preloading Files into the Ram Disk

HIGHDISK can preload a set of files into the ram disk during
CONFIG.SYS processing. Simply add one or more filespecs on the
command line, each preceeded by a dollar sign, as in:

DEVICE=C:\TLBMM\HIGHDISK.SYS $PRELOAD.DAT $C:\TLBMM\HIGHTSR.EXE

An "indirect" file (e.g., DEVICE=C:\TLBMM\HIGHDISK.SYS
@HIGHDISK.OPT) containing one or more options per line can be
used instead if the list is too long.








































Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 9


CHAPTER 4 - HIGHEMS3.SYS and HIGHEMS4.SYS


Two expanded memory emulators are provided with The Last Byte
Memory Manager. Both use upper memory as expanded memory.
HIGHEMS3.SYS is compliant with the older LIM 3.2 spec, and
HIGHEMS4.SYS with the newer LIM 4.0 spec. Use only one of these
device drivers, and load it after LASTBYTE.SYS. Both are
included since the HIGHEMS3.SYS requires much less memory for
the device driver itself than HIGHEMS4.SYS. In many
applications, you may find that 3.2 is all you need.

These device drivers EMULATE expanded memory! That means that
they use software to copy data back and forth between the
logical EMS memory (pages) and the page frame. Obviously, this
is much slower than the performance you would realize with
hardware support, or even with EMM386. Therefore, these device
drivers are provided as a last resort for those who have no
other way of providing EMS memory to their applications, such as
users with only 1 meg of memory.

Do not install HIGHEMS3 or HIGHEMS4 using either HIGHDRVR or the
DEVICEHIGH command - simply use a DEVICE command as in:

DEVICE=C:\TLBMM\HIGHEMS3.SYS


4.1 Controlling Memory Usage

By default, both HIGHEMS3.SYS and HIGHEMS4.SYS will allocate as
many 16k logical pages as possible, first from Bank-Switch
memory and then from High-DOS memory. You can specify the
number of logical pages to allocate as a numeric parameter on
the command line, as in:

DEVICE=C:\TLBMM\HIGHEMS3.SYS 4


NOTE: If you have used the command DOS=UMB or
DOS=HIGH,UMB with HIGHUMM.SYS to let DOS 5.0
manage the Upper Memory Blocks, you must limit
how much upper memory HIGHUMM can use so that
some will be available for HIGHEMS3/HIGHEMS4.



4.2 The /NOSPLIT Option

HIGHEMS3.SYS and HIGHEMS4.SYS automatically load themselves into
upper memory, putting as much of their executable code as
possible into the HMA or bank-switch memory if available. You



Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 10


can prevent it from putting part of their code in bankswitch
memory by using the /NOSPLIT option, as in:

DEVICE=C:\TLBMM\HIGHEMS3.SYS /NOSPLIT


4.3 The /RESTRICT Option

This option restricts the placement of the EMS page frame to a
128k region of upper memory that does not contain a 16-bit
adapter. For a detailed discussion of why these regions may
need to be restricted and how to control the restrictions, see
the discussion on the RESTRICT option of LASTBYTE.SYS in the
file LASTBYTE.DOC.








































Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 11


CHAPTER 5 - HIGHENV.EXE


HIGHENV is a utility that moves the master environment of the
command processor (typically COMMAND.COM) out of conventional
memory and into High-DOS memory. It can also be used to change
the size of the environment at any time.


WARNING: HIGHENV is incompatible with Novell.



NOTE: The /U option of 4DOS is an alternative
method for placing the master environment in
upper memory. You don't need to use HIGHENV if
you are already using the /U option of 4DOS.



5.1 The HIGHENV Report

If used without a command line option, HIGHENV simply reports
the location, capacity, and length of the master environment.
If the environment has not been moved from low memory, it also
examines and reports potential references to the environment
that exist within the command processor. If one or more are
located, the first line(s) of output from HIGHENV will be:

"Potential command processor patch at location XXXX."

where "XXXX" will vary from one command processor to another.
HIGHENV should be used this way at least once to determine what
/PATCH options (described below) may be required.


5.2 The /PATCH Option

To move the master environment into upper memory, you must use
one or more /PATCH options to specify locations in the command
processor that must be modified. (If there are no locations in
the command processor that need to be modified, use
/PATCH=NONE.) The /PATCH option may only be specified once,
when the environment is moved from low to upper memory. The
patch locations are recorded in upper memory and are
automatically adjusted if the environment is repositioned within
upper memory as the result of a subsequent use of HIGHENV to
resize the environment.

A maximum of four command processor locations to be patched may
be specified in either of two ways:



Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 12



C:\TLBMM\HIGHENV 256 /PATCH=1057 /PATCH=1536

-or-

C:\TLBMM\HIGHENV 256 /PATCH=1057,1536

Each of the patch numbers specify a location in the memory image
of the command processor; these locations contain the segment
address of the master environment, and must be modified to point
to the new master environment in upper memory. Possible values
to be used are restricted to those locations reported when
HIGHENV is run with no command line options and before the
environment has been moved into upper memory.

COMMAND.COM usually contains only one such location that needs
to be patched; 4DOS contains none (use /PATCH=NONE). (Note:
HIGHENV always patches the environment address stored in the
program segment prefix of the command processor - this patch
does not need to be specified.)


5.3 Setting the Environment Size

The size option is simply a number that specifies the extra
space in bytes to be allocated to accomodate additional
environment strings besides those already established. If the
size option is omitted, the size of the environment block (and
thus its capacity for growth) will not be changed.


WARNING: The SET command of COMMAND.COM norm-
ally warns you if you run out of space in the
master environment. However, if you have used
HIGHENV to move it into upper memory, this
safeguard no longer exists - you'll just write
over the next thing in upper memory! Be sure
to check the HIGHENV report to be sure that you
have enough extra space in the environment so
that this won't occur.


Once moved into upper memory, the size of the environment may be
changed by using HIGHENV with simply a size option. For
example, to shrink the environment to only enough room for the
current environment strings, use:

C:\TLBMM\HIGHENV 0

Or to change the growth capacity to allow for the current
environment strings plus 100 bytes more, use:



Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 13



C:\TLBMM\HIGHENV 100




















































Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 14


CHAPTER 6 - HIGHFILE.EXE


This program is used to implement most of the CONFIG.SYS
"FILES=n" directive in High-DOS memory rather than in
Conventional memory. The amount of memory required by the
"FILES=n" directive is approximately 'n' times 59 bytes. Set
the minimum of FILES=8 in the CONFIG.SYS file, and then place
the rest in High-DOS memory. For example, the command:

C:\TLBMM\HIGHFILE 42

will add an additional FILES=42 (2500 bytes) in High-DOS memory,
for a total of FILES=50.


NOTE: Windows 3.0 may not run in 386 Enhanced
mode with FILES in upper memory.




































Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 15


CHAPTER 7 - HIGHHOLE.EXE


HIGHHOLE is a utility program that finds unused space ("holes")
in ROMs. A "hole" is defined as a sequence of at least 64
bytes, all having the same value, and usually corresponds to
unused, left-over space in the ROM. If the ROM is shadowed,
this space can usually be converted into free High-DOS memory by
using the HOLE option of LASTBYTE.SYS.

Another part of the contents of a ROM that may be used are the
character generator font tables for unused display modes. For
example, the EGA and VGA adapter ROM bios contains a font table
for smaller than usual characters consisting of an 8x8 matrix of
dots.

Holes are often less than 1k in size, but occassionally much
larger. Since The Last Byte Memory Manager uses a "best fit"
strategy when allocating Hi-DOS memory, even the smaller holes
can become useful to hold the master environment created by
HIGHENV, the markers of HIGHMARK, or with utilities like
HIGHDISK and HIGHSPLR that can distribute their memory among
several small pieces. In addition, The Last Byte Memory Manager
will use the smallest holes for memory control blocks (MCB's)
that must be allocated for Bank-Switch memory needs.


7.1 The HOLE=: Option of LASTBYTE.SYS

HIGHHOLE merely locates probable holes, and suggests the
corresponding HOLE options to be used with LASTBYTE.SYS, as in:

DEVICE=C:\TLBMM\LASTBYTE.SYS HOLE=C7F3:176 .....


NOTES: The and parameters are
different from other options: is in bytes
and must be a multiple of 16; may be any
hexadecimal value from A000 to FFFF.


You must modify your LASTBYTE.SYS configuration to include the
HOLE options that you want to use from the HIGHHOLE report.
There's no gaurantee that all of the HOLE options suggested by
HIGHHOLE will work on you computer, so it's a good idea to try
them one at a time.

HIGHHOLE will not suggest a HOLE option if the corresponding ROM
area is not shadowed, or if the corresponding shadow ram is not
controlled by The Last Byte Memory Manager.




Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 16


HIGHHOLE also reports all the character generator font tables as
possible hole options. If you use any software that causes the
video mode to be reset (such as the "MODE CO80" or "MODE MONO"
commands, or such as exiting from Windows), then the video bios
will attempt to access one of the font tables. Those marked as
"(DEFAULT)" in the HIGHHOLE report are needed to reset standard
display modes and therefore are not good choices for HOLE
options; others font tables may usually be used as holes if you
never use their corresponding display modes.


NOTE: Use of LASTBYTE.SYS's HOLE option will
cause warm boots to be converted to cold boots.









































Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 17


CHAPTER 8 - HIGHKEY.EXE


HIGHKEY is a advanced command line editor that can recall and
edit previous commands. HIGHKEY is similar to the DOSKEY
program in DOS 5, but with filename completion and the unique
ability to store the command line history and much of its own
executable code in Bank-Switch memory. It does not support
DOSKEY macros, or the editing keys F7, F9, Alt+F7, or Alt+F10.

To install HIGHKEY, simply enter it as a command at the prompt:

C:\TLBMM\HIGHKEY

This will allocate a recall buffer with a default size of 512
bytes, but which can be changed at any time with the use of a
command line option.


8.1 The /BUFSIZE=n Option

This option empties the recall buffer, and resizes it to 'n'
bytes. If 'n' is replaced by the word MAXIMUM, the recall
buffer size will use all available memory up to 65535 bytes.


8.1.1 The HMA subparameter

Appending ",HMA" to the end of the /BUFSIZE=n option as in:

/BUFSIZE=1000,HMA

tells HIGHKEY to try to put its command line recall buffer into
the HMA. Doing so, however, prevents future resizing of the
buffer.


8.2 The /INSERT and /OVERSTRIKE Options

These options set the default typing mode to insert or
overstike, respectively.


8.3 The /HISTORY Option

This option displays the contents of the command line recall
buffer on the screen.







Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 18


8.4 Preloading the History Buffer

This option consists of simply a filename given on the command
line, optionally preceeded by a drive and directory
specification. It may be used together with the /HISTORY option
to write the recall buffer to a file, as in:

C:\TLBMM\HIGHKEY /HISTORY

Or used without the /HISTORY option to load the recall buffer
from a file, as in:

C:\TLBMM\HIGHKEY


8.5 The /NOSPLIT Option

HIGHKEY automatically loads itself into upper memory, putting as
much of its executable code as possible into the HMA or
bank-switch memory if available. You can prevent it from doing
this by using the /NOSPLIT option, as in:

C:\TLBMM\HIGHKEY /NOSPLIT


8.6 Editing Commands

Some of the HIGHKEY editing commands use what is known as the
"template". The template is initialized to a copy of the
previous command line, but may be modified by one or more of the
editing commands.

Left Arrow Moves the cursor back one character.

Right Arrow Moves the cursor forward one character.

Up Arrow Recalls the previous command and stores
it in the template.

Down Arrow Recalls the next command and stores it
in the template.

PgUp Recalls the oldest command and stores it
in the template.

PgDn Recalls the most recent command and stores
it in the template.

Ctrl+Left Arrow Moves the cursor back one word.





Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 19


Ctrl+Right Arrow Moves the cursor forward one word.

Home Moves the cursor to the beginning of
the command line.

End Moves the cursor to the end of the
command line.

Esc Erases the command line; does not affect
the template.

Ins Toggles insert versus overwrite mode.

Backspace Deletes the character to the left of the
cursor; does not affect the template.

Del Deletes the character at the cursor; does
not affect the template.

Ctrl+End Deletes from the cursor to the end of
the line; does not affect the template.

Ctrl+Home Deletes from the beginning of the line
up to but not including the cursor; does
not affect the template.

F1 Copies one character from the template.

F2 Waits for a keypress, then inserts charac-
ters from the template up to but not in-
cluding the first occurrence of that key.

F3 Copies the remainder of the template to
the command line.

F4 Waits for a keypress, then deletes charac-
ters from the template up to but not in-
cluding that key. The template is then
displayed on the command line.

F5 Copies the command line to the template
and then erases the command line.

F6 Inserts an end-of-file character (Ctrl+Z).

F8 Searches for the next command that matches
the characters in the command line up to
the position of the cursor, then copies
that command to the template.





Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 20


Tab Searches for a file on the disk whose name
matches the partial filespec given by the
text indicated by the cursor. If found,
the filespec is completed on the command
line.

















































Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 21


CHAPTER 9 - HIGHMARK.EXE and HIGHUNDO.EXE


Sometimes it can be useful to remove one or more TSR's from
memory, either because you no longer want to use the features
that they provide or perhaps in order to make room for other
software.

In order to be able to remove a group of TSR's from upper
memory, they must be be marked. To mark them, run HIGHMARK once
before you use HIGHTSR to load the TSR's. Then later, simply
run HIGHUNDO - the mark and all of its associated TSR's will be
removed.

HIGHMARK may be executed more than once to establish multiple
levels of TSR's to be removed. Each execution of HIGHMARK
places another mark in memory with a unique mark number. Every
TSR loaded by HIGHTSR is automatically associated with the most
recent execution of HIGHMARK. You can use HIGHMEM to see the
marks, their mark number, and the set of TSR's associated with
the mark. Every execution of HIGHUNDO will then remove the set
of TSR's associated with the most recent HIGHMARK.

You may specify a mark level on the command line of HIGHUNDO.
This will cause it to remove all the TSR's and marks whose mark
number is greater than or equal to the number on the command
line.



























Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 22


CHAPTER 10 - HIGHRSVD.EXE and HIGHRSVD.SYS


HIGHRSVD helps control the allocation of upper memory in The
Last Byte Memory Manager. Basically, it is used to reserve and
later release selected blocks of memory. There are two versions
of HIGHRSVD, a device driver (HIGHRSVD.SYS) for use in
CONFIG.SYS, and an application program (HIGHRSVD.EXE) for use
outside of CONFIG.SYS.

Each time HIGHRSVD is invoked, it begins by releasing any memory
that had been reserved by a previous invocation of HIGHRSVD.
Then if any command line options are specified, each is used to
reserve a block of memory.


10.1 Reserving High-DOS Memory

Blocks of High-DOS memory can be reserved by specifying their
size as parameters on the command line as in:

DEVICE=C:\TLBMM\HIGHRSVD.SYS 10000 5000 2000

-or-

C:\TLBMM\HIGHRSVD 10000 5000 2000

Both of the above examples will reserve three blocks of memory:
one of 10,000 bytes, a second block of 5,000 bytes, and a third
block of 2,000 bytes. HIGHRSVD will attempt to satisfy each
request by using a "best fit" strategy; that is, it will reserve
a block a memory using the smallest free block that is large
enough to satisfy the request. For example, if you have three
free blocks of 1000, 5000, and 10000 bytes respectively, an
option of 4000 will reserve 4000 bytes from the free block of
5000.


10.2 The HIGH Suboption

By default, the reserved block will be positioned at the low end
of the selected free block's address space; you may position the
reserved block at the top of the address space by adding ",HIGH"
to the size specification, as in:

C:\TLBMM\HIGHRSVD 4000,HIGH








Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 23


CHAPTER 11 - HIGHSPLR.EXE


HIGHSPLR is a interrupt-driven print spooler that creates a
print buffer in upper memory. Once installed, programs that
send output to the printer are no longer held up waiting for the
printer, but rather simply send their output to the buffer.
Characters in the buffer are then sent to the printer by the
resident portion of HIGHSPLR while your computer is free to do
other work.

Unlike the DOS printer spooler (PRINT), HIGHSPLR is driven by
the printer hardware interrupt line that signals printer
"ready", rather than the timer tick (that only interrupts 18
times per second). Unlike PRINT, this allows full-speed
transfers (e.g., up to about 8,000 cps) to the printer even
while executing other programs.

HIGHSPLR tries to place its buffer in Bank-Switch memory, but
will use High-DOS memory if a sufficient amount of Bank-Switch
memory is not available.

The command line syntax for HIGHSPLR is given below.

C:\TLBMM\HIGHSPLR [opt] [opt] ... [opt]

All parameters are optional and may be specified in any order.
All of the options except LPT, COM, and IRQ may be abbreviated
by their first letter.


11.1 Specifying the Buffer Size

The size of the print buffer will default to all available
Bank-Switch and High-DOS memory. This option may be used to use
a smaller buffer, or to resize the buffer later, as in:

KBYTES=20


11.1.1 The HMA subparameter

Appending ",HMA" to the end of the KBYTES=n option as in

KBYTES=20,HMA

tells HIGHSPLR to use the HMA first when allocating its command
line recall buffer. Doing so, however, limits future resizing
of the buffer to a size no smaller than the amount first
allocated within the HMA .




Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 24



11.2 Specifying the Logical Device

HIGHSPLR supports both parallel and serial printers, but
defaults to LPT1. Multiple copies of HIGHSPLR can be installed
to support more than one printer. You can specify the logical
device by placing one of the following options on the command
line:

LPT1 LPT2 LPT3 COM1 COM2 COM3 COM4

HIGHSPLR automatically determines the physical i/o port address
from the device name (e.g., LPT2), but you can override this
with the PORT option, as in:

PORT=#


11.3 Specifying the Hardware Interrupt

HIGHSPLR determines a default physical interrupt vector from the
device name (e.g., LPT2), but you can override this by using one
of the following options on the command line:

IRQ0 IRQ1 IRQ2 IRQ3 IRQ4 IRQ5 IRQ6 IRQ7

If you would rather use polling instead of interrupt-driven I/O,
place the word "POLL" on the command line and do not use one of
the IRQ# options. This may be necessary if another parallel
port is in use for some other purpose (e.g., with
Lantastic/Z).


11.4 Specifying Flow Control

Serial ports usually require some form of flow control.
HIGHSPLR does not implement flow control by default. To have it
use flow control, place one of the following options on the
command line:

FLOW=, where is selected from:

XON DTR RTS NONE (default)


11.5 The MONITOR Option

HIGHSPLR has a unique "monitor" option. While output is being
sent to the printer, you can monitor the actual transfer rate by
entering the command,




Copyright (C) 1990-92, Key Software Products. All Rights Reserved


Nov 06, 1993 ADVANCED UTILITIES 25


C:\TLBMM\HIGHSPLR MONITOR

The monitor operation may be terminated at any time by pressing
a key, or will automatically terminate when the print buffer has
been emptied. Once terminated, HIGHSPLR will display the
maximum and average transfer rates measured during the monitor
operation.


11.6 The RESET Option

The RESET option provides a way to cancel printing from the
buffer (and do a form-feed) at any time.


11.7 The NOTEST Option

The NOTEST option disables the default test for functionality of
the physical port that occurs when HIGHSPLR is first installed.



































Copyright (C) 1990-92, Key Software Products. All Rights Reserved



 December 10, 2017  Add comments

Leave a Reply