====================================================================== Microsoft(R) Product Support Services Application Note (Text File) PD0747: CONFIGURATION QUESTIONS & ANSWERS ====================================================================== Revision Date: 4/93 No Disk Included The following information applies to Microsoft MS-DOS 6.0 Upgrade. -------------------------------------------------------------------- | INFORMATION PROVIDED IN THIS DOCUMENT AND ANY SOFTWARE THAT MAY | | ACCOMPANY THIS DOCUMENT (collectively referred to as an | | Application Note) IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY | | KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO | | THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A | | PARTICULAR PURPOSE. The user assumes the entire risk as to the | | accuracy and the use of this Application Note. This Application | | Note may be copied and distributed subject to the following | | conditions: 1) All text must be copied without modification and | | all pages must be included; 2) If software is included, all files | | on the disk(s) must be copied without modification [the MS-DOS(R) | | utility DISKCOPY is appropriate for this purpose]; 3) All | | components of this Application Note must be distributed together; | | and 4) This Application Note may not be distributed for profit. | | | | Copyright 1993 Microsoft Corporation. All Rights Reserved. | | Microsoft and MS-DOS are registered trademarks and Windows | | is a trademark of Microsoft Corporation. | -------------------------------------------------------------------- 1. Q. I receive the message "ERROR: Unable to control A20 line" during the startup (boot) process. How can I correct this problem? A. The A20 line is a hardware component of 80286 and higher processors that allows programs to access the first 64 kilobytes (K) of extended memory. HIMEM.SYS must be able to control the A20 line to manage the extended memory on your computer. Different computers use different techniques for controlling the A20 line. In some cases, HIMEM.SYS cannot determine the correct technique to use. If HIMEM.SYS cannot identify the correct technique for controlling the A20 line on your computer, you may need to use the /machine switch with the DEVICE=C:\DOS\HIMEM.SYS command in your CONFIG.SYS file. For further instructions, refer to the "Diagnosing and Solving Problems" chapter of the Microsoft MS-DOS 6 User's Guide. You can also type "help himem.sys" (without the quotation marks) at the MS-DOS command prompt and press ENTER for information on HIMEM.SYS and the /machine switch. 2. Q. I made a change to my CONFIG.SYS or AUTOEXEC.BAT file and now my computer stops responding ("hangs") when I turn it on. What should I do? A. MS-DOS 6.0 contains two functions that can help you correct this problem. The first function lets you boot the computer while bypassing the CONFIG.SYS and AUTOEXEC.BAT files; the second function lets you confirm each startup command in your CONFIG.SYS file. You then have the option of running the AUTOEXEC.BAT file or bypassing it; there is no option for stepping through the AUTOEXEC.BAT file as it is processed. Bypassing the CONFIG.SYS and AUTOEXEC.BAT files when you start your computer allows it to boot with a minimal configuration. To do this, use the following steps: 1. Start or restart your computer. 2. MS-DOS displays the message "Starting MS-DOS...." When this text appears, press and release the F5 function key or press and hold down the SHIFT key. Note: A minimal configuration does not load device drivers; as a result, some devices (such as the mouse) may not function. If you use a disk-compression program (such as Stacker[R]), you should use the F8 function key during startup, as discussed below. This is not necessary if you use the Microsoft DoubleSpace program. If you receive the error message "Bad or missing command interpreter" when you start the computer, type the full path to the COMMAND.COM file and press enter. As an alternative to pressing F5 and skipping the CONFIG.SYS and AUTOEXEC.BAT files completely, you can press F8 and confirm the loading of each command in the CONFIG.SYS file. To do this, use the following three steps: 1. Start or restart your computer. 2. MS-DOS displays the message "Starting MS-DOS...." When this text appears, press and release the F8 function key. This displays your CONFIG.SYS file one line at a time. To process the displayed command, press Y; to bypass the command, press N. 3. After you have processed all the lines in the CONFIG.SYS file, the following command appears on your screen: Process AUTOEXEC.BAT [Y/N]? To process the commands in the AUTOEXEC.BAT file, press Y. To bypass the AUTOEXEC.BAT file, press N. For more information on these procedures, refer to the "Configuring Your System" chapter in the "Microsoft MS-DOS 6 User's Guide." 3. Q. When I boot my system, I receive the message "Unable to set page frame base address." What should I do? A. This error message means that EMM386.EXE cannot locate a 64- kilobyte (K) contiguous block of free memory in the upper memory area (UMA) on your computer. EMM386.EXE must create this 64K page frame in order to emulate expanded memory. You may be able to correct this problem by using the highscan switch on the DEVICE=C:\DOS\EMM386.EXE command in your CONFIG.SYS file. For more information on EMM386.EXE and the highscan switch, type "help emm386.exe" (without the quotation marks) at the MS- DOS command prompt. If using the highscan switch does not correct this problem, you might be able to reconfigure the hardware adapter cards in your computer to free a 64K block in the UMA. For example, if you have a network adapter that is using the D000-D7FF region and a SCSI adapter that uses E000-E7FF, reconfiguring your network card to use the range C800-CFFF would free the D000 segment for use as an expanded memory page frame. For information on configuring your adapter cards, refer to the documentation provided with your hardware adapter cards or contact your hardware vendor. If none of your applications require expanded memory, but you still want to use upper memory blocks (UMBs) to load programs into the UMA, you can disable expanded memory emulation by using the noems switch with the DEVICE=C:\DOS\EMM386.EXE command in your CONFIG.SYS file. For more information about the noems switch, type "help emm386.exe" (without the quotation marks) at the MS-DOS command prompt. 4. Q. I'm using custom menu colors with multiple configurations. During the startup process, my menu colors change back to the default screen colors. Why is this occurring? A. When ANSI.SYS is loaded, it resets your screen colors. ANSI.SYS is an enhanced console device driver; therefore, it takes over all output to the console. At this time there is no workaround for this problem. 5. Q. The device statement in my CONFIG.SYS file for SMARTDRV.EXE has a double_buffer parameter. What does this parameter do, and why do I need it? A. Some hard disk controllers that provide direct memory access (DMA) are unable to detect the memory mapping that occurs when you run virtual-mode programs, such as EMM386.EXE and Windows in 386 enhanced mode. To protect these disk controllers from writing to the wrong area of memory, SMARTDrive double buffering buffers all disk input/output (I/O) and then directs the data to the proper memory location. While most hard disk controllers do not require the double_buffer parameter, many older SCSI disk controllers do require it. To determine if you need SMARTDrive double buffering, first make sure your CONFIG.SYS file includes the DEVICE=C:\DOS\SMARTDRV.EXE /DOUBLE_BUFFER command, and then restart your computer. At the MS-DOS command prompt, type "smartdrv" and press ENTER. SMARTDrive lists a status report for all your system drives. Look at the buffering column. If any drive lists "Yes" or a dash (-), keep the double buffering driver installed. "Yes" means that double buffering is required; a dash means SMARTDrive cannot determine whether double buffering is required. If every entry in the buffering column reads "No," you can remove the DEVICE=C:\DOS\SMARTDRV.EXE /DOUBLE_BUFFER command from your CONFIG.SYS file. Note: The DEVICE command in the CONFIG.SYS file loads the double_buffer driver only, it does not load the disk cache. Since this driver translates memory addresses, it cannot function properly if you load it into upper memory with a devicehigh command. To load the cache, you must have SMARTDRV.EXE in your AUTOEXEC.BAT file, or type "smartdrv" (without the quotation marks) at the MS-DOS command prompt.