void setIDT() { ol_idt_t idt; installExceptions(); installInterrupts(0x20, 0x28); idt.limit = sizeof(ol_idt_entry_t) * 256; idt.baseptr = 0x7400; installIDT(&idt); setInterrupts(); }
void setIDT() { ol_idt_t idt = kalloc(sizeof(struct idt)); idt->limit = sizeof(ol_idt_entry_t) * 256; idt->baseptr = kalloc(idt->limit); memset(idt->baseptr, 0, idt->limit); installExceptions(idt); //installInterrupts(0x20, 0x28, idt); installIDT(idt); debug("First empty idt entry: %x\n", get_empty_idt_entry_number()); }