34 lines
1.5 KiB
C
34 lines
1.5 KiB
C
|
typedef enum exception_enum {
|
||
|
DIVIDE_BY_ZERO = 0,
|
||
|
DEBUG = 1,
|
||
|
NON_MASKABLE_INTERRUPT = 2,
|
||
|
BREAKPOINT = 3,
|
||
|
OVERFLOW = 4,
|
||
|
BOUND_RANGE_EXCEEDED = 5,
|
||
|
INVALID_OPCODE = 6,
|
||
|
DEVICE_NOT_AVAILABLE = 7,
|
||
|
DOUBLE_FAULT = 8, // Error code = 0
|
||
|
COPROCESSOR_SEG_OVERRUN = 9,
|
||
|
INVALID_TSS = 10, // Error code = (invalid selector index)
|
||
|
SEGMENT_NOT_PRESENT = 11, // Error code = (segment selector index)
|
||
|
STACK_SEGMENT_FAULT = 12, // Error code = (segment selector index) if invalid ssi, otherwise 0
|
||
|
GENERAL_PROTECTION_FAULT = 13, // Error code = (segment selector index) if invalid ssi, otherwise 0
|
||
|
PAGE_FAULT = 14, // Error code = bitmap, see https://wiki.osdev.org/Exceptions#Page_Fault
|
||
|
RESERVED_15 = 15,
|
||
|
X87_FP_EXCEPTION = 16,
|
||
|
ALIGNMENT_CHECK = 17,
|
||
|
MACHINE_CHECK = 18,
|
||
|
SIMD_FP_EXCEPTION = 19,
|
||
|
VIRTUALIZATION_EXCEPTION = 20,
|
||
|
RESERVED_21 = 21,
|
||
|
RESERVED_22 = 22,
|
||
|
RESERVED_23 = 23,
|
||
|
RESERVED_24 = 24,
|
||
|
RESERVED_25 = 25,
|
||
|
RESERVED_26 = 26,
|
||
|
RESERVED_27 = 27,
|
||
|
RESERVED_28 = 28,
|
||
|
RESERVED_29 = 29,
|
||
|
SECURITY_EXCEPTION = 30,
|
||
|
RESERVED_31 = 31
|
||
|
} exception;
|