home *** CD-ROM | disk | FTP | other *** search
- PC-DOS 4.0
-
-
- Version 4.00 of IBM's PC-DOS uses EMS memory with BUFFERS=, FASTOPEN,
- and VDISK, but has problems. These comments apply to both the 17 Jun
- 88 and 3 Aug 88 releases.
-
-
- Overview
- --------
-
- If PC-DOS 4.00 detects an EMS manager in the system and you request
- DOS to use EMS memory, it reserves two EMS mappable physical pages for
- its exclusive use. Unfortunately, PC-DOS 4.00 doesn't properly
- identify the pages it reserves. If you are using the default settings
- for BlueMAX, DOS steals the top 32 KB of system board memory. This
- error along with others which have not been fully explained, can cause
- the system to crash. This problem occurs only if you request DOS to
- use EMS memory.
-
- Because of these and other unexplained problems, we do NOT recommend
- enabling PC-DOS 4.00's use of EMS memory. All other EMS applications
- appear to work correctly, it's just DOS that misbehaves.
-
- In particular, the following commands and switches enable DOS's use of
- EMS memory:
-
- BUFFERS=nn /X
- FASTOPEN /X
- Device=VDISK.SYS /X
-
- We recommend that you do NOT use the /X switch with any of these
- commands. Each of these commands appears to work correctly without
- the /X switch. If we haven't scared you off as yet, more details
- follow on selected problems.
-
-
- BUFFERS
- -------
-
- The BUFFERS= command in CONFIG.SYS can be told to use EMS memory for
- its scratch storage with the /X switch. When this is in effect, DOS
- uses the second of the two reserved pages to swap buffer memory. When
- disk activity occurs, DOS maps its buffer memory into the last page
- (the top 16 KB of system board memory), checks for a match in the
- buffers, and then returns to its caller WITHOUT RESTORING THE PREVIOUS
- MAPPING. This has the effect of setting to zero the top 16KB of
- system board memory. This situation occurs first when loading
- COMMAND.COM before the AUTOEXEC.BAT file is processed. The system
- locks up shortly thereafter.
-
- To overcome this problem, define at least two EMS mappable pages above
- the display adapter. If your system has a monochrome display adapter,
- use INCLUDE=32; otherwise, use INCLUDE=B000-B800.
-
-
- FASTOPEN
- --------
-
- Similar to the BUFFERS command, the FASTOPEN.EXE program uses EMS
- memory when the /X switch is specified. At least one bug in the
- program causes it to crash. FASTOPEN can be patched to overcome this
- problem, but even then, because of another bug, it still won't use EMS
- memory if eight or more EMS mappable pages are defined (other than the
- two reserved pages). Instead, FASTOPEN inexplicably reports "Expanded
- memory not available".
-
- Normally, BlueMAX defines all but the first 64 KB of conventional
- memory as EMS mappable to support multitasking programs. To reduce
- BlueMAX's EMS mappable pages and thus allow FASTOPEN to use EMS memory,
- specify EXCLUDE=1000-A000. This option has the effect of eliminating
- all EMS mappable conventional memory. As a result, multitasking
- programs such as Windows, Omniview, and DESQview will not multitask.
-
- We do NOT recommend using the /X switch with FASTOPEN.
-
- Nonetheless, for the sake of completeness, the following steps can be
- taken to patch FASTOPEN to avoid crashing when /X is specified. In
- conjunction with EXCLUDE=1000-A000, this patch allows FASTOPEN to use
- EMS memory, but multitasking programs won't be supported.
-
- 1. Backup the original file:
-
- copy fastopen.exe *.old
-
- 2. Patch the file
-
- copy fastopen.exe f
-
- debug f
- -u 2C65 l5
- xxxx:2C65 B80058 MOV AX,5800
- xxxx:2C68 CD67 INT 67
- -e 2C66 1
- -u 2C65 l5
- xxxx:2C65 B80158 MOV AX,5801
- xxxx:2C68 CD67 INT 67
- -w
- Writing 3FAE bytes
- -q
-
- 3. Copy the file back to its original name
-
- copy f fastopen.exe
-