X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;ds=sidebyside;f=3_test%2Fuartint.s;h=8c62b030897dd79b2f9ac3242c3eb6e752a6a21e;hb=2fc8379195133d616d8452eb23c79268fffc6008;hp=8f4975eebbe06db9bc908fdba30de49b61b67729;hpb=afedb369e2082b0e887941faa4326f3c11eff20d;p=calu.git diff --git a/3_test/uartint.s b/3_test/uartint.s index 8f4975e..8c62b03 100644 --- a/3_test/uartint.s +++ b/3_test/uartint.s @@ -1,73 +1,19 @@ .text start: br+ main ;br+ - call+ uartrdy ;call+ 0x80(128, 128) + call+ uartrdy ret main: + ldi r0, 0x2000 ; status... 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) + ; ldi r4, 0x2024 ;ldi r4, 8228 + ; ldi r5, 3 ; enable interrupts + ; stw r5, 0(r4) + ldw r5, 0(r0) + andx r5, 0x2 + brzs+ main 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 + stw r7, 0(r1) + br main