home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC97 Software
/
SOFTWARE_97.iso
/
QEMM.97
/
DISK3
/
TECHNOTE.QIP
/
WINFLOW.TEC
< prev
next >
Wrap
Text File
|
1997-05-15
|
27KB
|
618 lines
Windows 3.1 and QEMM Advanced Troubleshooting
Quarterdeck Technical Note #207 Filename: WINFLOW.TEC
by Andy Buck CompuServe: WINFLO.ZIP
Last revised: 11/01/95 Category: QEMM
Subject: A step-by-step troubleshooting guide for solving
conflicts between Microsoft Windows 3.1 and QEMM.
This Quarterdeck technical note has been written to help you
troubleshoot and fix almost all Windows 3.1 and 3.11 problems
which relate to the use of QEMM. If you have an older version
of QEMM or Windows, you should upgrade to the current versions
before engaging in extensive troubleshooting.
TIPS AND QUICK FIXES FOR POTENTIAL WINDOWS CONFLICTS
----------------------------------------------------
Conflict: Opening multiple applications causes Windows to give
a General Protection Fault in GDI.EXE or RSRCMGR.DLL.
Solution: Try running the QEMM Setup program (QSETUP) from
Windows, click on the "Windows" tab, and disable
Resource Manager. Click "Save", then click "Restart."
It is not necessary to re-run Optimize when altering
this feature. If you are unable to run QSETUP,
try removing the reference to RSRCMGR.DLL on the
drivers= line of the [boot] section in your Windows
SYSTEM.INI file.
Conflict: Opening multiple applications causes Windows to give
a General Protection Fault in FREEMEG.DLL, or large
graphical documents stop displaying on the screen.
Solution: Try changing the resolution of your video driver to a
lower resolution (i.e., changing from 65k to 256).
If making this change does not resolve the conflict,
switch to the Windows standard VGA driver and restart
Windows. If this does not resolve the problem, run
the QSetup program from Windows, click on the
"Windows" tab, and disable FreeMeg. Click "Save",
then click "Restart." It should not be necessary to
re-run Optimize when altering this feature.
Conflict: A CD-ROM drive will not function properly inside of
MS Windows.
Solution: Try editing the AUTOEXEC.BAT file and add "/E" (no
quotes) to the end of the line that contains the
MSCDEX.EXE driver. This will move the CD-ROM buffers
into expanded memory and will reduce the size of the
MSCDEX drive, possibly allowing it to be loaded
properly and function in MS Windows.
Conflict: MS Windows video is distorted or unreadable.
Solution: Using MS Windows SETUP, configure MS Windows to use
the standard VGA driver. If this allows MS Windows
to display graphics correctly, then QEMM may be
recovering parts of the video area that the video
driver needs to access. Adding the following
parameters to the end of the QEMM386.SYS device line
in the CONFIG.SYS file will configure QEMM not to
touch the video area on most systems:
XST=C000 X=A000-C7FF
These parameters may reduce the available upper
memory by 64k, so if conventional memory is low, the
troubleshooting flowchart (below) should be followed.
Conflict: MS Windows fails to load, and displays an error
message that begins as follows:
"Windows cannot set up an upper memory block at segment
B000."
Solution: This conflict occurs because the video driver that MS
Windows is using needs to use the monochrome text
area. Edit the CONFIG.SYS file and add the following
parameter to the end of the QEMM386.SYS device line:
X=B000-B7FF
Alternately, you can install MONOUMB2.386 on your
system. MONOUMB2.386 is a driver provided with
Windows that allows memory managers like QEMM to use
the monochrome text area for High RAM, even if the
video driver is attempting to access that range. For
instructions regarding the installation of
MONOUMB2.386, please refer to the README.WRI file
included with your Windows installation.
Conflict: After using MS Windows for a while, the system either
locks or a "General Protection Fault" error occurs.
Solution: MS Windows may be running low on System Resources. Here
are some tips to maximize the amount of free resources:
* Do not load fonts that are seldom used.
* Use a small tiled bitmap for the wallpaper instead of a
large wallpaper bitmap.
* Minimize groups not frequently used, or those with many
icons in them.
* Because resources cannot be returned once they are used,
do not open and close resource-hungry programs.
* If you are not loading QEMM 8's Resource Manager, do
so by running QEMM Setup. Resource Manager is
designed to alleviate resource shortages.
* Keep an eye on your system resource with the QEMM
memory reporting utility, or the Manifest program,
both in your Windows QEMM program group.
Conflict: MS Windows fails to start properly.
Solution: Start MS Windows with the "/B" (no quotes) parameter.
MS Windows will write any errors encountered while
attempting to start to a file in the Windows
directory called BOOTLOG.TXT. This is a list of what
the error codes reported in BOOTLOG.TXT mean:
0 Out of memory
2 File not found
3 Path not found
5 Attempt to dynamically link to a task
6 Library requires separate data segments for each task
8 Insufficient memory to start application
10 Incorrect MS Windows version
11 Invalid .EXE file
12 OS/2 application
13 MS-DOS 4.0 application
14 Unknown .EXE type
15 Attempt in protected mode to load an .EXE file
created for an earlier version of MS Windows
16 Attempt to load a second instance of an .EXE file
containing multiple writeable data segments
17 Attempt in a large-frame EMS mode to load a second
instance of an application that links to certain
nonshareable DLLs already in use 18 Attempt in real
mode to load an application marked for protected
mode only
The BOOTLOG.TXT file lists the files and drivers that MS
Windows loads when starting, and the success or failure of a
driver or file to load is recorded in this file and may yield
informative results as to the nature of the conflict.
*****************************
* TROUBLESHOOTING FLOWCHART *
*****************************
INSTRUCTIONS: In each of the following steps you will either
edit a file or run a program from the DOS prompt. Look for the
??? in each step, as these will guide you through the
appropriate troubleshooting procedures. This technical note
consists of four TESTs, which will identify what is causing the
conflict, followed by four STEPs, which will help you resolve
the conflict.
This troubleshooting procedure will isolate and resolve the
conflict most effectively if you are able to reproduce the
conflict at will (you know of a specific action or series of
actions that will cause the conflict to occur). The reason for
this is that this procedure follows a logical set of tests to
determine when a conflict is occuring and when it is not. A
conflict that randomly occurs is difficult to troubleshoot
because you do not know for sure when a configuration is being
used that resolves the conflict.
TEST 1
CONFIGURE WINDOWS TO AVOID CONFLICTS WITH QEMM
----------------------------------------------
*NOEMMDRIVER*
Edit the SYSTEM.INI file and locate the section titled [386enh].
Look in this section for a line that looks as follows:
NoEmmDriver=True
??? If this line exists in the [386enh] section, erase the line.
QEMM is an expanded memory driver and this line conflicts
with MS Windows when using any expanded memory driver. Try
to reproduce the conflict.
??? If the conflict goes away, congratulations! You have
resolved the conflict and are finished with this technical
note.
??? If the conflict still exists then continue with the next step,
*MS WINDOWS TROUBLESHOOTING PARAMETERS*.
??? If there is no line in the SYSTEM.INI that reads
"NoEmmDriver=True," continue with the next step, *MS WINDOWS
TROUBLESHOOTING PARAMETERS*.
*MS WINDOWS TROUBLESHOOTING PARAMETERS*
To determine whether a MS Windows setup problem is causing a
conflict, start MS Windows with the following parameters:
WIN /D:FSVX
??? If MS Windows functions properly with the above switches,
then adding the appropriate settings to the SYSTEM.INI file
will resolve the conflict. Go to STEP A.
??? If the conflict still occurs then the MS Windows
configuration is not causing the conflict. You should
continue with the next step, *WIN.INI*.
*WIN.INI*
It it possible that a driver in the WIN.INI file is causing the
conflict. To determine if this is the case, rename the WIN.INI
file to WIN.OLD.
Start MS Windows and attempt to reproduce the conflict.
??? If the conflict goes away then go to STEP A.
??? If the conflict still exists then go to TEST 2.
TEST 2
CREATE A CLEAN ENVIRONMENT FOR QEMM
-----------------------------------
In order to ensure that the MS Windows conflict is not being
caused by another program in memory, temporarily disable all
lines in the CONFIG.SYS and AUTOEXEC.BAT files that are not a
part of QEMM and are not needed to start MS Windows. To do
this, place the word REM in front of the line and attempt to
reproduce the conflict. Please note that if your hard drive is
compressed or requires a driver to be loaded then those drivers
should not be REMarked out.
Some conflicts require other drivers or TSRs to be loaded in
order to attempt to reproduce the conflict; these drivers should
NOT be REMarked out. For example, if the conflict is related to
a CD-ROM, the drivers for the CD-ROM must be loaded. These
drivers should NOT be REMarked out.
Once the REMark statements have been added to both the
CONFIG.SYS and AUTOEXEC.BAT files, reboot the system and attempt
to reproduce the conflict.
??? If the conflict goes away, go to STEP B.
??? If the conflict still exists, go to TEST 3.
TEST 3
SIMPLYFYING QEMM
----------------
Because QEMM is extremely thorough when recovering and using
upper memory, it is possible that one of QEMM's advanced features
is adding to the conflict with MS Windows. Please follow steps a)
through e) to disable these features.
a) To ensure that there is no conflict in upper memory, you should
eliminate all High RAM and test the system. Run QEMM Setup
in Windows and choose the option "Fill upper memory with RAM"
(In DOS, select "Review or change QEMM parameters", and then
the "Fill upper memory with RAM" option. You should select
"NO" to ensure that QEMM will not create High RAM.
b) To disable Stealth, select "Stealth system and video ROMs" from
the QEMM Features tab in QEMM Setup ("Review or change QEMM
parameters" in the DOS version of QSETUP). You will be
presented with the following options:
Stealth Off
Stealth Mapping
Stealth Frame
??? If the "Stealth Off" option is highlighted then Stealth is
not currently enabled and is not adding to the conflict. Make
a note that you were not using Stealth and proceed to step c)
below.
??? If either "Stealth Mapping" or "Stealth Frame" are
highlighted then you should make a note of the Stealth mode
that you were using and highlight the "Stealth Off" option to
temporarily disable Stealth.
c) The QEMM Setup program can also place QEMM in a
troubleshooting mode, adding many troubleshooting parameters
to the QEMM386.SYS device line.
To add the troubleshooting parameters select Troubleshooting
Parameters (In DOS, the "Review or change QEMM parameters"
QSETUP menu, hit <Page Down> twice and select "Set up QEMM for
troubleshooting".) This will add all of the general
troubleshooting parameters to the QEMM386.SYS line.
d) QEMM's DOS-Up feature can load more of DOS into upper memory
than DOS itself, freeing more conventional memory. It is
possible that a program is expecting most of DOS to be in
conventional memory, and disabling DOS-Up will eliminate that
conflict. In Windows, select "Do not use DOS-Up" from the
DOS-Up property page. In DOS, from the QSETUP Main Menu,
select "Enable or disable DOS-Up," followed by "No."
e) To disable QEMM's Stealth D*Space feature from the QSETUP main
menu, select "Enable or disable Stealth D*Space" and make note
of whether you are using Stealth D*Space (if "Yes" is
highlighted) or not (if "No" is highlighted). Set this option
to "No."
f) To disable QEMM's MagnaRAM, FreeMeg, and Resource Manager, edit
the SYSTEM.INI file, and search the [Boot] section for the line:
drivers=freemeg.dll rsrcmgr.dll
and remove "freemeg.dll" and "rsrcmgr.dll" from the line. Then
search the [386Enh] section for the line:
device=C:\QEMM\MAGNA31.VXD
and place a semi-colon in front of the word "device". Save the file
with the corrections.
After the changes in steps a) through f) have been made, save the
configuration and allow the Optimize program to run.
Once Optimize has completed, try to reproduce the conflict.
??? If the conflict goes away then reconfiguring QEMM will
resolve it. Go to STEP D below.
??? If the conflict still exists, go to TEST 4.
TEST 4
USE DOS'S MEMORY MANAGERS INSTEAD OF QEMM
-----------------------------------------
If all of the above tests fail to resolve the conflict, there may
be an incompatibility with DOS that is not related to QEMM. You
need to ensure that the system is functioning properly with ANY
memory manager.
The QEMM386.SYS driver should be REMarked out of the CONFIG.SYS to
disable QEMM.
Next, add DOS's memory managers, HIMEM.SYS and EMM386.EXE, at the
beginning of the CONFIG.SYS as follows:
EXAMPLE:
DEVICE=C:\DOS\HIMEM.SYS
DEVICE=C:=DOS\EMM386.EXE RAM 1024
REM DEVICE=C:\QEMM\QEMM386.SYS <troubleshooting parameters>
NOTE: The RAM and 1024 parameters should be added to the
EMM386.SYS device line.
Save the configuration, reboot the system, and test to see if the
conflict still exists.
??? If the conflict goes away, go to STEP D.
??? If the conflict still exists then it is unrelated to QEMM.
Since the conflict exists without QEMM loading,
troubleshooting QEMM further will not affect the conflict. We
recommend that you contact the manufacturer of the
application that is failing, or contact Microsoft if MS
Windows itself is not operating correctly. You are finished
with this technical note.
/<*>\/<*>\/<*>\/<*>\/<*>\/<*>\/<*>\/<*>\/<*>\/<*>\/<*>\/<*>\/<*>\
STEP A
CONFIGURING MS WINDOWS
----------------------
??? If the /D:FSVX switch resolved the conflict:
Each of the letters in the parameter "FSVX" represent a
different SYSTEM.INI setting:
SWITCH SYSTEM.INI SETTING
------ ------------------
/D:F 32BitDiskAccess=FALSE
/D:S SystemROMBreakPoint=FALSE
/D:V VirtualHDIRQ=FALSE
/D:X EMMExclude=A000-FFFF
Test MS Windows with only one of the above switches at a time
to determine the setting that needs to be added to the
[386enh] section of the SYSTEM.INI file. Once you have
determined the switch that resolves the conflict, add the
corresponding SYSTEM.INI setting the the [386Enh] section of
the SYSTEM.INI file. You are finished with this technical
note.
??? If renaming WIN.INI to WIN.OLD resolved the conflict:
You have isolated the conflict to something loading in the
WIN.INI file. To determine exactly which program is causing
the conflict, rename the WIN.OLD file back to WIN.INI, edit
the WIN.INI file, and locate the lines that begin with
"LOAD=" (in the [Windows] section). Disable the "LOAD=" lines
one at a time (by placing a ; at the beginning of the line)
and try to reproduce the conflict. When the conflict goes
away, the last line that was disabled contains the driver
that is causing the conflict. You are finished with this
technical note.
STEP B
RESTORING FROM A CLEAN BOOT
---------------------------
One of the drivers or TSRs that you have placed a REM statement in
front of is causing the conflict. In order to identify which
driver or TSR is causing the conflict you should remove the REMark
statements from the beginning of each line in the CONFIG.SYS and
AUTOEXEC.BAT files one at a time. By rebooting and trying to
reproduce the conflict after each change you can identify the
program that is conflicting with MS Windows.
When the conflict reoccurs, the program loading on the last line
that you removed the REMark statement from is causing the
conflict. Contacting the manufacturer of the program is the
easiest way to resolve the conflict; however, Quarterdeck
Technical Support has found that the following suggestions resolve
many other programs' incompatibilities:
o Configure the program NOT to use expanded memory. Some
programs misuse expanded memory, and by configuring them to use
extended or conventional memory the conflict with MS Windows
may be avoided. Consult the program's documentation for
configuration options.
o Try loading the program low. Some programs are written with
the assumption that they will be loaded in conventional memory
and fail to function properly when loaded into upper memory. If
the program is able to load itself into uppper memory, disable
this feature to ensure that it is not adding to the conflict.
o Contact the manufacturer of the program to acquire the latest
version of the program. Newer versions may contain
compatibility fixes for known conflicts.
You are finished with this technical note.
STEP C
REBUILDING QEMM
---------------
*HIGH RAM*
The first step in rebuilding the system is to allow QEMM to create
High RAM. To do this, run QSETUP, select "Review or change QEMM
parameters" followed by "Fill upper memory with RAM." Save this
configuration, reboot the system, and try to reproduce the
conflict.
??? If the conflict does NOT occur then there is no upper memory
conflict. Go to the next section, *STEALTH*.
??? If the conflict reappears then the conflict is related to
upper memory. The technical note EXCLUDE.TEC in the
\QEMM\TECHNOTE directory will help you isolate the area in
upper memory that is causing the conflict and help you
correct the problem. You are finished with this technical
note.
*STEALTH*
In this step you will determine if QEMM's STEALTH feature is
causing the conflict.
??? If you noted in TEST 3 that Stealth was NOT being used then
there is no need to test Stealth. Proceed to the next
section, *DOS-UP*.
??? If you noted in TEST 3 that the Stealth feature was being
used then the next step in rebuilding QEMM is to enable
Stealth and see if the conflict occurs. Run QSETUP, select
"Review or change QEMM parameters" followed by "Stealth
system and video ROMs." Select the appropriate Stealth mode
based upon the mode that you noted in TEST 3. Save this
configuration, reboot the system, and try to reproduce the
conflict.
??? If the conflict does not occur, go to the next step, *DOS-Up*.
??? If the conflict recurs then the conflict is related to
Stealth. The Stealth troubleshooting technical note
STEALTH.TEC is available in the \QEMM\TECHNOTE directory, and
should be followed in order to fine tune Stealth to avoid the
MS Windows conflict. You have identified the conflict and
are finished with this technical note.
*DOS-UP*
To determine whether the DOS-Up feature is adding to the conflict,
you should enable this feature again.
From the QSETUP Main Menu, select "Enable or disable DOS-Up"
followed by "Yes." This will fully enable the DOS-Up feature. Save
the configuration, allow Optimize to run, and try to reproduce the
conflict.
??? If the conflict does not occur then the DOS-Up feature is not
adding to the conflict. You may proceed to next step,
*Stealth D*pace*.
??? If the conflict recurs then DOS-Up is adding to the conflict.
By partially enabling the DOS-Up feature you can still
receive the benefits of DOS-Up while avoiding the conflict
with MS Windows.
From the QSETUP main menu, press the "U" key to "Enable or
disable DOS-Up," then the "P" key for a "Partial" DOS-Up
configuration. This brings you to the DOS-Up Options screen
which allows you to turn on or off the loading high of the 4
parts of DOS.
1 = DOS Resources No
2 = COMMAND.COM No
3 = DOS Data No
H = DOS=HIGH No
Test the system by enabling only one of these options at a
time, rebooting, and trying to reproduce the conflict after
each change to isolate which part of DOS-UP is causing the
conflict. Once the option that is causing the conflict is
isolated, setting the option to "No" in QSETUP will ensure
that this part of DOS-Up will not be enabled by QEMM's
Optimize program in the future. You are finished with this
technical note.
*STEALTH D*SPACE*
This test will determine if the Stealth D*Space driver is adding
to the MS Windows conflict.
??? If you noted in TEST 3 above that you were using the Stealth
D*Space feature then run QSETUP, select "Enable or
disable Stealth D*Space," and set this option to "Yes." Save
the configuration, reboot the machine, and try to reproduce
the conflict.
??? If the conflict recurs then the Stealth D*Space feature is
adding to the conflict. A common cause of conflicts with the
Stealth Doublespace driver is programs that misuse expanded
memory. Try configuring other device drivers and TSRs on the
system to NOT use expanded memory. You may need to consult
the documentation for the programs that you are loading to
learn how to do this.
??? If you noted in TEST 3 that you were NOT using Stealth
D*Space OR if setting the Stealth D*Space option to "Yes" did
not cause a conflict, the QEMM troubleshooting parameters
resolved the conflict. The following is a list of the
troubleshooting parameters that QSETUP added:
DB:2 RH:N SH:N TM:N XBDA:N TR:N CF:N FILL:N MR:N BE:N
You may remove one of these parameters at a time, save the
file, reboot the system, and attempt to reproduce the
conflict. When the conflict occurs then you know that the
LAST parameter that you removed was necessary to avoid the
conflict and you should keep that parameter and remove the
rest. You are finished with this technical note.
STEP D
CONTACTING TECHNICAL SUPPORT
----------------------------
The conflict that MS Windows is experiencing requires further
troubleshooting techniques and investigation, and contacting our
technical support department is the quickest and easiest way to
resolve the conflict. Please mention that you have followed this
technical note and were instructed by STEP D to contact
Quarterdeck for additional troubleshooting steps.
Our technical support department is easily reached via electronic
channels such as CompuServe (GO QUARTERDECK), Internet (mail
support@qdeck.com or the comp.os.msdos.desqview Usenet newsgroup),
the Quarterdeck BBS (310-309-3227), or fax (310-309-3217). When
contacting Quarterdeck, be sure to fully explain the symptoms of
the conflict, the results of the tests performed while following
this technical note, and include the following information:
CONFIG.SYS (in the root directory, usually C:\)
AUTOEXEC.BAT (in the root directory, usually C:\)
SYSTEM.INI (in the MS Windows directory, usually C:\WINDOWS\)
WIN.INI (in the MS Windows directory, usually C:\WINDOWS\)
You can also call our Technical Support line at 310-309-4250 for
further assistance. When you call, please be at the machine that
is experiencing the conflict.
******************************************************************
* Trademarks are property of their respective owners. *
* This and other technical notes may be available in updated *
* forms through Quarterdeck's standard support channels. *
* Copyright (C) 1996 Quarterdeck Corporation *
******************** E N D O F F I L E ***********************