GitOS
Operating system exercise
|
Macros | |
#define | ICW1_ICW4 0x01 /* ICW4 (not) needed */ |
#define | ICW1_SINGLE 0x02 /* Single (cascade) mode */ |
#define | ICW1_INTERVAL4 0x04 /* Call address interval 4 (8) */ |
#define | ICW1_LEVEL 0x08 /* Level triggered (edge) mode */ |
#define | ICW1_INIT 0x10 /* Initialization - required! */ |
#define | ICW4_8086 0x01 /* 8086/88 (MCS-80/85) mode */ |
#define | ICW4_AUTO 0x02 /* Auto (normal) EOI */ |
#define | ICW4_BUF_SLAVE 0x08 /* Buffered mode/slave */ |
#define | ICW4_BUF_MASTER 0x0C /* Buffered mode/master */ |
#define | ICW4_SFNM 0x10 /* Special fully nested (not) */ |
#define | END_OF_INTERRUPT 0x20 |
Functions | |
void | pic_Remap (uint8_t offset1, uint8_t offset2) |
Remaps master PIC and slave PIC to specified interupts numbers. | |
void | pic_SetHz (uint16_t hz) |
Sets PIT Channel 0 frequency. | |
void | pic_EOI (unsigned char irq) |
Sends End Of Interrupt to PIC. | |
#define END_OF_INTERRUPT 0x20 |
#define ICW1_ICW4 0x01 /* ICW4 (not) needed */ |
#define ICW1_INIT 0x10 /* Initialization - required! */ |
#define ICW1_INTERVAL4 0x04 /* Call address interval 4 (8) */ |
#define ICW1_LEVEL 0x08 /* Level triggered (edge) mode */ |
#define ICW1_SINGLE 0x02 /* Single (cascade) mode */ |
#define ICW4_8086 0x01 /* 8086/88 (MCS-80/85) mode */ |
#define ICW4_AUTO 0x02 /* Auto (normal) EOI */ |
#define ICW4_BUF_MASTER 0x0C /* Buffered mode/master */ |
#define ICW4_BUF_SLAVE 0x08 /* Buffered mode/slave */ |
#define ICW4_SFNM 0x10 /* Special fully nested (not) */ |
void pic_EOI | ( | unsigned char | irq | ) |
Sends End Of Interrupt to PIC.
irq | Number of IRQ to EOI |
References END_OF_INTERRUPT, outb(), PIC1_COMMAND, and PIC2_COMMAND.
void pic_Remap | ( | uint8_t | offset1, |
uint8_t | offset2 | ||
) |
Remaps master PIC and slave PIC to specified interupts numbers.
offset1 | New starting interrupt number for master PIC (IRQ 0-7) |
offset2 | New starting interrupt number for slave PIC (IRQ 8-15) |
References ICW1_ICW4, ICW1_INIT, ICW4_8086, outb(), PIC1_COMMAND, PIC1_DATA, PIC2_COMMAND, and PIC2_DATA.
void pic_SetHz | ( | uint16_t | hz | ) |