.text start: br+ main ;br+ call+ uartrdy ;call+ 0x80(128, 128) ret main: ldi r1, 0x200b ;ldi r1, 8203 ldi r2, 0x200c ;ldi r2, 8204 ldi r3, 0x2010 ;ldi r3, 8208 ldi r4, 0x2024 ;ldi r4, 8228 ldi r5, 3 stw r5, 0(r4) br+ start ; stwnv r5, 0(r4) uartrdy: ldw r7, 0(r2) xor r10, r10, r10 ldi r10, 0x41 stw r10, 0(r1) ;TODO: remove plz, kkthx ; load instructions into ram ldi r8, 0x2034 ; paddr ldi r9, 0x2038 ; pdata xor r10, r10, r10 xor r11, r11, r11 ; place this small program into instr-ram: ;.text ;start: ; br+ main ; call+ main ; ret ;main: ; stw r7, 0(r1) ;halt: ; br+ halt ;eb000183;br+ main;; ldi r10, 0 stw r10, 0(r8) ldi r11, 0x0183 ldih r11, 0xeb00 stw r11, 0(r9) ;eb000107;call+ main;; xor r10, r10, r10 ldi r10, 1 stw r10, 0(r8) ldi r11, 0x107 ldih r11, 0xeb00 stw r11, 0(r9) ;eb000008;ret;; xor r10, r10, r10 ldi r10, 2 stw r10, 0(r8) ldi r11, 0x8 ldih r11, 0xeb00 stw r11, 0(r9) ;e7b88000;stw r7, 0(r1);; xor r10, r10, r10 ldi r10, 4 stw r10, 0(r8) ldi r11, 0x8000 ldih r11, 0xe7b8 stw r11, 0(r9) ;eb000003;br+ halt;; xor r10, r10, r10 ldi r10, 5 stw r10, 0(r8) ldi r11, 0x3 ldih r11, 0xeb00 stw r11, 0(r9) leave: ; just run and run, until we leave ROM and enter