FYI (Note: The origin of this information may be internal or external to Novell. Novell makes every effort within its means to verify this information. However, the information provided in this document is FOR YOUR INFORMATION only. Novell makes no explicit or implied claims to the validity of this information.) TITLE: DR DOS 6 Sample Configuration Files DOCUMENT ID#: FYI-M-1113 DATE: 07SEPT92 PRODUCT: DR DOS PRODUCT VERSION: 6.0 SUPERSEDES: These are some sample configuration files to help you deceide how best to set up your system. It is not necessary for you to use them exactly as written but they can be used to give you ideas on what can be done with DR DOS 6.0. What your computer can actually accomplish is dependent on the hardware of your system. PC / XT Computers 640K (only) CONFIG.SYS SHELL=C:\COMMAND.COM C:\ /P /E:256 BREAK=ON BUFFERS=20 FILES=30 FCBS=4,4 FASTOPEN=256 HISTORY=ON, 256, ON, OFF, OFF ?"Load Netware (Y/N)? " set lan=on ?"Enable DelWatch TSR (Y/N)? " set delw=on AUTOEXEC.BAT @ECHO OFF :DRDOSBEG PATH C:\;C:\DRDOS;C:\NETWARE VERIFY OFF PROMPT [DR DOS] $P$G if "%lan%"=="on" IPX if "%lan%"=="on" NETX if "%delw%"=="on" DELWATCH C: /F:200 DISKMAP C: These files will setup an XT-type computer to use the following DR DOS 6.0 features: The DELWATCH command is a 5k TSR loaded to keep track of deleted files. The options indicate that Drive C: will be watched and no more than 200 deletions will be tracked. The DISKMAP command takes a snap-shot of Drive C:'s file allocation table. In the instance of serious disk or file corruption problems this feature will aid in the recovery of your disk and files. This command, however, can be executed as many times as needed during your computing session in order to get the most recent FAT image (via the $x variable in PROMPT, see page 294 of the DR DOS manual). Depending on the use of this type of configuration, this PC/XT could be used for other "light-duty" services on networks, et cetera, and therefore, other drivers can be implemented which would take more conventional memory such as SuperStor'ing the hard-disk for additional document storage for a printer server. SuperStor would take about 50K of conventional memory to run, and could have a serious impact on the ability to run some DOS applications. The examples for SuperStor in this document are for drives other than C:. If C: is compressed SuperStor will create a DCONFIG.SYS file on the uncompressed side and will place the SuperStor driver there. Refer to Document 1200 for more information on SuperStor. PC / XT Computers 640K and LIM 4.0 Expanded Memory CONFIG.SYS SHELL=C:\COMMAND.COM C:\ /P /E:256 BREAK=ON BUFFERS=20 FILES=30 FCBS=4,4 FASTOPEN=256 HISTORY=ON, 256, ON, OFF, OFF DEVICE=C:\REMM.SYS ?"MemoryMAX w/no LIM (y/n)? "DEVICE=C:\DRDOS\HIDOS.SYS /C=EMSALL /B=AUTO ?"MemoryMAX w/ LIM (y/n)? "DEVICE=C:\DRDOS\HIDOS.SYS /C=EMSUMB /B=AUTO HIDOS=ON ?"Use the Compressed Disk (Y/N)? "DEVICE=C:\SSTORDRV.SYS ?"Enable DelWatch TSR (Y/N)? " set delw=on ?"Load Netware (Y/N)? " set lan=on AUTOEXEC.BAT @ECHO OFF :DRDOSBEG PATH C:\;C:\DRDOS;C:\NETWARE VERIFY OFF PROMPT [DR DOS] $P$G if "%lan%"=="on" IPX if "%lan%"=="on" NETX if "%delw%"=="on" DELWATCH C: /F:200 DISKMAP C: :DRDOSEND An XT-type computer, with LIM 4.0 expanded memory, will take advantage of the following DR DOS 6.0 features: First, the computer's expanded memory driver is loaded (named REMM.SYS in this example). The driver supplied with your computer will probably be named something different, however, specify the use of this driver in the same location. Second, the MemoryMAX driver HIDOS.SYS allows the operating system to relocate into Upper Memory via the /B=AUTO switch. The other switches, /CHIPSET=EMSALL or EMSUMB, allow either all the Upper Memory (128K) to be used for the operating system's purpose (but with no LIM support) or to allow an EMS page frame (LIM support) and an Upper Memory Block of 64K. The EMS memory manager and hardware must be LIM 4.0 compatible for this to properly work. The Compressed Disk driver, SSTORDRV.SYS, could be used to access leftover disk space on another fixed disk partition. The DELWATCH command is a 5k TSR loaded to keep track of deleted files. The options indicate that Drive C: will be watched and no more than 200 deletions will be tracked or saved. The DISKMAP command takes a snap-shot of Drive C:'s File Allocation Table and will further increase chances of a successful file "undeletion". PC/AT or 286 based Computers with 640K and LIM 4.0 Expansion Boards CONFIG.SYS SHELL=C:\COMMAND.COM C:\ /P /E:256 BREAK=ON BUFFERS=20 FILES=30 FCBS=4,4 FASTOPEN=256 HISTORY=ON, 256, ON, OFF, OFF DEVICE=REMM.SYS ?"MemoryMAX w/no LIM (y/n)? "DEVICE=C:\DRDOS\HIDOS.SYS /C=EMSALL /B=AUTO ?"MemoryMAX w/ LIM (y/n)? "DEVICE=C:\DRDOS\HIDOS.SYS /C=EMSUMB /B=AUTO HIDOS=ON ?"Use the Compressed Disk (Y/N)? "DEVICE=C:\SSTORDRV.SYS ?"Load Netware (Y/N)? " set lan=on ?"Enable DelWatch TSR (Y/N)? " set delw=on AUTOEXEC.BAT @ECHO OFF :DRDOSBEG PATH C:\;C:\DRDOS;C:\NETWARE VERIFY OFF PROMPT [DR DOS] $P$G if "%lan%"=="on" IPX if "%lan%"=="on" NETX if "%delw%"=="on" DELWATCH C: /F:200 DISKMAP C: :DRDOSEND This basic setup is similar to an XT with 640K RAM and additional LIM 4.0 expanded memory. The LIM 4.0 Expansion Board will come with a device driver which enables it to work and function with DOS applications. The device driver that the memory expansion board comes with could be named REMM.SYS. Please read your documentation for your memory expansion board for the location and name of the driver that enables that memory. If the driver supplied with your computer is named differently, you can still specify the use of this driver in the same location as indicated by the REMM.SYS line above. The MemoryMAX driver HIDOS.SYS is allowing the operating system to relocate into Upper Memory via the /B=AUTO switch. The other switches, /CHIPSET=EMSALL or EMSUMB allow either all the Upper Memory to be used for the operating system's purpose or to allow an EMS (LIM) page frame as well as an extra portion of upper memory for the operating system to use. As stated earlier the EMS memory manager and the LIM hardware must be LIM 4.0 to work properly. The DELWATCH command is a 5k TSR loaded to keep track of deleted files. The options indicate that Drive C: will be watched and no more than 200 deletions will be tracked (the tracked being saved in a hidden file of the same drive). The DISKMAP command takes a snap-shot of Drive C's File Allocation Table. PC/AT or 286 based Computers with 1MB and LIM 4.0 Expansion Boards CONFIG.SYS SHELL=C:\COMMAND.COM C:\ /P /E:256 BREAK=ON BUFFERS=20 FILES=30 FCBS=4,4 FASTOPEN=256 HISTORY=ON, 256, ON, OFF, OFF DEVICE=REMM.SYS ?"MemoryMAX w/no LIM (y/n)? "DEVICE=C:\DRDOS\HIDOS.SYS /C=EMSALL /B=FFFF ?"MemoryMAX w/ LIM (y/n)? "DEVICE=C:\DRDOS\HIDOS.SYS /C=EMSUMB /B=FFFF HIDOS=ON ?"Use the Compressed Disk (Y/N)? "DEVICE=C:\SSTORDRV.SYS ?"Load Netware (Y/N)? " set lan=on ?"Enable DelWatch TSR (Y/N)? " set delw=on AUTOEXEC.BAT @ECHO OFF :DRDOSBEG PATH C:\;C:\DRDOS;C:\NETWARE VERIFY OFF PROMPT [DR DOS] $P$G if "%lan%"=="on" IPX if "%lan%"=="on" NETX if "%delw%"=="on" DELWATCH C: /F:200 DISKMAP C: :DRDOSEND This basic setup is similar to an AT with 640K except for the /B=FFFF option with HIDOS.SYS. An AT with 1MB ram will have 384K of extended memory. This 384K will be addressed beginning at FFFF not A000 (640 decimal) as would be assumed. Because the beginning address is FFFF HIDOS.SYS can make use of the HMA to relocate DR DOS kernel and data structures. This has the added benefit of permiting the more efficient use of Upper Memory for TSRs. In short up to 192K of memory can be put to use outside of conventional memory. 286-Based Computer with Special Chipsets and Extended Memory CONFIG.SYS SHELL=C:\COMMAND.COM C:\ /P /E:256 BREAK=ON BUFFERS=20 FILES=30 FCBS=4,4 FASTOPEN=256 HISTORY=ON, 256, ON, OFF, OFF DEVICE=REMM.SYS ?"Load MemoryMAX (y/n)? "DEVICE=C:\DRDOS\HIDOS.SYS /B=FFFF /C=AUTO HIDOS=ON ?"Use the Compressed Disk (Y/N)? "DEVICE=C:\SSTORDRV.SYS ?"Enable DelWatch TSR (Y/N)? " set delw=on ?"Load Netware (Y/N)? " set lan=on AUTOEXEC.BAT @ECHO OFF :DRDOSBEG PATH C:\;C:\DRDOS;C:\NETWARE VERIFY OFF PROMPT [DR DOS] $P$G if "%lan%"=="on" hiload IPX if "%lan%"=="on" hiload NETX if "%delw%"=="on" DELWATCH C: /F:200 DISKMAP C: :DRDOSEND These files can be used if your 286/AT has been manufactured with special memory mapping chips which offer control of certain memory functions (page 418-423). These systems offer favorable Upper Memory support for DR DOS's MemoryMAX software to enable and use Upper Memory for TSR's and device drivers. Shadowing should be enabled in the computer's CMOS to support the creation of upper memory by DR DOS 6.0. The important line in this example is the MemoryMAX driver HIDOS.SYS. This allows the operating system to sense the type of chipset within the 286/AT, enable Upper Memory and relocate the operating system files into Upper or High Memory via the /B= switch. The valid switch options for HIDOS.SYS /CHIPSET= are: EMSALL or (for 286s with LIM 4.0 compatible hardware/drivers EMSUMB so not applicable in the above example) NEAT (for 286s with Chips & Technologies NEAT, NEATsx, LeAPSet, or LeAPSetsx) SCAT (for 286s with Chips & Technologies SCAT chipset) RAM (for permanent Upper Memory. Must be used with the /USE option on the HIDOS.SYS driver) NONE (for telling HIDOS.SYS not to use Shadow RAM) AUTO (for AUTO detection of chipset installed) 386/486 Based Computers with 1 Megabyte of RAM CONFIG.SYS SHELL=C:\COMMAND.COM C:\ /P /E:512 BREAK=ON HIBUFFERS=20 FILES=30 FCBS=4,4 FASTOPEN=256 HISTORY=ON, 256, ON, OFF, OFF DEVICE=C:\DRDOS\HIDOS.SYS /B=FFFF HIDOS=ON ?"Use the Compressed Disk (Y/N)? "DEVICE=C:\SSTORDRV.SYS ?"Enable DelWatch TSR (Y/N)? " set delw=on ?"Load Netware (Y/N)? " set lan=on AUTOEXEC.BAT @ECHO OFF :DRDOSBEG PATH C:\;C:\DRDOS;C:\NETWARE VERIFY OFF PROMPT [DR DOS] $P$G if "%lan%"=="on" hiload IPX if "%lan%"=="on" hiload NETX if "%delw%"=="on" DELWATCH C: /F:200 DISKMAP C: :DRDOSEND This configuration will allow a 386 or 486 based computer to relocate the operating system into High Memory. IMPORTANT: EMM386.SYS can be used on some systems but the majority of computers will not have any extended memory, which is required by EMM386 in order to create Upper Memory. HIDOS.SYS is used instead because it does not create Upper Memory with the switches indicated in the above example. A NOTE ABOUT HOW UPPER MEMORY IS CREATED ON A 386 In the example for a 1 MB 286 it was indicated that there was a break in RAM between A000 (640K decimal) and FFFF (1MB decimal). The 384K above 640K actually began at FFFF and not A000. This is not quite the case with a 386 computer. In a 1MB 386 all RAM is contiguous from 0 - A000. However, the additional 384K is usually reserved for use of memory mapping support chips. What EMM386.SYS does is go through Upper Memory Addresses looking for ROMs, Shadows or other devices. It then determines how much free unused space exists between these used blocks of memory and remaps XMS memory to fill these spaces. In fact, the technical definition for the Upper Memory created by EMM386 is XMS-UMBs. This is also why a MEM /A report will indicate a reduced amount of available XMS when using EMM386 to create Upper Memory compared to when Upper Memory is not created by using a /W on EMM386. The missing amount has been used to create Upper Memory plus a small amount for overhead. Because of this remapping of XMS memory it is not possible for EMM386.SYS to create Upper Memory on a 1MB computer. The SuperStor driver is useful in doubling the apparent capacity of the disk partition to which it's applied. If this has not been applied to your disk drive, you can elect not to use this driver and therefore save a substantial amount of conventional memory. Therefore, the "?" allows the driver to be loaded at will, whenever that particular partition needs to be accessed. If the driver is loaded, you can expect to achieve about 603K of conventional memory. The above example is for a drive other than C:. If C: is compressed SuperStor will create a DCONFIG.SYS file on the uncompressed side of the drive and will place the SuperStor driver there. Refer to Document 1200 for more information on SuperStor. 386/486 Based Computers with GREATER than 1 Megabyte of RAM CONFIG.SYS SHELL=C:\COMMAND.COM C:\ /P /E:512 BREAK=ON HIBUFFERS=20 FILES=30 FCBS=4,4 FASTOPEN=256 HISTORY=ON, 256, ON, OFF, OFF HIDOS=ON DEVICE=C:\DRDOS\EMM386.SYS /F=NONE /K=AUTO /B=FFFF /R=AUTO ?"Use the Compressed Disk (Y/N)? "DEVICE=C:\SSTORDRV.SYS ?"Enable DelWatch TSR (Y/N)? " set delw=on ?"Load Netware (Y/N)? " set lan=on AUTOEXEC.BAT @ECHO OFF :DRDOSBEG PATH C:\;C:\DRDOS;C:\NETWARE VERIFY OFF PROMPT [DR DOS] $P$G if "%lan%"=="on" hiload IPX if "%lan%"=="on" hiload NETX if "%delw%"=="on" DELWATCH C: /F:200 DISKMAP C: :DRDOSEND This configuration will allow a 386 or 486 based computer to relocate the operating system into High Memory. With an average of 120K of RAM in Upper Memory, a portion of the SuperStor driver, the IPX and possibly the NETX software will also fit into Upper Memory. The SuperStor driver is useful in doubling the apparent capacity of the disk partition to which it's applied. If this has not been applied to your main disk drive, you can elect not to use this driver and therefore save a substantial amount of conventional memory. Therefore, the "?" allows the driver to be loaded at will, whenever that particular partition needs to be accessed. The above examples have been for drives other than C:. If C: is compressed SuperStor will create a DCONFIG.SYS file on the uncompressed side of the drive and will place the SuperStor driver there. Refer to Document 1200. 386/486 Based Computers with greater than 1 Megabyte of RAM running TaskMAX CONFIG.SYS SHELL=C:\COMMAND.COM C:\ /P /E:512 BREAK=ON HIBUFFERS=20 FILES=30 FCBS=4,4 FASTOPEN=256 HISTORY=ON, 256, ON, OFF, OFF HIDOS=ON DEVICE=C:\DRDOS\EMM386.SYS /F=NONE /K=AUTO /B=AUTO /R=AUTO ?"Use the TaskMAX task switcher (Y/N)? " set tasker=on ?"Enable DelWatch TSR (Y/N)? " set delw=on ?"Load Netware (Y/N)? " set lan=on AUTOEXEC.BAT @ECHO OFF :DRDOSBEG PATH C:\;C:\DRDOS;C:\NETWARE VERIFY OFF PROMPT [DR DOS] $P$G if "%lan%"=="on" hiload IPX if "%lan%"=="on" hiload NETX if "%delw%"=="on" DELWATCH C: /F:200 if "%tasker%"=="on" share if "%tasker%"=="on" taskmax DISKMAP C: :DRDOSEND This minimal configuration will allow a 386 or 486 based computer to relocate the operating system into Upper Memory. Although this is not optimal for the EMM386.SYS driver, the amount of memory available on most 386/486 computers will allow the Upper Memory to be addressed and used for the relocation of the operating system files, drivers or TSR's. With an average of 120K of RAM in Upper Memory, the operating system will be able to get SHARE into HMA, and TaskMAX and the Netware drivers into Upper Memory. Before Netware is loaded you should be able to have 625K available Conventional Memory. Alternately, you can load the drivers in the AUTOEXEC file from the command line (eg. SHARE, TASKMAX, HILOAD IPX and HILOAD NETX). The NETX utility found on the last DR DOS 6.0 floppy disk is included to allow you to task-switch on the Network. This will not allow multiple logins. However, it is designed to allow you to execute more than one on application on the network. WINDOWS Enhanced Mode Configuration for 386/486 Based Computers 4 Megabytes or better CONFIG.SYS SHELL=C:\COMMAND.COM C:\ /P /E:512 BREAK=ON HIBUFFERS=8 FILES=30 FCBS=4,4 FASTOPEN=0 HISTORY=ON, 256, ON, OFF, OFF HIDOS=ON DEVICE=C:\DRDOS\EMM386.SYS /F=NONE /K=AUTO /B=FFFF /R=AUTO DEVICE=C:\DRDOS\PCKWIN.SYS ?"Load Netware (Y/N)? " set lan=on ?"Enable DelWatch TSR (Y/N)? " set delw=on AUTOEXEC.BAT @ECHO OFF :DRDOSBEG PATH C:\;C:\DRDOS;C:\NETWARE;C;\WINDOWS VERIFY OFF PROMPT [DR DOS] $P$G if "%lan%"=="on" hiload IPX if "%lan%"=="on" hiload NETX SUPERPCK /EM /S:2048 if "%delw%"=="on" DELWATCH C: /F:200 DISKMAP C: :DRDOSEND This basic configuration allows a 386 or 486 based computer to run WINDOWS 3.0 OR 3.1 in the "Enhanced Mode". The operating system is being relocated to the HMA (/B=FFFF), and the information in the video and system BIOS ROMs are being "shadowed" to faster RAM (/R=AUTO). SuperPCKwik is going to be 2 Megabytes in size (/S:2048) and use the Extended Memory (/EM) set aside with the EMM386.SYS driver. It will lend approximately half of its memory for use as XMS memory for WINDOWS. SuperPCK is using the WINDOWS compatible portion of its driver (PCKWIN.SYS) so that WINDOWS performance is enhanced because of better disk performance and will also enable lending. With the EMM386.SYS driver, an average of 120K of RAM may be available to relocate network drivers, TSRs and other drivers into Upper Memory. This configuration has been able to provide 625K of Conventional Memory before WINDOWS is loaded. Note: If the performance of Windows appears to be slow, the cache size may be too large for the number of applications that are being run in Windows. This will make Windows run out of XMS memory and it will have to use swap files. Even with SuperPCK swapping to disk is slower than running from RAM. Try reducing the size of the cache or increasing the lending amount. This same configuration can be used to run Windows 3.1 in Standard Mode. For Windows 3.0 Real Mode be sure to disable Upper Memory with the command MEMMAX -U before running Windows. WINDOWS 3.0 Standard Mode Configuration for 386/486 Based Computers with more than 2 Megabytes CONFIG.SYS SHELL=C:\COMMAND.COM C:\ /P /E:512 BREAK=ON HIBUFFERS=20 FILES=30 FCBS=4,4 FASTOPEN=256 HISTORY=ON, 256, ON, OFF, OFF HIDOS=ON DEVICE=C:\DRDOS\EMM386.SYS /F=NONE /B=FFFF /R=AUTO /WINSTD DEVICE=C:\DRDOS\PCKWIN.SYS ?"Load Netware (Y/N)? " set lan=on ?"Enable DelWatch TSR (Y/N)? " set delw=on AUTOEXEC.BAT @ECHO OFF :DRDOSBEG PATH C:\;C:\DRDOS;C:\NETWARE;C;\WINDOWS VERIFY OFF PROMPT [DR DOS] $P$G if "%lan%"=="on" hiload IPX if "%lan%"=="on" hiload NETX SUPERPCK /EM if "%delw%"=="on" DELWATCH C: /F:200 DISKMAP C: :DRDOSEND This basic configuration allows a 386 or 486 based computer to run WINDOWS in the "Standard Mode" or "real Mode". The EMM386.SYS driver indicates that NO LIM page-frame be established by the driver (/F=NONE), the operating system is being relocated to the HMA (/B=FFFF), and the information in the video and system BIOS ROMs are being "shadowed" to faster RAM. SuperPCKwik is going to use all of the extended memory enabled by EMM386.SYS for caching the disk drive. Half of this amount will be "lent" to Windows. SuperPCK is using the WINDOWS compatible portion of its driver so that WINDOWS performance is enhanced because of better disk performance and will also enable lending. This configuration has been able to provide 625K of Conventional Memory before WINDOWS is loaded. Windows Enhanced Mode Configuration for 386/486 with 2 Megabytes CONFIG.SYS SHELL=C:\COMMAND.COM C:\ /P /E:512 /ML BREAK=ON BUFFERS=20 FILES=30 FCBS=4,4 FASTOPEN=256 HISTORY=ON, 256, ON, OFF, OFF HIDOS=OFF DEVICE=C:\DRDOS\HIDOS.SYS /B=NONE ?"Load Netware (Y/N)? " set lan=on ?"Enable DelWatch TSR (Y/N)? " set delw=on AUTOEXEC.BAT @ECHO OFF :DRDOSBEG PATH C:\;C:\DRDOS;C:\NETWARE;C;\WINDOWS VERIFY OFF PROMPT [DR DOS] $P$G if "%lan%"=="on" hiload IPX if "%lan%"=="on" hiload NETX if "%delw%"=="on" DELWATCH C: /F:200 DISKMAP C: :DRDOSEND A 2 megabyte computer is the MINIMUM system for Windows in enhanced Mode. System performance may be greatly reduced because Windows will need to use swap files and no cache can be used to help accelerate disk I/O. This configuration will allow a 386/486 with 2 Megabytes to run Windows in Enhanced Mode. Because Windows requires a minimum of 1 Megabyte of XMS this configuration does not use the HMA. The SHELL statement has the switch /ML to force it to Conventional Memory. EMM386 is not used because it would reduce available XMS memory by using it to create Upper Memory (See the note for 386/486's with more than 1MB). HIDOS.SYS is used to create XMS memory but does not load the kernel into Upper Memory or HMA with /B=NONE and the statement BUFFERS (Upper) is used instead of HIBUFFERS (HMA). Finally, because Windows needs all of the XMS memory available SuperPCK is not used in this configuration. ****************************** MODELS OF CONFIGURATION FILES The following configuration ideas should be considered advanced and are for those users who are interested in a more sophisticated organization of their configuration and autoexec files. Only the basic ideas are outlined in each example. The rest of the file can be filled in with your own specifications. EXAMPLE 1 - The use of GOTO in the CONFIG file. ?"Do you want to run QEMM (y/n)? " goto QEMM ?"Do you want to run MemoryMAX (y/n)? " goto DRDOS :QEMM DEVICE=c:\QTR_DECK\QEMM386.SYS DEVICE=C:\DRDOS\HIDOS.SYS /B=FFFF (additional QEMM driver lines go here...) goto COMMON :DRDOS hidos=on DEVICE=C:\DRDOS\EMM386.SYS /F=AUTO... ... :COMMON files=40 hibuffers=20 ... The goto statement is used to proceed directly to a label. This function is similar to that found in batch file processing. EXAMPLE 2 - The use of CHAIN in the CONFIG file. This example shows that you can "link" to other files that hold your configurations for each system "setup". In the following CONFIG.SYS file, the two lines direct the configuration process to the files: QCONFIG and MCONFIG.SYS files. The appropriate FILES, BUFFERS, etc. information is contained within those files and not the main CONFIG.SYS file. ?"Do you want to run QEMM (y/n)? " chain=QCONFIG.SYS ?"Do you want to run MemoryMAX (y/n)? " chain=MCONFIG.SYS EXAMPLE 3 - The following CONFIG file demonstrates the use of SWITCH/RETURN commands and use of labels. Select the option by number and continue processing. Notice the use of the ECHO statement for setting up the menu options. ECHO = Choose how much Extended Memory you want to convert ECHO = to LIM Memory for this session. ECHO = ECHO = 1 (or ENTER) No LIM Memory ECHO = 2 512K of Memory ECHO = 3 1024K of Memory ECHO = 4 2048K of Memory ECHO = ECHO = Make your selection... SWITCH NOLIM, 512K, 1024K, 2048K GOTO DEFAULTS :NOLIM DEVICE=C:\DRDOS\EMM386.SYS /F=NONE /K=AUTO /B=FFFF /R=AUTO RETURN :512K DEVICE=C:\DRDOS\EMM386.SYS /F=AUTO /K=512 /B=FFFF /R=AUTO RETURN :1024K DEVICE=C:\DRDOS\EMM386.SYS /F=AUTO /K=1024 /B=FFFF /R=AUTO RETURN :2048K DEVICE=C:\DRDOS\EMM386.SYS /F=AUTO /K=2048 /B=FFFF /R=AUTO RETURN :DEFAULTS SHELL=C:\COMMAND.COM \C: /P /E:512 HIDOS=ON HIBUFFERS=20 FILES=30 etc... EXAMPLE 4 - The following CONFIG file section shows how "environment variables" can be set according to the configuration options one chooses. These variables are passed to the command processor (COMMAND.COM) where they can be tested and processed through the AUTOEXEC.BAT or other batch files. It is not possible to test an environment variable in CONFIG. The CLS, CPOS, EXIT and SET commands are featured in this example. :DEFAULTS SHELL=C:\COMMAND.COM \C: /P /E:512 HIDOS=ON HIBUFFERS=20 FILES=30 etc.... ECHO = Choose which TSRs and Utilities you want loaded ECHO = at BOOT time for this session. ECHO = ECHO = 1 (or ENTER) None... just continue ECHO = 2 Mouse & Cursor Drivers ECHO = 3 Keyboard "Speeder" ECHO = 4 Novell Network ECHO = 5 Done with selections ECHO = ECHO = Make your selection... :MORE CPOS 10,33 SWITCH NOTHING, CURSMOUS, SPEEDKEY, NOVELL, DONE GOTO MORE :DONE :NOTHING CLS EXIT :CURSMOUS SET THINGS=ON RETURN :SPEEDKEY SET SPEEDKEY=ON RETURN :NOVELL SET NETWORK=ON RETURN The accompanying AUTOEXEC below picks up the environment variables. The AUTOEXEC.BAT file now allows testing of the environment variables and executes commands based upon the conditionals as illustrated below: @ECHO OFF :drdosbeg VERIFY OFF PATH C:\;C:\DRDOS;C:\BATS;C:\TOOLS;C:\WINDOWS if "%things%"=="on" prompt $e[s$e[0;70H$e[1;36m$t$e[u$e[1;36mDR DOS6$p$g$e[2;32m if not "%things%"=="on" PROMPT [DR DOS] $P$G SET TEMP=C:\TEMP IF NOT "%TEMP%"=="" MD %TEMP% >NUL if "%things%"=="on" HILOAD MOUSE if "%things%"=="on" HILOAD CURSOR /s10 if "%speedkey%"=="on" c:\drdos\mode con:rate=30 delay=1 if "%network%"=="on" hiload c:\lan\ipx if "%network%"=="on" hiload c:\lan\net3 :drdosend OTHER EXAMPLES Select different configuration options from the CONFIG.SYS file using the ? ?SHELL=C:\COMMAND.COM C:\ /P /E:512 ?SHELL=C:\COMMAND.COM C:\ /P /E:1024 ?BREAK=OFF ?BREAK=ON BUFFERS=20 FILES=20 ?HISTORY=ON, 256, ON, OFF, OFF ?DEVICE=C:\DRDOS\ANSI.SYS Select different AUTOEXEC.BAT's from CONFIG.SYS using the ? and the Shell statement. In the Shell statement the /P switch can be followed by a filename. When present, the named file will be executed instead of AUTOEXEC.BAT. The file needs to have a .BAT extension. ?"Default Autoexec? (y/n) "SHELL=C:\COMMAND.COM C:\ /P /E:256 ?"Alternate Autoexec? (y/n) "SHELL=C:\COMMAND.COM C:\ /P:ALTERNAT.BAT /E:256 (Note: There is an 11 character limit including path for the /P: variable.) Select and use different configuration files from CONFIG.SYS at bootup. ?"Do you want to run Windows? (y/n) " chain = WCONFIG.SYS ?"Do you want to use QEMM? (y/n) " chain = QCONFIG.SYS ?"Do you want to use MemoryMAX? (y/n) chain = MCONFIG.SYS ?"Do you want to use 386MAX? (y/n) chain = 386CONF.SYS (Each line is printed on the screen and you are asked to load/run the chained configuration file. Each configuration file is a complete CONFIG.SYS-like file with all appropriate options.) The idea above can be accomplished by making number-selectable "menu" choices using SWITCH. Note how the "SET environment" variables can be used and tested for different "autoexec.bat" files in this example: ECHO = 1 For Windows Configuration ECHO = 2 For QEMM Configuration ECHO = 3 For DR DOS' MemoryMAX Configuration ECHO = 4 For 386MAX Configuration ECHO = 5 For no Configuration... just exit SWITCH win, qemm, memm, 386m, none :none set autoexec=norm exit :win set autoexec=win chain=wconfig.sys :qemm set autoexec=qemm chain=qconfig.sys :memm set autoexec=memm chain=mconfig.sys :386m set autoexec=386m chain=386conf.sys Autoexec.bat for the above @echo off PATH C:\DRDOS;C:\;C:\UTIL; VERIFY OFF PROMPT $P$G DISKMAP C: D: IF "%autoexec%"=="norm" goto DRDOSEXIT SHARE /L:40 IF "%autoexec%"=="win" SUPERPCK /EM /L:2048 IF "%autoexec%"=="qemm" CALL QEMM.BAT IF "%autoexec%"=="memm" SUPERPCK /A /L:2048 IF "%autoexec%"=="386m" CALL 386.BAT :DRDOSEXIT ANSI escape sequences can be used in batch file processing to create colorful menus. Below is an example of a menu that uses the SWITCH command and ANSI escape sequences to create a menu. ANSI.SYS must be loaded in the CONFIG.SYS to allow for cursor positioning and colors. The first character after the Echo statement is an ASCII 27 or escape character. This character may be displayed differently on some printers and monitors (in fact if you have ANSI loaded you will never see the character when typed to the screen). To type this character using the DR DOS Editor type CTRL-P then the ESC key. An alternate method is to type CTRL_Q N and then type the number 27. Within Editor the ESC character will appear as: ^[ . If you have downloaded this document from CompuServe or the Novell Host System the escape sequences have been left intact and you can use the DR DOS Editor to block out the Echo statements to a file. If ANSI is loaded then when the file is typed to the screen you should see white letters on a magenta background. For additional information on ANSI.SYS and escape sequences refer to page 399 of the DR DOS Manual. @ECHO OFF ECHO ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ECHO ³ 1. CONTINUE W/O SCAN ³Û ECHO ³ 2. SCAN FOR VIRUSES ³Û ECHO ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙÛ ECHO ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß SWITCH MENUBEGIN,SCAN :SCAN SCAN C: /chkhi REM THIS IS THE MAIN MENU :MENUBEGIN