feat: Redesign GUI desktop in Windows/KDE style with Start menu, Terminal, Task Manager, hardware mouse cursor, and IRQ 12 support
This commit is contained in:
@@ -53,6 +53,7 @@ extern "C" {
|
||||
fn default_isr_stub();
|
||||
fn timer_isr_entry();
|
||||
fn keyboard_isr_entry();
|
||||
fn mouse_isr_entry();
|
||||
}
|
||||
|
||||
// Global assembly ISR stub with vector ID pushed as separate stubs (0-31)
|
||||
@@ -153,6 +154,10 @@ pub unsafe fn init() {
|
||||
let kbd_addr = keyboard_isr_entry as *const () as usize as u64;
|
||||
(*idt_ptr.add(33)).set_handler(kbd_addr, 0, 0);
|
||||
|
||||
// Set Mouse Interrupt (Vector 44 / 0x2C - Slave PIC IRQ 12)
|
||||
let mouse_addr = mouse_isr_entry as *const () as usize as u64;
|
||||
(*idt_ptr.add(44)).set_handler(mouse_addr, 0, 0);
|
||||
|
||||
let descriptor = IdtDescriptor {
|
||||
limit: (size_of::<[IdtEntry; 256]>() - 1) as u16,
|
||||
base: idt_ptr as u64,
|
||||
|
||||
Reference in New Issue
Block a user