2026-07-02 15:40:39 +08:00
|
|
|
#include <utsm/types.h>
|
|
|
|
|
|
|
|
|
|
void outb(u16 port, u8 value) {
|
|
|
|
|
__asm__ volatile ("outb %0, %1" : : "a"(value), "Nd"(port));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
u8 inb(u16 port) {
|
|
|
|
|
u8 value;
|
|
|
|
|
__asm__ volatile ("inb %1, %0" : "=a"(value) : "Nd"(port));
|
|
|
|
|
return value;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void io_wait(void) {
|
|
|
|
|
outb(0x80, 0);
|
|
|
|
|
}
|