Windows Err Msg: EMM386 Exception Error #6

This article was previously published under Q94279
This article has been archived. It is offered "as is" and will no longer be updated.
3.10 3.11
kbtool kberrmsg kb3rdparty
You may receive the following error message while running an MS-DOS-basedapplication under Windows or Windows for Workgroups:
EMM386 Exception Error #6
This error message indicates that an MS-DOS-based application has causedthe processor to execute an invalid instruction.

Although the error message is provided by EMM386.EXE, it is not the cause,nor is it directly related to the problem. The error is probably caused bya corrupt .EXE file or a bad memory chip.
When Windows starts, it turns off EMM386.EXE but leaves its error handlerinstalled. When the CPU notifies Windows of a problem, it passes the errorto the default handler, which in this case is EMM386.EXE.

EMM386 Exception Error #6 indicates an "invalid opcode." According to"Microsoft's 80386/80486 Programming Guide" second edition (pages 122-123),this error can be caused by either of the following:

  • The processor tries to decode a bit pattern that does not correspond to any legal machine instruction.
  • The processor tries to execute an instruction that contains invalid operands.
Both situations indicate the same thing--the CPU is trying to executeinstructions, but is being given random values from the wrong memorylocation. This can be caused by one of the following:

  • The application gave an invalid jump instruction, causing a jump to an invalid memory location.
  • The application gave a correct jump, but the memory it jumped to is corrupted.
The most likely cause of these problems is either a corrupted file (.EXE,.DLL, or virtual device driver [VxD]) or a bad memory chip. If the problemoccurs on more than one distinct program, it is probably caused by a badmemory chip. For example, if the problem occurs when you choose Open fromthe File menu in Microsoft Windows Write and Microsoft Windows Notepad, theerror is probably being caused by a corrupted common dialog box .DLL file(COMMDLG.DLL). But if the problem occurs in two applications that do notshare any .DLL files, the error is likely caused by a bad memory chip.

If you are using MS-DOS 6.2 or later or Windows for Workgroups version3.11, you may be able to correct this problem by removing HIGHSCAN from theEMM386.EXE command in your CONFIG.SYS file.

This error can also be caused by upper memory conflicts. See the followingarticle for more information:
112816Locating and Excluding RAM/ROM Addresses in the UMA

Exception Error #6 with Microsoft Backup for Windows

If you receive the "EMM386 Exception Error #6" while you are runningMicrosoft Backup for Windows, you may have an incompatible third-partyvirtual device driver (VxD).

Use a text editor, such as Microsoft Windows Notepad, to edit the[386Enh] section of the SYSTEM.INI file and use a semicolon to remarkout the following lines:
NOTE: VFINTD.386 is the virtual device driver for MS-DOS 6.x Backupfor Windows and should not be removed.

Exception Error #6 With Older Version of After Dark

This error can occur while running older version of Berkeley Systems' AfterDark with other applications (such as Intuit's Quicken) in MicrosoftWindows.

To solve the problem, remove After Dark.

The products included here are manufactured by vendors independent ofMicrosoft; we make no warranty, implied or otherwise, regarding theseproducts' performance or reliability.
3.10 mwbackup 006 6.0 6.00 6.2 6.20 3rdparty quickin afterdark ms-dos

Article ID: 94279 - Last Review: 02/28/2014 00:25:21 - Revision: 2.0

  • Microsoft Windows 3.1 Standard Edition
  • Microsoft Windows 3.11 Standard Edition
  • Microsoft Windows for Workgroups 3.1
  • Microsoft Windows for Workgroups 3.11
  • kbnosurvey kbarchive KB94279