386|VMM Error Messages
Copyright (c) 1995, Phar Lap Software, Inc.
This file may not be redistributed.


A small number of fatal errors can occur during a page fault.  When one 
of these errors occurs, 386|VMM prints a fatal error message on the 
display, deletes the swap file, and terminates program execution.  These 
error messages always begin with the identifier "386|VMM:".  The 
messages listed below can be caused by errors in the application 
program.  Any other fatal errors in the page fault handler are the 
result of an internal error in 386|VMM, in which case you should attempt 
to make the error reproducible and call Lahey Computer Systems for 
technical support.


Fatal error TNT.10030: 386|VMM: Couldn't reopen swap file after flushing 
it

If the -FLUSHSWAP switch is used, 386|VMM closes the swap file to flush 
it each time the size of the swap file is increased.  Independent of 
-FLUSHSWAP, the swap file is flushed when an INT21h function 4Bh EXEC 
call is made (but not when an INT 21h function 25C3h EXEC call is made).  
This error occurs when 386|VMM closes the main swap file handle (because 
no duplicate handles are available), and then gets an error on the DOS 
call to reopen the swap file.  The usual reason for the error is that 
DOS has run out of file handles.  You should do one of the following:

*	Reduce the number of open files.
*	Stop using the -FLUSHSWAP switch.
*	Use the 25C3h form of EXEC, rather than 4Bh.


Fatal error TNT.10031: 386|VMM: Page fault handler was reentered

Your program has caused a page fault inside a hardware interrupt handler 
or a DOS critical error handler.  Make sure all code, data, and stack 
space you reference within these handlers is locked.


Fatal error TNT.10032: 386|VMM: Bad page table entry in pg flt hndlr:
1st err val = linadr, 2nd = pg tbl entry, 3rd = pg tbl info

The page fault handler has detected an invalid page table entry.  If you 
install page replacement handlers, check your handlers carefully for 
errors.  Otherwise, this is probably an internal 386|VMM error; write 
down the error printout, try to make the error reproducible, and call 
Lahey Computer Systems.


Fatal error TNT.10033: 386|VMM: Page replacement routine selected an 
invalid
page: 1st err val = linadr, 2nd = pg tbl entry, 3rd = pg tbl info

If you install page replacement handlers, check your handlers carefully 
for errors.  Otherwise, this is probably an internal 386|VMM error; 
write down the error printout, try to make the error reproducible, and 
call Lahey Computer Systems.


Fatal error TNT.10034: 386|VMM: Error reading EXP file, or data file 
mapped in virtual memory

A DOS error occurred when trying to read a page in from the program's 
executable file, or from a data file mapped with function 252Bh 
subfunction 3.  If this error occurs right after returning from an EXEC 
to the DOS command shell, check to see if the user deleted the file.  
Otherwise, your program has probably corrupted part of DOS or 
TNT DOS-Extender.


Fatal error TNT.10035: 386|VMM: Error reading swap file

A DOS error occurred when trying to read a page in from the page swap 
file, or from a data file mapped with function 252Bh subfunction 3.  If 
this error occurs right after returning from an EXEC to the DOS command 
shell, check to see if the user deleted the file.  Otherwise, your 
program has probably corrupted part of DOS or TNT DOS-Extender.


Fatal error TNT.10036: 386|VMM: Page table entry not present in pg fault 
hndlr

A page selected for replacement (swapping to disk) is not in memory.  If 
you install page replacement handlers, check your handlers carefully for 
errors.  Otherwise, this is probably an internal 386|VMM error; write 
down the error printout, try to make the error reproducible, and call 
Lahey Computer Systems.


Fatal error TNT.10037: 386|VMM: Error writing swap file

A DOS error occurred when trying to write a page into the page swap 
file, or to a data file mapped with function 252Bh subfunction 3.  If 
this error occurs right after returning from an EXEC to the DOS command 
shell, check to see if the user deleted the file.  Otherwise, your 
program has probably corrupted part of DOS or TNT DOS-Extender.


Fatal error TNT.10038: 386|VMM: Out of space for swap file

The disk on which the page swap file is located is full.  This error 
should only occur if -SWAPCHK ON or -SWAPCHK OFF is used, or if you 
specified too large a value with -CODESIZE.  Either use -SWAPCHK FORCE, 
or write an out-of-swap-space handler to handle this error.

