home *** CD-ROM | disk | FTP | other *** search
-
- ================================================================================
- FREELOAD.SYS : Ver. 1.4, Copyright (1992) by Philip B. Gardner
- ================================================================================
-
- FREELOAD.SYS is a device driver which will help maximize the use of low
- memory by releasing memory usually reserved in low memory by LOADHI.SYS
- from Quarterdeck Office Systems.
-
- FREELOAD.SYS tracks the high memory device loader operations and if it
- is safe to release the low memory after each device initiates, the low
- memory is released and the driver in upper memory is linked into the DOS
- device chain.
-
- FREELOAD.SYS can be used to save 1-2k in a typical configuration. The
- actual amount of memory saved depends upon on the number and type of
- device drivers loaded high.
-
- Support is provided for:
-
- * specifying the name and path of the device loader
- * both character and block devices
- * character drivers which contain an unlimited number of devices
- * DOS Versions 3.1 - 3.31, DOS 4.x, and DOS 5.x (or better?)
-
- ================================================================================
-
- (Requirements)::
-
- * 286 processor or better
- * Requires MS-DOS Version 3.10 or better
-
- ================================================================================
-
- (Installation)::
-
- (CONFIG.SYS)::
-
- Installation of FREELOAD.SYS requires modifying the contents of
- your CONFIG.SYS file.
-
- Add a DEVICE= line for FREELOAD.SYS in your config.sys. FREELOAD
- should be loaded immediately after the XMS and UMB memory manager
-
- DEVICE=(Memory Manager)
- DEVICE=FREELOAD.SYS [options]
-
- The default loader pathname is "C:\QEMM\LOADHI.SYS". If FREELOAD
- cannot open this pathname, a message will displayed alerting you
- to "Use /Fpathname to override." An example which uses this switch
- is shown below:
-
- DEVICE=FREELOAD.SYS /F D:\QEMM\LOADHI.SYS
-
- (Tip)::
-
- If you prefer that a particular device driver is not affected by
- the operation of FREELOAD, place the DEVICE= for that device above
- the DEVICE=FREELOAD.SYS entry. This may be necessary in the case
- that a particular driver is not compatible with FREELOAD.
-
- ================================================================================
-
- (Syntax)::
-
- The only thing to remember about syntax for the command line is
- that just about anything works. What this means is that you
- should be able to type in the options on the command line the
- way they make sense to you.
-
- To illustrate this point, the following command line example
- is mutated several different ways.
-
- DEVICE=FREELOAD.SYS /R+ /P+ /FC:\QEMM\LOADHI.SYS
- DEVICE=FREELOAD.SYS -R+ -P+ -F C:\QEMM\LOADHI.SYS
- DEVICE=FREELOAD.SYS R+ P+ F C:\QEMM\LOADHI.SYS
- DEVICE=FREELOAD.SYS R+P+FC:\QEMM\LOADHI.SYS
- DEVICE=FREELOAD.SYS -R+P+FC:\QEMM\LOADHI.SYS
-
- ... and so on. There must be an EOL or space following the
- filename paramter the /Fpathname switch
-
- (Switch Options)::
-
- (REPORT):: R[+ or -] (toggle: default -)
-
- Use /R+ to enable a report of the allocation status
- of FREELOAD.SYS
-
- (PAUSE):: P[+ or -] (toggle: default -)
-
- Use /P+ enable a pause after the above report
-
- (NOPAUSE):: N[+ or -] (toggle: default -)
-
- Use /N+ to never pause after the report, even if there
- are errors. This switch can be used if your configuration
- generates a warning or error message which you choose to ignore.
-
- (FILEPATH):: F[pathname] (string: default C:\QEMM\LOADHI.SYS)
-
- Use /Fpathname to specify the filename and path of the device
- loader provided with your upper memory manager. For example, if
- this device driver is on drive D:
-
- DEVICE=FREELOAD.SYS /FD:\QEMM\LOADHI.SYS
-
- If FREELOAD cannot find this file, it will not load.
-
- (DRIVE TABLE SIZE):: Dnn (value: nn = 88)
-
- Use /Dnn to set the Drive Table Size. Values other than the
- MS-DOS 4.0 - 5.0 Drive Table Size of 88 are only allowed if the
- true MS-DOS version is greater than 5.0. The Drive Table Size
- for DOS 3.x is 81. The /Dnn switch is only necessary if FREELOAD
- can't determine the Drive Table Size automatically.
-
- (SHRINK):: S[+ or -] (toggle: default -)
-
- FREELOAD normally takes approximately 1K of high memory. Use /S+
- to reduce this requirement to 16 bytes just before the shell is
- loaded from CONFIG.SYS. Shrinking may cause problems with high
- memory optimizers, but the switch can be safely used after the
- system is optimized, to free another 1K of high memory.
-
- * everything in square brackets "[]" is optional
-
- (CONFIG.SYS Line)::
-
- DEVICE=FREELOAD.SYS [/ or -][R[+]P[+]N[+]S[+]Fpathname]
-
- device mode default: /R-P-N-S-FC:\QEMM\LOADHI.SYS
-
- * No Report status messages
- * No Pause after report
- * Pause on errors or warnings
- * Default Loader Pathname = "C:\QEMM\LOADHI.SYS"
-
- ================================================================================
-
- (Report Format)::
-
- FREELOAD.SYS : Ver. 1.4, Copyright (1992) by Philip B. Gardner
- ERROR : (Error Messages)
- WARNING : (Warning Messages)
- ADVICE : (Advisory Messages)
- : (Report Messages)
- : (Allocation Status)
- PAUSE : Press any key to continue...
-
- ================================================================================
-
- (Error Messages)::
-
- MS-DOS version 3.10 or above is required
- XMS manager not installed
- DOS version is not compatible
- Can't load in High Memory
- Device Loader not found
-
- ================================================================================
-
- (Warning Messages)::
-
- Unknown option in command line
- Extra characters on command line
- Drive Table Size not determined or out of range
-
- ================================================================================
-
- (Advisory Messages)::
-
- Use /Fpathname to override
- Use /Dnn switch to set Drive Table size
-
- ================================================================================
-
- (Report Messages)::
-
- Drive Table Size set to 00h
- [pathname] (/Fpathname parameter if error)
-
- ================================================================================
-
- (Allocation Status)::
-
- FREELOAD moved to 0000
- Not enough Hi Memory for FREELOAD
-
- ================================================================================
-
- (Changes)::
-
- (Version 1.1)::
-
- 1) Fixed problem where character devices were skipped if a
- block device was loaded first
-
- 2) Added support for block devices. This grew the size of
- FREELOAD to 880 bytes so FREELOAD now shrinks to 16 bytes
- when finished. This frees a .8k block of upper memory
- which is not needed after all devices are loaded.
-
- (Version 1.2)::
-
- 1) Added support for character drivers which contain multiple
- devices. There is a requirement for 16 bytes of low
- memory for a multiple device driver, but this 16 bytes
- supports an unlimited number of devices within the driver.
- Without the 16 bytes, DOS believes the initialization of the
- driver has failed and only the first device is linked.
-
- (Version 1.3)::
-
- 1) Fixed problem with failing to build a Drive Parameter Block
- when a multiple device driver ended with a block device.
-
- 2) Changed automatic reduce to a command line option. FREELOAD
- now takes 1K bytes high. If the /S+ (shrink option is used)
- this size is reduced to 16 bytes just before the shell is
- loaded.
-
- (Version 1.4)::
-
- 1) Improved multiple device failure mode. If a multiple device
- driver has begun the initiate phase and fails, the high device
- is left unlinked, and the loader is left in place with memory
- and the device chain set to the length of the last successful
- initialization. This method more closely emultates DOS.
-
- 2) Added check that resets FREELOAD if the loader doesn't load the
- device in high memory successfully.
-
- 3) Optimized code to reduce memory requirement back to 1K
-
- (Version 1.5)::
-
- 1) Added base 10 display of Drive Table Size message
-
- ================================================================================
-