home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Pier Shareware 6
/
The_Pier_Shareware_Number_6_(The_Pier_Exchange)_(1995).iso
/
033
/
ex13flow.zip
/
EX13FLOW.TEC
Wrap
Text File
|
1994-09-21
|
18KB
|
389 lines
ID:X3 Troubleshooting Exception #6, #12, and #13 Errors
Quarterdeck Technical Note #232 Filename: EX13FLOW.TEC
by Diane Christensen and Anthony Thompson CompuServe: EX13FL.ZIP
Last revised: 9/19/94 Category: QEMM
Subject: Detailed explanation and troubleshooting procedures for
Exception #6, #12, and #13 error messages and system lockups.
OVERVIEW
--------
This document addresses Exception #6, #12 and #13 error messages. These
three Exceptions are so similar in cause, nature, and solution that they
will all be covered by the information below. Any reference to an
Exception error in this document applies to an Exception #6, Exception
#12, or Exception #13 error.
Please note that sometimes QEMM cannot report the error to the screen, so
a blank screen or a lockup occurs. For troubleshooting purposes, treat a
system lockup or a blank screen (that accepts no input) to be the same as
an Exception error.
This troubleshooting procedure will isolate and resolve the conflict most
effectively if you are able to reproduce the conflict at will (i.e., 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 the configuration being used is
actually resolving the conflict.
Q: What is an Exception error?
A: An Exception #13 is the most common exception error reported by QEMM.
It is an error generated by the PC's processor notifying you that an
invalid instruction has been issued. The invalid instruction may
have come directly from software running on your machine, the result
of a conflict between software and hardware, or a conflict between
two hardware devices.
An Exception #12 is caused by the stack boundary being crossed. This
Exception can often be generated by an Exception #13.
An Exception #6 is an invalid opcode resulting from the CPU's
instruction pointer being pointed at a value that is not a valid
operation or instruction for the CPU.
An Exception error is not generated by QEMM, but by your PC's
processor. QEMM has the ability to detect these errors and display
them to the screen. The error message informs you what has happened
so that you may take the necessary steps to resolve the conflict.
Without QEMM's warning, your system would have simply crashed or hung
without an error message, or would have become unstable. For more
detailed information about the error messages themselves, please
refer to Technical Note #142, "QEMM-386: Exception 13 Explained"
(EXCEPT13.TEC).
Q: How do I resolve my Exception error?
A: Follow these steps:
DETERMINING YOUR QEMM VERSION
-----------------------------
Before beginning this troubleshooting guide, you must first ensure that
you have QEMM 7 installed. Previous QEMM versions do not apply to this
flowchart. To determine the version of QEMM that is installed on your
computer, type QEMMREG from the \QEMM directory.
??? If the version of QEMM is not 7, you should upgrade to ensure
complete compatibility with all of the current hardware and software
on the market. Since new hardware and software is released
regularly by other vendors, QEMM is constantly being updated to
perform optimally and without conflict with the latest hardware and
software products on the market. QEMM is also updated to work
around flaws in other products to ensure system stability. The
APPENDIX at the end of this technical note contains details about
updating QEMM.
??? If the QEMM version is 7.01, you should obtain an update to the
latest version of QEMM to avoid any potential conflicts. Even if
your QEMM version is later than 7.01, updating to the latest QEMM
version is advised. The APPENDIX at the end of this technical note
contains details about updating QEMM.
With version 7.02 or later, please continue.
STEP 1
TAMING DOWN QEMM
----------------
*STEALTH*
Run the QSETUP program from the \QEMM directory, select P, "Review or
change QEMM parameters," and examine your DEVICE=QEMM386.SYS line. If
you do NOT see an ST:M or ST:F anywhere on that line, proceed to the next
section, *TROUBLESHOOTING MODE*.
If you DO see an ST:M or ST:F, select S, "Stealth ROMs," then O to turn
Stealth off. Pressing <Enter> will bring you back to the "Review or
change QEMM parameters" screen, where you should press "A" to accept the
changes, followed by "S" to save the changes. At this point you should
reboot the machine and try to recreate the Exception error.
??? IF THE EXCEPTION ERROR DOES NOT OCCUR: QEMM's Stealth ROM feature
is involved with the Exception error on your system. You should
follow the STEALTH.TEC technote in the \QEMM\TECHNOTE directory to
configure Stealth to avoid the conflict. You are finished with this
technote.
??? IF THE EXCEPTION ERROR STILL OCCURS: Continue with the next section,
*TROUBLESHOOTING MODE*.
*TROUBLESHOOTING MODE*
Run the QSETUP program from the \QEMM directory, select P, "Review or change
QEMM parameters," press <Page Down> twice, and select "Set up QEMM for
troubleshooting." This will add several troubleshooting parameters to the
QEMM386.SYS device line for you. Pressing <Enter> will bring you back to
the "Review or change QEMM parameters" screen, where you should press "A"
to accept the changes, followed by "S" to save the changes.
Reboot the machine and try to reproduce the Exception error.
??? IF THE EXCEPTION ERROR DOES NOT OCCUR: Congratulations, you're
done! At this time, you may want to remove any unnecessary
troubleshooting parameters from the QEMM386.SYS device line in your
CONFIG.SYS file. Leaving the parameters on the line isn't harmful,
but may be inefficient. To do this, edit the CONFIG.SYS (QEMM's
Manifest utility in the \QEMM directory allows you to easily do
this) and remove the parameters one at a time. Reboot the machine
and try to reproduce the conflict to isolate the parameter that
resolves the conflict. The following parameters are the
troubleshooting parameters added by QSETUP:
DB:2, RH:N, SH:N, TM:N, XBDA:N, TR:N, CF:N, FILL:N, MR:N
Once you have identified the parameter that resolves the conflict,
you may remove the remaining troubleshooting parameters; you are then
finished with this technote.
??? IF THE EXCEPTION ERROR STILL OCCURS: Continue with the next
section, *DISABLE DOS-UP*.
*DISABLE DOS-UP*
QEMM's DOS-UP feature may be involved with your Exception error. From
the \QEMM directory, run the QSETUP program, press the letter "U" to
select "Enable or disable DOS-Up." Press the letter "N" to disable the
DOS-Up feature followed by <Enter> to go back to the QSETUP OPTIONS menu.
Press the letter "S" to "Save configuration and Quit." You will be asked
by QSETUP if you would like to run Optimize. Press <Enter> to begin the
Optimize process. When Optimize has completed, try to recreate the Exception
error.
??? IF THE EXCEPTION ERROR DOES NOT OCCUR: 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 Exception error.
From the QSETUP main menu, press the "U" key to "Enable or disable
DOS-Up," and 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,
saving the configuration, rebooting, and trying to reproduce the
Exception error. Once the option that is causing the
conflict is isolated, setting the option to "No" in QSETUP will
ensure that QEMM's Optimize program will not enable this part of
DOS-Up in the future. You have resolved the conflict and are
finished with this technote.
??? IF THE EXCEPTION ERROR STILL OCCURS: Go to STEP 2.
STEP 2
CLEAN BOOT
----------
In order to ensure that another driver isn't adding to the conflict, you
should temporarily disable those drivers and TSRs not required to boot
the machine or to reproduce the conflict.
Some conflicts require other drivers or TSRs to be loaded in order to
attempt to reproduce the conflict. For example, if the conflict is
related to a CD-ROM, the drivers for the CD-ROM must be loaded. Also note
that if your hard drive is compressed or requires a driver to be loaded
then these drivers should NOT be REMarked out.
Using your favorite editor, edit your CONFIG.SYS file. On every line in
this file (EXCEPT the QEMM386.SYS line and those required to boot the
machine or reproduce the conflict) place the word REM at the beginning of
that line. For example:
DEVICE=C:\QEMM\QEMM386.SYS RAM R:1
REM DOS=HIGH
REM FILES=30
REM BUFFERS=30
REM DEVICE=C:\DOS\ANSI.SYS
Your CONFIG.SYS will have different lines, of course, with different
values on them.
Save this file. Perform the same operation on your AUTOEXEC.BAT file,
adding REM to all lines that are not necessary to recreate the
Exception error (but you MAY leave statements that begin with PATH or
PROMPT). Reboot your system and try to reproduce the Exception error.
??? IF THE EXCEPTION ERROR DOES NOT OCCUR: Remove each of your REMark
statements one at a time from your AUTOEXEC.BAT file, saving and
rebooting after each, to try and recreate the problem. Should the
Exception error occur, the last line you unREMarked is the source of
the problem.
If you have removed the REMs from all the lines in the AUTOEXEC.BAT
file without encountering the error, the problem is in the
CONFIG.SYS file. In that case, repeat the instructions in the
previous paragraph, but perform the steps for the CONFIG.SYS file
this time. Similarly, the last line you unREMarked prior to the
error reappearing is the line responsible for the problem. Go to
the section *RESOLVING CONFLICTS WITH OTHER DRIVERS*.
??? IF THE EXCEPTION ERROR STILL OCCURS: Go to STEP 3.
*RESOLVING CONFLICTS WITH OTHER DRIVERS*
You have isolated the conflict and determined which driver or TSR is
causing it. Contacting the manufacturer of the program is often the
best way to resolve the conflict; however, Quarterdeck Technical
Support has found that the following suggestions resolve many other
programs' incompatibilities:
o Configure the program to NOT use expanded memory. Some programs
misuse expanded memory, and by configuring them to use extended
or conventional memory the conflict with your system 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.
Programs that load themselves into upper memory should be
tested with this feature disabled.
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 technote.
STEP 3
ELIMINATE HIGH RAM CONFLICTS
----------------------------
To ensure that there is no conflict in upper memory, you should eliminate
all High RAM and test the system. Run QSETUP from the \QEMM directory,
select P, "Review or change QEMM parameters" followed by R, "Fill upper
memory with RAM." You should select "No" to ensure that QEMM will not
create High RAM. Pressing "A" to accept the changes followed by "S" to
save the configuration will allow you to exit QSETUP. Reboot the system
and attempt to reproduce the conflict (ignore any messages about programs
not loading into upper memory, as you have removed all High RAM for this
test).
??? IF THE EXCEPTION ERROR DOES NOT OCCUR: There is a conflict in upper
memory. If you are using a bus-mastering SCSI hard disk controller
(consult the SCSI card's documentation if you are unsure), the
BUS-MAST.TEC technote in the \QEMM\TECHNOTE directory will help you
resolve the conflict. Otherwise, the EXCLUDE.TEC technote in the
\QEMM\TECHNOTE directory will help you resolve the upper memory
conflict. You are finished with this technote.
??? IF THE EXCEPTION ERROR STILL OCCURS: There is no upper memory
conflict. You should proceed to STEP 4.
STEP 4
TEST THE CONFIGURATION WITH DOS'S MEMORY MANAGERS
-------------------------------------------------
In this step, you will try to recreate the conflict without QEMM
installed. If the conflict occurs without QEMM on the system then QEMM
is not involved in the conflict.
Edit your CONFIG.SYS with your favorite text editor, locate the
QEMM386.SYS line, and at the beginning of that line, add the word REM, as
in the example below:
REM DEVICE=C:\QEMM\QEMM386.SYS <additional parameters>
Directly below this line, add the following two lines:
DEVICE=C:\DOS\HIMEM.SYS
DEVICE=C:\DOS\EMM386.EXE ON RAM 2048
These two lines assume that HIMEM.SYS and EMM386.EXE are in the directory
\DOS. If they are in some other directory, replace the word DOS in the
above two lines with the correct directory name. If there are any
eXcludes or Includes on your QEMM386.SYS line that are necessary to boot
the machine, add them to the EMM386.EXE line as well. Save your changes
and reboot the machine. After rebooting, QEMM will NOT be loaded.
Attempt to reproduce the conflict.
??? IF A CONFLICT DOES NOT OCCUR: If you're loading DOS's memory
managers and you have followed every step of this technical note,
then further troubleshooting is required. 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 4 to contact Quarterdeck for additional
troubleshooting steps.
??? IF A CONFLICT STILL OCCURS: QEMM is NOT involved with the conflict;
you are finished with this technote. Since Exception errors will
generally only display with QEMM enabled, the symptoms of a
remaining problem with the DOS memory managers will most likely be a
machine hang. If a conflict still occurs without QEMM loading,
further QEMM troubleshooting will not affect the conflict. You
should consult the documentation that comes with the software that
generated the Exception error with QEMM or causes a hang with HIMEM
and EMM386, or contact the manufacturer of the program.
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-314-3227), or fax (310-314-3217). When
contacting Quarterdeck, be sure to fully explain the symptoms of the
conflict and the results of the tests performed while following this
technical note.
You can also call our Technical Support line at 310-392-9701 for
further assistance. When you call, please be at the machine that is
experiencing the conflict.
APPENDIX
OBTAINING THE LATEST QEMM VERSION
---------------------------------
If you currently have a version of QEMM earlier than QEMM 7, you should
upgrade to ensure complete compatibility with all of the latest software
and hardware. Contact the Quarterdeck Upgrade Department at 800-354-3222
or 310-314-3222 for special upgrade pricing. Please note that we give
you a special upgrade price ONLY after you have registered your product!
If you are using QEMM 7 and would like to update your QEMM version to the
latest maintenance release, free update patches are available on
Compuserve (GO QUARTERDECK, LIB 10), the Quarterdeck BBS (310-314-3227),
anonymous FTP (qdeck.com), or BIX (join desqview). The updated version
can also be ordered from Quarterdeck's Customer Service dept
(800-354-3222) for the cost of shipping & handling.
************************************************************************
*This technical note may be copied and distributed freely as long as it*
*is distributed in its entirety and it is not distributed for profit. *
* Copyright (C) 1994 by Quarterdeck Office Systems *
************************ E N D O F F I L E *************************