diff options
| author | Clément Sibille <claymeuns@protonmail.com> | 2021-10-07 21:13:55 +0200 |
|---|---|---|
| committer | Clément Sibille <claymeuns@protonmail.com> | 2021-10-07 21:14:05 +0200 |
| commit | 06d819c3e8e94972bd4261069d2c5239297bba65 (patch) | |
| tree | d14619fccb52246945212d9d75135225a020fd5d /kernel/src/io.rs | |
| parent | 6277cf1e4fef810d08af1e1f8d64778c94007236 (diff) | |
Add support for serial port output
Diffstat (limited to 'kernel/src/io.rs')
| -rw-r--r-- | kernel/src/io.rs | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/kernel/src/io.rs b/kernel/src/io.rs index def8665..a647408 100644 --- a/kernel/src/io.rs +++ b/kernel/src/io.rs @@ -1,5 +1,14 @@ pub unsafe fn out8(address: u16, value: u8) { asm!( - "out dx, al", in("dx") address, in("al") value - ) + "out dx, al", in("dx") address, in("al") value + ); +} + +pub unsafe fn in8(address: u16) -> u8 { + let result: u8; + asm!( + "in al, dx", in("dx") address, out("al") result + ); + + result } |
