INtime SDK Help
HWEXCEPTIONMSG structure

When a hardware exception occurs, the INtime kernel sends a message to the data mailbox called HW_FAULT_MBX in the format listed in this structure.

Syntax

typedef struct tagHWExceptionMsg { 
    RTHANDLE hThread; 
    RTHANDLE hProcess; 
    WORD wExceptionCode; 
    DWORD pFaultingEIP; 
    WORD wFaultingCS; 
} HWEXCEPTIONMSG, *LPHWEXCEPTIONMSG; 

Fields

hThread
Identifies the offending thread.
hProcess
Identifies the offending process.
wExceptionCode
Specifies the exception code.
pFaultingEIP
Identifies the faulting instruction's address.
wFaultingCS
Identifies the selector for the faulting instruction's code segment.

Exception Codes

Possible values of the wExceptionCode field include the following:

EH_ZERO_DIVIDE (0x8100)
Divide by 0 error
EH_SINGLE_STEP (0x8101)
Single Step Interrupt
EH_NMI (0x8102)
Non-Maskable Interrupt
EH_DEBUG_TRAP (0x8103)
Breakpoint exception
EH_OVERFLOW (0x8104)
Overflow error
EH_ARRAY_BOUNDS (0x8105)
Array bounds error
EH_INVALID_OPCODE (0x8106)
Invalid Opcode error
EH_DEVICE_NOT_PRESENT (0x8107)
NPX device not present
EH_DOUBLE_FAULT (0x8108)
Double Fault error
EH_DEVICE_ERROR (0x8109)
Unknown device error
EH_INVALID_TSS (0x810a)
Invalid TSS error
EH_SEGMENT_NOT_PRESENT (0x810b)
Segment Not Present error
EH_STACK_FAULT (0x810c)
Stack Fault error
EH_GENERAL_PROTECTION (0x810d)
General Protection error
EH_PAGE_FAULT (0x810e)
Page Fault error
EH_ALIGNMENT_CHECK (0x8111)
Alignment check error
EH_SIMD_EXCEPTION (0x8113)
SIMD (SSE/SSE2/SSE3) exception