mirror of
https://github.com/RGBCube/serenity
synced 2025-07-26 02:37:35 +00:00
CPU: Allow to use IRQs in range of 50 to 178
This commit is contained in:
parent
30fc78bfaf
commit
f33fb151b4
1 changed files with 3 additions and 1 deletions
|
@ -625,6 +625,8 @@ void idt_init()
|
||||||
register_interrupt_handler(0xce, interrupt_126_asm_entry);
|
register_interrupt_handler(0xce, interrupt_126_asm_entry);
|
||||||
register_interrupt_handler(0xcf, interrupt_127_asm_entry);
|
register_interrupt_handler(0xcf, interrupt_127_asm_entry);
|
||||||
|
|
||||||
|
dbg() << "Installing Unhandled Handlers";
|
||||||
|
|
||||||
for (u8 i = 0; i < GENERIC_INTERRUPT_HANDLERS_COUNT; ++i) {
|
for (u8 i = 0; i < GENERIC_INTERRUPT_HANDLERS_COUNT; ++i) {
|
||||||
new UnhandledInterruptHandler(i);
|
new UnhandledInterruptHandler(i);
|
||||||
}
|
}
|
||||||
|
@ -643,7 +645,7 @@ void handle_interrupt(RegisterState regs)
|
||||||
{
|
{
|
||||||
clac();
|
clac();
|
||||||
++g_in_irq;
|
++g_in_irq;
|
||||||
ASSERT(regs.isr_number >= 0x50 && regs.isr_number <= 0x5f);
|
ASSERT(regs.isr_number >= IRQ_VECTOR_BASE && regs.isr_number <= (IRQ_VECTOR_BASE + GENERIC_INTERRUPT_HANDLERS_COUNT));
|
||||||
u8 irq = (u8)(regs.isr_number - 0x50);
|
u8 irq = (u8)(regs.isr_number - 0x50);
|
||||||
ASSERT(s_interrupt_handler[irq]);
|
ASSERT(s_interrupt_handler[irq]);
|
||||||
s_interrupt_handler[irq]->handle_interrupt(regs);
|
s_interrupt_handler[irq]->handle_interrupt(regs);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue