@@ -58,70 +58,95 @@ reset__find_lookup_start:
5858 draw clear 0 0 0
5959 drawflush {{DISPLAY}}
6060
61- # {% macro print_str () %} print "{{- caller() -}}"{% endmacro %}
61+ # {% macro print_str () %} print "{{- caller()|replace('\n', '\\n') -}}"{% endmacro %}
62+
63+ #% set level_1_row = 0
64+ #% set level_2_row = 17
65+ #% set level_3_row = 23
66+ #% set level_4_row = 33
6267
6368#% call print_str()
64- #{- 'pc =\\ n'
65- #{- 'op =\\ n'
66- #{- 'rs1 =\\ n'
67- #{- 'rs2 =\\ n'
68- #{- 'imm =\\ n'
69- #{- 'rs1id =\\ n'
70- #{- 'rs2id =\\ n'
71- #{- 'rdid =\\n\ \n'
72-
73- #{- 'satp =\\ n'
74- #{- 'addr1 =\\ n'
75- #{- 'pte1 =\\ n'
76- #{- 'addr0 =\\ n'
77- #{- 'pte0 =\\ n'
78- #{- 'addr =\\ n'
79- #{- 'val =\\ n'
69+ #{- 'pc =\n'
70+ #{- 'op =\n'
71+ #{- 'rs1 =\n'
72+ #{- 'rs2 =\n'
73+ #{- 'imm =\n'
74+ #{- 'rs1id =\n'
75+ #{- 'rs2id =\n'
76+ #{- 'rdid =\n \n'
77+
78+ #{- 'satp =\n'
79+ #{- 'addr1 =\n'
80+ #{- 'pte1 =\n'
81+ #{- 'addr0 =\n'
82+ #{- 'pte0 =\n'
83+ #{- 'addr =\n'
84+ #{- 'val =\n'
8085#%- endcall
8186
82- #{ print(0, 0 )
87+ #{ print(0, level_1_row )
8388
8489#% call print_str()
85- #{- 'x0 (zero) =\\ n'
86- #{- 'x1 (ra) =\\ n'
87- #{- 'x2 (sp) =\\ n'
88- #{- 'x3 (gp) =\\ n'
89- #{- 'x4 (tp) =\\ n'
90- #{- 'x5 (t0) =\\ n'
91- #{- 'x6 (t1) =\\ n'
92- #{- 'x7 (t2) =\\ n'
93- #{- 'x8 (s0/fp) =\\ n'
94- #{- 'x9 (s1) =\\ n'
95- #{- 'x10 (a0) =\\ n'
96- #{- 'x11 (a1) =\\ n'
97- #{- 'x12 (a2) =\\ n'
98- #{- 'x13 (a3) =\\ n'
99- #{- 'x14 (a4) =\\ n'
100- #{- 'x15 (a5) =\\ n'
90+ #{- 'x0 (zero) =\n'
91+ #{- 'x1 (ra) =\n'
92+ #{- 'x2 (sp) =\n'
93+ #{- 'x3 (gp) =\n'
94+ #{- 'x4 (tp) =\n'
95+ #{- 'x5 (t0) =\n'
96+ #{- 'x6 (t1) =\n'
97+ #{- 'x7 (t2) =\n'
98+ #{- 'x8 (s0/fp) =\n'
99+ #{- 'x9 (s1) =\n'
100+ #{- 'x10 (a0) =\n'
101+ #{- 'x11 (a1) =\n'
102+ #{- 'x12 (a2) =\n'
103+ #{- 'x13 (a3) =\n'
104+ #{- 'x14 (a4) =\n'
105+ #{- 'x15 (a5) =\n'
101106#%- endcall
102107
103- #{ print(21, 0 )
108+ #{ print(21, level_1_row )
104109
105110#% call print_str()
106- #{- 'x16 (a6) =\\ n'
107- #{- 'x17 (a7) =\\ n'
108- #{- 'x18 (s2) =\\ n'
109- #{- 'x19 (s3) =\\ n'
110- #{- 'x20 (s4) =\\ n'
111- #{- 'x21 (s5) =\\ n'
112- #{- 'x22 (s6) =\\ n'
113- #{- 'x23 (s7) =\\ n'
114- #{- 'x24 (s8) =\\ n'
115- #{- 'x25 (s9) =\\ n'
116- #{- 'x26 (s10) =\\ n'
117- #{- 'x27 (s11) =\\ n'
118- #{- 'x28 (t3) =\\ n'
119- #{- 'x29 (t4) =\\ n'
120- #{- 'x30 (t5) =\\ n'
121- #{- 'x31 (t6) =\\ n'
111+ #{- 'x16 (a6) =\n'
112+ #{- 'x17 (a7) =\n'
113+ #{- 'x18 (s2) =\n'
114+ #{- 'x19 (s3) =\n'
115+ #{- 'x20 (s4) =\n'
116+ #{- 'x21 (s5) =\n'
117+ #{- 'x22 (s6) =\n'
118+ #{- 'x23 (s7) =\n'
119+ #{- 'x24 (s8) =\n'
120+ #{- 'x25 (s9) =\n'
121+ #{- 'x26 (s10) =\n'
122+ #{- 'x27 (s11) =\n'
123+ #{- 'x28 (t3) =\n'
124+ #{- 'x29 (t4) =\n'
125+ #{- 'x30 (t5) =\n'
126+ #{- 'x31 (t6) =\n'
122127#%- endcall
123128
124- #{ print(48, 0)
129+ #{ print(48, level_1_row)
130+
131+ #% call print_str()
132+ #{- 'mtvec =\n'
133+ #{- 'mepc =\n'
134+ #{- 'mcause =\n'
135+ #{- 'mtval =\n'
136+ #{- 'mscratch =\n\n'
137+
138+ #{- 'mstatus =\n'
139+ #{- 'mip =\n'
140+ #{- 'mie =\n\n'
141+
142+ #{- 'mtimecmp =\n'
143+ #{- 'stimecmp =\n'
144+ #{- 'mtime =\n'
145+ #{- 'mcycle =\n'
146+ #{- 'minstret =\n'
147+ #%- endcall
148+
149+ #{ print(0, level_3_row)
125150
126151loop:
127152 sensor enabled {{SWITCH}} @enabled
@@ -291,14 +316,14 @@ loop__no_mark_icache:
291316 # clear
292317
293318 draw color 0 0 0 255
294- #{ rect(8, 0, 10, 16)
295- #{ rect(35, 0, 10, 16)
296- #{ rect(60, 0, 10, 16)
297- #{ rect(0, 17, 73, 22)
319+ #{ rect(8, level_1_row, 10, 16)
320+ #{ rect(35, level_1_row, 10, 16)
321+ #{ rect(60, level_1_row, 10, 16)
322+ #{ rect(18, level_2_row, 55, 5)
323+ #{ rect(11, level_3_row, 62, 15)
298324 draw color 255 255 255 255
299325
300326 # ---- level 1 ----
301- #% set level_1_row = 0
302327
303328 # -- column 1 --
304329
@@ -484,7 +509,6 @@ loop__no_mark_icache:
484509 #{ print(60, level_1_row)
485510
486511 # ---- level 2 ----
487- #% set level_2_row = 17
488512
489513 # -- column 1 --
490514
@@ -514,51 +538,44 @@ loop__no_mark_icache:
514538 #{ print(0, level_2_row)
515539
516540 # ---- level 3 ----
517- #% set level_3_row = 23
518541
519542 # -- column 1 --
520543
521- print "mtvec = {0}\n"
544+ print "{{ '{0}\\n' * 5 }}\n{{ '{0}\\n' * 3 }}"
545+
522546 set n mtvec
523547 op add ret @counter 1
524548 jump format_hex always
525549
526- print "mepc = {0}\n"
527550 set n mepc
528551 op add ret @counter 1
529552 jump format_hex always
530553
531- print "mcause = {0}\n"
532554 set n mcause
533555 op add ret @counter 1
534556 jump format_mcause always
535557
536- print "mtval = {0}\n"
537558 set n mtval
538559 op add ret @counter 1
539560 jump format_hex always
540561
541- print "mscratch = {0}\n\n"
542562 set n mscratch
543563 op add ret @counter 1
544564 jump format_hex always
545565
546- print "mstatus = {0}\n"
547566 set n mstatus
548567 op add ret @counter 1
549568 jump format_bin always
550569
551- print "mip = {0}\n"
552570 set n mip
553571 op add ret @counter 1
554572 jump format_bin always
555573
556- print "mie = {0}\n"
557574 set n mie
558575 op add ret @counter 1
559576 jump format_bin always
560577
561- #{ print(0 , level_3_row)
578+ #{ print(11 , level_3_row)
562579
563580 # -- column 2 --
564581
@@ -590,26 +607,22 @@ loop__no_mark_icache:
590607 #{ print(35, level_3_row)
591608
592609 # ---- level 4 ----
593- #% set level_4_row = 33
594610
595611 # -- column 1 --
596612
597- print "mtimecmp = {0}\n"
613+ print "{{ '{0}\\n' * 5 }}"
614+
598615 format mtimecmp
599616
600- print "stimecmp = {0}\n"
601617 format stimecmp
602618
603- print "mtime = {0}\n"
604619 format mtime
605620
606- print "mcycle = {0}\n"
607621 format mcycle
608622
609- print "minstret = {0}\n"
610623 format minstret
611624
612- #{ print(0 , level_4_row)
625+ #{ print(11 , level_4_row)
613626
614627 # -- column 2 --
615628
0 commit comments