-
- TIMEOUT_START=0x13371337
- DEFAULT_PROG_START=0x200
- STACKSTART=0x500 ; FIXME
-main:
- ; setup stackframe
- ldil r15, STACKSTART@lo
- ldih r15, STACKSTART@hi
-
- ldil r3, TIMEOUT_START@lo
- ldih r3, TIMEOUT_START@hi
-
-timeout_loop:
- ldil r3, UART_STATUS@lo
- ldih r3, UART_STATUS@hi
- andi r3, r3, 1 << UART_RECV_NEW
- jumpzs+ next; jump if zero
-
- branch recv_byte
- ; we received the enter bootrom sign
- cmp r0, 0x48 ; 'H'
- jumpeq- bt_H
-
-next:
- subi r3, r3, 1
- jumpnz+ timeout_loop
-
- ; branch to default entry point
- ldil r0, DEFAULT_PROG_START@lo
- ldih r0, DEFAULT_PROG_START@hi
- jumpreg r0
-
-; 99 instr. please update after modification