A VM will terminate program execution when it executes an EXIT opcode, receives a cmdVM_KILL command, or detects an error. There are unique codes for each termination. These messages are outlined below. The message codes are defined in the file "aTEA.h".
| Exit Code | C Identifier | Cause |
| 0 | aVMExitNormal | A VM executed an EXIT opcode. |
| 1 | aVMExitKill | A VM received a cmdVM_KILL command. |
| 2 | aVMExitStackUnderflow | A VM attempted to execute an operation that would result in stack underflow. |
| 3 | aVMExitStackOverflow | A VM attempted to execute an operation that would result in stack overflow. |
| 4 | aVMExitStackError | A VM attempted to execute an illegal stack indexing operation. |
| 5 | aVMExitAddressRange | A VM tried to access an illegal address. |
| 6 | aVMExitDivByZero | A VM attempted to divide by zero. |
| 7 | aVMExitIOErr | A VM attempted an IO operation with an invalid memory address. A VM attempted to write to a read-only device. A VM attempted to read from a write-only device. A VM attempted to write an invalid parameter. |
| 8 | aVMExitBadOpcode | A VM attempted to execute an invalid instruction. |
| 9 | aVMExitBadStartup | A VM attempted to run with an invalid number of input bytes. |
| 10 | aVMExitBadVersion | A VM attempted to run a program file with an with an incompatible version. |
| 11 | aVMExitBadCode | A VM attempted to run a program file with an improper binary format. |
| 12 | aVMExitBadRetVal | A VM attempted to return a data type of the wrong size. |
| 13 | aVMExitBadCommand | A VM attempted to execute an improperly formatted command. |
© Copyright 1994-2008 Acroname, Inc., Boulder, Colorado. All rights reserved.