Files
Sylva/include/interrupt/pic.h
T
2026-06-06 10:37:51 +08:00

21 lines
383 B
C

#pragma once
#include <efi.h>
// 8259 PIC ports
#define PIC1_CMD 0x20
#define PIC1_DATA 0x21
#define PIC2_CMD 0xA0
#define PIC2_DATA 0xA1
// PIC vectors
#define PIC_IRQ_BASE 0x20 // IRQ 0 mapped to vector 0x20 (32)
// EOI signal
#define PIC_EOI 0x20
void pic_init(void);
void pic_send_eoi(UINT8 irq);
void pic_mask_irq(UINT8 irq);
void pic_unmask_irq(UINT8 irq);