ref: 963783fb08c7d5f93a4aa9759291eec6da28fc59
dir: /pc/x86.c/
#include <u.h>
void
outb(uint16 port, uint8 data)
{
asm volatile("out %0, %1" : : "a" (data), "d" (port));
}
uint8
inb(uint16 port)
{
uint8 data;
asm volatile("in %1, %0" : "=a" (data) : "d" (port));
return data;
}