Xyris  0.5
isr.hpp File Reference
#include <Arch/i686/Arch.i686.hpp>
#include <stdint.h>
+ Include dependency graph for isr.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 Interrupts
 

Macros

#define ARCH_EXCEPTION_NUM   32
 
#define ARCH_INTERRUPT_NUM   16
 
#define ARCH_INTERRUPT_HANDLER_MAX   256
 

Typedefs

typedef void(* Interrupts::InterruptHandler_t) (struct registers *)
 

Enumerations

enum  Interrupts::Exception {
  Interrupts::EXCEPTION_DIVIDE_BY_ZERO = 0x00, Interrupts::EXCEPTION_DEBUG = 0x01, Interrupts::EXCEPTION_NON_MASK_INT = 0x02, Interrupts::EXCEPTION_BREAKPOINT = 0x03,
  Interrupts::EXCEPTION_OVERFLOW = 0x04, Interrupts::EXCEPTION_BOUND_RANGE = 0x05, Interrupts::EXCEPTION_INVALID_OPCODE = 0x06, Interrupts::EXCEPTION_DEVICE_UNAVAIL = 0x07,
  Interrupts::EXCEPTION_DOUBLE_FAULT = 0x08, Interrupts::EXCEPTION_COPROCESSOR_SEG = 0x09, Interrupts::EXCEPTION_INVALID_TSS = 0x0A, Interrupts::EXCEPTION_SEGMENT_MISSING = 0x0B,
  Interrupts::EXCEPTION_STACK_SEG_FAULT = 0x0C, Interrupts::EXCEPTION_PROTECT_FAULT = 0x0D, Interrupts::EXCEPTION_PAGE_FAULT = 0x0E, Interrupts::EXCEPTION_FPU_EXCEPTION = 0x10,
  Interrupts::EXCEPTION_ALIGNMENT_CHECK = 0x11, Interrupts::EXCEPTION_MACHINE_CHECK = 0x12, Interrupts::EXCEPTION_SIMD_FLOATPOINT = 0x13, Interrupts::EXCEPTION_VIRTUALIZATION = 0x14,
  Interrupts::EXCEPTION_SECURITY = 0x1E
}
 
enum  Interrupts::Interrupt {
  Interrupts::INTERRUPT_0 = 0x20, Interrupts::INTERRUPT_1 = 0x21, Interrupts::INTERRUPT_2 = 0x22, Interrupts::INTERRUPT_3 = 0x23,
  Interrupts::INTERRUPT_4 = 0x24, Interrupts::INTERRUPT_5 = 0x35, Interrupts::INTERRUPT_6 = 0x26, Interrupts::INTERRUPT_7 = 0x27,
  Interrupts::INTERRUPT_8 = 0x28, Interrupts::INTERRUPT_9 = 0x29, Interrupts::INTERRUPT_10 = 0x2A, Interrupts::INTERRUPT_11 = 0x2B,
  Interrupts::INTERRUPT_12 = 0x2C, Interrupts::INTERRUPT_13 = 0x2D, Interrupts::INTERRUPT_14 = 0x2E, Interrupts::INTERRUPT_15 = 0x2F
}
 

Functions

void Interrupts::registerHandler (uint8_t interrupt, InterruptHandler_t handler)
 
void Interrupts::init ()
 

Detailed Description

Interrupt Service Routine header.

Author
Keeton Feavel (keeto.nosp@m.nfea.nosp@m.vel@c.nosp@m.edar.nosp@m.ville.nosp@m..edu)
Version
0.3
Date
2019-11-15

Definition in file isr.hpp.

Macro Definition Documentation

◆ ARCH_EXCEPTION_NUM

#define ARCH_EXCEPTION_NUM   32

Definition at line 15 of file isr.hpp.

◆ ARCH_INTERRUPT_HANDLER_MAX

#define ARCH_INTERRUPT_HANDLER_MAX   256

Definition at line 17 of file isr.hpp.

◆ ARCH_INTERRUPT_NUM

#define ARCH_INTERRUPT_NUM   16

Definition at line 16 of file isr.hpp.