19 lines
370 B
Zig
19 lines
370 B
Zig
pub fn outb(port: u16, value: u8) void {
|
|
asm volatile (
|
|
\\outb %al, %dx
|
|
:
|
|
: [port] "{dx}" (port), [value] "{al}" (value)
|
|
: .{}
|
|
);
|
|
}
|
|
|
|
pub fn inb(port: u16) u8 {
|
|
var value: u8 = 0;
|
|
asm volatile (
|
|
\\inb %dx, %al
|
|
: [value] "={al}" (value)
|
|
: [port] "{dx}" (port)
|
|
: .{}
|
|
);
|
|
return value;
|
|
} |