home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-08-11 | 48.1 KB | 1,563 lines |
-
-
-
-
-
- ADVANCED UTILITIES
-
- for
-
- THE LAST BYTE MEMORY MANAGER (tm)
-
- An Upper Memory Manager for MS-DOS
-
-
-
-
-
-
- Version 2.11
-
-
-
-
-
-
-
-
-
-
- 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=<size> 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=<number> 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=<base>:<size> Option of LASTBYTE.SYS .. 15
-
- CHAPTER 8 - HIGHKEY.EXE ............................ 16
- 8.1 The /BUFSIZE=n Option ........................ 16
- 8.2 The /INSERT and /OVERSTRIKE Options ............ 16
- 8.3 The /HISTORY Option .......................... 16
- 8.4 Preloading the History Buffer ................. 16
- 8.5 The /NOSPLIT Option .......................... 17
- 8.6 Editing Commands ............................ 17
-
- CHAPTER 9 - HIGHMARK.EXE and HIGHUNDO.EXE ............ 19
-
- CHAPTER 10 - HIGHRSVD.EXE and HIGHRSVD.SYS ........... 20
- 10.1 Reserving High-DOS Memory ................... 20
-
-
-
-
-
-
- TABLE OF CONTENTS
-
-
- 10.2 The HIGH Suboption .......................... 20
-
- CHAPTER 11 - HIGHSPLR.EXE .......................... 21
- 11.1 Specifying the Buffer Size ................... 21
- 11.2 Specifying the Logical Device ................ 21
- 11.3 Specifying the Hardware Interrupt ............ 22
- 11.4 Specifying Flow Control ..................... 22
- 11.5 The MONITOR Option .......................... 22
- 11.6 The RESET Option ............................ 22
- 11.7 The NOTEST Option ........................... 23
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Aug 11, 1992 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=<size> 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=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=HIGHAPND.SYS ON
-
- To subsequently disable the appendage during CONFIG.SYS
-
-
-
- Copyright (C) 1990-92, Key Software Products. All Rights Reserved
-
-
- Aug 11, 1992 ADVANCED UTILITIES 2
-
-
- processing, use:
-
- DEVICE=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:
-
- HIGHAPND ON
-
- and to subsequently disable the appendage, use:
-
- 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:
-
- A>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
- HIGHAPND OFF
- WIN %1 %2
- HIGHAPND ON
-
-
- 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
-
-
- Aug 11, 1992 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
-
-
- Aug 11, 1992 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=<number> 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; <number> is a number from 1-99. For
- example, the command:
-
- HIGHBFRS BUFFERS=20
-
- will establish twenty buffers (about 10k) in High-DOS memory.
-
-
-
- Copyright (C) 1990-92, Key Software Products. All Rights Reserved
-
-
- Aug 11, 1992 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:
-
- 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:
-
- 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
-
-
- Aug 11, 1992 ADVANCED UTILITIES 6
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Copyright (C) 1990-92, Key Software Products. All Rights Reserved
-
-
- Aug 11, 1992 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=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=HIGHDISK.SYS [KBytes] [BytesPerSector] [RootDirEntries]
-
- For example, the command:
-
- DEVICE=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 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
-
-
- Aug 11, 1992 ADVANCED UTILITIES 8
-
-
- DEVICE=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=HIGHDISK.SYS $PRELOAD.DAT $C:\TLBMM\HIGHTSR.EXE
-
- An "indirect" file (e.g., DEVICE=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
-
-
- Aug 11, 1992 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=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=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 bank-switch memory if available. You can prevent
-
-
-
- Copyright (C) 1990-92, Key Software Products. All Rights Reserved
-
-
- Aug 11, 1992 ADVANCED UTILITIES 10
-
-
- it from putting part of their code in bankswitch memory by using
- the /NOSPLIT option, as in:
-
- DEVICE=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
-
-
- Aug 11, 1992 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
-
-
- Aug 11, 1992 ADVANCED UTILITIES 12
-
-
-
- HIGHENV 256 /PATCH=1057 /PATCH=1536
-
- -or-
-
- 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:
-
- 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
-
-
- Aug 11, 1992 ADVANCED UTILITIES 13
-
-
-
- HIGHENV 100
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Copyright (C) 1990-92, Key Software Products. All Rights Reserved
-
-
- Aug 11, 1992 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:
-
- 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
-
-
- Aug 11, 1992 ADVANCED UTILITIES 15
-
-
- CHAPTER 7 - HIGHHOLE.EXE
-
-
- HIGHHOLE is a utility program that finds unused space ("holes")
- in shadowed ROMs. A "hole" is defined as a sequence of at least
- 256 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
- using the HOLE option of LASTBYTE.SYS.
-
- These holes are often less than 1k in size, but sometimes 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=<base>:<size> Option of LASTBYTE.SYS
-
- HIGHHOLE merely locates probable holes, and suggests the
- corresponding HOLE options to be used with LASTBYTE.SYS, as in:
-
- DEVICE=LASTBYTE.SYS HOLE=C7F3:176
-
- ┌─────────────────────────────────────────────────┐
- │ NOTES: The <base> and <size> parameters are │
- │ different from other options: <size> is in bytes│
- │ and must be a multiple of 16; <base> 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. No
- option will be suggested for a hole if (1) the corresponding ROM
- area is not shadowed, (2) the hole is in the Bios Data Area
- (FE05-FFFF), or (3) the corresponding shadow ram is not
- controlled by The Last Byte Memory Manager.
-
- ┌─────────────────────────────────────────────────┐
- │ 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
-
-
- Aug 11, 1992 ADVANCED UTILITIES 16
-
-
- 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:
-
- A>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.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.
-
-
- 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:
-
- HIGHKEY /HISTORY <filename>
-
- Or used without the /HISTORY option to load the recall buffer
- from a file, as in:
-
- HIGHKEY <filename>
-
-
-
- Copyright (C) 1990-92, Key Software Products. All Rights Reserved
-
-
- Aug 11, 1992 ADVANCED UTILITIES 17
-
-
-
-
- 8.5 The /NOSPLIT Option
-
- HIGHKEY automatically loads itself into upper memory, putting as
- much of its executable code as possible into bank-switch memory
- if available. You can prevent it from doing this by using the
- /NOSPLIT option, as in:
-
- 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.
-
- 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.
-
-
-
-
-
- Copyright (C) 1990-92, Key Software Products. All Rights Reserved
-
-
- Aug 11, 1992 ADVANCED UTILITIES 18
-
-
- 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.
-
- 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
-
-
- Aug 11, 1992 ADVANCED UTILITIES 19
-
-
- 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
-
-
- Aug 11, 1992 ADVANCED UTILITIES 20
-
-
- 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=HIGHRSVD.SYS 10000 5000 2000
-
- -or-
-
- 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:
-
- HIGHRSVD 4000,HIGH
-
-
-
-
-
-
-
-
- Copyright (C) 1990-92, Key Software Products. All Rights Reserved
-
-
- Aug 11, 1992 ADVANCED UTILITIES 21
-
-
- 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.
-
- 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.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
-
-
-
- Copyright (C) 1990-92, Key Software Products. All Rights Reserved
-
-
- Aug 11, 1992 ADVANCED UTILITIES 22
-
-
- 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=<type>, where <type> 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,
-
- A>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.
-
-
-
-
-
-
-
-
- Copyright (C) 1990-92, Key Software Products. All Rights Reserved
-
-
- Aug 11, 1992 ADVANCED UTILITIES 23
-
-
- 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
-