4 .define UART_BASE, 0x2000
5 .define UART_STATUS, 0x0
7 .define UART_TRANS, 0x8
9 .define UART_TRANS_EMPTY, 0x1
10 .define UART_RECV_NEW, 0x2
24 ldih r10, UART_BASE@hi
28 ldw r3, UART_STATUS(r10)
29 andx r3, UART_RECV_NEW
30 brzs+ poll; branch if zero
32 ldw r0, UART_RECV(r10)
33 ; we received the enter bootrom sign
42 ldw r3, UART_STATUS(r10)
43 andx r3, UART_TRANS_EMPTY
44 brnz+ send_byte ; branch if not zero
45 stw r1, UART_TRANS(r10)
62 ldw r3, UART_STATUS(r10)
63 andx r3, UART_RECV_NEW
64 brzs+ recv_byte; branch if zero
66 ldw r0, UART_RECV(r10)
113 ; cmpi r0, 0x48 ; 'H'
126 call recv_word ; receive addr
128 call recv_word ; receive instr
135 call recv_word ; receive addr
144 call recv_word ; receive addr
146 call recv_word ; receive data
153 call recv_word ; receive addr