NewDeal Technical Support Document 267

MORE DOS TIPS


Miscellaneous notes about using DOS commands and about various DOS error messages

APPEND

The DOS command APPEND allows adding specified directories or drives to the search path for regular files (not just executables like the PATH command does). This can cause problems for NewDeal since even the low-level Int 21h file-open command is affected. If the DOS command APPEND is used and you copy a file with the same name as a file that exists within the APPEND path, then it might overwrite the file that already exists somewhere on the APPEND path. What happens is that when NewDeal tries to create a new file, the routine FileCreate calls FileOpen to see if the file already exists and can be opened. Since the file doesn't exist in the current directory, APPEND kicks in and opens the file on the APPEND path, and then NewDeal merrily overwrites the existing file. We recommend that you do not run NewDeal when APPEND is in use.

BUFFERS, do you really need 30?

When using a disk cache like SmartDrv, SuperPCK, NCache, and so forth, a lower buffer count may be more efficient. NewDeal sets BUFFERS = 30 during installation, but you may wish to edit the CONFIG.SYS file by hand and reduce the number to 10, 8, 5 or 4. For more information about the optimum figure for your system, consult your DOS manual or the documentation for your cache software. If you experience any problems after reducing the number of buffers, try raising the number back to the recommended minimum of 30 or higher.

Cannot delete directory

If you get the error message Cannot delete directory, it may not be empty when the directory is in fact empty, check to see if the directory itself has been set to Read-Only.

CHKDSK, swap file wrong size

CHKDSK can return an error about the length of the swap file simply because the NewDeal software has crashed. It does not indicate an incompatibility with the version of DOS or anything else significant.

COMSPEC, Boot from a floppy

When you boot up your PC, DOS sets up a system variable called COMSPEC which stores the location of COMMAND.COM. COMSPEC can be set during boot up though, so if you wish to boot from a floppy but have your PC access COMMAND.COM from C:\DOS\COMMAND.COM you can do so by putting the following line in your floppy's CONFIG.SYS:
SHELL=C:\DOS\COMMAND.COM C:\DOS /E:256 /P
and/or put the following line in your floppy's AUTOEXEC.BAT:
SET COMSPEC=C:\DOS\COMMAND.COM
After you do this, you only need IO.SYS and MSDOS.SYS on your floppy and COMMAND.COM in C:\DOS. If you want to examine COMSPEC, type SET at the DOS prompt.

CRC errors

CRC stands for Cyclical Redundancy Check. When the computer moves data from one place (hard drive, floppy, remote machine via modem) to another, it does this check to insure that what it got was what it expected to get. When the CRC check fails the user will get "CRC error" and maybe "unable to read from disk." This typically means that files are damaged. There might be CHKDSK errors. Somehow the data is getting corrupted. It could mean hardware problems.

DEBUG and SID

DR DOS has a debug clone called SID that has similar, though not the same, commands. For example, to set the OUT2 bit of COM2 (to get around the delay needed by some ports before an interrupt will actually make it onto the bus), in DEBUG, you would say
o2fc,8
but in SID, you would say
qo2fc,8
Entering things into memory is "more interesting" with SID. For example, to fix up the serial port entries, in DEBUG you might say
e40:0 f8 03 f8 02
but in SID, you would say
s40:0
f8
03
f8
02
.
This is because SID will display each byte and you must type in the new value, followed by a return, rather than having the bytes on the same line as the command. A period on a line by itself signals the end of entering data.

Disk Caches

Very early versions of the NewDeal operating system had trouble with some disk caches that have a "delayed write" feature. As it turns out, it was a bug in the EMS driver in versions 1.2 and earlier. The problem was corrected starting in version 1.2.8.

One of the system engineers has a friend who was having trouble running Windows on her laptop and thought maybe the 4 MB card (over and above the 2 MB on the motherboard) might be having some trouble. She could run New Deal, however, so they loaded up Perf and tried to get NewDeal to use 2 MB of extended memory, to see if writing to the 4 MB card produced software death. They worked at it for 10 minutes opening document after document after document, running through all the pages of each, and finally managed to get NewDeal to use 1.5 MB of memory.

When you've got extended or expanded memory, NewDeal already treats it as sort of a file cache for its documents. Given a choice between throwing out a clean block of memory [and having to load it back in from disk] or writing it out to extended/expanded memory, NewDeal will always choose to write it to the memory, until that memory fills up.

There are two things for which a cache is really nice:

  1. The mapping of 32-character names to DOS names and the enumeration of directory contents in general. NewDeal doesn't cache such things at all, so any help it can get from a disk cache is good.
  2. If your cache is big enough, most of the data that NewDeal needs to restart after running a DOS program remains in the cache (unless the DOS program did a lot of disk access) so restarting is lightning fast. On one computer, we give Super PCKwik 7 MB to play with (it gives NewDeal back half of that, though) and NewDeal restarts in under 2 seconds, usually, after running a DOS program. Your mileage may vary.

There is a quite noticeable difference in speed between NewDeal running with 384K of extended memory and no extended memory. As you get up to 2 MB of extra memory, it becomes much less noticeable, unless you're manipulating really large documents, or documents with a large number of ellipses in them (you don't want to know why).

On a 4 MB machine, we'd probably give 1 MB to the cache (whatever it happens to be), use some for filling in the space above 640K (of which NewDeal can make good use) and leave the rest for NewDeal to swap in.

A note about SMARTDRV in MS-DOS 6.0 The version of SMARTDRV that first shipped with MS-DOS 6.0 may let the DOS prompt reappear before the cache is done emptying. If you turn off the computer as soon as you see the DOS prompt, you might cause corruption of files that are not finished being written out from the cache. We recommend that customers not use SMARTDRV version 4.1 . Obtain SMARTDRV version 4.2 or newer, or upgrade to MS-DOS version 6.2 or higher.

Double DOS prompt

If you get two DOS prompts when exiting New Deal, like this:
C:\>
C:\>
here are some possible fixes:

EMM386 HIGHSCAN, NOEMS

The EMM386.EXE HIGHSCAN switch allows EMM386.EXE to map expanded memory pages or upper memory blocks (UMB) over portions of the upper memory area (UMA) used by system read-only memory (ROM).

If you use the HIGHSCAN switch on the DEVICE=C:\DOS\EMM386.EXE line in the CONFIG.SYS file, EMM386.EXE examines the system ROM area starting at memory location F000:0000. If EMM386.EXE determines that ROM is duplicated between F000h-F7FFh and F800h-FFFFh, EMM386.EXE uses the F000h-F7FFh region for expanded memory page mapping or UMB memory. This adds up to 32 kilobytes to UMBs.

The video BIOS is usually mapped to the upper memory address range C000-C7FF. Paradise and Western Digital video cards, among others, generally follow this convention. Check your video card manual to verify this. Using this configuration, it will be unnecessary to exclude the VGA graphics region, A000-AFFF, and the VGA text block, B800-BFFF.

On some systems, EMM386.EXE uses the ROM area and the system does not operate correctly. The symptoms of this condition vary. For example, the system may stop responding (hang) or appear to operate normally until you use a floppy disk drive. Because of these potential problems, HIGHSCAN is not used by default.

If you experience KR-07 and 09 messages, try eliminating the HIGHSCAN switch from the line that loads EMM386.EXE in your CONFIG.SYS file. Also try changing the STACKS values to 18,256.

If you use the NOEMS switch with EMM386.EXE, then select only the XMS/HIMEM.SYS memory type in the Computer section of Preferences. NOEMS means Expanded memory will no longer be available, only XMS memory.

Falcon DOS 3.1 and Seattle DOS 3.1

NewDeal may not be compatible with the non-standard systems known as Falcon DOS 3.1 or Seattle DOS 3.1.

FASTOPEN

If you are running MS-DOS and have FASTOPEN loaded in your CONFIG.SYS file, we recommend that you remove it. The following is an example of how FASTOPEN may be invoked in the CONFIG.SYS file
install = c:\dos\fastopen.exe c:=(50,25)
The first numeric parameter in the example above (50) is the number of files FASTOPEN tracks, and the second numeric parameter (25) is the file extent parameter, which we assume to mean the size of the file.

NewDeal is among several softwares that appear to be incompatible with MS DOS's FASTOPEN. This incompatibility does not prevent NewDeal from running; instead, spurious data may be written out to the disk at undetermined times, thereby damaging open files. You will not notice any problem until the next time the damaged file is accessed. Or you may get the error message Unable to locate disk sector upon trying to run NewDeal. Therefore, the safest option is to avoid using FASTOPEN at all (i.e. eliminate the line containing FASTOPEN in the file CONFIG.SYS). The FASTOPEN command in DR-DOS is just a placebo; it is not functional but only exists to provide compatibility for some legacy DOS software programs that require it.

File handles

Starting with DOS version 2.0, a set of UNIX-like file functions were added to the DOS repertoire. The idea is that when you open a file, DOS passes back a 16-bit value called a "file handle." Thereafter, when you read, write, seek a position, or close the file, you refer to it with its handle. One of the nicer features is that you can refer to certain devices as if they were disk files by using one of these reserved, pre-defined DOS handles.

How to make smaller self-extracting ZIP files

First, ZIP the files normally. To do so, change to the directory where the files to be ZIPed reside. Enter the following command:
PKZIP -ei filename files-to-be-archived
This command will create a file, filename.zip, containing the files-to-be-archived. The parameters must be in lower case as shown. Make sure that PKZIP.EXE and ZIP2EXE.EXE are in a directory in your PATH.

Then, to create a self-extracting file with only a 2k overhead (as opposed to 18k), use the following command:

ZIP2EXE -j filename

PC-MOS

PC-MOS is an alternative operating system for PC-type computers that allows multiple users with terminals to run DOS-like sessions from one PC acting as a server. MOS is an acronym for Multi-user Operating System and PC-MOS is published by The Software Link.

A typical use would be connecting multiple terminals to one PC and using them as cash registers in a store.

NewDeal does NOT run with PC-MOS.

SUBST

A user tried to use this command
SUBST N: C:\NEWDEAL
then she could type N: and do a DIR of C:\NEWDEAL, but when she tried to run NewDeal, she got an error message "System Error: Unable to run from a write protected disk."

This is logical since N: does not really exist and NewDeal needs to write several files upon startup. As far as we know there is no work around for this problem. You just can't use SUBST with NewDeal this way.

Back to Index

Last Modified 11 Mar 1999