diff options
Diffstat (limited to 'src/port.asm')
-rw-r--r-- | src/port.asm | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/port.asm b/src/port.asm index 4f2b646..555a4e8 100644 --- a/src/port.asm +++ b/src/port.asm @@ -23,3 +23,27 @@ port8_read: in al, dx leave ret + +global port32_write +global port32_read + +; void port32_write( port32_t *port, uint32_t data ); +port32_write: + push ebp + mov ebp, esp + mov ecx, [ebp+8] + mov edx, DWORD [ecx] + mov eax, DWORD [ebp+12] + out dx, eax + leave + ret + +; uint32_t port32_read( port32_t *port ) +port32_read: + push ebp + mov ebp, esp + mov ecx, DWORD [ebp+8] + mov edx, [ecx] + in eax, dx + leave + ret |