diff options
author | Samuel Johnson <[email protected]> | 2025-07-01 10:33:05 -0400 |
---|---|---|
committer | Samuel Johnson <[email protected]> | 2025-07-01 10:33:05 -0400 |
commit | 571a656a6bd9b4b9d5c595c578d15ba79bb19ef7 (patch) | |
tree | 46f75b47f4edab4281de14ffa1c4a91a5a84f8f1 /kernel/amd64/io/ports.S | |
parent | 12fd3a91f138bf90520134682e38bf3b0341e660 (diff) |
Diffstat (limited to 'kernel/amd64/io/ports.S')
-rw-r--r-- | kernel/amd64/io/ports.S | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/kernel/amd64/io/ports.S b/kernel/amd64/io/ports.S new file mode 100644 index 0000000..37301a4 --- /dev/null +++ b/kernel/amd64/io/ports.S @@ -0,0 +1,24 @@ +.section .text +.global inb, outb + +inb: + push %rbp + mov %rsp, %rbp + sub $0x10, %rsp + mov %rdi, %rdx + xor %rax, %rax + in (%dx), %al + add $0x10, %rsp + pop %rbp + ret + +outb: + push %rbp + mov %rsp, %rbp + sub $0x10, %rsp + mov %rdi, %rdx + mov %rsi, %rax + out %al, (%dx) + add $0x10, %rsp + pop %rbp + ret |