diff options
Diffstat (limited to 'kernel/x86.h')
| -rw-r--r-- | kernel/x86.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/kernel/x86.h b/kernel/x86.h index 6942816..9d1ba93 100644 --- a/kernel/x86.h +++ b/kernel/x86.h @@ -9,6 +9,8 @@ #define X86_IRQ_BEGIN asm("\ncli\npusha"); #define X86_IRQ_END asm("mov $0x20, %al\nout %al, $0x20\nmov $0x20, %al\noutb %al,$0xa0\npopa\nleave\nsti\niret"); +void sleep(int i); // TODO : Real sleep! + void x86_outb(int port, uint8_t data); uint8_t x86_inb(int port); void x86_outw(int port, uint16_t data); @@ -18,5 +20,12 @@ uint32_t x86_inl(int port); void x86_set_pdbr(uint32_t addr); void x86_paging_enable(); void x86_flush_tlb(uint32_t addr); +void x86_int_enable(); +uint32_t x86_get_cr0(); +uint32_t x86_get_cr1(); +uint32_t x86_get_cr2(); +uint32_t x86_get_cr3(); +uint32_t x86_get_cr4(); +uint8_t x86_xchg(uint8_t *addr, uint8_t val); #endif |
