home *** CD-ROM | disk | FTP | other *** search
- This document contains a list of the error messages you might see out of
- CWSDPMI and some details on what they mean.
-
- Exceptions are only handled by CWSDPMI if the application does not establish
- an exception handler, or the error is particularly bad:
-
- "Double Fault" - multiple exceptions occured
- "Invalid TSS" - typically due to RMCB or HW interrupt being called after the
- selectors/memory have been deallocated (remember to reset the mouse)
- "General Protection Fault" - bad parameter sent to a DPMI call
- "Page fault" - seen if an illegal page fault happens in a RMCB or HW interrupt
- or if all available pages have been locked
-
- "80386 required."
-
- Since 80286 and lesser processors don't have the hardware necessary to
- run CWSDPMI. No workaround, upgrade.
-
- "DOS 3 required."
-
- A few interrupts are used which need DOS 3.0 or higher. I don't expect to
- ever see this message, since 80386 machines were introduced after DOS 3.0
- and that check is made first.
-
- "CWSDPMI V0.90+ (r1) Copyright (C) 1995 CW Sandmann ABSOLUTELY NO WARRANTY"
-
- An informational message displayed if the program is not run in one-pass mode.
-
- "Protected mode not accessible."
-
- This message should only be displayed if running CWSDPMI in a protected
- environment with no access to protected mode. In this case, DPMI should
- already be available and CWSDPMI would not be needed. I would like to
- know if you see this message and DPMI is not available!
-
- "Warning: cannot open swap file c:\cwsdpmi.swp"
-
- Maybe you are out of file handles, or the swap file name is incorrectly
- specified in the image (change the name with paramset).
-
- "No swap space!"
-
- This message means you tried to use more paging file than CWSDPMI is
- compiled to handle (typically 128Mb worth). Since this is protected
- against in the memory allocation code, you should never see this message.
-
- "Swap disk full!"
-
- This means the paging file could not be expanded when trying to page
- memory out to disk. This would normally not be seen, unless you are
- writing output to the same disk which holds the paging file. Decrease
- the amount of memory your DPMI application is using or free up disk space.
-
- "Interrupt 0x??"
-
- Your application tried to call an interrupt from protected mode which
- normally shouldn't be called (something like a data pointer). If the
- request was allowed to continue it would likely hang your machine. If you
- see this message and think the interrupt should be allowed to continue, let
- me know.
-
- "Error: Using XMS switched the CPU into V86 mode."
-
- This message might be seen if you have your memory manager in AUTO mode. The
- only workaround in this case is to stop using AUTO mode.
-
- "Error: could not allocate page table memory"
-
- The page table memory (a minimum of 16Kb) is allocated from conventional
- memory (either in the 640Kb region or UMBs). If CWSDPMI cannot allocate the
- minimum necessary memory, you would see this message. Free up some
- conventional memory. You may also see this message if a page directory needs
- to be faulted in, and there are no available page. This means too many pages
- have been locked for the allocated page tables available. While CWSDPMI
- tries to dynamically allocate these if needed, this effort failed. You need
- to increase the number of page tables with CWSPARAM, or increase the amount
- of free conventional memory if it is low.
-
- "Can't handle 16 bit apps, sorry!"
-
- CWSDPMI is a 32-bit only DPMI server. Ideally, on the request to enter DPMI's
- PM with a 16-bit request, we would just fail the call setting the carry bit
- like the DPMI specification describes. Some buggy 16-bit compiler tools don't
- check the return status and will hang the machine in this case. So, I issue
- an error message and exit the image instead.
-
- "CWSDPMI not removed"
-
- When the -u parameter is specified, if DPMI is not detected this message is
- printed. Informational.
-