summaryrefslogtreecommitdiff
path: root/echo.S
diff options
context:
space:
mode:
Diffstat (limited to 'echo.S')
-rw-r--r--echo.S18
1 files changed, 18 insertions, 0 deletions
diff --git a/echo.S b/echo.S
new file mode 100644
index 0000000..58b2573
--- /dev/null
+++ b/echo.S
@@ -0,0 +1,18 @@
+.section .text
+.globl _start
+
+.equ UART_DATA, 0
+.equ UART_STATUS, 1
+.equ UART_RX_READY = 0b10
+.equ UART_TX_READY = 0b01
+
+_start:
+ li a0, 0x1000
+
+loop:
+ lbu t0, UART_STATUS(a0)
+ andi t0, t0, UART_RX_READY
+ beqz t0, loop
+ lbu t0, UART_DATA(a0)
+ sb t0, UART_DATA(a0)
+ j loop