timer: added as extension modul
[calu.git] / progs / testbench.s
index 624e3c9312a734d0474f088e4b3e6a1d5f9c07da..b98784cf63796e6ff563405fe50d7bd388b1dd53 100644 (file)
@@ -1,15 +1,9 @@
 #include "dt_inc.s"
-
-.data
-.org 0x0
-list:
-       .fill 0x1 ;1. element = 1 ;0x10
-       .fill 0x1 ;2. element = 1 ;0x14
-       .fill 0x10, 0x0 ;nullen..
-str:
-       .ascii "hier das ergebnis: "
 .text
 .org 0x0
+       .define TIMER_BASE, 0x2040
+       .define T_STCFG, 0x0
+       .define T_VAL, 0x4
 start:
        br+ main
        br+ main
@@ -21,22 +15,23 @@ main:
 
        ldis r1, 0x42
        call u_send_byte
-       
-       ldis r0, bla/4
-       ; addi r1, r0, 0
-       ; call u_send_byte
-       brr r0
 
-       ldis r1, 0x43
-       call u_send_byte
+       ldis r11, TIMER_BASE@lo
+       ldih r11, TIMER_BASE@hi
 
-hang:
-       br hang
+       ldis r1, 0x1
+       stw r1, T_STCFG(r11)
 
+loop:
+       call u_recv_byte
+       cmpi r0, 0x42
+       breq bla
+       ldw r1, T_VAL(r11)
+       call u_send_uint
+       call u_send_newline
+       br loop
 
-.org 0x50
 bla:
-       call u_init
-       ldis r1, 0x41
-       call u_send_byte
-       br hang
+       ldis r1, 0
+       stw r1, T_VAL(r11)
+       br loop