home *** CD-ROM | disk | FTP | other *** search
/ Shareware Supreme Volume 6 #1 / swsii.zip / swsii / 163 / QTEC9305.ZIP / EX13FLOW.TEC < prev    next >
Text File  |  1992-06-16  |  47KB  |  971 lines

  1. ID:ET Exception #13 Advanced Troubleshooting
  2. Quarterdeck Technical Note #232   
  3. by David Riess
  4. Last Revision:  June 15, 1992
  5.  
  6.      YES, this document IS long!  PLEASE, Do not be intimidated by the
  7. length of this document as you will only need a small part of its contents.
  8. ---------------------------------------------------------------------------
  9.      Exception errors are unusual or invalid conditions associated with the 
  10. execution of a particular instruction by the 80386 processor (or higher, such 
  11. as the 80486 processor).  The 80386 recognizes 16 different classes of 
  12. exceptions.  Quarterdeck's expanded memory manager, QEMM-386, has been 
  13. designed to capture these 80386 exception errors and display them directly to 
  14. the user.  This is a basic feature of all 386 memory managers; MS-DOS and PC-
  15. DOS alone do not have this capability.
  16.      Exception #13 is the "General Protection Fault" error; usually, your 
  17. machine has crashed as a result of whatever caused it.  Any privileged 
  18. instruction or an instruction that references memory at an invalid address can 
  19. trigger an Exception #13.  It is the most commonly encountered 80386 error.
  20.  
  21.  There are two circumstances that can cause an Exception #13 to occur:
  22.  
  23.           In the first case, the Exception #13 indicates that a program has 
  24.      violated the protected mode of the 80386 by executing a privileged 
  25.      instruction or I/O reference.
  26.           The second case (most common to QEMM-386 users) involves 
  27.      instructions that reference memory addresses and may indicate that an 
  28.      application has a bug, or that adverse circumstances have sent the 
  29.      processor out of control:  it has overwritten its memory partition, and 
  30.      may in fact be running wild, executing meaningless code.
  31.  
  32.       Many people assume that QEMM-386 is causing the Exception #13 error to 
  33. occur on their machine.  However, the majority of these errors are due to the 
  34. complex combination of multiple TSRs, device drivers and program(s) currently 
  35. in memory trying to run in harmony with the expanded memory manager, the 
  36. version of DOS, the video card, hard-disk drive,...
  37.       QEMM-386 will attempt to report the error before your system crashes, 
  38. although it is often an error unrelated to the functioning of the memory 
  39. manager.  An Exception #13 does not neccesarily mean that QEMM-386 is at 
  40. fault, but the QEMM WILL report the error.
  41.  
  42. ---------------------------------------------------------------------------
  43.      This Quarterdeck Technical Note (technote) has been written to help YOU 
  44. troubleshoot and fix most Exception #13 problems.  We have included an example 
  45. scenario for YOU to follow in order to make this Technote as "User Friendly" 
  46. as possible.
  47.      At a minimum, this Exception #13 troubleshooting procedure will take 2 
  48. steps to complete and you will have to skip ahead to different parts of this 
  49. Technote depending on the results of previous steps, so PLEASE FOLLOW ALL 
  50. INSTRUCTIONS CAREFULLY.
  51.  
  52.      The Quarterdeck Technical Support Staff handle many Exception #13 calls 
  53. every day ranging from the simple (e.g., "Every time I load my CD-ROM, when I 
  54. access the disk I get an 'QEMM: Exception #13 error at C800:3D5F'") to the 
  55. difficult (e.g., "I'm running my database program off the network and the 
  56. program works fine, but when I exit the database program and go into my 
  57. spreadsheet program, if I print from the spreadsheet program, I get an 
  58. Exception #13 error.  This happens randomly, usually once every 3 days.")
  59.  
  60. This Technote follows the same EXACT procedures which our technical support 
  61. staff uses to troubleshoot Exception #13 problems with QEMM-386.
  62.  
  63.      EXAMPLE Exception #13 PROBLEM SCENARIO:  "I've installed QEMM-386 and 
  64. have run the OPTIMIZE program to load my TSRs and device drivers into High 
  65. RAM.  I'm running a scanner program from my network drive (drive F:).  I get 
  66. into the scanner program without a problem, except every time when I start 
  67. scanning I get an 'Exception #13' error and my system crashes."
  68.  
  69.      SCENARIO ASSUMPTIONS:  QEMM-386 has been loaded onto the local C: drive 
  70. and QEMM-386 is installed in the C:\QEMM subdirectory.
  71.      
  72.      INSTRUCTIONS:  Some of the following steps will have you either edit a 
  73. file or run a program from the DOS prompt.  Whenever you see a number followed 
  74. by a right parenthesis, ) , perform the action which follows.  Comments 
  75. regarding the action will be followed in brackets, [].
  76.  
  77.                                   (STEP 1)
  78.  
  79.            TRY TO RE-CREATE THE PROBLEM WITHOUT QEMM-386 INSTALLED
  80.            -------------------------------------------------------
  81.      QEMM-386 will report an Exception #13 error message whether QEMM-386 is 
  82. responsible for the problem or not!  We will need to reboot your system 
  83. WITHOUT QEMM-386 and try to re-create the problem to determine if QEMM-386 is 
  84. involved with the Exception #13 error.
  85.      If QEMM-386 is NOT loaded on your system and the software STILL has 
  86. problems, then QEMM-386 is not involved with the error and you will need to 
  87. consult the documentation or contact the makers of the software that is making 
  88. your system crash.
  89.  
  90. ??? Does your program need expanded memory in order to operate properly?
  91.     If so, please go to STEP 2 (otherwise proceed with this STEP).
  92.     Proceed with this step if you are uncertain if your program uses
  93.     expanded memory.
  94.  
  95.      We will need to re-boot your computer without QEMM-386 loaded.  To 
  96. accomplish this, we DO NOT have to modify any of your startup files 
  97. (CONFIG.SYS or AUTOEXEC.BAT files)!
  98.  
  99.      1) Please re-boot your machine.  During the re-boot, your computer will 
  100. BEEP.  When you hear the BEEP, immediately hold down on the ALT key (and keep 
  101. it pressed down) until you see the following message on screen:
  102.  
  103.         QEMM386: Press <ESC> to unload QEMM or any other key
  104.         to continue with QEMM...
  105.  
  106. If you do not see this message, please retry again by rebooting your machine! 
  107. Press the ESCAPE (ESC) key to bypass QEMM and try to re-create the Exception 
  108. #13 problem.
  109.  
  110. ??? If you do not have enough memory to run your program, go to STEP 2.
  111.  
  112. ??? If the problem still exists, go to STEP B.
  113.  
  114. ??? If the problem goes away, go to STEP 2.
  115.  
  116.                                   (STEP 2)
  117.  
  118.               QUICK-FIX TROUBLESHOOTING PARAMETERS FOR QEMM-386
  119.               -------------------------------------------------
  120.      This second step is intended for the advanced QEMM-386 user who is 
  121. familiar and comfortable with editing and adding parameters to the QEMM386.SYS 
  122. line of the CONFIG.SYS file.  If you are not familiar with this process, DON'T 
  123. WORRY!  Skip ahead to STEP 3 now, where you will be given examples about how 
  124. to edit and add parameters to QEMM.
  125.      If the following 2 scenarios do not apply to your Exception #13 problem 
  126. or do not help RESOLVE the problem, then please go to STEP 3 (the next step) 
  127. and remove the parameters specified below (depending on the scenario).
  128.      Scenario #1:  When your machine crashes, do you notice that the video 
  129. text or graphics is altered (blank screen, part of the screen is altered, 
  130. strange lines displayed across the screen, color changes, video-mode switching 
  131. problems)?  Add the following parameters to the end of the QEMM386.SYS line of 
  132. the CONFIG.SYS file:
  133.  
  134.      X=A000-C7FF  NV  NVR
  135.  
  136.      Scenario #2:  When your machine crashes, do you notice that the hard disk 
  137. (or floppy disk or CD-ROM) is being accessed?  Add the following parameters to 
  138. the end of the QEMM386.SYS line of the CONFIG.SYS file:
  139.  
  140.      X=F000-FFFF  X=C800-CFFF  DB=4  ROM
  141.  
  142. (IF you already had the ROM parameter at the end of the QEMM386.SYS line, then 
  143. DO NOT USE (remove) the ROM parameter from the QEMM386.SYS line.) If the 
  144. scenario #2 parameters help resolve your problem, try removing the X=C800-CFFF 
  145. parameter (however keep the other 3 parameters) .  If the problem now occurs, 
  146. then put back the X=C800-CFFF parameter.
  147.  
  148.      If the above parameters resolve your problem,  HAVE A GREAT DAY!
  149.  
  150.                                   (STEP 3)
  151.  
  152.                   DETERMINING THE FREQUENCY OF THE PROBLEM
  153.                   ----------------------------------------
  154.      Troubleshooting Exception #13 errors can be quite difficult if the 
  155. problem occurs infrequently, every once in a couple of days/weeks without 
  156. showing some kind of pattern that may be causing the problem.  In order to 
  157. troubleshoot ANY problem, you must be able to know how to reproduce the 
  158. problem on a frequent basis, and if you can't reproduce the error frequently, 
  159. then this technote will not be able to help you because:
  160.      
  161.      It's difficult to fix something, if you don't know that it's fixed when 
  162.      you fix it.
  163.      
  164.      If the Exception #13 error occurs every time you run a particular 
  165. application or you have been experiencing Exception #13 errors at least twice-
  166. a-day with a given application, then we can attempt to troubleshoot the 
  167. problem systematically.
  168.      If the problem occurs frequently, please go to STEP 4.
  169.      If the problem is not frequent, you must try to determine a pattern by 
  170. which you can re-create the error on a frequent basis and then proceed with 
  171. this technote! (If your car makes unusual noises every once in a while, you 
  172. can't expect your automobile mechanic to fix the problem if he can't re-create 
  173. the problem!)
  174.      PLEASE NOTE:  Crashes which occur infrequently are usually hardware 
  175. related problems.  These random crashes cannot be resolved by reconfiguring or 
  176. removing QEMM-386.
  177.  
  178.                                   (STEP 4)
  179.  
  180.                       DETERMINING YOUR QEMM-386 VERSION
  181.                       ---------------------------------
  182.      This step determines which version of QEMM-386 you have, and will direct 
  183. you to the troubleshooting technique needed for solving your Exception #13 
  184. problem based on your QEMM version.  Enter the following 3 commands at the DOS 
  185. prompt:
  186.      
  187.      1)  C:          [go to the QEMM disk-drive           ]
  188.      2)  CD\QEMM     [go to the QEMM subdirectory         ]
  189.      3)  QEMMREG     [Determine what QEMM version you have]
  190.  
  191. Here's an EXAMPLE of what you should see on your screen:
  192.  
  193.      Quarterdeck Expanded Memory Manager 386 V5.13    <----------|
  194.      Copyright (c) 1986-1991 by Quarterdeck Office Systems       |
  195.      Serial number: 000-B6-0000-000000                           |
  196.      Registered to: Power User                                   |
  197.      ABC COMPUTER USERS                                          |
  198.      Anywhere, CA  USA                                           |
  199.                                                                  |
  200. ??? What version of QEMM is installed on your machine: ----------|
  201.  
  202.         4.00 - 5.13
  203.         ---------------
  204.         go to STEP 6.
  205.  
  206.         6.00 or greater
  207.         ---------------
  208.         go to STEP 5.
  209.  
  210. ***
  211. If QEMMREG returns "Bad command or file name", then either you have a
  212. very old version of QEMM-386 (in which you should go to STEP 6) or you have 
  213. erased the file QEMMREG.COM from your QEMM directory (in which case you should 
  214. re-install QEMM-386 on your hard disk, then perform STEP 4 again). 
  215. ***
  216.  
  217.                                   (STEP 5)
  218.  
  219.      DETERMINING WHETHER STEALTH IS CAUSING A CONFLICT WITH YOUR SYSTEM
  220.      ------------------------------------------------------------------
  221.      You have QEMM version 6.00 or greater.  Quarterdeck has added the STEALTH 
  222. feature into your version of QEMM in order to create up to 83K more of High 
  223. RAM (up to 115K more on PS/2 machines) than versions before 6.00!  The Stealth 
  224. feature is invoked with the parameter ST:M or ST:F on the 
  225. "DEVICE=C:\QEMM\QEMM386.SYS ..." line of your CONFIG.SYS file (located in the 
  226. root directory of your bootup drive).
  227.      Your Exception #13 problem may be related to the Stealth feature of QEMM, 
  228. provided you have invoked Stealth.  We will check your CONFIG.SYS file for the 
  229. ST:x parameter to determine the next troubleshooting STEP for you to take.
  230.      With a file editor or file viewer, go to the C:\ directory (root 
  231. directory of your bootup drive) and load the CONFIG.SYS file.  Search the 
  232. DEVICE=C:\QEMM\QEMM386.SYS line for either ST:M or ST:F.
  233.  
  234. ??? If the QEMM386.SYS line DOES NOT have a ST:M or ST:F parameter (which 
  235.     means you are not using the Stealth feature of QEMM-386), then go to STEP 
  236.     6.
  237.  
  238.      We want to remove all Stealth-related parameters (ST:M, ST:F, XST=, 
  239. XSTI=, DBF=, FSTC, FRAME=) to test whether Stealth is involved with your 
  240. Exception #13 problem.  Here's an example of removing these parameters:
  241.  
  242. DEVICE=C:\QEMM\QEMM386.SYS R:1 RAM ROM X=D000-D3FF ST:M XST=C000
  243.                                                    <---delete-->
  244. DEVICE=C:\QEMM\QEMM386.SYS R:1 RAM ROM X=D000-D3FF
  245.  
  246.      Edit your CONFIG.SYS file and remove the Stealth-related parameter(s), 
  247. then re-boot your computer and try to re-create the Exception #13 error.
  248.  
  249. ??? If the problem still exists, please go to STEP 6.
  250.  
  251. ??? If the problem goes away, then your Exception #13 error is due to a 
  252.     conflict with QEMM's Stealth feature.  NOW, the next step for YOU is to 
  253.     leave this technical note and get the technote STEALTH.TEC, which covers 
  254.     how to correct problems which only occur with Stealth.  You no longer need 
  255.     this technote!
  256.  
  257. The STEALTH.TEC technote is available:
  258.  
  259. 1) On Compuserve [GO QUARTERDECK, Library 2].  Download STEALT.ZIP.
  260. 2) On the Quarterdeck BBS [310-314-3227].  Download STEALTH.TEC.
  261. 3) On the Quarterdeck Q/FAX [310-314-3214].  Download FAX# 205 (Q/FAX
  262.    will automatically fax this back to your fax machine instantly!).
  263. 4) Call Quarterdeck Technical Support [310-392-9701] and we will
  264.    gladly fax/mail it to you.
  265.  
  266.                                   (STEP 6)
  267.  
  268.          DETERMINING THE MEMORY LOCATION OF THE EXCEPTION #13 ERROR
  269.          ----------------------------------------------------------
  270.      The location of the memory address where the Exception #13 error occurred 
  271. may give us a clue as to what may be causing the problem.  We will locate the 
  272. memory address of the error and perform the next STEP based on this address.
  273.      The following is an example Exception #13 error message:
  274.  
  275.      QEMM: Exception #13 at C9F6:0173.       <---------------------
  276.      Error code: 0000                                             |
  277.      AX=240A BX=0000 CX=0000 DX=0000 SI=0000 DI=0000 BP=0001      |
  278.      DS=29F6 ES=29F6 SS=29F6 SP=D4F9 Flags=7202                   |
  279.      Instruction: 6F 72 20 72 65 61 64 69 6E 67 20 2E 53 59 4D    |
  280.      Do you want to (T)erminate the program, (R)eboot,            |
  281.      or disable QEMM and try to (C)ontinue?                       |
  282.                                                                   |
  283. We are only concerned with the first line, ------------------------
  284. to determine the address where your system crashed!
  285.  
  286.      The end of the line shows the memory address of the crash at XXXX:YYYY 
  287. (in our example C9F6:0173) where XXXX and YYYY are hexadecimal 
  288. (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F) numbers.  We are only concerned with the 
  289. XXXX number (in our example C9F6).
  290.  
  291. ??? If the Hexadecimal number of XXXX is in the range from:
  292.  
  293.     0000 through 9999  (e.g. 29F6, 512E, 9FE0, 0C6A) go to STEP 8.
  294.     A000 through FFFE  (e.g. A890, B1EF, D800, EFFE) go to STEP 7.
  295.     FFFF               go to STEP 8.
  296.  
  297.                                   (STEP 7)
  298.  
  299.                          AVOIDING HIGH RAM CONFLICTS
  300.                          ---------------------------
  301.      Exception #13 errors that occur in the range from A000 up to FFFE are 
  302. located in the High RAM area (above 640K) and are usually caused by one of two 
  303. situations:
  304.  
  305.           The first situation occurs if you have a bus-mastering device 
  306.      (usually SCSI devices and CD-ROM's) which conflicts with High RAM.  Some of 
  307.      these devices have a special (VDS) driver supplied by the company that 
  308.      allows the device to avoid these problems (without having to modify your 
  309.      QEMM-386 settings to correct the problem!).
  310.  
  311.           The second situation is caused by a conflict between QEMM-386 and an 
  312.      adapter ROM (or RAM) which is situated in the same memory location.  For 
  313.      example:  If you have a network card that takes up 16K of memory and QEMM-
  314.      386 fails to detect the existence of your network card, then QEMM-386 
  315.      will create High RAM in the SAME memory location as your network card.  
  316.      If your software then tries to access the network card, the network 
  317.      ROM/RAM code will not be found (instead, your software will try to 
  318.      execute the contents of the High Ram area, which may have another program 
  319.      loaded High in that area) and usually your machine will crash.
  320.  
  321.      We will add the following 2 parameters to the end of the QEMM386.SYS line 
  322. of your CONFIG.SYS file to help BOTH possible situations:
  323.      
  324.      The first parameter is 'DB=4' to avoid bus-mastering problems.
  325.      
  326.      The second parameter is either:
  327.  
  328.      'X=A000-AFFF' if the error occurs in the range of A000-AFFF or
  329.      'X=B000-BFFF' if the error occurs in the range of B000-BFFF or
  330.      'X=C000-CFFF' if the error occurs in the range of C000-CFFF or
  331.      'X=D000-DFFF' if the error occurs in the range of D000-DFFF or
  332.      'X=E000-EFFF' if the error occurs in the range of E000-EFFF or
  333.      'X=F000-FFFF' if the error occurs in the range of F000-FFFF
  334.  
  335.      Here is an EXAMPLE of what your QEMM line in the CONFIG.SYS file looks 
  336. like:
  337.  
  338.      DEVICE=C:\QEMM\QEMM386.SYS RAM AROM=C800-CBFF
  339.  
  340.      If we use the EXAMPLE Exception #13 memory address from the last STEP, 
  341. (at C9F6), then adding the 2 parameters will make the QEMM line look like: 
  342.  
  343. DEVICE=C:\QEMM\QEMM386.SYS RAM AROM=C800-CBFF DB=4 X=C000-CFFF
  344.  
  345.      Save the CONFIG.SYS file.
  346.      Now reboot your machine and try to re-create the Exception #13 problem.
  347.  
  348. ??? If the problem still exists, go to STEP 8.
  349.  
  350. ??? If the problem goes away, then we know there was a memory conflict and we 
  351.     should try to narrow down which address range in High RAM has been causing 
  352.     the conflict.  This will allow you to get back as much High RAM as 
  353.     possible!  Try removing the DB=4 parameter from the QEMM386.SYS line.  If 
  354.     your machine crashes, then obviously you need this parameter.  If your 
  355.     machine crashes, you may wish to inquire about a VDS driver which is 
  356.     provided by the manufacturers of such boards.  For a detailed description 
  357.     of VDS drivers and bus-mastering devices, you may want to obtain the BUS-
  358.     MAST.TEC technote.  The BUS-MAST.TEC technote is available:
  359.  
  360. 1) On Compuserve [GO QUARTERDECK, Library 2].  Download BUSMAS.ZIP.
  361. 2) On the Quarterdeck BBS [310-314-3227].  Download BUS-MAST.TEC.
  362. 3) On the Quarterdeck Q/FAX [310-314-3214].  Download FAX# 121 (Q/FAX will
  363.    automatically fax this back to your fax machine instantly!).
  364. 4) Call Quarterdeck Technical Support [310-392-9701] and we will gladly
  365.    fax/mail it to you.
  366.  
  367.      Try removing the X=C000-CFFF parameter (remember, the 'C' is an example! 
  368. You may be using 'A','B','D','E', or 'F' instead) from the QEMM386.SYS line.  
  369. If your machine crashes, then obviously you need this parameter.
  370.      If you DO need X=C000-CFFF (excluding a 64K area), then we should try to 
  371. narrow down the exclusion area in order to create more High RAM. 
  372.      The most accurate way to determine which area(s) should be eXcluded is to 
  373. run QEMM's Analysis procedure which is described in detail in your QEMM-386 
  374. manual (in the "The QEMM.COM program" section, look for the page header 
  375. "Analysis Procedure").  This method will have you strip all parameters off the 
  376. QEMM386.SYS line of your CONFIG.SYS file except for "ON MAPS=0".  After re-
  377. booting and running the program that has been giving you trouble, you will run 
  378. "QEMM ANALYSIS" at the DOS prompt to determine the exact area(s) you must 
  379. exclude.  HAVE A GREAT DAY!
  380.      For a detailed description of the ANALYSIS procedure, you may want to 
  381. obtain the EXCLUDE.TEC technote.  The EXCLUDE.TEC technote is available:
  382.  
  383. 1) On Compuserve [GO QUARTERDECK, Library 2].  Download EXCLUD.ZIP.
  384. 2) On the Quarterdeck BBS [310-314-3227].  Download EXCLUDE.TEC.
  385. 3) On the Quarterdeck Q/FAX [310-314-3214].  Download FAX# 219 (Q/FAX
  386.    will automatically fax this back to your fax machine instantly!).
  387. 4) Call Quarterdeck Technical Support [310-392-9701] and we will
  388.    gladly fax/mail it to you.
  389.  
  390. ***** If you do not have access to your QEMM-386 manual or EXCLUDE.TEC (and 
  391. cannot follow QEMM's Analysis procedure) then try the following 2 parameters, 
  392. one-at-a-time, instead of X=C000-CFFF on the QEMM386.SYS line:
  393.  
  394.    X=C000-C7FF
  395.    X=C800-CFFF
  396.  
  397.      If one of these parameters work properly, then you will want to use that 
  398. parameter (instead of X=C000-CFFF).  If both of these parameters still cause a 
  399. crash, then just use X=C000-CFFF.  HAVE A GREAT DAY!
  400.  
  401.                                   (STEP 8)
  402.  
  403.                      CREATE A CLEAN ENVIRONMENT FOR QEMM
  404.                      -----------------------------------
  405.      To determine whether the problem is caused by QEMM-386, we must create a 
  406. clean environment for QEMM-386 that requires removing ALL lines from the 
  407. CONFIG.SYS and AUTOEXEC.BAT files which do not directly affect the program 
  408. that is getting the Exception #13 error.
  409.      First, you need to make back-up copies of your CONFIG.SYS and 
  410. AUTOEXEC.BAT files (which are located in the root directory) because we are 
  411. going to modify these files.  To make the back-up copies of these files 
  412. perform the following 4 commands at the DOS prompt:
  413.  
  414.      1) C:
  415.      2) CD\
  416.      3) COPY CONFIG.SYS CONFIG.OLD
  417.      4) COPY AUTOEXEC.BAT AUTOEXEC.OLD
  418.  
  419.      Now, edit your CONFIG.SYS file so that only the lines that are ABSOLUTELY 
  420. necessary to re-create the Exception #13 error remain in the CONFIG.SYS file.  
  421. You need the QEMM386.SYS line and the FILES= line as a minimum, delete every 
  422. other line unless it is ABSOLUTELY needed to re-create the problem.
  423.  
  424.      The following is an example CONFIG.SYS file for our example:
  425.  
  426.      #1   DEVICE=C:\QEMM\QEMM386.SYS RAM AROM=C800-CBFF
  427.       2   DEVICE=C:\UTIL\CACHE.SYS
  428.      #3   FILES=25
  429.       4   BUFFERS=30
  430.      #5   DEVICE=C:\QEMM\LOADHI.SYS /R:2 C:\SCAN\SCANNER.SYS 256
  431.       6   DEVICE=C:\DOS\ANSI.SYS
  432.       7   DEVICE=C:\FAXING\FAX.SYS
  433.      #8   SHELL=C:\COMMAND.COM /P /E:768
  434.      #9   DEVICE=C:\QEMM\LOADHI.SYS /R:3 C:\NETW\NETWORK.SYS
  435.       10  STACKS=0,0
  436.  
  437. The # indicates lines which are ABSOLUTELY necessary to include in the 
  438. CONFIG.SYS file in order to re-create the example problem.  Let's take a look 
  439. at why (you may want to look at the Exception #13 example problem scenario 
  440. located on the first page of this Technote, again!):
  441.  
  442.      line  1) We NEED the QEMM driver to re-create the problem.
  443.      line  2) A disk cache IS NOT necessary to re-create the problem.
  444.      line  3) We NEED to include the FILES= statement.
  445.      line  4) The BUFFERS statement IS NOT needed.
  446.      line  5) The scanner IS part of our problem.
  447.      line  6) ANSI.SYS IS NOT needed to re-create the problem.
  448.      line  7) The fax board has NOTHING to do with the problem.
  449.      line  8) The SHELL= statement tells DOS where the command processor is.
  450.      line  9) We NEED to log on to the network to run the scanner program.
  451.      line 10) The Stacks statement IS NOT necessary.
  452.  
  453. (if you are not sure if a line is absolutely necessary in your CONFIG.SYS or 
  454. AUTOEXEC.BAT files, you might try deleting it!)
  455.      This leaves our CONFIG.SYS with:
  456.  
  457.           DEVICE=C:\QEMM\QEMM386.SYS RAM AROM=C800-CBFF
  458.           FILES=25
  459.           DEVICE=C:\QEMM\LOADHI.SYS /R:2 C:\SCAN\SCANNER.SYS 256
  460.           SHELL=C:\COMMAND.COM /P /E:768
  461.           DEVICE=C:\QEMM\LOADHI.SYS /R:3 C:\NETW\NETWORK.SYS
  462.  
  463.      Now, since the OPTIMIZE program was executed, some of the device drivers 
  464. have been loaded high, and we have to make sure these drivers are loaded low.  
  465. This is because some device drivers behave incorrectly when loaded high, which 
  466. the LOADHI program is not able to detect in advance!
  467.  
  468.      DEVICE=C:\QEMM\LOADHI.SYS /R:2 C:\SCAN\SCANNER.SYS 256
  469.             <------delete--------->
  470.      DEVICE=C:\SCAN\SCANNER.SYS 256
  471.  
  472.      This leaves our CONFIG.SYS with:
  473.  
  474.           DEVICE=C:\QEMM\QEMM386.SYS RAM AROM=C800-CBFF
  475.           FILES=25
  476.           DEVICE=C:\SCAN\SCANNER.SYS 256
  477.           SHELL=C:\COMMAND.COM /P /E:768
  478.           DEVICE=C:\NETW\NETWORK.SYS
  479.  
  480. and boost the FILES= to at least 40.
  481.  
  482.      The final CONFIG.SYS looks like:
  483.  
  484.           DEVICE=C:\QEMM\QEMM386.SYS RAM AROM=C800-CBFF
  485.           FILES=40
  486.           DEVICE=C:\SCAN\SCANNER.SYS 256
  487.           SHELL=C:\COMMAND.COM /P /E:768
  488.           DEVICE=C:\NETW\NETWORK.SYS
  489.  
  490.      (Your CONFIG.SYS may only need the QEMM386.SYS and FILES=40 line.  Don't 
  491. worry if your CONFIG.SYS isn't 5 lines long.)
  492.      Save the CONFIG.SYS and let's modify your AUTOEXEC.BAT file.  The only 
  493. lines which we need to keep are the PROMPT and PATH statements.
  494.      The following is an example AUTOEXEC.BAT file for our example:
  495.  
  496.      1   ECHO OFF
  497.     #2   PATH C:\;C:\DOS;C:\UTILS;C:\EDITOR;F:\SCANNER;
  498.      3   C:\QEMM\LOADHI C:\UTIL\FASTKEYB
  499.     #4   PROMPT $P$G
  500.     #5   C:\QEMM\LOADHI /R:1 C:\NETW\LOGIN
  501.      6   SET TEMP=F:\WINDOWS\TEMP
  502.      7   FAXSETUP 125
  503.  
  504.      The # indicates lines which are absolutely necessary to re-create the 
  505. problem.  Here's why:
  506.  
  507.      Line 1) The ECHO statement IS NOT necessary.     
  508.      Line 2) We NEED the PATH statement.
  509.      Line 3) Keyboard accelerator IS NOT needed.
  510.      Line 4) Prompt statement is for your convenience.
  511.      Line 5) We NEED to access the network.
  512.      Line 6) This SET statement IS NOT necessary.
  513.      Line 7) The FAX board has NOTHING to do with our problem.
  514.  
  515.      This leaves our AUTOEXEC.BAT as:
  516.  
  517.           PATH C:\;C:\DOS;C:\UTILS;C:\EDITOR;F:\SCANNER;
  518.           PROMPT $P$G
  519.           C:\QEMM\LOADHI /R:1 C:\NETW\LOGIN
  520.  
  521.      Now, since we have run the OPTIMIZE program, some of our device drivers 
  522. have been loaded high and we have to make sure these drivers are loaded low.  
  523. All we have to do is remove the LOADHI from these lines.
  524.  
  525.      C:\QEMM\LOADHI /R:1 C:\NETW\LOGIN
  526.      <----delete------->
  527.  
  528.      C:\NETW\LOGIN
  529.  
  530.      This leaves our final AUTOEXEC.BAT with:
  531.  
  532.           PATH C:\;C:\DOS;C:\UTILS;C:\EDITOR;F:\SCANNER;
  533.           PROMPT $P$G
  534.           C:\NETW\LOGIN
  535.  
  536.      (Your AUTOEXEC.BAT may only need the PATH and PROMPT lines.  Don't worry 
  537. that your AUTOEXEC.BAT isn't 3 or more lines long)
  538.      Save the AUTOEXEC.BAT file.
  539.      Now reboot your machine and try to re-create the Exception #13 problem.
  540.  
  541. ??? If the problem still exists, go to STEP 9.
  542.  
  543. ??? If the problem goes away, go to STEP C.
  544.  
  545.                                   (STEP 9)
  546.  
  547.                          MODIFY THE QEMM386.SYS LINE
  548.                          ---------------------------
  549.      By modifying the CONFIG.SYS and AUTOEXEC.BAT files in STEP 8, we have 
  550. shown that the problem is caused by either QEMM-386, your program, or a driver 
  551. needed to run your program.  Now we will modify your QEMM386.SYS line in the 
  552. CONFIG.SYS file by adding parameters (and possibly removing some of the 
  553. parameters that are already on the line) to avoid POSSIBLE conflicts involving 
  554. QEMM-386.
  555.  
  556.      Modify the QEMM386.SYS line of your CONFIG.SYS file to look EXACTLY as 
  557. follows:
  558.  
  559. DEVICE=C:\QEMM\QEMM386.SYS X=A000-C7FF X=F000-FFFF NO NS NT NCF NOSH DB=4
  560.  
  561. Be sure that you DO NOT add the 'RAM' parameter to this line!
  562.  
  563. ??? If you have a version of QEMM greater than 6.00 and are using the
  564.     Stealth parameter (ST:M or ST:F), please DO NOT include the Stealth
  565.     parameter at this time.  BUT make a mental note of it, as you will add
  566.     this parameter back to the QEMM386.SYS line in STEP 15.  ALSO, you will
  567.     want to remove any Stealth-related parameters at this time (you may not
  568.     have any of these): XST= , XSTI=, DBF=, FSTC, FRAME=.
  569.  
  570.      If your QEMM386.SYS line previously contained a parameter to EXCLUDE an 
  571. area of memory such as EXCLUDE= or X= or AROM= or ARAM=, then you should also 
  572. add this parameter to the end of the QEMM386.SYS line.  DO NOT add any 
  573. INCLUDE= or I= parameters, even if you previously had any!  In our example, we 
  574. previously had the AROM=C800-CBFF parameter.  Adding this parameter to the 
  575. above DEVICE line will look like:
  576.  
  577. DEVICE=C:\QEMM\QEMM386.SYS X=A000-C7FF X=F000-FFFF NO NS NT NCF NOSH DB=4
  578. AROM=C800-CBFF
  579.       ^
  580.      (Please note that the "AROM=" parameter is NOT on the next line,
  581.      but is on the same line immediately after "DB=4".  Many editors
  582.      will allow wrap-around of the same line)
  583.  
  584.      Save the CONFIG.SYS file.
  585.      Now reboot your machine and try to re-create the Exception #13 problem.
  586.  
  587. ??? If the problem still exists, go to STEP 10.
  588.  
  589. ??? If the problem goes away, go to STEP 13.
  590.  
  591.                                   (STEP 10)
  592.  
  593.            TRY TO RE-CREATE THE PROBLEM WITHOUT QEMM-386 INSTALLED
  594.            -------------------------------------------------------
  595.      By adding/stripping parameters from the QEMM386.SYS line of your 
  596. CONFIG.SYS file, we have eliminated many of the possible conflicts which QEMM-
  597. 386 may have with your system.
  598.      To determine whether QEMM-386 is solely responsible for your problems, we 
  599. will need to run your software without QEMM-386 loaded.  If your program uses 
  600. expanded memory, then another memory manager (such as DOS 5 or Windows EMM386
  601. driver) MUST be loaded in place of QEMM-386 in order to test whether your
  602. program doesn't work with QEMM-386 vs. any other expanded memory manager.
  603.  
  604. ??? Does your program need expanded memory in order to operate properly? If
  605.     so, please go to STEP 11 (otherwise proceed with this STEP).
  606.     
  607.      We will need to re-boot your computer without QEMM-386 loaded.  To 
  608. accomplish this, we DO NOT have to remove the QEMM386.SYS line from the 
  609. CONFIG.SYS file!
  610.  
  611.      Please re-boot your machine.  During the re-boot, your computer will 
  612. BEEP.  When you hear the BEEP, immediately hold down on the ALT key (and keep 
  613. it pressed down) until you see the following message on screen:
  614.  
  615.      QEMM386: Press <ESC> to unload QEMM or any other key
  616.      to continue with QEMM...
  617.  
  618.      If you do not see this message, please retry again by rebooting your 
  619. machine!
  620.  
  621.     Press the ESCAPE (ESC) key to bypass QEMM and try to re-create the
  622. Exception #13 problem.
  623.  
  624. ??? If the problem still exists, go to STEP B.
  625.  
  626. ??? If the problem goes away, go to STEP A.
  627.  
  628.                                   (STEP 11)
  629.  
  630.            USE ANOTHER EXPANDED MEMORY MANAGER INSTEAD OF QEMM-386
  631.            -------------------------------------------------------
  632.      The problem that you're having may be caused by QEMM or any other 
  633. expanded memory manager that is loaded.  If your program or device driver uses 
  634. expanded memory, then we must test whether the problem is due solely to QEMM 
  635. by testing another expanded memory manager.  If your system has problems with 
  636. another expanded memory manager loaded, then your program has a problem with 
  637. any expanded memory manager and QEMM is not to blame for the crashes you have 
  638. been experiencing.  If this is the case, you should contact the developers of 
  639. that program for information on options or special setup considerations for 
  640. use with expanded memory managers.
  641.      You are probably running with DOS 4 or DOS 5 which comes with an expanded 
  642. memory manager.  DOS 4 comes with HIMEM.SYS and EMM386.SYS and DOS 5 comes 
  643. with HIMEM.SYS and EMM386.EXE (probably on your hard disk right now!).  We 
  644. will now modify your CONFIG.SYS to use these drivers instead of QEMM and try 
  645. to re-create the problem.  First, make a back-up copy of the "clean 
  646. environment" version of CONFIG.SYS file by entering the following 3 commands 
  647. at the DOS prompt:
  648.  
  649.      1) C:
  650.      2) CD\
  651.      3) COPY CONFIG.SYS CONFIG.Q
  652.  
  653.      We will attempt to re-create the problem by using the other drivers,
  654. HIMEM.SYS and EMM386.SYS (EMM386.EXE if you are using DOS 5.0), which when 
  655. loaded together are similar to the Extended and Expanded memory features of 
  656. QEMM.
  657.  
  658.      First, you must find where these files are located on your hard-disk 
  659. (They are most likely found in the C:\DOS, C:\, directories).  Now, edit the 
  660. CONFIG.SYS and replace these two drivers for the QEMM386.SYS driver (ASSUME 
  661. that HIMEM.SYS is in the root directory and EMM386.SYS is in the DOS 
  662. directory):
  663.  
  664.      DEVICE=C:\HIMEM.SYS
  665.      DEVICE=C:\DOS\EMM386.SYS ON 4096     (use EMM386.EXE if you have DOS 5)
  666.      FILES=40
  667.      DEVICE=C:\SCAN\SCANNER.SYS 256
  668.      SHELL=C:\COMMAND.COM /P /E:768
  669.      DEVICE=C:\NETW\NETWORK.SYS
  670.  
  671.      Save the CONFIG.SYS, reboot, and try to re-create Exception #13 problem.
  672.  
  673. ??? If the problem still exists, then go to STEP B.
  674.  
  675. ??? If the problem goes away, go to STEP 12.
  676.  
  677.                                   (STEP 12)
  678.                                   ---------
  679.  
  680.             CONFIGURE QEMM-386 SIMILARLY TO THE OTHER DRIVERS
  681.             -----------------------------------------------------
  682.      We want to find out what the other drivers are doing to make your
  683. program work properly so that we can configure QEMM-386 to emulate the 
  684. other drivers.  We must use the MANIFEST program to view what the
  685. other drivers are doing.
  686.  
  687.      1) Reboot your computer to get to the DOS prompt
  688.      2) C:\QEMM\MFT.EXE    [type this at the DOS prompt to start MANIFEST]
  689.  
  690.      Hit the DOWN-ARROW key once (this will give you the First Meg/Overview 
  691. screen).  The box in the center of the screen will look as follows:
  692.      You will see a screen similar to this:
  693.  
  694.      Memory Area   Size   Description
  695.      0000 - 003F     1K   Interrupt Area
  696.      0040 - 004F   0.3K   BIOS Data Area
  697.      0050 - 006F   0.5K   System Data
  698.      0070 - 0FB0    61K   DOS
  699.      0FB1 - 21F8    73K   Program Area
  700.      21F9 - 9FFF   504K   [Available]
  701.      Conventional memory ends at 640K
  702.      A000 - AFFF    64K   VGA Graphics
  703.      B000 - B7FF    32K   Unused
  704.      B800 - BFFF    32K   VGA Text
  705.      C000 - C7FF    32K   Video ROM
  706.      C800 - CFFF    32K   Unused
  707.      D000 - DFFF    64K   Page Frame       <----------------------------|
  708.      E000 - EFFF    64K   Unused                                        |
  709.      F000 - FFFF    64K   System ROM                                    |
  710.                                                                         |
  711.                                                                         |
  712.      Look for the Page Frame, we must use the QEMM parameter FRAME=  ---|
  713. to emulate where the Page Frame is located when using the other
  714. drivers.  (Notice that the Page Frame above starts at D000.)
  715.      Hit the ESCAPE key twice to exit MANIFEST and perform the following four 
  716. commands at the DOS prompt:
  717.  
  718.      1) C:
  719.      2) CD\
  720.      3) RENAME CONFIG.SYS CONFIG.M
  721.      [Save the CONFIG.SYS w/other drivers]
  722.      4) COPY CONFIG.Q CONFIG.SYS    
  723.      [Bring back the STEP-7 CONFIG.SYS       ]
  724.      Add the following parameters to the end of the QEMM386.SYS line of your 
  725. CONFIG.SYS file:
  726.  
  727.      NV NVR NTR LD NX NR NRH NOVDS FRAME=XXXX
  728.                                          ^^^^
  729.                                         (XXXX is the starting memory area of 
  730. the Page Frame when using the other drivers on your machine.  In this
  731. EXAMPLE, FRAME=D000)
  732.      The QEMM386.SYS line for this EXAMPLE now looks like:
  733.      
  734. DEVICE=C:\QEMM\QEMM386.SYS X=A000-C7FF X=F000-FFFF NO NS NT NCF NOSH
  735. AROM=C800-CBFF NV NVR NTR LD NX NR NRH NOVDS FRAME=D000
  736.  
  737.      Reboot and try to re-create the Exception #13 problem.
  738.  
  739. ??? If the problem still exists , then go to STEP A.
  740.  
  741. ??? If the problem goes away, then go to STEP 13.
  742.  
  743.                                   (STEP 13)
  744.  
  745.                        CREATING HIGH RAM FOR QEMM-386
  746.                        ------------------------------
  747.      We have properly configured QEMM-386 without High RAM to work with your 
  748. program.  We must add the RAM parameter to end of the QEMM386.SYS line in your 
  749. CONFIG.SYS to create High RAM.  Edit your CONFIG.SYS file and add RAM to the 
  750. end of the QEMM386.SYS line (DEVICE=C:\QEMM\QEMM386.SYS ... RAM).
  751.      Reboot your machine and try to re-create the Exception #13 problem.
  752.  
  753. ??? If the problem re-occurs, then go to STEP 14.
  754.  
  755. ??? If the problem does not occur, then proceed below:
  756.  
  757.      In STEP 9, we added the following parameters to the QEMM386.SYS line: 
  758. X=A000-C7FF X=F000-FFFF NO NS NT NCF NOSH DB=4.  We will attempt to recover 
  759. some/all of the HIGH Ram which we eXcluded. Edit the 
  760. DEVICE=C:\QEMM\QEMM386.SYS... line of the CONFIG.SYS file and delete (ONE 
  761. parameter AT A TIME) the following 3 parameters: X=A000-C7FF, X=F000-FFFF, 
  762. NCF. If removing the X=A000-C7FF parameter does not cause the problem to re-
  763. occur, then you DON'T need this parameter.  However if the problem does recur, 
  764. then the parameter needs to be kept.  Try this for the other 2 parameters!
  765.  
  766. ??? If the problem still doesn't occur and you WERE using the Stealth feature 
  767.     (ST:M or ST:F) from QEMM version 6.00 or greater, then go to STEP 15.
  768.  
  769. ??? If the problem still doesn't occur and you WERE NOT using the Stealth 
  770.     feature (ST:M or ST:F) from QEMM version 6.00 or greater, then go to STEP 
  771.     C.
  772.  
  773.                                   (STEP 14)
  774.  
  775.                        ELIMINATING HIGH RAM CONFLICTS
  776.                        ------------------------------
  777.      It appears that there is a conflict between one of your adapters and QEMM-
  778. 386.  QEMM-386 is not recognizing that your adapter is there and QEMM is 
  779. mapping memory on top of the adapter memory.  We must exclude all High RAM 
  780. areas to test this hypothesis and if indeed this is the case, we will 
  781. systematically narrow down what area really needs to be excluded!
  782.  
  783.      1) C:\QEMM\MFT        [type this at the DOS prompt to start MANIFEST]
  784.  
  785.      Hit the DOWN-ARROW key once (this will give you the First Meg/Overview 
  786. screen).  The box in the center of the screen will look as follows:
  787.  
  788.      You will see a screen similar to this:
  789.  
  790.      Memory Area   Size   Description
  791.      0000 - 003F     1K   Interrupt Area
  792.      0040 - 004F   0.3K   BIOS Data Area
  793.      0050 - 006F   0.5K   System Data
  794.      0070 - 0FB0    61K   DOS
  795.      0FB1 - 21F8    73K   Program Area
  796.      21F9 - 9FFF   504K   [Available]
  797.      Conventional memory ends at 640K
  798.      A000 - AFFF    64K   VGA Graphics
  799.      B000 - B7FF    32K   Unused
  800.      B800 - BFFF    32K   VGA Text
  801.      C000 - C7FF    32K   Video ROM
  802.      C800 - CFFF    32K   High RAM       <------------|
  803.      D000 - DFFF    64K   Page Frame                  |
  804.      E000 - EFFF    64K   High RAM       <------------|
  805.      F000 - FFFF    64K   System ROM                  |
  806.                                                       |
  807.      We want to eXclude all High RAM areas!    -------|
  808.  
  809.      We do this by using the EXCLUDE= (X=  for short) parameter to QEMM-386. 
  810. For this example, we have two High RAM areas to exclude:  from C800-CFFF and 
  811. E000-EFFF.  The corresponding parameters to ADD to end of the QEMM386.SYS line 
  812. in the CONFIG.SYS file would be:
  813.  
  814.      X=C800-CFFF  X=E000-EFFF
  815.  
  816.      Add as many X= parameters as needed to your CONFIG.SYS to exclude as many 
  817. High RAM areas that your machine has.
  818.      Reboot your machine and try to re-create the Exception #13 problem.
  819.  
  820. ??? If the problem occurs, then go to STEP A.
  821.  
  822. ??? If the problem goes away, then we know there was a memory conflict and we
  823.     should now try to narrow down which address range in High RAM has been 
  824.     causing the conflict.  This will allow you to get back as much High RAM as 
  825.     possible! Often when there is a conflict in memory, there is a 16K area 
  826.     that needs to be excluded and we should now narrow down the eXclusion of 
  827.     High RAM areas in question.  EXAMPLE:  We have excluded C800-CFFF which is 
  828.     a 32K area and E000-EFFF which is a 64K area.  These numbers are in 
  829.     hexadecimal (base 16) and may confuse you!  (You can access a technnote on 
  830.     hexadecimal numbers by calling our Q/FAX line, (310)-314-3214 to download 
  831.     technote number 190 to your own fax machine.)  These 2 areas use 6 
  832.     different 16K areas:  C800-CBFF, CC00-CFFF, E000-E3FF, E400-E7FF, E800-
  833.     EBFF, EC00-EFFF.  To narrow down the area, we would use the X= parameter, 
  834.     trying all six combinations, one at a time!  More than likely, five out of 
  835.     the six combinations will cause the problem to occur, but one out of the 
  836.     six will resolve the problem.
  837.  
  838. ??? When you have determined which area needed to be excluded, and you
  839.     WERE using the Stealth feature (ST:M or ST:F) from QEMM version 6.00
  840.     or greater, then go to STEP 15.
  841.  
  842. ??? When you have determined which area needed to be excluded, and you
  843.     WERE NOT using the Stealth feature (ST:M or ST:F) from QEMM version
  844.     6.00 or greater, then go to STEP C.
  845.  
  846.                                   (STEP 15)
  847.  
  848.                       ADDING THE STEALTH PARAMETER BACK
  849.                       ---------------------------------
  850.      We have properly configured QEMM-386 with High RAM to work with your 
  851. program. We must now add the Stealth (and any Stealth-related) parameter to 
  852. the end of the QEMM386.SYS line in your CONFIG.SYS to enable Stealth.  Edit 
  853. your CONFIG.SYS file and add ST:M or ST:F (and any Stealth-related parameter 
  854. that was ORIGINALLY on your QEMM386.SYS line) to the end of the QEMM386.SYS 
  855. line:
  856.  
  857. DEVICE=C:\QEMM\QEMM386.SYS ... RAM ST:x  [possibly other Stealth parameters].
  858.  
  859. Reboot your machine and try to re-create the crash.
  860.  
  861. ??? If the problem still doesn't occur, then go to STEP C.
  862.  
  863. ??? If the problem does re-occur, then your Exception #13 problem is due to
  864.     a conflict with QEMM's Stealth feature.  NOW, the next step FOR YOU is
  865.     to leave this technote (for now) and get the technote STEALTH.TEC to
  866.     resolve the Stealth conflict.
  867.  
  868.      The STEALTH.TEC technote is available:
  869.  
  870.      1) On Compuserve [GO QUARTERDECK, Library 2].  Download STEALT.ZIP.
  871.      2) On the Quarterdeck BBS [310-314-3227].  Download STEALTH.TEC.
  872.      3) On the Quarterdeck Q/FAX [310-314-3214].  Download FAX# 205 (Q/FAX
  873.         will automatically fax this back to your fax machine instantly!).
  874.      4) Call Quarterdeck Technical Support [310-392-2701] and we will
  875.         gladly fax/mail it to you.
  876.  
  877. Once you have resolved the Stealth-related problem with the current 
  878. CONFIG.SYS, then go to STEP C. 
  879. ------------------------------------------------------------------------
  880.  
  881.                                  (STEP - A)
  882.                                  ----------
  883.      The problem you are having requires further troubleshooting techniques 
  884. and investigation.  Call our Technical Support line at (310) 392-9701 for 
  885. further assistance, we'll be happy to help out!
  886.      When you call, please have available the following files available:
  887.  
  888.      Your original CONFIG.SYS and AUTOEXEC.BAT files
  889.      CONFIG.SYS   (QEMM386.SYS and FILES=)
  890.      AUTOEXEC.BAT (PATH and PROMPT)
  891.      CONFIG.Q     (only if you have gone thru STEP 11)
  892.      CONFIG.M     (only if you have gone thru STEP 12)
  893.  
  894.      Be sure to mention that you have been using EX13FLOW.TEC.
  895.  
  896.                                  (STEP - B)
  897.                                  ----------
  898.  
  899.      We have shown that the program in question has problems EVEN WHEN QEMM-
  900. 386 IS NOT LOADED ON YOUR MACHINE.  QEMM is not responsible for the system 
  901. crashes you are experiencing.  The next step is for you to consult the 
  902. documentation or contact the makers of the resident program or driver which is 
  903. making your system crash.
  904.  
  905.                                  (STEP - C)
  906.                                  ----------
  907.      CONGRATULATIONS, you have successfully configured QEMM-386 and your 
  908. program to work together!  Enter the following 6 commands at the DOS prompt:
  909.  
  910.      1) C:
  911.      2) CD\
  912.      3) RENAME AUTOEXEC.BAT AUTOEXEC.Q
  913.      4) COPY CONFIG.SYS CONFIG.Q
  914.      5) COPY CONFIG.OLD CONFIG.SYS         [Bring back your original file]
  915.      6) COPY AUTOEXEC.OLD AUTOEXEC.BAT     [Bring back your original file]
  916.  
  917.      Edit the CONFIG.SYS file and replace the original QEMM386.SYS line with 
  918. the one you have created by using this technote (now in CONFIG.Q) and make 
  919. sure FILES= at least 40!
  920.      Reboot the machine and try to re-create the Exception #13 crash.
  921.  
  922. ??? If the problem is still no longer occurring, the problem is solved.
  923.     HAVE A GREAT DAY!!!
  924.  
  925. ??? If the problem now occurs, then go to STEP D.
  926.  
  927.                                  (STEP - D)
  928.                                  ----------
  929.      Since the problem does not occur with the stripped down CONFIG.SYS and 
  930. AUTOEXEC.BAT but does occur with a full CONFIG.SYS and AUTOEXEC.BAT file, 
  931. there is a command line in one of these files that has been causing the 
  932. Exception #13 problem.  To determine which file the command line is in, we 
  933. will bring back the AUTOEXEC.BAT (Path and Prompt) that we previously created 
  934. in STEP 8:
  935.  
  936.      Enter the following 4 commands at the DOS prompt:
  937.  
  938.           1) C:
  939.           2) CD\
  940.           3) COPY AUTOEXEC.BAT AUTOEXEC.OLD
  941.           4) COPY AUTOEXEC.Q AUTOEXEC.BAT
  942.  
  943.      Reboot your machine and try to re-create the Exception #13 crash.
  944.  
  945. ??? If the problem still exists, than we know that the command line
  946.     which is giving us problems is located in the CONFIG.SYS file and if
  947.     the problem goes away, the command line is in the original AUTOEXEC.BAT
  948.     file.
  949.  
  950.      Now you must systematically determine which command line is giving you 
  951. trouble!  Try deleting one line at a time (if you have a long CONFIG.SYS or 
  952. AUTOEXEC.BAT file try deleting 2-3 lines at a time) until you find out which 
  953. line is causing the problem.
  954.      When you finally determine which line is causing the problem:
  955.  
  956.      1) If the device driver or TSR is loaded into High RAM, use the procedure 
  957.         in STEP 8 to load it low and see if this corrects the problem.
  958.      2) Read the manual or call the technical support of the product which you 
  959.         are loading to determine where the problem might lie.
  960.      3) If a TSR or device driver has a parameter that tells it to load/use 
  961.         XMS or EMS, then have it load/use conventional memory instead.
  962.      4) Refer to your DOS manual to determine DOS command problems. 
  963.      5) JUST GET RID OF THAT LINE! 
  964.  
  965.   ************************************************************************
  966.   *          Trademarks are property of their respective owners.         *
  967.   *This technical note may be copied and distributed freely as long as it*
  968.   *is distributed in its entirety and it is not distributed for profit.  *
  969.   *          Copyright (C) 1992 by Quarterdeck Office Systems            *
  970.   ************************ E N D   O F   F I L E *************************
  971.