about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--html/052kernel-string-equal.subx.html4
-rw-r--r--html/066print-int.subx.html2
-rw-r--r--html/067parse-hex.subx.html2
-rw-r--r--html/071read-line.subx.html4
-rw-r--r--html/072slice.subx.html2
-rw-r--r--html/075print-int-decimal.subx.html2
-rw-r--r--html/079emit.subx.html2
-rw-r--r--html/084emit-hex-array.subx.html2
-rw-r--r--html/apps/assort.subx.html26
-rw-r--r--html/apps/braces.subx.html10
-rw-r--r--html/apps/calls.subx.html4
-rw-r--r--html/apps/dquotes.subx.html16
-rw-r--r--html/apps/ex1.mu.html5
-rw-r--r--html/apps/ex10.subx.html4
-rw-r--r--html/apps/ex11.subx.html4
-rw-r--r--html/apps/ex2.2.mu.html8
-rw-r--r--html/apps/ex2.mu.html8
-rw-r--r--html/apps/ex3.mu.html72
-rw-r--r--html/apps/ex8.subx.html2
-rw-r--r--html/apps/factorial.mu.html50
-rw-r--r--html/apps/hex.subx.html4
-rw-r--r--html/apps/mu.subx.html106
-rw-r--r--html/apps/mulisp.subx.html2
-rw-r--r--html/apps/pack.subx.html88
-rw-r--r--html/apps/sigils.subx.html36
-rw-r--r--html/apps/survey.subx.html82
-rw-r--r--html/mu-init.subx.html6
27 files changed, 317 insertions, 236 deletions
diff --git a/html/052kernel-string-equal.subx.html b/html/052kernel-string-equal.subx.html
index 3a09cf75..9215365d 100644
--- a/html/052kernel-string-equal.subx.html
+++ b/html/052kernel-string-equal.subx.html
@@ -146,7 +146,7 @@ if ('onhashchange' in window) {
 <span id="L84" class="LineNr"> 84 </span>    <span class="subxComment"># c2 = *s2</span>
 <span id="L85" class="LineNr"> 85 </span>    8a/copy-byte                    0/mod/indirect  6/rm32/esi   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          3/r32/BL   <span class="Normal"> . </span>             <span class="Normal"> . </span>                <span class="subxComment"># copy byte at *esi to BL</span>
 <span id="L86" class="LineNr"> 86 </span>    <span class="subxComment"># if (c1 == 0) return false</span>
-<span id="L87" class="LineNr"> 87 </span>    3d/compare-eax-and  0/imm32
+<span id="L87" class="LineNr"> 87 </span>    3d/compare-eax-and  0/imm32/null
 <span id="L88" class="LineNr"> 88 </span>    74/jump-if-=  $kernel-string-equal?:false/disp8
 <span id="L89" class="LineNr"> 89 </span>    <span class="subxComment"># if (c1 != c2) return false</span>
 <span id="L90" class="LineNr"> 90 </span>    39/compare                      3/mod/direct    0/rm32/eax   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          3/r32/ebx  <span class="Normal"> . </span>             <span class="Normal"> . </span>                <span class="subxComment"># compare eax and ebx</span>
@@ -161,7 +161,7 @@ if ('onhashchange' in window) {
 <span id="L99" class="LineNr"> 99 </span><span class="Constant">$kernel-string-equal?:break</span>:
 <span id="L100" class="LineNr">100 </span>    <span class="subxComment"># return *s1 == 0</span>
 <span id="L101" class="LineNr">101 </span>    8a/copy-byte                    0/mod/indirect  7/rm32/edi   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          0/r32/AL   <span class="Normal"> . </span>             <span class="Normal"> . </span>                <span class="subxComment"># copy byte at *edi to AL</span>
-<span id="L102" class="LineNr">102 </span>    3d/compare-eax-and  0/imm32
+<span id="L102" class="LineNr">102 </span>    3d/compare-eax-and  0/imm32/null
 <span id="L103" class="LineNr">103 </span>    75/jump-if-!=  $kernel-string-equal?:false/disp8
 <span id="L104" class="LineNr">104 </span><span class="Constant">$kernel-string-equal?:true</span>:
 <span id="L105" class="LineNr">105 </span>    b8/copy-to-eax  1/imm32
diff --git a/html/066print-int.subx.html b/html/066print-int.subx.html
index 9c077c58..c2b71a84 100644
--- a/html/066print-int.subx.html
+++ b/html/066print-int.subx.html
@@ -414,7 +414,7 @@ if ('onhashchange' in window) {
 <span id="L353" class="LineNr">353 </span>    e8/call  <a href='064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L354" class="LineNr">354 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L355" class="LineNr">355 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L356" class="Folded">356 </span><span class="Folded">+-- 18 lines: #?     # dump line -----------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L356" class="Folded">356 </span><span class="Folded">+-- 18 lines: #?     # dump line --------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L374" class="LineNr">374 </span>    <span class="subxComment"># check-stream-equal(_test-stream, &quot;0x008899aa&quot;, msg)</span>
 <span id="L375" class="LineNr">375 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L376" class="LineNr">376 </span>    68/push  <span class="Constant">&quot;F - test-print-int32-buffered&quot;</span>/imm32
diff --git a/html/067parse-hex.subx.html b/html/067parse-hex.subx.html
index 13b04099..90d53526 100644
--- a/html/067parse-hex.subx.html
+++ b/html/067parse-hex.subx.html
@@ -125,7 +125,7 @@ if ('onhashchange' in window) {
 <span id="L65" class="LineNr"> 65 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L66" class="LineNr"> 66 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
 <span id="L67" class="LineNr"> 67 </span>    <span class="subxComment"># if (eax == false) return false</span>
-<span id="L68" class="LineNr"> 68 </span>    3d/compare-eax-and  0/imm32
+<span id="L68" class="LineNr"> 68 </span>    3d/compare-eax-and  0/imm32/false
 <span id="L69" class="LineNr"> 69 </span>    74/jump-if-=  $is-hex-int?:end/disp8
 <span id="L70" class="LineNr"> 70 </span>    <span class="subxComment"># ++curr</span>
 <span id="L71" class="LineNr"> 71 </span>    41/increment-ecx
diff --git a/html/071read-line.subx.html b/html/071read-line.subx.html
index 8f26841f..1dd7df47 100644
--- a/html/071read-line.subx.html
+++ b/html/071read-line.subx.html
@@ -135,7 +135,7 @@ if ('onhashchange' in window) {
 <span id="L75" class="LineNr"> 75 </span>    <span class="subxComment"># ++s-&gt;write</span>
 <span id="L76" class="LineNr"> 76 </span>    42/increment-edx
 <span id="L77" class="LineNr"> 77 </span>    <span class="subxComment"># if (AL == '\n') return</span>
-<span id="L78" class="LineNr"> 78 </span>    3d/compare-eax-and  0xa/imm32
+<span id="L78" class="LineNr"> 78 </span>    3d/compare-eax-and  0xa/imm32/newline
 <span id="L79" class="LineNr"> 79 </span>    75/jump-if-!=  $read-line-buffered:<span class="Constant">loop</span>/disp8
 <span id="L80" class="LineNr"> 80 </span><span class="Constant">$read-line-buffered:end</span>:
 <span id="L81" class="LineNr"> 81 </span>    <span class="subxComment"># save f-&gt;read</span>
@@ -320,7 +320,7 @@ if ('onhashchange' in window) {
 <span id="L260" class="LineNr">260 </span>    <span class="subxComment"># ++s-&gt;write</span>
 <span id="L261" class="LineNr">261 </span>    42/increment-edx
 <span id="L262" class="LineNr">262 </span>    <span class="subxComment"># if (AL == '\n') return</span>
-<span id="L263" class="LineNr">263 </span>    3d/compare-eax-and  0xa/imm32
+<span id="L263" class="LineNr">263 </span>    3d/compare-eax-and  0xa/imm32/newline
 <span id="L264" class="LineNr">264 </span>    0f 85/jump-if-!=  $read-line:<span class="Constant">loop</span>/disp32
 <span id="L265" class="LineNr">265 </span><span class="Constant">$read-line:end</span>:
 <span id="L266" class="LineNr">266 </span>    <span class="subxComment"># save f-&gt;read</span>
diff --git a/html/072slice.subx.html b/html/072slice.subx.html
index 2de664ab..77105894 100644
--- a/html/072slice.subx.html
+++ b/html/072slice.subx.html
@@ -1213,7 +1213,7 @@ if ('onhashchange' in window) {
 <span id="L1152" class="LineNr">1152 </span>    e8/call  <a href='072slice.subx.html#L1044'>slice-to-string</a>/disp32
 <span id="L1153" class="LineNr">1153 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1154" class="LineNr">1154 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L1155" class="Folded">1155 </span><span class="Folded">+-- 26 lines: #?     # dump word-slice -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1155" class="Folded">1155 </span><span class="Folded">+-- 26 lines: #?     # dump word-slice --------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1181" class="LineNr">1181 </span>    <span class="subxComment"># eax = string-equal?(eax, &quot;Abc&quot;)</span>
 <span id="L1182" class="LineNr">1182 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1183" class="LineNr">1183 </span>    68/push  <span class="Constant">&quot;Abc&quot;</span>/imm32
diff --git a/html/075print-int-decimal.subx.html b/html/075print-int-decimal.subx.html
index 75271d9a..21f4811e 100644
--- a/html/075print-int-decimal.subx.html
+++ b/html/075print-int-decimal.subx.html
@@ -297,7 +297,7 @@ if ('onhashchange' in window) {
 <span id="L236" class="LineNr">236 </span>    e8/call  <a href='075print-int-decimal.subx.html#L8'>print-int32-decimal</a>/disp32
 <span id="L237" class="LineNr">237 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L238" class="LineNr">238 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L239" class="Folded">239 </span><span class="Folded">+-- 26 lines: #?     # dump _test-stream ---------------------------------------------------------------------------------------------------------------------</span>
+<span id="L239" class="Folded">239 </span><span class="Folded">+-- 26 lines: #?     # dump _test-stream ------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L265" class="LineNr">265 </span>    <span class="subxComment"># check-stream-equal(_test-stream, &quot;-9&quot;, msg)</span>
 <span id="L266" class="LineNr">266 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L267" class="LineNr">267 </span>    68/push  <span class="Constant">&quot;F - test-print-int32-decimal-negative&quot;</span>/imm32
diff --git a/html/079emit.subx.html b/html/079emit.subx.html
index 67fc7401..4975046a 100644
--- a/html/079emit.subx.html
+++ b/html/079emit.subx.html
@@ -493,7 +493,7 @@ if ('onhashchange' in window) {
 <span id="L432" class="LineNr">432 </span>    e8/call  <a href='064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L433" class="LineNr">433 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L434" class="LineNr">434 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L435" class="Folded">435 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L435" class="Folded">435 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L461" class="LineNr">461 </span>    <span class="subxComment"># check-stream-equal(_test-output-stream, &quot;abcd/xyz&quot;)</span>
 <span id="L462" class="LineNr">462 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L463" class="LineNr">463 </span>    68/push  <span class="Constant">&quot;F - test-emit-non-number-with-all-hex-digits&quot;</span>/imm32
diff --git a/html/084emit-hex-array.subx.html b/html/084emit-hex-array.subx.html
index d2218bd0..22af54c8 100644
--- a/html/084emit-hex-array.subx.html
+++ b/html/084emit-hex-array.subx.html
@@ -150,7 +150,7 @@ if ('onhashchange' in window) {
 <span id="L90" class="LineNr"> 90 </span>    e8/call  <a href='064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L91" class="LineNr"> 91 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L92" class="LineNr"> 92 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L93" class="Folded"> 93 </span><span class="Folded">+-- 33 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L93" class="Folded"> 93 </span><span class="Folded">+-- 33 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L126" class="LineNr">126 </span>    <span class="subxComment"># check-next-stream-line-equal(_test-output-stream, &quot;01 02 03 &quot;, msg)</span>
 <span id="L127" class="LineNr">127 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L128" class="LineNr">128 </span>    68/push  <span class="Constant">&quot;F - test-emit-hex-array&quot;</span>/imm32
diff --git a/html/apps/assort.subx.html b/html/apps/assort.subx.html
index bc77a2c4..565ad9e7 100644
--- a/html/apps/assort.subx.html
+++ b/html/apps/assort.subx.html
@@ -173,7 +173,7 @@ if ('onhashchange' in window) {
 <span id="L111" class="LineNr">111 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L112" class="LineNr">112 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
 <span id="L113" class="LineNr">113 </span><span class="Constant">$subx-assort:<a href='../060read.subx.html#L48'>read</a></span>:
-<span id="L114" class="Folded">114 </span><span class="Folded">+--  9 lines: #?     # print(&quot;read\n&quot;) -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L114" class="Folded">114 </span><span class="Folded">+--  9 lines: #?     # print(&quot;read\n&quot;) --------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L123" class="LineNr">123 </span>    <span class="subxComment"># read-segments(in, table)</span>
 <span id="L124" class="LineNr">124 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L125" class="LineNr">125 </span>    51/push-ecx
@@ -183,7 +183,7 @@ if ('onhashchange' in window) {
 <span id="L129" class="LineNr">129 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L130" class="LineNr">130 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L131" class="LineNr">131 </span><span class="Constant">$subx-assort:<a href='../057write.subx.html#L24'>write</a></span>:
-<span id="L132" class="Folded">132 </span><span class="Folded">+--  9 lines: #?     # print(&quot;write\n&quot;) ----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L132" class="Folded">132 </span><span class="Folded">+--  9 lines: #?     # print(&quot;write\n&quot;) -------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L141" class="LineNr">141 </span>    <span class="subxComment"># write-segments(out, table)</span>
 <span id="L142" class="LineNr">142 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L143" class="LineNr">143 </span>    51/push-ecx
@@ -386,7 +386,7 @@ if ('onhashchange' in window) {
 <span id="L340" class="LineNr">340 </span>    <span class="subxComment">#   10 11</span>
 <span id="L341" class="LineNr">341 </span>    <span class="subxComment">#   == data 0x0a000000</span>
 <span id="L342" class="LineNr">342 </span>    <span class="subxComment">#   4 5/imm32</span>
-<span id="L343" class="Folded">343 </span><span class="Folded">+-- 33 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L343" class="Folded">343 </span><span class="Folded">+-- 33 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L376" class="LineNr">376 </span>    <span class="subxS1Comment"># . check-next-stream-line-equal(_test-output-stream, &quot;== code 0x09000000&quot;, msg)</span>
 <span id="L377" class="LineNr">377 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L378" class="LineNr">378 </span>    68/push  <span class="Constant">&quot;F - <a href='assort.subx.html#L159'>test-subx-assort</a>/0&quot;</span>/imm32
@@ -540,7 +540,7 @@ if ('onhashchange' in window) {
 <span id="L526" class="LineNr">526 </span>    <span class="subxComment"># if (line-&gt;write == 0) break</span>
 <span id="L527" class="LineNr">527 </span>    81          7/subop/compare     0/mod/indirect  1/rm32/ecx   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              0/imm32           <span class="subxComment"># compare *ecx</span>
 <span id="L528" class="LineNr">528 </span>    0f 84/jump-if-=  $read-segments:<span class="Constant">break</span>/disp32
-<span id="L529" class="Folded">529 </span><span class="Folded">+-- 33 lines: #?     # dump line -----------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L529" class="Folded">529 </span><span class="Folded">+-- 33 lines: #?     # dump line --------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L562" class="LineNr">562 </span>    <span class="subxComment"># next-word-or-string(line, word-slice)</span>
 <span id="L563" class="LineNr">563 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L564" class="LineNr">564 </span>    52/push-edx
@@ -550,7 +550,7 @@ if ('onhashchange' in window) {
 <span id="L568" class="LineNr">568 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L569" class="LineNr">569 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L570" class="LineNr">570 </span><span class="Constant">$read-segments:check1</span>:
-<span id="L571" class="Folded">571 </span><span class="Folded">+--  9 lines: #?     # print(&quot;check1\n&quot;) ---------------------------------------------------------------------------------------------------------------------</span>
+<span id="L571" class="Folded">571 </span><span class="Folded">+--  9 lines: #?     # print(&quot;check1\n&quot;) ------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L580" class="LineNr">580 </span>    <span class="subxComment"># if (slice-empty?(word-slice)) continue</span>
 <span id="L581" class="LineNr">581 </span>    <span class="subxS1Comment"># . eax = slice-empty?(word-slice)</span>
 <span id="L582" class="LineNr">582 </span>    <span class="subxS2Comment"># . . push args</span>
@@ -563,7 +563,7 @@ if ('onhashchange' in window) {
 <span id="L589" class="LineNr">589 </span>    3d/compare-eax-and  0/imm32/false
 <span id="L590" class="LineNr">590 </span>    0f 85/jump-if-!=  $read-segments:<span class="Constant">loop</span>/disp32
 <span id="L591" class="LineNr">591 </span><span class="Constant">$read-segments:check-for-comment</span>:
-<span id="L592" class="Folded">592 </span><span class="Folded">+--  9 lines: #?     # print(&quot;check for comment\n&quot;) ----------------------------------------------------------------------------------------------------------</span>
+<span id="L592" class="Folded">592 </span><span class="Folded">+--  9 lines: #?     # print(&quot;check for comment\n&quot;) -------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L601" class="LineNr">601 </span>    <span class="subxComment"># if (slice-starts-with?(word-slice, &quot;#&quot;)) continue</span>
 <span id="L602" class="LineNr">602 </span>    <span class="subxS1Comment"># . var start/esi: (addr byte) = word-slice-&gt;start</span>
 <span id="L603" class="LineNr">603 </span>    8b/copy                         0/mod/indirect  2/rm32/edx   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          6/r32/esi  <span class="Normal"> . </span>             <span class="Normal"> . </span>                <span class="subxComment"># copy *ecx to esi</span>
@@ -574,8 +574,8 @@ if ('onhashchange' in window) {
 <span id="L608" class="LineNr">608 </span>    3d/compare-eax-and  0x23/imm32/hash
 <span id="L609" class="LineNr">609 </span>    0f 84/jump-if-=  $read-segments:<span class="Constant">loop</span>/disp32
 <span id="L610" class="LineNr">610 </span><span class="Constant">$read-segments:check-for-segment-header</span>:
-<span id="L611" class="Folded">611 </span><span class="Folded">+--  9 lines: #?     # print(&quot;check for segment header\n&quot;) ---------------------------------------------------------------------------------------------------</span>
-<span id="L620" class="Folded">620 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L611" class="Folded">611 </span><span class="Folded">+--  9 lines: #?     # print(&quot;check for segment header\n&quot;) ------------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L620" class="Folded">620 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice --------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L660" class="LineNr">660 </span>    <span class="subxComment"># if !slice-equal?(word-slice, &quot;==&quot;) goto next check</span>
 <span id="L661" class="LineNr">661 </span>    <span class="subxS1Comment"># . eax = slice-equal?(word-slice, &quot;==&quot;)</span>
 <span id="L662" class="LineNr">662 </span>    <span class="subxS2Comment"># . . push args</span>
@@ -596,7 +596,7 @@ if ('onhashchange' in window) {
 <span id="L677" class="LineNr">677 </span>    e8/call  <a href='../085next-word-or-string.subx.html#L8'>next-word-or-string</a>/disp32
 <span id="L678" class="LineNr">678 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L679" class="LineNr">679 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L680" class="Folded">680 </span><span class="Folded">+-- 40 lines: #?     # dump segment name ---------------------------------------------------------------------------------------------------------------------</span>
+<span id="L680" class="Folded">680 </span><span class="Folded">+-- 40 lines: #?     # dump segment name ------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L720" class="LineNr">720 </span>    <span class="subxComment"># var segment-slot/eax: (addr handle stream byte) = leaky-get-or-insert-slice(table, segment-name, row-size=8)</span>
 <span id="L721" class="LineNr">721 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L722" class="LineNr">722 </span>    68/push  8/imm32/row-size
@@ -631,8 +631,8 @@ if ('onhashchange' in window) {
 <span id="L751" class="LineNr">751 </span>    89/copy                         0/mod/indirect  0/rm32/eax   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          3/r32/ebx  <span class="Normal"> . </span>             <span class="Normal"> . </span>                <span class="subxComment"># copy ebx to *eax</span>
 <span id="L752" class="LineNr">752 </span>    <span class="subxComment"># fall through</span>
 <span id="L753" class="LineNr">753 </span><span class="Constant">$read-segments:regular-line</span>:
-<span id="L754" class="Folded">754 </span><span class="Folded">+--  9 lines: #?     # print(&quot;regular line\n&quot;) ---------------------------------------------------------------------------------------------------------------</span>
-<span id="L763" class="Folded">763 </span><span class="Folded">+-- 33 lines: #?     # dump line -----------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L754" class="Folded">754 </span><span class="Folded">+--  9 lines: #?     # print(&quot;regular line\n&quot;) ------------------------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L763" class="Folded">763 </span><span class="Folded">+-- 33 lines: #?     # dump line --------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L796" class="LineNr">796 </span>    <span class="subxComment"># rewind-stream(line)</span>
 <span id="L797" class="LineNr">797 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L798" class="LineNr">798 </span>    51/push-ecx
@@ -640,7 +640,7 @@ if ('onhashchange' in window) {
 <span id="L800" class="LineNr">800 </span>    e8/call  <a href='../055stream.subx.html#L54'>rewind-stream</a>/disp32
 <span id="L801" class="LineNr">801 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L802" class="LineNr">802 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L803" class="Folded">803 </span><span class="Folded">+--  9 lines: #?     # print(&quot;write stream\n&quot;) ---------------------------------------------------------------------------------------------------------------</span>
+<span id="L803" class="Folded">803 </span><span class="Folded">+--  9 lines: #?     # print(&quot;write stream\n&quot;) ------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L812" class="LineNr">812 </span>    <span class="subxComment"># write-stream(curr-segment, line)</span>
 <span id="L813" class="LineNr">813 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L814" class="LineNr">814 </span>    51/push-ecx
@@ -650,7 +650,7 @@ if ('onhashchange' in window) {
 <span id="L818" class="LineNr">818 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L819" class="LineNr">819 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L820" class="LineNr">820 </span>    <span class="subxComment"># loop</span>
-<span id="L821" class="Folded">821 </span><span class="Folded">+--  9 lines: #?     # print(&quot;loop\n&quot;) -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L821" class="Folded">821 </span><span class="Folded">+--  9 lines: #?     # print(&quot;loop\n&quot;) --------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L830" class="LineNr">830 </span>    e9/jump  $read-segments:<span class="Constant">loop</span>/disp32
 <span id="L831" class="LineNr">831 </span><span class="Constant">$read-segments:break</span>:
 <span id="L832" class="LineNr">832 </span><span class="Constant">$read-segments:end</span>:
diff --git a/html/apps/braces.subx.html b/html/apps/braces.subx.html
index 3d33c79e..6c9eef10 100644
--- a/html/apps/braces.subx.html
+++ b/html/apps/braces.subx.html
@@ -119,7 +119,7 @@ if ('onhashchange' in window) {
 <span id="L60" class="LineNr"> 60 </span>    7e/jump-if-&lt;= $subx-braces-main:interactive/disp8
 <span id="L61" class="LineNr"> 61 </span>    <span class="subxComment"># if (argv[1] != &quot;test&quot;)) goto interactive</span>
 <span id="L62" class="LineNr"> 62 </span>    (<a href='../052kernel-string-equal.subx.html#L33'>kernel-string-equal?</a> *(ebp+8) <span class="Constant">&quot;test&quot;</span>)  <span class="subxComment"># =&gt; eax</span>
-<span id="L63" class="LineNr"> 63 </span>    3d/compare-eax-and 0/imm32
+<span id="L63" class="LineNr"> 63 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L64" class="LineNr"> 64 </span>    74/jump-if-= $subx-braces-main:interactive/disp8
 <span id="L65" class="LineNr"> 65 </span>    <span class="subxComment">#</span>
 <span id="L66" class="LineNr"> 66 </span>    (run-tests)
@@ -245,7 +245,7 @@ if ('onhashchange' in window) {
 <span id="L186" class="LineNr">186 </span><span class="Constant">$subx-braces:check1</span>:
 <span id="L187" class="LineNr">187 </span>    <span class="subxComment"># if (slice-empty?(word-slice)) break</span>
 <span id="L188" class="LineNr">188 </span>    (<a href='../072slice.subx.html#L9'>slice-empty?</a> %edi)
-<span id="L189" class="LineNr">189 </span>    3d/compare-eax-and 0/imm32
+<span id="L189" class="LineNr">189 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L190" class="LineNr">190 </span>    0f 85/jump-if-!= $subx-braces:next-line/disp32
 <span id="L191" class="LineNr">191 </span><span class="Constant">$subx-braces:check-for-comment</span>:
 <span id="L192" class="LineNr">192 </span>    <span class="subxComment"># if (slice-starts-with?(word-slice, &quot;#&quot;)) continue</span>
@@ -329,7 +329,7 @@ if ('onhashchange' in window) {
 <span id="L270" class="LineNr">270 </span>    (<a href='braces.subx.html#L78'>subx-braces</a> <a href='../061read-byte.subx.html#L313'>_test-input-buffered-file</a> <a href='../064write-byte.subx.html#L360'>_test-output-buffered-file</a>)
 <span id="L271" class="LineNr">271 </span>    <span class="subxComment"># check that the line just passed through</span>
 <span id="L272" class="LineNr">272 </span>    (<a href='../064write-byte.subx.html#L81'>flush</a> <a href='../064write-byte.subx.html#L360'>_test-output-buffered-file</a>)
-<span id="L273" class="Folded">273 </span><span class="Folded">+--  5 lines: #?     # dump _test-output-stream --------------------------------------------------------------------------------------------------------------</span>
+<span id="L273" class="Folded">273 </span><span class="Folded">+--  5 lines: #?     # dump _test-output-stream -----------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L278" class="LineNr">278 </span>    (<a href='../058stream-equal.subx.html#L194'>check-stream-equal</a> <a href='../064write-byte.subx.html#L286'>_test-output-stream</a> <span class="Constant">&quot;== abcd 0x1 \n&quot;</span> <span class="Constant">&quot;F - test-subx-braces-passes-most-words-through&quot;</span>)
 <span id="L279" class="LineNr">279 </span>    <span class="subxS1Comment"># . epilogue</span>
 <span id="L280" class="LineNr">280 </span>    89/&lt;- %esp 5/r32/ebp
@@ -362,7 +362,7 @@ if ('onhashchange' in window) {
 <span id="L307" class="LineNr">307 </span>    (<a href='braces.subx.html#L78'>subx-braces</a> <a href='../061read-byte.subx.html#L313'>_test-input-buffered-file</a> <a href='../064write-byte.subx.html#L360'>_test-output-buffered-file</a>)
 <span id="L308" class="LineNr">308 </span>    <span class="subxComment"># check that the line just passed through</span>
 <span id="L309" class="LineNr">309 </span>    (<a href='../064write-byte.subx.html#L81'>flush</a> <a href='../064write-byte.subx.html#L360'>_test-output-buffered-file</a>)
-<span id="L310" class="Folded">310 </span><span class="Folded">+--  5 lines: #?     # dump _test-output-stream --------------------------------------------------------------------------------------------------------------</span>
+<span id="L310" class="Folded">310 </span><span class="Folded">+--  5 lines: #?     # dump _test-output-stream -----------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L315" class="LineNr">315 </span>    (<a href='../058stream-equal.subx.html#L194'>check-stream-equal</a> <a href='../064write-byte.subx.html#L286'>_test-output-stream</a> <span class="Constant">&quot;_loop0x00000001:\nab _break0x00000001/imm32 \ncd _loop0x00000001/imm32 \n_break0x00000001:\n&quot;</span> <span class="Constant">&quot;F - test-subx-braces-1&quot;</span>)
 <span id="L316" class="LineNr">316 </span>    <span class="subxS1Comment"># . epilogue</span>
 <span id="L317" class="LineNr">317 </span>    89/&lt;- %esp 5/r32/ebp
@@ -399,7 +399,7 @@ if ('onhashchange' in window) {
 <span id="L348" class="LineNr">348 </span>    (<a href='braces.subx.html#L78'>subx-braces</a> <a href='../061read-byte.subx.html#L313'>_test-input-buffered-file</a> <a href='../064write-byte.subx.html#L360'>_test-output-buffered-file</a>)
 <span id="L349" class="LineNr">349 </span>    <span class="subxComment"># check that the line just passed through</span>
 <span id="L350" class="LineNr">350 </span>    (<a href='../064write-byte.subx.html#L81'>flush</a> <a href='../064write-byte.subx.html#L360'>_test-output-buffered-file</a>)
-<span id="L351" class="Folded">351 </span><span class="Folded">+--  5 lines: #?     # dump _test-output-stream --------------------------------------------------------------------------------------------------------------</span>
+<span id="L351" class="Folded">351 </span><span class="Folded">+--  5 lines: #?     # dump _test-output-stream -----------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L356" class="LineNr">356 </span>    (<a href='../058stream-equal.subx.html#L194'>check-stream-equal</a> <a href='../064write-byte.subx.html#L286'>_test-output-stream</a> <span class="Constant">&quot;_loop0x00000001:\n_loop0x00000002:\nab _break0x00000002/imm32 \n_break0x00000002:\ncd _loop0x00000001/imm32 \n_break0x00000001:\n&quot;</span> <span class="Constant">&quot;F - test-subx-braces-2&quot;</span>)
 <span id="L357" class="LineNr">357 </span>    <span class="subxS1Comment"># . epilogue</span>
 <span id="L358" class="LineNr">358 </span>    89/&lt;- %esp 5/r32/ebp
diff --git a/html/apps/calls.subx.html b/html/apps/calls.subx.html
index 50e2d54f..b90d00a6 100644
--- a/html/apps/calls.subx.html
+++ b/html/apps/calls.subx.html
@@ -333,7 +333,7 @@ if ('onhashchange' in window) {
 <span id="L272" class="LineNr"> 272 </span>    <span class="subxS1Comment"># . if (eax != false) break</span>
 <span id="L273" class="LineNr"> 273 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L274" class="LineNr"> 274 </span>    0f 85/jump-if-!= $parse-line:end/disp32
-<span id="L275" class="Folded"> 275 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L275" class="Folded"> 275 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice --------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L315" class="LineNr"> 315 </span><span class="Constant">$parse-line:write-word</span>:
 <span id="L316" class="LineNr"> 316 </span>    <span class="subxComment"># write-int(words, word-slice-&gt;start)</span>
 <span id="L317" class="LineNr"> 317 </span>    <span class="subxS2Comment"># . . push args</span>
@@ -690,7 +690,7 @@ if ('onhashchange' in window) {
 <span id="L668" class="LineNr"> 668 </span>    e8/call <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L669" class="LineNr"> 669 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L670" class="LineNr"> 670 </span>    81 0/subop/add %esp 4/imm32
-<span id="L671" class="Folded"> 671 </span><span class="Folded">+-- 33 lines: #?     # dump _test-output-stream --------------------------------------------------------------------------------------------------------------</span>
+<span id="L671" class="Folded"> 671 </span><span class="Folded">+-- 33 lines: #?     # dump _test-output-stream -----------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L704" class="LineNr"> 704 </span>    <span class="subxS1Comment"># . check-next-stream-line-equal(_test-output-stream, &quot;# . (foo %eax)&quot;, msg)</span>
 <span id="L705" class="LineNr"> 705 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L706" class="LineNr"> 706 </span>    68/push <span class="Constant">&quot;F - <a href='calls.subx.html#L614'>test-subx-calls-processes-calls</a>: comment&quot;</span>/imm32
diff --git a/html/apps/dquotes.subx.html b/html/apps/dquotes.subx.html
index 17242e74..43be5025 100644
--- a/html/apps/dquotes.subx.html
+++ b/html/apps/dquotes.subx.html
@@ -596,7 +596,7 @@ if ('onhashchange' in window) {
 <span id="L533" class="LineNr"> 533 </span>    <span class="subxComment">#   == data 0x2</span>
 <span id="L534" class="LineNr"> 534 </span>    <span class="subxComment">#   4 5/imm32</span>
 <span id="L535" class="LineNr"> 535 </span>    <span class="subxComment"># We don't care right now what exactly happens to comments. Trailing spaces are also minor details.</span>
-<span id="L536" class="Folded"> 536 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L536" class="Folded"> 536 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L562" class="LineNr"> 562 </span>    <span class="subxS1Comment"># . check-next-stream-line-equal(_test-output-stream, &quot;&quot;, msg)</span>
 <span id="L563" class="LineNr"> 563 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L564" class="LineNr"> 564 </span>    68/push  <span class="Constant">&quot;F - <a href='dquotes.subx.html#L395'>test-subx-dquotes-is-idempotent-by-default</a>/0&quot;</span>/imm32
@@ -773,7 +773,7 @@ if ('onhashchange' in window) {
 <span id="L735" class="LineNr"> 735 </span>    <span class="subxComment"># called. We just want to make sure instructions using string literals</span>
 <span id="L736" class="LineNr"> 736 </span>    <span class="subxComment"># switch to a string variable with the right value.</span>
 <span id="L737" class="LineNr"> 737 </span>    <span class="subxComment"># (Modifying string literals completely off the radar for now.)</span>
-<span id="L738" class="Folded"> 738 </span><span class="Folded">+-- 33 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L738" class="Folded"> 738 </span><span class="Folded">+-- 33 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L771" class="LineNr"> 771 </span>    <span class="subxS1Comment"># . check-next-stream-line-equal(_test-output-stream, &quot;== code 0x1 &quot;, msg)</span>
 <span id="L772" class="LineNr"> 772 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L773" class="LineNr"> 773 </span>    68/push  <span class="Constant">&quot;F - <a href='dquotes.subx.html#L648'>test-subx-dquotes-processes-string-literals</a>/0&quot;</span>/imm32
@@ -1087,7 +1087,7 @@ if ('onhashchange' in window) {
 <span id="L1081" class="LineNr">1081 </span>    e8/call  <a href='dquotes.subx.html#L849'>emit-string-literal-data</a>/disp32
 <span id="L1082" class="LineNr">1082 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1083" class="LineNr">1083 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L1084" class="Folded">1084 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1084" class="Folded">1084 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1110" class="LineNr">1110 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;3/imm32 61/a 62/b 63/c &quot;, msg)</span>
 <span id="L1111" class="LineNr">1111 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1112" class="LineNr">1112 </span>    68/push  <span class="Constant">&quot;F - test-emit-string-literal-data&quot;</span>/imm32
@@ -1126,7 +1126,7 @@ if ('onhashchange' in window) {
 <span id="L1145" class="LineNr">1145 </span>    e8/call  <a href='dquotes.subx.html#L849'>emit-string-literal-data</a>/disp32
 <span id="L1146" class="LineNr">1146 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1147" class="LineNr">1147 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L1148" class="Folded">1148 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1148" class="Folded">1148 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1174" class="LineNr">1174 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;0/imm32 &quot;, msg)</span>
 <span id="L1175" class="LineNr">1175 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1176" class="LineNr">1176 </span>    68/push  <span class="Constant">&quot;F - test-emit-string-literal-data-empty&quot;</span>/imm32
@@ -1166,7 +1166,7 @@ if ('onhashchange' in window) {
 <span id="L1210" class="LineNr">1210 </span>    e8/call  <a href='dquotes.subx.html#L849'>emit-string-literal-data</a>/disp32
 <span id="L1211" class="LineNr">1211 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1212" class="LineNr">1212 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L1213" class="Folded">1213 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1213" class="Folded">1213 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1239" class="LineNr">1239 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;3/imm32 61/a 20 62/b &quot;, msg)  # ideally we'd like to say '20/space' but that requires managing names for codepoints</span>
 <span id="L1240" class="LineNr">1240 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1241" class="LineNr">1241 </span>    68/push  <span class="Constant">&quot;F - test-emit-string-literal-data-no-metadata-for-non-alphanumerics&quot;</span>/imm32
@@ -1205,7 +1205,7 @@ if ('onhashchange' in window) {
 <span id="L1274" class="LineNr">1274 </span>    e8/call  <a href='dquotes.subx.html#L849'>emit-string-literal-data</a>/disp32
 <span id="L1275" class="LineNr">1275 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1276" class="LineNr">1276 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L1277" class="Folded">1277 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1277" class="Folded">1277 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1303" class="LineNr">1303 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;3/imm32 61/a 22 62/b &quot;, msg)</span>
 <span id="L1304" class="LineNr">1304 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1305" class="LineNr">1305 </span>    68/push  <span class="Constant">&quot;F - test-emit-string-literal-data-handles-escape-sequences&quot;</span>/imm32
@@ -1244,7 +1244,7 @@ if ('onhashchange' in window) {
 <span id="L1338" class="LineNr">1338 </span>    e8/call  <a href='dquotes.subx.html#L849'>emit-string-literal-data</a>/disp32
 <span id="L1339" class="LineNr">1339 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1340" class="LineNr">1340 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L1341" class="Folded">1341 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1341" class="Folded">1341 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1367" class="LineNr">1367 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;3/imm32 61/a 0a 62/b &quot;, msg)</span>
 <span id="L1368" class="LineNr">1368 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1369" class="LineNr">1369 </span>    68/push  <span class="Constant">&quot;F - test-emit-string-literal-data-handles-newline-escape&quot;</span>/imm32
@@ -1619,7 +1619,7 @@ if ('onhashchange' in window) {
 <span id="L1738" class="LineNr">1738 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L1739" class="LineNr">1739 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1740" class="LineNr">1740 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L1741" class="Folded">1741 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1741" class="Folded">1741 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1767" class="LineNr">1767 </span>    <span class="subxComment"># check-stream-equal(_test-output-stream, &quot;/ghi&quot;, msg)  # important that there's no leading space</span>
 <span id="L1768" class="LineNr">1768 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1769" class="LineNr">1769 </span>    68/push  <span class="Constant">&quot;F - test-emit-metadata-in-string-literal&quot;</span>/imm32
diff --git a/html/apps/ex1.mu.html b/html/apps/ex1.mu.html
index a404b378..b6b86a75 100644
--- a/html/apps/ex1.mu.html
+++ b/html/apps/ex1.mu.html
@@ -16,8 +16,9 @@ a { color:inherit; }
 * { font-size:12pt; font-size: 1em; }
 .LineNr { }
 .Comment { color: #005faf; }
-.Delimiter { color: #c000c0; }
+.Constant { color: #008787; }
 .Special { color: #ff6060; }
+.Delimiter { color: #c000c0; }
 .PreProc { color: #c000c0; }
 -->
 </style>
@@ -64,7 +65,7 @@ if ('onhashchange' in window) {
 <span id="L8" class="LineNr"> 8 </span><span class="Comment">#   $ echo $?</span>
 <span id="L9" class="LineNr"> 9 </span><span class="Comment">#   42</span>
 <span id="L10" class="LineNr">10 </span>
-<span id="L11" class="LineNr">11 </span><span class="PreProc">fn</span> <a href='../mu-init-test.subx.html#L7'>main</a><span class="PreProc"> -&gt; </span>result/ebx: int <span class="Delimiter">{</span>
+<span id="L11" class="LineNr">11 </span><span class="PreProc">fn</span> <a href='../mu-init-test.subx.html#L7'>main</a><span class="PreProc"> -&gt; </span>result/<span class="Constant">ebx</span>: int <span class="Delimiter">{</span>
 <span id="L12" class="LineNr">12 </span>  result <span class="Special">&lt;-</span> copy 0x2a  <span class="Comment"># Mu requires hexadecimal</span>
 <span id="L13" class="LineNr">13 </span><span class="Delimiter">}</span>
 </pre>
diff --git a/html/apps/ex10.subx.html b/html/apps/ex10.subx.html
index d12a00cf..a0a7fd11 100644
--- a/html/apps/ex10.subx.html
+++ b/html/apps/ex10.subx.html
@@ -103,7 +103,7 @@ if ('onhashchange' in window) {
 <span id="L44" class="LineNr">44 </span>    bb/copy-to-ebx  0/imm32
 <span id="L45" class="LineNr">45 </span>    8a/copy-byte                    0/mod/indirect  2/rm32/edx   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          3/r32/BL   <span class="Normal"> . </span>             <span class="Normal"> . </span>                <span class="subxComment"># copy byte at *edx to BL</span>
 <span id="L46" class="LineNr">46 </span>    <span class="subxComment"># if (c1 == 0) break</span>
-<span id="L47" class="LineNr">47 </span>    3d/compare-eax-and  0/imm32
+<span id="L47" class="LineNr">47 </span>    3d/compare-eax-and  0/imm32/null
 <span id="L48" class="LineNr">48 </span>    74/jump-if-=  $argv-equal:<span class="Constant">break</span>/disp8
 <span id="L49" class="LineNr">49 </span>    <span class="subxComment"># if (c1 != c2) return false</span>
 <span id="L50" class="LineNr">50 </span>    39/compare                      3/mod/direct    0/rm32/eax   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          3/r32/ebx  <span class="Normal"> . </span>             <span class="Normal"> . </span>                <span class="subxComment"># compare eax and ebx</span>
@@ -115,7 +115,7 @@ if ('onhashchange' in window) {
 <span id="L56" class="LineNr">56 </span>    eb/jump  $argv-equal:<span class="Constant">loop</span>/disp8
 <span id="L57" class="LineNr">57 </span><span class="Constant">$argv-equal:break</span>:
 <span id="L58" class="LineNr">58 </span>    <span class="subxComment"># if (c2 == 0) return true</span>
-<span id="L59" class="LineNr">59 </span>    81          7/subop/compare     3/mod/direct    3/rm32/ebx   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              0/imm32           <span class="subxComment"># compare ebx</span>
+<span id="L59" class="LineNr">59 </span>    81          7/subop/compare     3/mod/direct    3/rm32/ebx   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              0/imm32/null      <span class="subxComment"># compare ebx</span>
 <span id="L60" class="LineNr">60 </span>    75/jump-if-!=  $argv-equal:false/disp8
 <span id="L61" class="LineNr">61 </span><span class="Constant">$argv-equal:success</span>:
 <span id="L62" class="LineNr">62 </span>    b8/copy-to-eax  1/imm32
diff --git a/html/apps/ex11.subx.html b/html/apps/ex11.subx.html
index ca69cdaa..199ffcff 100644
--- a/html/apps/ex11.subx.html
+++ b/html/apps/ex11.subx.html
@@ -141,7 +141,7 @@ if ('onhashchange' in window) {
 <span id="L79" class="LineNr"> 79 </span>    <span class="subxComment"># c2 = *s2</span>
 <span id="L80" class="LineNr"> 80 </span>    8a/copy-byte                    0/mod/indirect  6/rm32/esi   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          3/r32/BL   <span class="Normal"> . </span>             <span class="Normal"> . </span>                <span class="subxComment"># copy byte at *esi to BL</span>
 <span id="L81" class="LineNr"> 81 </span>    <span class="subxComment"># if (c1 == 0) return false</span>
-<span id="L82" class="LineNr"> 82 </span>    3d/compare-eax-and  0/imm32
+<span id="L82" class="LineNr"> 82 </span>    3d/compare-eax-and  0/imm32/null
 <span id="L83" class="LineNr"> 83 </span>    74/jump-if-=  $kernel-string-equal?:false/disp8
 <span id="L84" class="LineNr"> 84 </span>    <span class="subxComment"># if (c1 != c2) return false</span>
 <span id="L85" class="LineNr"> 85 </span>    39/compare                      3/mod/direct    0/rm32/eax   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          3/r32/ebx  <span class="Normal"> . </span>             <span class="Normal"> . </span>                <span class="subxComment"># compare eax and ebx</span>
@@ -156,7 +156,7 @@ if ('onhashchange' in window) {
 <span id="L94" class="LineNr"> 94 </span><span class="Constant">$kernel-string-equal?:break</span>:
 <span id="L95" class="LineNr"> 95 </span>    <span class="subxComment"># return *s1 == 0</span>
 <span id="L96" class="LineNr"> 96 </span>    8a/copy-byte                    0/mod/indirect  7/rm32/edi   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          0/r32/AL   <span class="Normal"> . </span>             <span class="Normal"> . </span>                <span class="subxComment"># copy byte at *edi to AL</span>
-<span id="L97" class="LineNr"> 97 </span>    3d/compare-eax-and  0/imm32
+<span id="L97" class="LineNr"> 97 </span>    3d/compare-eax-and  0/imm32/null
 <span id="L98" class="LineNr"> 98 </span>    75/jump-if-!=  $kernel-string-equal?:false/disp8
 <span id="L99" class="LineNr"> 99 </span><span class="Constant">$kernel-string-equal?:true</span>:
 <span id="L100" class="LineNr">100 </span>    b8/copy-to-eax  1/imm32
diff --git a/html/apps/ex2.2.mu.html b/html/apps/ex2.2.mu.html
index 4d51bb54..711774a2 100644
--- a/html/apps/ex2.2.mu.html
+++ b/html/apps/ex2.2.mu.html
@@ -15,9 +15,9 @@ body { font-size:12pt; font-family: monospace; color: #000000; background-color:
 a { color:inherit; }
 * { font-size:12pt; font-size: 1em; }
 .LineNr { }
-.Delimiter { color: #c000c0; }
-.Special { color: #ff6060; }
 .Constant { color: #008787; }
+.Special { color: #ff6060; }
+.Delimiter { color: #c000c0; }
 .PreProc { color: #c000c0; }
 -->
 </style>
@@ -54,11 +54,11 @@ if ('onhashchange' in window) {
 <body onload='JumpToLine();'>
 <a href='https://github.com/akkartik/mu/blob/master/apps/ex2.2.mu'>https://github.com/akkartik/mu/blob/master/apps/ex2.2.mu</a>
 <pre id='vimCodeElement'>
-<span id="L1" class="LineNr"> 1 </span><span class="PreProc">fn</span> <a href='../mu-init-test.subx.html#L7'>main</a><span class="PreProc"> -&gt; </span>result/ebx: int <span class="Delimiter">{</span>
+<span id="L1" class="LineNr"> 1 </span><span class="PreProc">fn</span> <a href='../mu-init-test.subx.html#L7'>main</a><span class="PreProc"> -&gt; </span>result/<span class="Constant">ebx</span>: int <span class="Delimiter">{</span>
 <span id="L2" class="LineNr"> 2 </span>  result <span class="Special">&lt;-</span> foo
 <span id="L3" class="LineNr"> 3 </span><span class="Delimiter">}</span>
 <span id="L4" class="LineNr"> 4 </span>
-<span id="L5" class="LineNr"> 5 </span><span class="PreProc">fn</span> foo<span class="PreProc"> -&gt; </span>result/ebx: int <span class="Delimiter">{</span>
+<span id="L5" class="LineNr"> 5 </span><span class="PreProc">fn</span> foo<span class="PreProc"> -&gt; </span>result/<span class="Constant">ebx</span>: int <span class="Delimiter">{</span>
 <span id="L6" class="LineNr"> 6 </span>  var n: int
 <span id="L7" class="LineNr"> 7 </span>  copy-to n,<span class="Constant"> 3</span>
 <span id="L8" class="LineNr"> 8 </span>  increment n
diff --git a/html/apps/ex2.mu.html b/html/apps/ex2.mu.html
index 94429de0..38bb9d76 100644
--- a/html/apps/ex2.mu.html
+++ b/html/apps/ex2.mu.html
@@ -16,9 +16,9 @@ a { color:inherit; }
 * { font-size:12pt; font-size: 1em; }
 .LineNr { }
 .Comment { color: #005faf; }
-.Delimiter { color: #c000c0; }
-.Special { color: #ff6060; }
 .Constant { color: #008787; }
+.Special { color: #ff6060; }
+.Delimiter { color: #c000c0; }
 .PreProc { color: #c000c0; }
 -->
 </style>
@@ -64,11 +64,11 @@ if ('onhashchange' in window) {
 <span id="L7" class="LineNr"> 7 </span><span class="Comment">#   $ echo $?</span>
 <span id="L8" class="LineNr"> 8 </span><span class="Comment">#   7</span>
 <span id="L9" class="LineNr"> 9 </span>
-<span id="L10" class="LineNr">10 </span><span class="PreProc">fn</span> <a href='../mu-init-test.subx.html#L7'>main</a><span class="PreProc"> -&gt; </span>result/ebx: int <span class="Delimiter">{</span>
+<span id="L10" class="LineNr">10 </span><span class="PreProc">fn</span> <a href='../mu-init-test.subx.html#L7'>main</a><span class="PreProc"> -&gt; </span>result/<span class="Constant">ebx</span>: int <span class="Delimiter">{</span>
 <span id="L11" class="LineNr">11 </span>  result <span class="Special">&lt;-</span> do-add<span class="Constant"> 3 4</span>
 <span id="L12" class="LineNr">12 </span><span class="Delimiter">}</span>
 <span id="L13" class="LineNr">13 </span>
-<span id="L14" class="LineNr">14 </span><span class="PreProc">fn</span> do-add a: int, b: int<span class="PreProc"> -&gt; </span>result/ebx: int <span class="Delimiter">{</span>
+<span id="L14" class="LineNr">14 </span><span class="PreProc">fn</span> do-add a: int, b: int<span class="PreProc"> -&gt; </span>result/<span class="Constant">ebx</span>: int <span class="Delimiter">{</span>
 <span id="L15" class="LineNr">15 </span>  result <span class="Special">&lt;-</span> copy a
 <span id="L16" class="LineNr">16 </span>  result <span class="Special">&lt;-</span> add b
 <span id="L17" class="LineNr">17 </span><span class="Delimiter">}</span>
diff --git a/html/apps/ex3.mu.html b/html/apps/ex3.mu.html
new file mode 100644
index 00000000..5b4a00e3
--- /dev/null
+++ b/html/apps/ex3.mu.html
@@ -0,0 +1,72 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html>
+<head>
+<meta http-equiv="content-type" content="text/html; charset=UTF-8">
+<title>Mu - apps/ex3.mu</title>
+<meta name="Generator" content="Vim/8.1">
+<meta name="plugin-version" content="vim8.1_v1">
+<meta name="syntax" content="none">
+<meta name="settings" content="number_lines,use_css,pre_wrap,no_foldcolumn,expand_tabs,line_ids,prevent_copy=">
+<meta name="colorscheme" content="minimal-light">
+<style type="text/css">
+<!--
+pre { white-space: pre-wrap; font-family: monospace; color: #000000; background-color: #c6c6c6; }
+body { font-size:12pt; font-family: monospace; color: #000000; background-color: #c6c6c6; }
+a { color:inherit; }
+* { font-size:12pt; font-size: 1em; }
+.LineNr { }
+.Constant { color: #008787; }
+.Special { color: #ff6060; }
+.Identifier { color: #af5f00; }
+.Delimiter { color: #c000c0; }
+.PreProc { color: #c000c0; }
+-->
+</style>
+
+<script type='text/javascript'>
+<!--
+
+/* function to open any folds containing a jumped-to line before jumping to it */
+function JumpToLine()
+{
+  var lineNum;
+  lineNum = window.location.hash;
+  lineNum = lineNum.substr(1); /* strip off '#' */
+
+  if (lineNum.indexOf('L') == -1) {
+    lineNum = 'L'+lineNum;
+  }
+  var lineElem = document.getElementById(lineNum);
+  /* Always jump to new location even if the line was hidden inside a fold, or
+   * we corrected the raw number to a line ID.
+   */
+  if (lineElem) {
+    lineElem.scrollIntoView(true);
+  }
+  return true;
+}
+if ('onhashchange' in window) {
+  window.onhashchange = JumpToLine;
+}
+
+-->
+</script>
+</head>
+<body onload='JumpToLine();'>
+<a href='https://github.com/akkartik/mu/blob/master/apps/ex3.mu'>https://github.com/akkartik/mu/blob/master/apps/ex3.mu</a>
+<pre id='vimCodeElement'>
+<span id="L1" class="LineNr"> 1 </span><span class="PreProc">fn</span> <a href='../mu-init-test.subx.html#L7'>main</a><span class="PreProc"> -&gt; </span>result/<span class="Constant">ebx</span>: int <span class="Delimiter">{</span>
+<span id="L2" class="LineNr"> 2 </span>  result <span class="Special">&lt;-</span> copy<span class="Constant"> 0</span>
+<span id="L3" class="LineNr"> 3 </span>  var i/<span class="Constant">eax</span>: int <span class="Special">&lt;-</span> copy<span class="Constant"> 1</span>
+<span id="L4" class="LineNr"> 4 </span>  <span class="Delimiter">{</span>
+<span id="L5" class="LineNr"> 5 </span>    compare i, 0xa
+<span id="L6" class="LineNr"> 6 </span>    break-if-&gt;
+<span id="L7" class="LineNr"> 7 </span>    result <span class="Special">&lt;-</span> add i
+<span id="L8" class="LineNr"> 8 </span>    i <span class="Special">&lt;-</span> increment
+<span id="L9" class="LineNr"> 9 </span>   <span class="Identifier"> loop</span>
+<span id="L10" class="LineNr">10 </span>  <span class="Delimiter">}</span>
+<span id="L11" class="LineNr">11 </span><span class="Delimiter">}</span>
+</pre>
+</body>
+</html>
+<!-- vim: set foldmethod=manual : -->
diff --git a/html/apps/ex8.subx.html b/html/apps/ex8.subx.html
index 4055c3f0..8cf64378 100644
--- a/html/apps/ex8.subx.html
+++ b/html/apps/ex8.subx.html
@@ -102,7 +102,7 @@ if ('onhashchange' in window) {
 <span id="L43" class="LineNr">43 </span>    <span class="subxComment"># var c/ecx = *s</span>
 <span id="L44" class="LineNr">44 </span>    8a/copy-byte                    0/mod/*         2/rm32/edx   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          1/r32/CL   <span class="Normal"> . </span>             <span class="Normal"> . </span>                <span class="subxComment"># copy byte at *edx to CL</span>
 <span id="L45" class="LineNr">45 </span>    <span class="subxComment"># if (c == '\0') break</span>
-<span id="L46" class="LineNr">46 </span>    81          7/subop/compare     3/mod/direct    1/rm32/ecx   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              0/imm32           <span class="subxComment"># compare ecx</span>
+<span id="L46" class="LineNr">46 </span>    81          7/subop/compare     3/mod/direct    1/rm32/ecx   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              0/imm32/null      <span class="subxComment"># compare ecx</span>
 <span id="L47" class="LineNr">47 </span>    74/jump-if-=  $ascii-length:end/disp8
 <span id="L48" class="LineNr">48 </span>    <span class="subxComment"># ++s</span>
 <span id="L49" class="LineNr">49 </span>    42/increment-edx
diff --git a/html/apps/factorial.mu.html b/html/apps/factorial.mu.html
index e9f25b90..ce28a765 100644
--- a/html/apps/factorial.mu.html
+++ b/html/apps/factorial.mu.html
@@ -14,10 +14,11 @@ pre { white-space: pre-wrap; font-family: monospace; color: #000000; background-
 body { font-size:12pt; font-family: monospace; color: #000000; background-color: #c6c6c6; }
 a { color:inherit; }
 * { font-size:12pt; font-size: 1em; }
+.CommentedCode { color: #8a8a8a; }
 .LineNr { }
-.Delimiter { color: #c000c0; }
-.Special { color: #ff6060; }
 .Constant { color: #008787; }
+.Special { color: #ff6060; }
+.Delimiter { color: #c000c0; }
 .PreProc { color: #c000c0; }
 -->
 </style>
@@ -54,25 +55,32 @@ if ('onhashchange' in window) {
 <body onload='JumpToLine();'>
 <a href='https://github.com/akkartik/mu/blob/master/apps/factorial.mu'>https://github.com/akkartik/mu/blob/master/apps/factorial.mu</a>
 <pre id='vimCodeElement'>
-<span id="L1" class="LineNr"> 1 </span><span class="PreProc">fn</span> <a href='../mu-init-test.subx.html#L7'>main</a><span class="PreProc"> -&gt; </span>result/ebx: int <span class="Delimiter">{</span>
-<span id="L2" class="LineNr"> 2 </span>  var tmp/eax: int <span class="Special">&lt;-</span> factorial<span class="Constant"> 5</span>
-<span id="L3" class="LineNr"> 3 </span>  result <span class="Special">&lt;-</span> copy tmp
-<span id="L4" class="LineNr"> 4 </span><span class="Delimiter">}</span>
-<span id="L5" class="LineNr"> 5 </span>
-<span id="L6" class="LineNr"> 6 </span><span class="PreProc">fn</span> factorial n: int<span class="PreProc"> -&gt; </span>result/eax: int <span class="Delimiter">{</span>
-<span id="L7" class="LineNr"> 7 </span>  compare n<span class="Constant"> 1</span>
-<span id="L8" class="LineNr"> 8 </span>  <span class="Delimiter">{</span>
-<span id="L9" class="LineNr"> 9 </span>    break-if<span class="PreProc">-&gt;</span>
-<span id="L10" class="LineNr">10 </span>    result <span class="Special">&lt;-</span> copy<span class="Constant"> 1</span>
-<span id="L11" class="LineNr">11 </span>  <span class="Delimiter">}</span>
-<span id="L12" class="LineNr">12 </span>  <span class="Delimiter">{</span>
-<span id="L13" class="LineNr">13 </span>    break-if-&lt;=
-<span id="L14" class="LineNr">14 </span>    var tmp/ecx: int <span class="Special">&lt;-</span> copy n
-<span id="L15" class="LineNr">15 </span>    tmp <span class="Special">&lt;-</span> decrement
-<span id="L16" class="LineNr">16 </span>    result <span class="Special">&lt;-</span> factorial tmp
-<span id="L17" class="LineNr">17 </span>    result <span class="Special">&lt;-</span> multiply n
-<span id="L18" class="LineNr">18 </span>  <span class="Delimiter">}</span>
-<span id="L19" class="LineNr">19 </span><span class="Delimiter">}</span>
+<span id="L1" class="LineNr"> 1 </span><span class="PreProc">fn</span> <a href='../mu-init-test.subx.html#L7'>main</a> args: (addr array kernel-string)<span class="PreProc"> -&gt; </span>exit-status/<span class="Constant">ebx</span>: int <span class="Delimiter">{</span>
+<span id="L2" class="LineNr"> 2 </span><span class="CommentedCode">#?   run-tests</span>
+<span id="L3" class="LineNr"> 3 </span><span class="CommentedCode">#?   result &lt;- copy 0</span>
+<span id="L4" class="LineNr"> 4 </span>  var tmp/<span class="Constant">eax</span>: int <span class="Special">&lt;-</span> factorial<span class="Constant"> 5</span>
+<span id="L5" class="LineNr"> 5 </span>  exit-status <span class="Special">&lt;-</span> copy tmp
+<span id="L6" class="LineNr"> 6 </span><span class="Delimiter">}</span>
+<span id="L7" class="LineNr"> 7 </span>
+<span id="L8" class="LineNr"> 8 </span><span class="PreProc">fn</span> factorial n: int<span class="PreProc"> -&gt; </span>result/<span class="Constant">eax</span>: int <span class="Delimiter">{</span>
+<span id="L9" class="LineNr"> 9 </span>  compare n<span class="Constant"> 1</span>
+<span id="L10" class="LineNr">10 </span>  <span class="Delimiter">{</span>
+<span id="L11" class="LineNr">11 </span>    break-if-&gt;
+<span id="L12" class="LineNr">12 </span>    result <span class="Special">&lt;-</span> copy<span class="Constant"> 1</span>
+<span id="L13" class="LineNr">13 </span>  <span class="Delimiter">}</span>
+<span id="L14" class="LineNr">14 </span>  <span class="Delimiter">{</span>
+<span id="L15" class="LineNr">15 </span>    break-if-&lt;=
+<span id="L16" class="LineNr">16 </span>    var tmp/<span class="Constant">ecx</span>: int <span class="Special">&lt;-</span> copy n
+<span id="L17" class="LineNr">17 </span>    tmp <span class="Special">&lt;-</span> decrement
+<span id="L18" class="LineNr">18 </span>    result <span class="Special">&lt;-</span> factorial tmp
+<span id="L19" class="LineNr">19 </span>    result <span class="Special">&lt;-</span> multiply n
+<span id="L20" class="LineNr">20 </span>  <span class="Delimiter">}</span>
+<span id="L21" class="LineNr">21 </span><span class="Delimiter">}</span>
+<span id="L22" class="LineNr">22 </span>
+<span id="L23" class="LineNr">23 </span><span class="PreProc">fn</span> test-factorial <span class="Delimiter">{</span>
+<span id="L24" class="LineNr">24 </span>  var result/<span class="Constant">eax</span>: int <span class="Special">&lt;-</span> factorial<span class="Constant"> 5</span>
+<span id="L25" class="LineNr">25 </span>  <a href='../051test.subx.html#L24'>check-ints-equal</a> result 0x78 <span class="Constant">&quot;F</span> - test-factorial&quot;
+<span id="L26" class="LineNr">26 </span><span class="Delimiter">}</span>
 </pre>
 </body>
 </html>
diff --git a/html/apps/hex.subx.html b/html/apps/hex.subx.html
index dc2e9b88..4018c82f 100644
--- a/html/apps/hex.subx.html
+++ b/html/apps/hex.subx.html
@@ -578,7 +578,7 @@ if ('onhashchange' in window) {
 <span id="L517" class="LineNr"> 517 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L518" class="LineNr"> 518 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
 <span id="L519" class="LineNr"> 519 </span>    <span class="subxS1Comment"># . compare with 'false'</span>
-<span id="L520" class="LineNr"> 520 </span>    3d/compare-with-eax  0/imm32
+<span id="L520" class="LineNr"> 520 </span>    3d/compare-with-eax  0/imm32/false
 <span id="L521" class="LineNr"> 521 </span>    <span class="subxS1Comment"># . restore eax (does not affect flags)</span>
 <span id="L522" class="LineNr"> 522 </span>    58/pop-to-eax
 <span id="L523" class="LineNr"> 523 </span>    <span class="subxS1Comment"># . check whether to return</span>
@@ -595,7 +595,7 @@ if ('onhashchange' in window) {
 <span id="L534" class="LineNr"> 534 </span>    74/jump-if-=  $scan-next-byte:<span class="Constant">loop</span>/disp8
 <span id="L535" class="LineNr"> 535 </span><span class="Constant">$scan-next-byte:check2</span>:
 <span id="L536" class="LineNr"> 536 </span>    <span class="subxComment"># if (eax == '#') skip-until-newline(in)</span>
-<span id="L537" class="LineNr"> 537 </span>    3d/compare-with-eax  0x23/imm32
+<span id="L537" class="LineNr"> 537 </span>    3d/compare-with-eax  0x23/imm32/hash
 <span id="L538" class="LineNr"> 538 </span>    75/jump-if-!=  $scan-next-byte:check3/disp8
 <span id="L539" class="LineNr"> 539 </span>    <span class="subxS1Comment"># . skip-until-newline(in)</span>
 <span id="L540" class="LineNr"> 540 </span>    <span class="subxS2Comment"># . . push args</span>
diff --git a/html/apps/mu.subx.html b/html/apps/mu.subx.html
index f443d400..183a015d 100644
--- a/html/apps/mu.subx.html
+++ b/html/apps/mu.subx.html
@@ -428,7 +428,7 @@ if ('onhashchange' in window) {
 <span id="L366" class="LineNr"> 366 </span>      7e/jump-if-&lt;= <span class="Constant">break</span>/disp8
 <span id="L367" class="LineNr"> 367 </span>      <span class="subxComment"># if (argv[1] != &quot;test&quot;) break</span>
 <span id="L368" class="LineNr"> 368 </span>      (<a href='../052kernel-string-equal.subx.html#L33'>kernel-string-equal?</a> *(ebp+8) <span class="Constant">&quot;test&quot;</span>)  <span class="subxComment"># =&gt; eax</span>
-<span id="L369" class="LineNr"> 369 </span>      3d/compare-eax-and 0/imm32
+<span id="L369" class="LineNr"> 369 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L370" class="LineNr"> 370 </span>      74/jump-if-= <span class="Constant">break</span>/disp8
 <span id="L371" class="LineNr"> 371 </span>      <span class="subxComment">#</span>
 <span id="L372" class="LineNr"> 372 </span>      (run-tests)
@@ -1549,7 +1549,7 @@ if ('onhashchange' in window) {
 <span id="L1602" class="LineNr">1602 </span>      (<a href='mu.subx.html#L2285'>next-mu-token</a> %ecx %edx)
 <span id="L1603" class="LineNr">1603 </span>      <span class="subxComment"># if slice-empty?(word-slice) continue</span>
 <span id="L1604" class="LineNr">1604 </span>      (<a href='../072slice.subx.html#L9'>slice-empty?</a> %edx)
-<span id="L1605" class="LineNr">1605 </span>      3d/compare-eax-and 0/imm32
+<span id="L1605" class="LineNr">1605 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L1606" class="LineNr">1606 </span>      0f 85/jump-if-!= <span class="Constant">loop</span>/disp32
 <span id="L1607" class="LineNr">1607 </span>      <span class="subxComment"># if (*word-slice-&gt;start == &quot;#&quot;) continue</span>
 <span id="L1608" class="LineNr">1608 </span>      <span class="subxS1Comment"># . eax = *word-slice-&gt;start</span>
@@ -1563,7 +1563,7 @@ if ('onhashchange' in window) {
 <span id="L1616" class="LineNr">1616 </span>      {
 <span id="L1617" class="LineNr">1617 </span><span class="Constant">$parse-mu:fn</span>:
 <span id="L1618" class="LineNr">1618 </span>        (<a href='../072slice.subx.html#L120'>slice-equal?</a> %edx <span class="Constant">&quot;fn&quot;</span>)
-<span id="L1619" class="LineNr">1619 </span>        3d/compare-eax-and 0/imm32
+<span id="L1619" class="LineNr">1619 </span>        3d/compare-eax-and 0/imm32/false
 <span id="L1620" class="LineNr">1620 </span>        0f 84/jump-if-= <span class="Constant">break</span>/disp32
 <span id="L1621" class="LineNr">1621 </span>        <span class="subxComment"># var new-function/eax: (handle function) = populate-mu-function(in, new-function, vars)</span>
 <span id="L1622" class="LineNr">1622 </span>        (<a href='../069allocate.subx.html#L59'>allocate</a> <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span> *<span class="SpecialChar"><a href='mu.subx.html#L260'>Function-size</a></span>)  <span class="subxComment"># =&gt; eax</span>
@@ -1684,15 +1684,15 @@ if ('onhashchange' in window) {
 <span id="L1737" class="LineNr">1737 </span>    <span class="subxComment"># TODO: error if name starts with 'break' or 'loop'</span>
 <span id="L1738" class="LineNr">1738 </span>    <span class="subxComment"># if (word-slice == '{') abort</span>
 <span id="L1739" class="LineNr">1739 </span>    (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;{&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
-<span id="L1740" class="LineNr">1740 </span>    3d/compare-eax-and 0/imm32
+<span id="L1740" class="LineNr">1740 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L1741" class="LineNr">1741 </span>    0f 85/jump-if-!= $populate-mu-function-header:error1/disp32
 <span id="L1742" class="LineNr">1742 </span>    <span class="subxComment"># if (word-slice == '-&gt;') abort</span>
 <span id="L1743" class="LineNr">1743 </span>    (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;-&gt;&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
-<span id="L1744" class="LineNr">1744 </span>    3d/compare-eax-and 0/imm32
+<span id="L1744" class="LineNr">1744 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L1745" class="LineNr">1745 </span>    0f 85/jump-if-!= $populate-mu-function-header:error1/disp32
 <span id="L1746" class="LineNr">1746 </span>    <span class="subxComment"># if (word-slice == '}') abort</span>
 <span id="L1747" class="LineNr">1747 </span>    (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;}&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
-<span id="L1748" class="LineNr">1748 </span>    3d/compare-eax-and 0/imm32
+<span id="L1748" class="LineNr">1748 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L1749" class="LineNr">1749 </span>    0f 85/jump-if-!= $populate-mu-function-header:error1/disp32
 <span id="L1750" class="LineNr">1750 </span>    <span class="subxComment"># save function name</span>
 <span id="L1751" class="LineNr">1751 </span>    (<a href='../072slice.subx.html#L1044'>slice-to-string</a> <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span> %ecx)  <span class="subxComment"># =&gt; eax</span>
@@ -1705,15 +1705,15 @@ if ('onhashchange' in window) {
 <span id="L1758" class="LineNr">1758 </span>      (<a href='mu.subx.html#L2285'>next-mu-token</a> *(ebp+8) %ecx)
 <span id="L1759" class="LineNr">1759 </span>      <span class="subxComment"># if (word-slice == '{') goto done</span>
 <span id="L1760" class="LineNr">1760 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;{&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
-<span id="L1761" class="LineNr">1761 </span>      3d/compare-eax-and 0/imm32
+<span id="L1761" class="LineNr">1761 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L1762" class="LineNr">1762 </span>      0f 85/jump-if-!= $populate-mu-function-header:done/disp32
 <span id="L1763" class="LineNr">1763 </span>      <span class="subxComment"># if (word-slice == '-&gt;') break</span>
 <span id="L1764" class="LineNr">1764 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;-&gt;&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
-<span id="L1765" class="LineNr">1765 </span>      3d/compare-eax-and 0/imm32
+<span id="L1765" class="LineNr">1765 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L1766" class="LineNr">1766 </span>      0f 85/jump-if-!= <span class="Constant">break</span>/disp32
 <span id="L1767" class="LineNr">1767 </span>      <span class="subxComment"># if (word-slice == '}') abort</span>
 <span id="L1768" class="LineNr">1768 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;}&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
-<span id="L1769" class="LineNr">1769 </span>      3d/compare-eax-and 0/imm32
+<span id="L1769" class="LineNr">1769 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L1770" class="LineNr">1770 </span>      0f 85/jump-if-!= $populate-mu-function-header:error1/disp32
 <span id="L1771" class="LineNr">1771 </span>      <span class="subxComment"># var v/ebx: (handle var) = parse-var-with-type(word-slice, first-line)</span>
 <span id="L1772" class="LineNr">1772 </span>      (<a href='mu.subx.html#L2033'>parse-var-with-type</a> %ecx *(ebp+8))  <span class="subxComment"># =&gt; eax</span>
@@ -1740,15 +1740,15 @@ if ('onhashchange' in window) {
 <span id="L1793" class="LineNr">1793 </span>      (<a href='mu.subx.html#L2285'>next-mu-token</a> *(ebp+8) %ecx)
 <span id="L1794" class="LineNr">1794 </span>      <span class="subxComment"># if (word-slice == '{') break</span>
 <span id="L1795" class="LineNr">1795 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;{&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
-<span id="L1796" class="LineNr">1796 </span>      3d/compare-eax-and 0/imm32
+<span id="L1796" class="LineNr">1796 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L1797" class="LineNr">1797 </span>      0f 85/jump-if-!= <span class="Constant">break</span>/disp32
 <span id="L1798" class="LineNr">1798 </span>      <span class="subxComment"># if (word-slice == '-&gt;') abort</span>
 <span id="L1799" class="LineNr">1799 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;-&gt;&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
-<span id="L1800" class="LineNr">1800 </span>      3d/compare-eax-and 0/imm32
+<span id="L1800" class="LineNr">1800 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L1801" class="LineNr">1801 </span>      0f 85/jump-if-!= $populate-mu-function-header:error1/disp32
 <span id="L1802" class="LineNr">1802 </span>      <span class="subxComment"># if (word-slice == '}') abort</span>
 <span id="L1803" class="LineNr">1803 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;}&quot;</span>)   <span class="subxComment"># =&gt; eax</span>
-<span id="L1804" class="LineNr">1804 </span>      3d/compare-eax-and 0/imm32
+<span id="L1804" class="LineNr">1804 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L1805" class="LineNr">1805 </span>      0f 85/jump-if-!= $populate-mu-function-header:error1/disp32
 <span id="L1806" class="LineNr">1806 </span>      <span class="subxComment">#</span>
 <span id="L1807" class="LineNr">1807 </span>      (<a href='mu.subx.html#L2033'>parse-var-with-type</a> %ecx *(ebp+8))  <span class="subxComment"># =&gt; eax</span>
@@ -2111,23 +2111,23 @@ if ('onhashchange' in window) {
 <span id="L2164" class="LineNr">2164 </span><span class="CommentedCode">#?     (flush Stderr)</span>
 <span id="L2165" class="LineNr">2165 </span>    <span class="subxComment"># assert s != &quot;&quot;</span>
 <span id="L2166" class="LineNr">2166 </span>    (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;&quot;</span>)
-<span id="L2167" class="LineNr">2167 </span>    3d/compare-eax-and 0/imm32
+<span id="L2167" class="LineNr">2167 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L2168" class="LineNr">2168 </span>    0f 85/jump-if-!= $parse-type:abort/disp32
 <span id="L2169" class="LineNr">2169 </span>    <span class="subxComment"># assert s != &quot;{&quot;</span>
 <span id="L2170" class="LineNr">2170 </span>    (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;{&quot;</span>)
-<span id="L2171" class="LineNr">2171 </span>    3d/compare-eax-and 0/imm32
+<span id="L2171" class="LineNr">2171 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L2172" class="LineNr">2172 </span>    0f 85/jump-if-!= $parse-type:abort/disp32
 <span id="L2173" class="LineNr">2173 </span>    <span class="subxComment"># assert s != &quot;}&quot;</span>
 <span id="L2174" class="LineNr">2174 </span>    (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;}&quot;</span>)
-<span id="L2175" class="LineNr">2175 </span>    3d/compare-eax-and 0/imm32
+<span id="L2175" class="LineNr">2175 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L2176" class="LineNr">2176 </span>    0f 85/jump-if-!= $parse-type:abort/disp32
 <span id="L2177" class="LineNr">2177 </span>    <span class="subxComment"># assert s != &quot;-&gt;&quot;</span>
 <span id="L2178" class="LineNr">2178 </span>    (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;-&gt;&quot;</span>)
-<span id="L2179" class="LineNr">2179 </span>    3d/compare-eax-and 0/imm32
+<span id="L2179" class="LineNr">2179 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L2180" class="LineNr">2180 </span>    0f 85/jump-if-!= $parse-type:abort/disp32
 <span id="L2181" class="LineNr">2181 </span>    <span class="subxComment"># if (s == &quot;)&quot;) return 0</span>
 <span id="L2182" class="LineNr">2182 </span>    (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;)&quot;</span>)
-<span id="L2183" class="LineNr">2183 </span>    3d/compare-eax-and 0/imm32
+<span id="L2183" class="LineNr">2183 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L2184" class="LineNr">2184 </span>    b8/copy-to-eax 0/imm32
 <span id="L2185" class="LineNr">2185 </span>    0f 85/jump-if-!= $parse-type:end/disp32
 <span id="L2186" class="LineNr">2186 </span>    <span class="subxComment"># var result/edx: (handle tree type-id)</span>
@@ -2137,7 +2137,7 @@ if ('onhashchange' in window) {
 <span id="L2190" class="LineNr">2190 </span>    {
 <span id="L2191" class="LineNr">2191 </span>      <span class="subxComment"># if (s != &quot;(&quot;) break</span>
 <span id="L2192" class="LineNr">2192 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;(&quot;</span>)
-<span id="L2193" class="LineNr">2193 </span>      3d/compare-eax-and 0/imm32
+<span id="L2193" class="LineNr">2193 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L2194" class="LineNr">2194 </span>      75/jump-if-!= <span class="Constant">break</span>/disp8
 <span id="L2195" class="LineNr">2195 </span>      <span class="subxComment"># result-&gt;left = pos-slice(Type-id, s)</span>
 <span id="L2196" class="LineNr">2196 </span>      (<a href='mu.subx.html#L2457'>pos-slice</a> <span class="SpecialChar"><a href='mu.subx.html#L2517'>Type-id</a></span> %ecx)
@@ -2434,7 +2434,7 @@ if ('onhashchange' in window) {
 <span id="L2487" class="LineNr">2487 </span>      73/jump-if-addr&gt;= $pos-slice:end/disp8
 <span id="L2488" class="LineNr">2488 </span>      <span class="subxComment"># if (slice-equal?(s, *curr)) break</span>
 <span id="L2489" class="LineNr">2489 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> *(ebp+0xc) *edx)  <span class="subxComment"># =&gt; eax</span>
-<span id="L2490" class="LineNr">2490 </span>      3d/compare-eax-and 0/imm32
+<span id="L2490" class="LineNr">2490 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L2491" class="LineNr">2491 </span>      75/jump-if-!= <span class="Constant">break</span>/disp8
 <span id="L2492" class="LineNr">2492 </span>      <span class="subxComment"># ++index</span>
 <span id="L2493" class="LineNr">2493 </span>      41/increment-ecx
@@ -2650,7 +2650,7 @@ if ('onhashchange' in window) {
 <span id="L2703" class="LineNr">2703 </span>    89/&lt;- %ebp 4/r32/esp
 <span id="L2704" class="LineNr">2704 </span>    <span class="subxComment"># if (slice-empty?(in)) return false</span>
 <span id="L2705" class="LineNr">2705 </span>    (<a href='../072slice.subx.html#L9'>slice-empty?</a> *(ebp+8))  <span class="subxComment"># =&gt; eax</span>
-<span id="L2706" class="LineNr">2706 </span>    3d/compare-eax-and 0/imm32
+<span id="L2706" class="LineNr">2706 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L2707" class="LineNr">2707 </span>    75/jump-if-!= $is-identifier?:false/disp8
 <span id="L2708" class="LineNr">2708 </span>    <span class="subxComment"># var c/eax: byte = *in-&gt;start</span>
 <span id="L2709" class="LineNr">2709 </span>    8b/-&gt; *(ebp+8) 0/r32/eax
@@ -3072,7 +3072,7 @@ if ('onhashchange' in window) {
 <span id="L3125" class="LineNr">3125 </span><span class="CommentedCode">#?       (flush Stderr)</span>
 <span id="L3126" class="LineNr">3126 </span>      <span class="subxComment"># if slice-empty?(word-slice) continue</span>
 <span id="L3127" class="LineNr">3127 </span>      (<a href='../072slice.subx.html#L9'>slice-empty?</a> %edx)
-<span id="L3128" class="LineNr">3128 </span>      3d/compare-eax-and 0/imm32
+<span id="L3128" class="LineNr">3128 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L3129" class="LineNr">3129 </span>      0f 85/jump-if-!= <span class="Constant">loop</span>/disp32
 <span id="L3130" class="LineNr">3130 </span>      <span class="subxComment"># if (slice-starts-with?(word-slice, '#') continue</span>
 <span id="L3131" class="LineNr">3131 </span>      <span class="subxS1Comment"># . eax = *word-slice-&gt;start</span>
@@ -3086,7 +3086,7 @@ if ('onhashchange' in window) {
 <span id="L3139" class="LineNr">3139 </span>      {
 <span id="L3140" class="LineNr">3140 </span><span class="Constant">$parse-mu-block:check-for-block</span>:
 <span id="L3141" class="LineNr">3141 </span>        (<a href='../072slice.subx.html#L120'>slice-equal?</a> %edx <span class="Constant">&quot;{&quot;</span>)
-<span id="L3142" class="LineNr">3142 </span>        3d/compare-eax-and 0/imm32
+<span id="L3142" class="LineNr">3142 </span>        3d/compare-eax-and 0/imm32/false
 <span id="L3143" class="LineNr">3143 </span>        74/jump-if-= <span class="Constant">break</span>/disp8
 <span id="L3144" class="LineNr">3144 </span>        (<a href='mu.subx.html#L3286'>check-no-tokens-left</a> %ecx)
 <span id="L3145" class="LineNr">3145 </span>        <span class="subxComment"># parse new block and append</span>
@@ -3097,7 +3097,7 @@ if ('onhashchange' in window) {
 <span id="L3150" class="LineNr">3150 </span>      <span class="subxComment"># if slice-equal?(word-slice, &quot;}&quot;) break</span>
 <span id="L3151" class="LineNr">3151 </span><span class="Constant">$parse-mu-block:check-for-end</span>:
 <span id="L3152" class="LineNr">3152 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %edx <span class="Constant">&quot;}&quot;</span>)
-<span id="L3153" class="LineNr">3153 </span>      3d/compare-eax-and 0/imm32
+<span id="L3153" class="LineNr">3153 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L3154" class="LineNr">3154 </span>      0f 85/jump-if-!= <span class="Constant">break</span>/disp32
 <span id="L3155" class="LineNr">3155 </span>      <span class="subxComment"># if slice-ends-with?(word-slice, &quot;:&quot;) parse named block and append</span>
 <span id="L3156" class="LineNr">3156 </span>      {
@@ -3123,7 +3123,7 @@ if ('onhashchange' in window) {
 <span id="L3176" class="LineNr">3176 </span>      {
 <span id="L3177" class="LineNr">3177 </span><span class="Constant">$parse-mu-block:check-for-var</span>:
 <span id="L3178" class="LineNr">3178 </span>        (<a href='../072slice.subx.html#L120'>slice-equal?</a> %edx <span class="Constant">&quot;var&quot;</span>)
-<span id="L3179" class="LineNr">3179 </span>        3d/compare-eax-and 0/imm32
+<span id="L3179" class="LineNr">3179 </span>        3d/compare-eax-and 0/imm32/false
 <span id="L3180" class="LineNr">3180 </span>        74/jump-if-= <span class="Constant">break</span>/disp8
 <span id="L3181" class="LineNr">3181 </span>        <span class="subxComment">#</span>
 <span id="L3182" class="LineNr">3182 </span>        (<a href='mu.subx.html#L3378'>parse-mu-var-def</a> %ecx *(ebp+0xc))  <span class="subxComment"># =&gt; eax</span>
@@ -3245,7 +3245,7 @@ if ('onhashchange' in window) {
 <span id="L3298" class="LineNr">3298 </span>    (<a href='mu.subx.html#L2285'>next-mu-token</a> *(ebp+8) %ecx)
 <span id="L3299" class="LineNr">3299 </span>    <span class="subxComment"># if slice-empty?(s) return</span>
 <span id="L3300" class="LineNr">3300 </span>    (<a href='../072slice.subx.html#L9'>slice-empty?</a> %ecx)
-<span id="L3301" class="LineNr">3301 </span>    3d/compare-eax-and 0/imm32
+<span id="L3301" class="LineNr">3301 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L3302" class="LineNr">3302 </span>    75/jump-if-!= $check-no-tokens-left:end/disp8
 <span id="L3303" class="LineNr">3303 </span>    <span class="subxComment"># if (slice-starts-with?(s, '#') return</span>
 <span id="L3304" class="LineNr">3304 </span>    <span class="subxS1Comment"># . eax = *s-&gt;start</span>
@@ -3363,7 +3363,7 @@ if ('onhashchange' in window) {
 <span id="L3416" class="LineNr">3416 </span>      <span class="subxComment"># ensure that the next word is '&lt;-'</span>
 <span id="L3417" class="LineNr">3417 </span>      (<a href='mu.subx.html#L2285'>next-mu-token</a> *(ebp+8) %ecx)
 <span id="L3418" class="LineNr">3418 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;&lt;-&quot;</span>)  <span class="subxComment"># =&gt; eax</span>
-<span id="L3419" class="LineNr">3419 </span>      3d/compare-eax-and 0/imm32
+<span id="L3419" class="LineNr">3419 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L3420" class="LineNr">3420 </span>      74/jump-if-= $parse-mu-var-def:abort/disp8
 <span id="L3421" class="LineNr">3421 </span>      <span class="subxComment">#</span>
 <span id="L3422" class="LineNr">3422 </span>      (<a href='mu.subx.html#L4197'>new-regvardef</a> <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span> %edx)  <span class="subxComment"># =&gt; eax</span>
@@ -3491,7 +3491,7 @@ if ('onhashchange' in window) {
 <span id="L3544" class="LineNr">3544 </span>    c7 0/subop/copy *edi 1/imm32/stmt1  <span class="subxComment"># Stmt-tag</span>
 <span id="L3545" class="LineNr">3545 </span>    {
 <span id="L3546" class="LineNr">3546 </span>      (<a href='mu.subx.html#L3667'>stmt-has-outputs?</a> *(ebp+8))
-<span id="L3547" class="LineNr">3547 </span>      3d/compare-eax-and 0/imm32
+<span id="L3547" class="LineNr">3547 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L3548" class="LineNr">3548 </span>      0f 84/jump-if-= <span class="Constant">break</span>/disp32
 <span id="L3549" class="LineNr">3549 </span>      {
 <span id="L3550" class="LineNr">3550 </span><span class="Constant">$parse-mu-stmt:read-outputs</span>:
@@ -3499,15 +3499,15 @@ if ('onhashchange' in window) {
 <span id="L3552" class="LineNr">3552 </span>        (<a href='mu.subx.html#L2285'>next-mu-token</a> *(ebp+8) %ecx)
 <span id="L3553" class="LineNr">3553 </span>        <span class="subxComment"># if slice-empty?(word-slice) break</span>
 <span id="L3554" class="LineNr">3554 </span>        (<a href='../072slice.subx.html#L9'>slice-empty?</a> %ecx)
-<span id="L3555" class="LineNr">3555 </span>        3d/compare-eax-and 0/imm32
+<span id="L3555" class="LineNr">3555 </span>        3d/compare-eax-and 0/imm32/false
 <span id="L3556" class="LineNr">3556 </span>        0f 85/jump-if-!= <span class="Constant">break</span>/disp32
 <span id="L3557" class="LineNr">3557 </span>        <span class="subxComment"># if (name == &quot;&lt;-&quot;) break</span>
 <span id="L3558" class="LineNr">3558 </span>        (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;&lt;-&quot;</span>)
-<span id="L3559" class="LineNr">3559 </span>        3d/compare-eax-and 0/imm32
+<span id="L3559" class="LineNr">3559 </span>        3d/compare-eax-and 0/imm32/false
 <span id="L3560" class="LineNr">3560 </span>        75/jump-if-!= <span class="Constant">break</span>/disp8
 <span id="L3561" class="LineNr">3561 </span>        <span class="subxComment"># assert(is-identifier?(name))</span>
 <span id="L3562" class="LineNr">3562 </span>        (<a href='mu.subx.html#L2700'>is-identifier?</a> %ecx)
-<span id="L3563" class="LineNr">3563 </span>        3d/compare-eax-and 0/imm32
+<span id="L3563" class="LineNr">3563 </span>        3d/compare-eax-and 0/imm32/false
 <span id="L3564" class="LineNr">3564 </span>        0f 84/jump-if-= $parse-mu-stmt:abort/disp32
 <span id="L3565" class="LineNr">3565 </span>        <span class="subxComment">#</span>
 <span id="L3566" class="LineNr">3566 </span>        (<a href='mu.subx.html#L3866'>lookup-or-define-var</a> %ecx *(ebp+0xc) *(ebp+0x10))  <span class="subxComment"># =&gt; eax</span>
@@ -3573,11 +3573,11 @@ if ('onhashchange' in window) {
 <span id="L3626" class="LineNr">3626 </span>      (<a href='mu.subx.html#L2285'>next-mu-token</a> *(ebp+0xc) %ecx)
 <span id="L3627" class="LineNr">3627 </span>      <span class="subxComment"># if slice-empty?(word-slice) break</span>
 <span id="L3628" class="LineNr">3628 </span>      (<a href='../072slice.subx.html#L9'>slice-empty?</a> %ecx)  <span class="subxComment"># =&gt; eax</span>
-<span id="L3629" class="LineNr">3629 </span>      3d/compare-eax-and 0/imm32
+<span id="L3629" class="LineNr">3629 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L3630" class="LineNr">3630 </span>      0f 85/jump-if-!= <span class="Constant">break</span>/disp32
 <span id="L3631" class="LineNr">3631 </span>      <span class="subxComment"># if (name == &quot;&lt;-&quot;) abort</span>
 <span id="L3632" class="LineNr">3632 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;&lt;-&quot;</span>)
-<span id="L3633" class="LineNr">3633 </span>      3d/compare-eax-and 0/imm32
+<span id="L3633" class="LineNr">3633 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L3634" class="LineNr">3634 </span>      0f 85/jump-if-!= $add-operation-and-inputs-to-stmt:abort/disp32
 <span id="L3635" class="LineNr">3635 </span>      <span class="subxComment">#</span>
 <span id="L3636" class="LineNr">3636 </span>      (<a href='mu.subx.html#L3715'>lookup-var-or-literal</a> %ecx *(ebp+0x10))  <span class="subxComment"># =&gt; eax</span>
@@ -3628,7 +3628,7 @@ if ('onhashchange' in window) {
 <span id="L3681" class="LineNr">3681 </span>      (<a href='mu.subx.html#L2285'>next-mu-token</a> *(ebp+8) %ecx)
 <span id="L3682" class="LineNr">3682 </span>      <span class="subxComment"># if slice-empty?(word-slice) break</span>
 <span id="L3683" class="LineNr">3683 </span>      (<a href='../072slice.subx.html#L9'>slice-empty?</a> %ecx)
-<span id="L3684" class="LineNr">3684 </span>      3d/compare-eax-and 0/imm32
+<span id="L3684" class="LineNr">3684 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L3685" class="LineNr">3685 </span>      b8/copy-to-eax 0/imm32/false/result  <span class="subxComment"># restore result (if we're here it's still false)</span>
 <span id="L3686" class="LineNr">3686 </span>      0f 85/jump-if-!= <span class="Constant">break</span>/disp32
 <span id="L3687" class="LineNr">3687 </span>      <span class="subxComment"># if slice-starts-with?(word-slice, '#') break</span>
@@ -3642,7 +3642,7 @@ if ('onhashchange' in window) {
 <span id="L3695" class="LineNr">3695 </span>      0f 84/jump-if-= <span class="Constant">break</span>/disp32
 <span id="L3696" class="LineNr">3696 </span>      <span class="subxComment"># if slice-equal?(word-slice, '&lt;-') return true</span>
 <span id="L3697" class="LineNr">3697 </span>      (<a href='../072slice.subx.html#L120'>slice-equal?</a> %ecx <span class="Constant">&quot;&lt;-&quot;</span>)
-<span id="L3698" class="LineNr">3698 </span>      3d/compare-eax-and 0/imm32
+<span id="L3698" class="LineNr">3698 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L3699" class="LineNr">3699 </span>      74/jump-if-= <span class="Constant">loop</span>/disp8
 <span id="L3700" class="LineNr">3700 </span>      b8/copy-to-eax 1/imm32/true
 <span id="L3701" class="LineNr">3701 </span>    }
@@ -3670,7 +3670,7 @@ if ('onhashchange' in window) {
 <span id="L3723" class="LineNr">3723 </span>    8b/-&gt; *(ebp+8) 6/r32/esi
 <span id="L3724" class="LineNr">3724 </span>    <span class="subxComment"># if slice-empty?(name) abort</span>
 <span id="L3725" class="LineNr">3725 </span>    (<a href='../072slice.subx.html#L9'>slice-empty?</a> %esi)  <span class="subxComment"># =&gt; eax</span>
-<span id="L3726" class="LineNr">3726 </span>    3d/compare-eax-and 0/imm32
+<span id="L3726" class="LineNr">3726 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L3727" class="LineNr">3727 </span>    0f 85/jump-if-!= $lookup-var-or-literal:abort/disp32
 <span id="L3728" class="LineNr">3728 </span>    <span class="subxComment"># var c/ecx: byte = *name-&gt;start</span>
 <span id="L3729" class="LineNr">3729 </span>    8b/-&gt; *esi 1/r32/ecx
@@ -3679,7 +3679,7 @@ if ('onhashchange' in window) {
 <span id="L3732" class="LineNr">3732 </span>    <span class="subxComment"># if is-decimal-digit?(c) return new var(name)</span>
 <span id="L3733" class="LineNr">3733 </span>    {
 <span id="L3734" class="LineNr">3734 </span>      (<a href='../075print-int-decimal.subx.html#L307'>is-decimal-digit?</a> %ecx)  <span class="subxComment"># =&gt; eax</span>
-<span id="L3735" class="LineNr">3735 </span>      81 7/subop/compare %eax 0/imm32
+<span id="L3735" class="LineNr">3735 </span>      81 7/subop/compare %eax 0/imm32/false
 <span id="L3736" class="LineNr">3736 </span>      74/jump-if-= <span class="Constant">break</span>/disp8
 <span id="L3737" class="LineNr">3737 </span>      (<a href='mu.subx.html#L4057'>new-literal-integer</a> <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span> %esi)  <span class="subxComment"># =&gt; eax</span>
 <span id="L3738" class="LineNr">3738 </span>      eb/jump $lookup-var-or-literal:end/disp8
@@ -3781,7 +3781,7 @@ if ('onhashchange' in window) {
 <span id="L3834" class="LineNr">3834 </span>      8b/-&gt; *ebx 0/r32/eax
 <span id="L3835" class="LineNr">3835 </span>      <span class="subxComment"># if (v-&gt;name == name) return v</span>
 <span id="L3836" class="LineNr">3836 </span>      (<a href='../054string-equal.subx.html#L16'>string-equal?</a> *eax *(ebp+8))  <span class="subxComment"># Var-name</span>
-<span id="L3837" class="LineNr">3837 </span>      3d/compare-eax-and 0/imm32
+<span id="L3837" class="LineNr">3837 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L3838" class="LineNr">3838 </span>      8b/-&gt; *ebx 0/r32/eax
 <span id="L3839" class="LineNr">3839 </span>      75/jump-if-!= <span class="Constant">break</span>/disp8
 <span id="L3840" class="LineNr">3840 </span>      <span class="subxComment"># curr -= 4</span>
@@ -3859,7 +3859,7 @@ if ('onhashchange' in window) {
 <span id="L3912" class="LineNr">3912 </span>      <span class="subxComment"># if (curr-&gt;name == name) return curr</span>
 <span id="L3913" class="LineNr">3913 </span>      50/push-eax
 <span id="L3914" class="LineNr">3914 </span>      (<a href='../054string-equal.subx.html#L16'>string-equal?</a> *eax *(ebp+0xc))
-<span id="L3915" class="LineNr">3915 </span>      3d/compare-eax-and 0/imm32
+<span id="L3915" class="LineNr">3915 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L3916" class="LineNr">3916 </span>      58/pop-to-eax
 <span id="L3917" class="LineNr">3917 </span>      75/jump-if-!= $find-in-function-outputs:end/disp8
 <span id="L3918" class="LineNr">3918 </span>      <span class="subxComment"># curr = curr-&gt;next</span>
@@ -4009,7 +4009,7 @@ if ('onhashchange' in window) {
 <span id="L4062" class="LineNr">4062 </span>    51/push-ecx
 <span id="L4063" class="LineNr">4063 </span>    <span class="subxComment"># if (!is-hex-int?(name)) abort</span>
 <span id="L4064" class="LineNr">4064 </span>    (<a href='../067parse-hex.subx.html#L9'>is-hex-int?</a> *(ebp+0xc))  <span class="subxComment"># =&gt; eax</span>
-<span id="L4065" class="LineNr">4065 </span>    3d/compare-eax-and 0/imm32
+<span id="L4065" class="LineNr">4065 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L4066" class="LineNr">4066 </span>    0f 84/jump-if-= $new-literal-integer:abort/disp32
 <span id="L4067" class="LineNr">4067 </span>    <span class="subxComment"># var s/ecx: (addr array byte)</span>
 <span id="L4068" class="LineNr">4068 </span>    (<a href='../072slice.subx.html#L1044'>slice-to-string</a> <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span> *(ebp+0xc))  <span class="subxComment"># =&gt; eax</span>
@@ -4413,7 +4413,7 @@ if ('onhashchange' in window) {
 <span id="L4466" class="LineNr">4466 </span><span class="Constant">$emit-subx-stmt-list:stmt1</span>:
 <span id="L4467" class="LineNr">4467 </span>        {
 <span id="L4468" class="LineNr">4468 </span>          (<a href='mu.subx.html#L4650'>is-mu-branch?</a> %ecx)  <span class="subxComment"># =&gt; eax</span>
-<span id="L4469" class="LineNr">4469 </span>          3d/compare-eax-and 0/imm32
+<span id="L4469" class="LineNr">4469 </span>          3d/compare-eax-and 0/imm32/false
 <span id="L4470" class="LineNr">4470 </span>          0f 84/jump-if-= <span class="Constant">break</span>/disp32
 <span id="L4471" class="LineNr">4471 </span><span class="Constant">$emit-subx-stmt-list:branch-stmt</span>:
 <span id="L4472" class="LineNr">4472 </span>          <span class="subxComment"># if !var-seen? break</span>
@@ -4502,7 +4502,7 @@ if ('onhashchange' in window) {
 <span id="L4657" class="LineNr">4657 </span>    8b/-&gt; *(ebp+8) 1/r32/ecx
 <span id="L4658" class="LineNr">4658 </span>    <span class="subxComment"># if (stmt-&gt;operation starts with &quot;loop&quot;) return true</span>
 <span id="L4659" class="LineNr">4659 </span>    (<a href='../054string-equal.subx.html#L58'>string-starts-with?</a> *(ecx+4) <span class="Constant">&quot;loop&quot;</span>)  <span class="subxComment"># Stmt1-operation =&gt; eax</span>
-<span id="L4660" class="LineNr">4660 </span>    3d/compare-eax-and 0/imm32
+<span id="L4660" class="LineNr">4660 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L4661" class="LineNr">4661 </span>    75/jump-if-not-equal $is-mu-branch?:end/disp8
 <span id="L4662" class="LineNr">4662 </span>    <span class="subxComment"># otherwise return (stmt-&gt;operation starts with &quot;break&quot;)</span>
 <span id="L4663" class="LineNr">4663 </span>    (<a href='../054string-equal.subx.html#L58'>string-starts-with?</a> *(ecx+4) <span class="Constant">&quot;break&quot;</span>)  <span class="subxComment"># Stmt1-operation =&gt; eax</span>
@@ -4739,7 +4739,7 @@ if ('onhashchange' in window) {
 <span id="L4894" class="LineNr">4894 </span>      8b/-&gt; *edx 3/r32/ebx
 <span id="L4895" class="LineNr">4895 </span>      <span class="subxComment"># if (v-&gt;name == until-block-label) break</span>
 <span id="L4896" class="LineNr">4896 </span>      (<a href='../054string-equal.subx.html#L16'>string-equal?</a> *ebx *(ebp+0x10))  <span class="subxComment"># =&gt; eax</span>
-<span id="L4897" class="LineNr">4897 </span>      3d/compare-eax-and 0/imm32
+<span id="L4897" class="LineNr">4897 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L4898" class="LineNr">4898 </span>      0f 85/jump-if-!= <span class="Constant">break</span>/disp32
 <span id="L4899" class="LineNr">4899 </span>      <span class="subxComment"># if v is in a register</span>
 <span id="L4900" class="LineNr">4900 </span>      81 7/subop/compare *(ebx+0x10) 0/imm32  <span class="subxComment"># Var-register</span>
@@ -6474,14 +6474,14 @@ if ('onhashchange' in window) {
 <span id="L6629" class="LineNr">6629 </span>    8b/-&gt; *(eax+4) 1/r32/ecx
 <span id="L6630" class="LineNr">6630 </span>    {
 <span id="L6631" class="LineNr">6631 </span>      (<a href='../054string-equal.subx.html#L58'>string-starts-with?</a> %ecx <span class="Constant">&quot;break&quot;</span>)  <span class="subxComment"># =&gt; eax</span>
-<span id="L6632" class="LineNr">6632 </span>      3d/compare-eax-and 0/imm32
+<span id="L6632" class="LineNr">6632 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L6633" class="LineNr">6633 </span>      74/jump-if-= <span class="Constant">break</span>/disp8
 <span id="L6634" class="LineNr">6634 </span>      (<a href='../065write-buffered.subx.html#L8'>write-buffered</a> *(ebp+8) <span class="Constant">&quot;:break&quot;</span>)
 <span id="L6635" class="LineNr">6635 </span>    }
 <span id="L6636" class="LineNr">6636 </span>    <span class="subxComment"># hack: if instruction operation starts with &quot;loop&quot;, emit &quot;:loop&quot;</span>
 <span id="L6637" class="LineNr">6637 </span>    {
 <span id="L6638" class="LineNr">6638 </span>      (<a href='../054string-equal.subx.html#L58'>string-starts-with?</a> %ecx <span class="Constant">&quot;loop&quot;</span>)  <span class="subxComment"># =&gt; eax</span>
-<span id="L6639" class="LineNr">6639 </span>      3d/compare-eax-and 0/imm32
+<span id="L6639" class="LineNr">6639 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L6640" class="LineNr">6640 </span>      74/jump-if-= <span class="Constant">break</span>/disp8
 <span id="L6641" class="LineNr">6641 </span>      (<a href='../065write-buffered.subx.html#L8'>write-buffered</a> *(ebp+8) <span class="Constant">&quot;:loop&quot;</span>)
 <span id="L6642" class="LineNr">6642 </span>    }
@@ -6668,7 +6668,7 @@ if ('onhashchange' in window) {
 <span id="L6823" class="LineNr">6823 </span>      <span class="subxComment"># if match(stmt, curr) return curr</span>
 <span id="L6824" class="LineNr">6824 </span>      {
 <span id="L6825" class="LineNr">6825 </span>        (<a href='mu.subx.html#L6887'>mu-stmt-matches-function?</a> *(ebp+0xc) %ecx)  <span class="subxComment"># =&gt; eax</span>
-<span id="L6826" class="LineNr">6826 </span>        3d/compare-eax-and 0/imm32
+<span id="L6826" class="LineNr">6826 </span>        3d/compare-eax-and 0/imm32/false
 <span id="L6827" class="LineNr">6827 </span>        74/jump-if-= <span class="Constant">break</span>/disp8
 <span id="L6828" class="LineNr">6828 </span>        89/&lt;- %eax 1/r32/ecx
 <span id="L6829" class="LineNr">6829 </span>        eb/jump $find-matching-function:end/disp8
@@ -6709,7 +6709,7 @@ if ('onhashchange' in window) {
 <span id="L6864" class="LineNr">6864 </span>      <span class="subxComment"># if match(curr, stmt) return curr</span>
 <span id="L6865" class="LineNr">6865 </span>      {
 <span id="L6866" class="LineNr">6866 </span>        (<a href='mu.subx.html#L6905'>mu-stmt-matches-primitive?</a> *(ebp+0xc) %ecx)  <span class="subxComment"># =&gt; eax</span>
-<span id="L6867" class="LineNr">6867 </span>        3d/compare-eax-and 0/imm32
+<span id="L6867" class="LineNr">6867 </span>        3d/compare-eax-and 0/imm32/false
 <span id="L6868" class="LineNr">6868 </span>        74/jump-if-= <span class="Constant">break</span>/disp8
 <span id="L6869" class="LineNr">6869 </span>        89/&lt;- %eax 1/r32/ecx
 <span id="L6870" class="LineNr">6870 </span>        eb/jump $find-matching-primitive:end/disp8
@@ -6770,7 +6770,7 @@ if ('onhashchange' in window) {
 <span id="L6925" class="LineNr">6925 </span><span class="Constant">$mu-stmt-matches-primitive?:check-name</span>:
 <span id="L6926" class="LineNr">6926 </span>      <span class="subxComment"># if (primitive-&gt;name != stmt-&gt;operation) return false</span>
 <span id="L6927" class="LineNr">6927 </span>      (<a href='../054string-equal.subx.html#L16'>string-equal?</a> *(ecx+4) *edx)  <span class="subxComment"># Stmt1-operation, Primitive-name =&gt; eax</span>
-<span id="L6928" class="LineNr">6928 </span>      3d/compare-eax-and 0/imm32
+<span id="L6928" class="LineNr">6928 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L6929" class="LineNr">6929 </span>      75/jump-if-!= <span class="Constant">break</span>/disp8
 <span id="L6930" class="LineNr">6930 </span>      b8/copy-to-eax 0/imm32
 <span id="L6931" class="LineNr">6931 </span>      e9/jump $mu-stmt-matches-primitive?:end/disp32
@@ -6806,7 +6806,7 @@ if ('onhashchange' in window) {
 <span id="L6961" class="LineNr">6961 </span>      <span class="subxComment"># if (curr != curr2) return false</span>
 <span id="L6962" class="LineNr">6962 </span>      {
 <span id="L6963" class="LineNr">6963 </span>        (<a href='mu.subx.html#L7031'>operand-matches-primitive?</a> *esi *edi)  <span class="subxComment"># =&gt; eax</span>
-<span id="L6964" class="LineNr">6964 </span>        3d/compare-eax-and 0/imm32
+<span id="L6964" class="LineNr">6964 </span>        3d/compare-eax-and 0/imm32/false
 <span id="L6965" class="LineNr">6965 </span>        75/jump-if-!= <span class="Constant">break</span>/disp8
 <span id="L6966" class="LineNr">6966 </span>        b8/copy-to-eax 0/imm32/false
 <span id="L6967" class="LineNr">6967 </span>        e9/jump $mu-stmt-matches-primitive?:end/disp32
@@ -6848,7 +6848,7 @@ if ('onhashchange' in window) {
 <span id="L7003" class="LineNr">7003 </span>      <span class="subxComment"># if (curr != curr2) return false</span>
 <span id="L7004" class="LineNr">7004 </span>      {
 <span id="L7005" class="LineNr">7005 </span>        (<a href='mu.subx.html#L7031'>operand-matches-primitive?</a> *esi *edi)  <span class="subxComment"># List-value List-value =&gt; eax</span>
-<span id="L7006" class="LineNr">7006 </span>        3d/compare-eax-and 0/imm32
+<span id="L7006" class="LineNr">7006 </span>        3d/compare-eax-and 0/imm32/false
 <span id="L7007" class="LineNr">7007 </span>        75/jump-if-!= <span class="Constant">break</span>/disp8
 <span id="L7008" class="LineNr">7008 </span>        b8/copy-to-eax 0/imm32
 <span id="L7009" class="LineNr">7009 </span>        e9/jump $mu-stmt-matches-primitive?:end/disp32
@@ -6886,7 +6886,7 @@ if ('onhashchange' in window) {
 <span id="L7041" class="LineNr">7041 </span>    8b/-&gt; *(ebp+0xc) 7/r32/edi
 <span id="L7042" class="LineNr">7042 </span>    <span class="subxComment"># if (var-&gt;type != prim-var-&gt;type) return false</span>
 <span id="L7043" class="LineNr">7043 </span>    (<a href='mu.subx.html#L7080'>type-equal?</a> *(esi+4) *(edi+4))  <span class="subxComment"># Var-type, Var-type =&gt; eax</span>
-<span id="L7044" class="LineNr">7044 </span>    3d/compare-eax-and 0/imm32
+<span id="L7044" class="LineNr">7044 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L7045" class="LineNr">7045 </span>    b8/copy-to-eax 0/imm32/false
 <span id="L7046" class="LineNr">7046 </span>    74/jump-if-= $operand-matches-primitive?:end/disp8
 <span id="L7047" class="LineNr">7047 </span>    <span class="subxComment"># return false if var-&gt;register doesn't match prim-var-&gt;register</span>
@@ -6902,12 +6902,12 @@ if ('onhashchange' in window) {
 <span id="L7057" class="LineNr">7057 </span>      74/jump-if-=  $operand-matches-primitive?:end/disp8  <span class="subxComment"># eax goes from meaning var-&gt;register to result</span>
 <span id="L7058" class="LineNr">7058 </span>      <span class="subxComment"># if prim-var-&gt;register is &quot;*&quot;, return true</span>
 <span id="L7059" class="LineNr">7059 </span>      (<a href='../054string-equal.subx.html#L16'>string-equal?</a> *(edi+0x10) <span class="Constant">&quot;*&quot;</span>)  <span class="subxComment"># Var-register</span>
-<span id="L7060" class="LineNr">7060 </span>      3d/compare-eax-and 0/imm32
+<span id="L7060" class="LineNr">7060 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L7061" class="LineNr">7061 </span>      b8/copy-to-eax 1/imm32/true
 <span id="L7062" class="LineNr">7062 </span>      75/jump-if-!= $operand-matches-primitive?:end/disp8
 <span id="L7063" class="LineNr">7063 </span>      <span class="subxComment"># if string contents don't match, return false</span>
 <span id="L7064" class="LineNr">7064 </span>      (<a href='../054string-equal.subx.html#L16'>string-equal?</a> *(esi+0x10) *(edi+0x10))  <span class="subxComment"># Var-register Var-register</span>
-<span id="L7065" class="LineNr">7065 </span>      3d/compare-eax-and 0/imm32
+<span id="L7065" class="LineNr">7065 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L7066" class="LineNr">7066 </span>      b8/copy-to-eax 0/imm32/false
 <span id="L7067" class="LineNr">7067 </span>      74/jump-if-= $operand-matches-primitive?:end/disp8
 <span id="L7068" class="LineNr">7068 </span>    }
@@ -6948,7 +6948,7 @@ if ('onhashchange' in window) {
 <span id="L7103" class="LineNr">7103 </span>    72/jump-if-addr&lt; $type-equal?:end/disp8
 <span id="L7104" class="LineNr">7104 </span>    <span class="subxComment"># if (!type-equal?(a-&gt;left, b-&gt;left)) return false</span>
 <span id="L7105" class="LineNr">7105 </span>    (<a href='mu.subx.html#L7080'>type-equal?</a> *ecx *edx)  <span class="subxComment"># Tree-left, Tree-left =&gt; eax</span>
-<span id="L7106" class="LineNr">7106 </span>    3d/compare-eax-and 0/imm32
+<span id="L7106" class="LineNr">7106 </span>    3d/compare-eax-and 0/imm32/false
 <span id="L7107" class="LineNr">7107 </span>    74/jump-if-= $type-equal?:end/disp8
 <span id="L7108" class="LineNr">7108 </span>    <span class="subxComment"># return type-equal?(a-&gt;right, b-&gt;right)</span>
 <span id="L7109" class="LineNr">7109 </span>    (<a href='mu.subx.html#L7080'>type-equal?</a> *(ecx+4) *(edx+4))  <span class="subxComment"># Tree-right, Tree-right =&gt; eax</span>
diff --git a/html/apps/mulisp.subx.html b/html/apps/mulisp.subx.html
index 261a40f7..6efa3b01 100644
--- a/html/apps/mulisp.subx.html
+++ b/html/apps/mulisp.subx.html
@@ -79,7 +79,7 @@ if ('onhashchange' in window) {
 <span id="L21" class="LineNr"> 21 </span>      7e/jump-if-&lt;= <span class="Constant">break</span>/disp8
 <span id="L22" class="LineNr"> 22 </span>      <span class="subxComment"># if (argv[1] != &quot;test&quot;)) break</span>
 <span id="L23" class="LineNr"> 23 </span>      (<a href='../052kernel-string-equal.subx.html#L33'>kernel-string-equal?</a> *(ebp+8) <span class="Constant">&quot;test&quot;</span>)  <span class="subxComment"># =&gt; eax</span>
-<span id="L24" class="LineNr"> 24 </span>      3d/compare-eax-and 0/imm32
+<span id="L24" class="LineNr"> 24 </span>      3d/compare-eax-and 0/imm32/false
 <span id="L25" class="LineNr"> 25 </span>      74/jump-if-= <span class="Constant">break</span>/disp8
 <span id="L26" class="LineNr"> 26 </span>      <span class="subxComment">#</span>
 <span id="L27" class="LineNr"> 27 </span>      (run-tests)
diff --git a/html/apps/pack.subx.html b/html/apps/pack.subx.html
index 6cba91b4..f33af3e1 100644
--- a/html/apps/pack.subx.html
+++ b/html/apps/pack.subx.html
@@ -222,7 +222,7 @@ if ('onhashchange' in window) {
 <span id="L160" class="LineNr"> 160 </span>    <span class="subxComment"># if (line-&gt;write == 0) break</span>
 <span id="L161" class="LineNr"> 161 </span>    81          7/subop/compare     0/mod/indirect  1/rm32/ecx   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              0/imm32           <span class="subxComment"># compare *ecx</span>
 <span id="L162" class="LineNr"> 162 </span>    0f 84/jump-if-=  $subx-pack:<span class="Constant">break</span>/disp32
-<span id="L163" class="Folded"> 163 </span><span class="Folded">+-- 26 lines: #?     # dump line -----------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L163" class="Folded"> 163 </span><span class="Folded">+-- 26 lines: #?     # dump line --------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L189" class="LineNr"> 189 </span>    <span class="subxComment"># next-word(line, word-slice)</span>
 <span id="L190" class="LineNr"> 190 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L191" class="LineNr"> 191 </span>    52/push-edx
@@ -244,7 +244,7 @@ if ('onhashchange' in window) {
 <span id="L207" class="LineNr"> 207 </span>    3d/compare-eax-and  0/imm32/false
 <span id="L208" class="LineNr"> 208 </span>    0f 85/jump-if-!=  $subx-pack:pass-through/disp32
 <span id="L209" class="LineNr"> 209 </span><span class="Constant">$subx-pack:check2</span>:
-<span id="L210" class="Folded"> 210 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L210" class="Folded"> 210 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice --------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L250" class="LineNr"> 250 </span>    <span class="subxComment"># if (!slice-equal?(word-slice, &quot;==&quot;)) goto next check</span>
 <span id="L251" class="LineNr"> 251 </span>    <span class="subxS1Comment"># . eax = slice-equal?(word-slice, &quot;==&quot;)</span>
 <span id="L252" class="LineNr"> 252 </span>    <span class="subxS2Comment"># . . push args</span>
@@ -265,7 +265,7 @@ if ('onhashchange' in window) {
 <span id="L267" class="LineNr"> 267 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L268" class="LineNr"> 268 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L269" class="LineNr"> 269 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L270" class="Folded"> 270 </span><span class="Folded">+-- 40 lines: #?     # dump segment name ---------------------------------------------------------------------------------------------------------------------</span>
+<span id="L270" class="Folded"> 270 </span><span class="Folded">+-- 40 lines: #?     # dump segment name ------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L310" class="LineNr"> 310 </span>    <span class="subxComment"># in-code? = slice-equal?(word-slice, &quot;code&quot;)</span>
 <span id="L311" class="LineNr"> 311 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L312" class="LineNr"> 312 </span>    68/push  <span class="Constant">&quot;code&quot;</span>/imm32
@@ -626,7 +626,7 @@ if ('onhashchange' in window) {
 <span id="L667" class="LineNr"> 667 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L668" class="LineNr"> 668 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L669" class="LineNr"> 669 </span>    <span class="subxComment"># check output</span>
-<span id="L670" class="Folded"> 670 </span><span class="Folded">+-- 26 lines: #?     # debug print ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L670" class="Folded"> 670 </span><span class="Folded">+-- 26 lines: #?     # debug print ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L696" class="LineNr"> 696 </span>    <span class="subxS1Comment"># . flush(_test-output-buffered-file)</span>
 <span id="L697" class="LineNr"> 697 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L698" class="LineNr"> 698 </span>    68/push  <a href='../064write-byte.subx.html#L360'>_test-output-buffered-file</a>/imm32
@@ -760,7 +760,7 @@ if ('onhashchange' in window) {
 <span id="L826" class="LineNr"> 826 </span>    <span class="subxComment">#   68 20  # 68/push 0x20/imm8</span>
 <span id="L827" class="LineNr"> 827 </span>    <span class="subxComment">#   == data 0x2</span>
 <span id="L828" class="LineNr"> 828 </span>    <span class="subxComment">#   03 04 00 00 00</span>
-<span id="L829" class="Folded"> 829 </span><span class="Folded">+-- 26 lines: #?     # debug print ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L829" class="Folded"> 829 </span><span class="Folded">+-- 26 lines: #?     # debug print ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L855" class="LineNr"> 855 </span>    <span class="subxS1Comment"># . flush(_test-output-buffered-file)</span>
 <span id="L856" class="LineNr"> 856 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L857" class="LineNr"> 857 </span>    68/push  <a href='../064write-byte.subx.html#L360'>_test-output-buffered-file</a>/imm32
@@ -849,7 +849,7 @@ if ('onhashchange' in window) {
 <span id="L940" class="LineNr"> 940 </span>    68/push  0/imm32/end
 <span id="L941" class="LineNr"> 941 </span>    68/push  0/imm32/start
 <span id="L942" class="LineNr"> 942 </span>    89/copy                         3/mod/direct    1/rm32/ecx   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          4/r32/esp  <span class="Normal"> . </span>             <span class="Normal"> . </span>                <span class="subxComment"># copy esp to ecx</span>
-<span id="L943" class="Folded"> 943 </span><span class="Folded">+-- 26 lines: #?     # dump line -----------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L943" class="Folded"> 943 </span><span class="Folded">+-- 26 lines: #?     # dump line --------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L969" class="LineNr"> 969 </span><span class="Constant">$convert-data:loop</span>:
 <span id="L970" class="LineNr"> 970 </span>    <span class="subxComment"># next-word(line, word-slice)</span>
 <span id="L971" class="LineNr"> 971 </span>    <span class="subxS2Comment"># . . push args</span>
@@ -859,7 +859,7 @@ if ('onhashchange' in window) {
 <span id="L975" class="LineNr"> 975 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L976" class="LineNr"> 976 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L977" class="LineNr"> 977 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L978" class="Folded"> 978 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L978" class="Folded"> 978 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice --------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1018" class="LineNr">1018 </span><span class="Constant">$convert-data:check0</span>:
 <span id="L1019" class="LineNr">1019 </span>    <span class="subxComment"># if (slice-empty?(word-slice)) break</span>
 <span id="L1020" class="LineNr">1020 </span>    <span class="subxS1Comment"># . eax = slice-empty?(word-slice)</span>
@@ -1022,7 +1022,7 @@ if ('onhashchange' in window) {
 <span id="L1177" class="LineNr">1177 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L1178" class="LineNr">1178 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1179" class="LineNr">1179 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L1180" class="Folded">1180 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1180" class="Folded">1180 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1206" class="LineNr">1206 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;# abcd&quot;, msg)</span>
 <span id="L1207" class="LineNr">1207 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1208" class="LineNr">1208 </span>    68/push  <span class="Constant">&quot;F - test-convert-data-passes-comments-through&quot;</span>/imm32
@@ -1487,7 +1487,7 @@ if ('onhashchange' in window) {
 <span id="L1667" class="LineNr">1667 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L1668" class="LineNr">1668 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1669" class="LineNr">1669 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L1670" class="Folded">1670 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1670" class="Folded">1670 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1696" class="LineNr">1696 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;30 abcd/o 42 e1 00 00 \n&quot;, msg)</span>
 <span id="L1697" class="LineNr">1697 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1698" class="LineNr">1698 </span>    68/push  <span class="Constant">&quot;F - test-convert-data-multiple-words&quot;</span>/imm32
@@ -1554,7 +1554,7 @@ if ('onhashchange' in window) {
 <span id="L1759" class="LineNr">1759 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L1760" class="LineNr">1760 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1761" class="LineNr">1761 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L1762" class="Folded">1762 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1762" class="Folded">1762 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1788" class="LineNr">1788 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;30 00 00 00 # comment&quot;, msg)</span>
 <span id="L1789" class="LineNr">1789 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1790" class="LineNr">1790 </span>    68/push  <span class="Constant">&quot;F - test-convert-data-trailing-comment&quot;</span>/imm32
@@ -2074,7 +2074,7 @@ if ('onhashchange' in window) {
 <span id="L2304" class="LineNr">2304 </span>    e8/call  <a href='../055stream.subx.html#L54'>rewind-stream</a>/disp32
 <span id="L2305" class="LineNr">2305 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2306" class="LineNr">2306 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L2307" class="Folded">2307 </span><span class="Folded">+-- 33 lines: #?     # dump line -----------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L2307" class="Folded">2307 </span><span class="Folded">+-- 33 lines: #?     # dump line --------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L2340" class="LineNr">2340 </span><span class="Constant">$emit-modrm:loop</span>:
 <span id="L2341" class="LineNr">2341 </span>    <span class="subxComment"># next-word(line, word-slice)</span>
 <span id="L2342" class="LineNr">2342 </span>    <span class="subxS2Comment"># . . push args</span>
@@ -2084,7 +2084,7 @@ if ('onhashchange' in window) {
 <span id="L2346" class="LineNr">2346 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L2347" class="LineNr">2347 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2348" class="LineNr">2348 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L2349" class="Folded">2349 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L2349" class="Folded">2349 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice --------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L2389" class="LineNr">2389 </span><span class="Constant">$emit-modrm:check0</span>:
 <span id="L2390" class="LineNr">2390 </span>    <span class="subxComment"># if (slice-empty?(word-slice)) break</span>
 <span id="L2391" class="LineNr">2391 </span>    <span class="subxS1Comment"># . eax = slice-empty?(word-slice)</span>
@@ -2320,7 +2320,7 @@ if ('onhashchange' in window) {
 <span id="L2621" class="LineNr">2621 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2622" class="LineNr">2622 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
 <span id="L2623" class="LineNr">2623 </span><span class="Constant">$emit-sib:loop</span>:
-<span id="L2624" class="Folded">2624 </span><span class="Folded">+-- 26 lines: #?     # dump line -----------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L2624" class="Folded">2624 </span><span class="Folded">+-- 26 lines: #?     # dump line --------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L2650" class="LineNr">2650 </span>    <span class="subxComment"># next-word(line, word-slice)</span>
 <span id="L2651" class="LineNr">2651 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L2652" class="LineNr">2652 </span>    51/push-ecx
@@ -2329,7 +2329,7 @@ if ('onhashchange' in window) {
 <span id="L2655" class="LineNr">2655 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L2656" class="LineNr">2656 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2657" class="LineNr">2657 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L2658" class="Folded">2658 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L2658" class="Folded">2658 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice --------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L2698" class="LineNr">2698 </span><span class="Constant">$emit-sib:check0</span>:
 <span id="L2699" class="LineNr">2699 </span>    <span class="subxComment"># if (slice-empty?(word-slice)) break</span>
 <span id="L2700" class="LineNr">2700 </span>    <span class="subxS1Comment"># . eax = slice-empty?(word-slice)</span>
@@ -2518,7 +2518,7 @@ if ('onhashchange' in window) {
 <span id="L2883" class="LineNr">2883 </span>    e8/call  <a href='../055stream.subx.html#L54'>rewind-stream</a>/disp32
 <span id="L2884" class="LineNr">2884 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2885" class="LineNr">2885 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L2886" class="Folded">2886 </span><span class="Folded">+-- 26 lines: #?     # dump line -----------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L2886" class="Folded">2886 </span><span class="Folded">+-- 26 lines: #?     # dump line --------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L2912" class="LineNr">2912 </span><span class="Constant">$emit-disp:loop</span>:
 <span id="L2913" class="LineNr">2913 </span>    <span class="subxComment"># next-word(line, word-slice)</span>
 <span id="L2914" class="LineNr">2914 </span>    <span class="subxS2Comment"># . . push args</span>
@@ -2528,7 +2528,7 @@ if ('onhashchange' in window) {
 <span id="L2918" class="LineNr">2918 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L2919" class="LineNr">2919 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2920" class="LineNr">2920 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L2921" class="Folded">2921 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L2921" class="Folded">2921 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice --------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L2961" class="LineNr">2961 </span><span class="Constant">$emit-disp:check0</span>:
 <span id="L2962" class="LineNr">2962 </span>    <span class="subxComment"># if (slice-empty?(word-slice)) break</span>
 <span id="L2963" class="LineNr">2963 </span>    <span class="subxS1Comment"># . eax = slice-empty?(word-slice)</span>
@@ -2673,7 +2673,7 @@ if ('onhashchange' in window) {
 <span id="L3102" class="LineNr">3102 </span>    e8/call  <a href='../055stream.subx.html#L54'>rewind-stream</a>/disp32
 <span id="L3103" class="LineNr">3103 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3104" class="LineNr">3104 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L3105" class="Folded">3105 </span><span class="Folded">+-- 26 lines: #?     # dump line -----------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3105" class="Folded">3105 </span><span class="Folded">+-- 26 lines: #?     # dump line --------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3131" class="LineNr">3131 </span><span class="Constant">$emit-imm:loop</span>:
 <span id="L3132" class="LineNr">3132 </span>    <span class="subxComment"># next-word(line, word-slice)</span>
 <span id="L3133" class="LineNr">3133 </span>    <span class="subxS2Comment"># . . push args</span>
@@ -2683,7 +2683,7 @@ if ('onhashchange' in window) {
 <span id="L3137" class="LineNr">3137 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L3138" class="LineNr">3138 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3139" class="LineNr">3139 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L3140" class="Folded">3140 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3140" class="Folded">3140 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice --------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3180" class="LineNr">3180 </span><span class="Constant">$emit-imm:check0</span>:
 <span id="L3181" class="LineNr">3181 </span>    <span class="subxComment"># if (slice-empty?(word-slice)) break</span>
 <span id="L3182" class="LineNr">3182 </span>    <span class="subxS1Comment"># . eax = slice-empty?(word-slice)</span>
@@ -3002,7 +3002,7 @@ if ('onhashchange' in window) {
 <span id="L3495" class="LineNr">3495 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L3496" class="LineNr">3496 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3497" class="LineNr">3497 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L3498" class="Folded">3498 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3498" class="Folded">3498 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3524" class="LineNr">3524 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;ab  # ab/cd # comment&quot;, msg)</span>
 <span id="L3525" class="LineNr">3525 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3526" class="LineNr">3526 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-single-opcode&quot;</span>/imm32
@@ -3069,7 +3069,7 @@ if ('onhashchange' in window) {
 <span id="L3587" class="LineNr">3587 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L3588" class="LineNr">3588 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3589" class="LineNr">3589 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L3590" class="Folded">3590 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3590" class="Folded">3590 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3616" class="LineNr">3616 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;0f ab  # 0f/m1 ab/m2 # comment&quot;, msg)</span>
 <span id="L3617" class="LineNr">3617 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3618" class="LineNr">3618 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-0f-opcode&quot;</span>/imm32
@@ -3136,7 +3136,7 @@ if ('onhashchange' in window) {
 <span id="L3679" class="LineNr">3679 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L3680" class="LineNr">3680 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3681" class="LineNr">3681 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L3682" class="Folded">3682 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3682" class="Folded">3682 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3708" class="LineNr">3708 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;f2 ab  # f2/m1 ab/m2 # comment&quot;, msg)</span>
 <span id="L3709" class="LineNr">3709 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3710" class="LineNr">3710 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-f2-opcode&quot;</span>/imm32
@@ -3203,7 +3203,7 @@ if ('onhashchange' in window) {
 <span id="L3771" class="LineNr">3771 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L3772" class="LineNr">3772 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3773" class="LineNr">3773 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L3774" class="Folded">3774 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3774" class="Folded">3774 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3800" class="LineNr">3800 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;f3 ab  # f3/m1 ab/m2 # comment&quot;, msg)</span>
 <span id="L3801" class="LineNr">3801 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3802" class="LineNr">3802 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-f3-opcode&quot;</span>/imm32
@@ -3270,7 +3270,7 @@ if ('onhashchange' in window) {
 <span id="L3863" class="LineNr">3863 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L3864" class="LineNr">3864 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3865" class="LineNr">3865 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L3866" class="Folded">3866 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3866" class="Folded">3866 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3892" class="LineNr">3892 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;f2 0f ab  # f2/m1 0f/m2 ab/m3 # comment&quot;, msg)</span>
 <span id="L3893" class="LineNr">3893 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3894" class="LineNr">3894 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-f2-0f-opcode&quot;</span>/imm32
@@ -3337,7 +3337,7 @@ if ('onhashchange' in window) {
 <span id="L3955" class="LineNr">3955 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L3956" class="LineNr">3956 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3957" class="LineNr">3957 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L3958" class="Folded">3958 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3958" class="Folded">3958 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3984" class="LineNr">3984 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;f3 0f ab  # f3/m1 0f/m2 ab/m3 # comment&quot;, msg)</span>
 <span id="L3985" class="LineNr">3985 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3986" class="LineNr">3986 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-f3-0f-opcode&quot;</span>/imm32
@@ -3404,7 +3404,7 @@ if ('onhashchange' in window) {
 <span id="L4047" class="LineNr">4047 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L4048" class="LineNr">4048 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4049" class="LineNr">4049 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L4050" class="Folded">4050 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4050" class="Folded">4050 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4076" class="LineNr">4076 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;ab  # f3/m1 0f/m2 ab/m3 # comment&quot;, msg)</span>
 <span id="L4077" class="LineNr">4077 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4078" class="LineNr">4078 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-unused-opcodes&quot;</span>/imm32
@@ -3471,7 +3471,7 @@ if ('onhashchange' in window) {
 <span id="L4139" class="LineNr">4139 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L4140" class="LineNr">4140 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4141" class="LineNr">4141 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L4142" class="Folded">4142 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4142" class="Folded">4142 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4168" class="LineNr">4168 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;f2 ab  # f2/m1 ab/m2 cd/m3 # comment&quot;, msg)</span>
 <span id="L4169" class="LineNr">4169 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4170" class="LineNr">4170 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-unused-second-opcodes&quot;</span>/imm32
@@ -3538,7 +3538,7 @@ if ('onhashchange' in window) {
 <span id="L4231" class="LineNr">4231 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L4232" class="LineNr">4232 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4233" class="LineNr">4233 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L4234" class="Folded">4234 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4234" class="Folded">4234 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4260" class="LineNr">4260 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;f3 ab  # f3/m1 ab/m2 cd/m3 # comment&quot;, msg)</span>
 <span id="L4261" class="LineNr">4261 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4262" class="LineNr">4262 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-unused-second-opcodes&quot;</span>/imm32
@@ -3605,7 +3605,7 @@ if ('onhashchange' in window) {
 <span id="L4323" class="LineNr">4323 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L4324" class="LineNr">4324 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4325" class="LineNr">4325 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L4326" class="Folded">4326 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4326" class="Folded">4326 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4352" class="LineNr">4352 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;8b 08  # 8b/copy 0/mod 0/rm32 1/r32&quot;, msg)</span>
 <span id="L4353" class="LineNr">4353 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4354" class="LineNr">4354 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-emits-modrm-byte&quot;</span>/imm32
@@ -3670,7 +3670,7 @@ if ('onhashchange' in window) {
 <span id="L4413" class="LineNr">4413 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L4414" class="LineNr">4414 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4415" class="LineNr">4415 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L4416" class="Folded">4416 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4416" class="Folded">4416 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4442" class="LineNr">4442 </span>    <span class="subxComment"># check output</span>
 <span id="L4443" class="LineNr">4443 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;# abcd&quot;, msg)</span>
 <span id="L4444" class="LineNr">4444 </span>    <span class="subxS2Comment"># . . push args</span>
@@ -3738,7 +3738,7 @@ if ('onhashchange' in window) {
 <span id="L4506" class="LineNr">4506 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L4507" class="LineNr">4507 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4508" class="LineNr">4508 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L4509" class="Folded">4509 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4509" class="Folded">4509 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4535" class="LineNr">4535 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;ff 30  # ff 6/subop/push 0/mod 0/rm32&quot;, msg)</span>
 <span id="L4536" class="LineNr">4536 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4537" class="LineNr">4537 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-emits-modrm-byte-from-subop&quot;</span>/imm32
@@ -3805,7 +3805,7 @@ if ('onhashchange' in window) {
 <span id="L4598" class="LineNr">4598 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L4599" class="LineNr">4599 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4600" class="LineNr">4600 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L4601" class="Folded">4601 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4601" class="Folded">4601 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4627" class="LineNr">4627 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;8b 08  # 8b/copy 0/rm32 1/r32&quot;, msg)</span>
 <span id="L4628" class="LineNr">4628 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4629" class="LineNr">4629 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-emits-modrm-byte-with-missing-mod&quot;</span>/imm32
@@ -3872,7 +3872,7 @@ if ('onhashchange' in window) {
 <span id="L4690" class="LineNr">4690 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L4691" class="LineNr">4691 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4692" class="LineNr">4692 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L4693" class="Folded">4693 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4693" class="Folded">4693 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4719" class="LineNr">4719 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;8b 08  # 8b/copy 0/mod 1/r32&quot;, msg)</span>
 <span id="L4720" class="LineNr">4720 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4721" class="LineNr">4721 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-emits-modrm-byte-with-missing-rm32&quot;</span>/imm32
@@ -3939,7 +3939,7 @@ if ('onhashchange' in window) {
 <span id="L4782" class="LineNr">4782 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L4783" class="LineNr">4783 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4784" class="LineNr">4784 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L4785" class="Folded">4785 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4785" class="Folded">4785 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4811" class="LineNr">4811 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;8b 00  # 8b/copy 0/mod 0/rm32&quot;, msg)</span>
 <span id="L4812" class="LineNr">4812 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4813" class="LineNr">4813 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-emits-modrm-byte-with-missing-r32&quot;</span>/imm32
@@ -4006,7 +4006,7 @@ if ('onhashchange' in window) {
 <span id="L4874" class="LineNr">4874 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L4875" class="LineNr">4875 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4876" class="LineNr">4876 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L4877" class="Folded">4877 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4877" class="Folded">4877 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4903" class="LineNr">4903 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;8b 08  # 8b/copy 0/mod 4/rm32 1/r32 0/base 1/index 0/scale&quot;, msg)</span>
 <span id="L4904" class="LineNr">4904 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4905" class="LineNr">4905 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-emits-sib-byte&quot;</span>/imm32
@@ -4073,7 +4073,7 @@ if ('onhashchange' in window) {
 <span id="L4966" class="LineNr">4966 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L4967" class="LineNr">4967 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4968" class="LineNr">4968 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L4969" class="Folded">4969 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4969" class="Folded">4969 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4995" class="LineNr">4995 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;8b 0c 08  # 8b/copy 0/mod 4/rm32 1/r32 1/index 0/scale&quot;, msg)</span>
 <span id="L4996" class="LineNr">4996 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4997" class="LineNr">4997 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-emits-sib-byte-with-missing-base&quot;</span>/imm32
@@ -4140,7 +4140,7 @@ if ('onhashchange' in window) {
 <span id="L5058" class="LineNr">5058 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L5059" class="LineNr">5059 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L5060" class="LineNr">5060 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L5061" class="Folded">5061 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L5061" class="Folded">5061 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L5087" class="LineNr">5087 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;8b 0c 08  # 8b/copy 0/mod 4/rm32 1/r32 0/base 0/scale&quot;, msg)</span>
 <span id="L5088" class="LineNr">5088 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L5089" class="LineNr">5089 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-emits-sib-byte-with-missing-index&quot;</span>/imm32
@@ -4207,7 +4207,7 @@ if ('onhashchange' in window) {
 <span id="L5150" class="LineNr">5150 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L5151" class="LineNr">5151 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L5152" class="LineNr">5152 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L5153" class="Folded">5153 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L5153" class="Folded">5153 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L5179" class="LineNr">5179 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;8b 0c 08  # 8b/copy 0/mod 4/rm32 1/r32 0/base 1/index&quot;, msg)</span>
 <span id="L5180" class="LineNr">5180 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L5181" class="LineNr">5181 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-emits-sib-byte-with-missing-scale&quot;</span>/imm32
@@ -4274,7 +4274,7 @@ if ('onhashchange' in window) {
 <span id="L5242" class="LineNr">5242 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L5243" class="LineNr">5243 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L5244" class="LineNr">5244 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L5245" class="Folded">5245 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L5245" class="Folded">5245 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L5271" class="LineNr">5271 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;e8 20 00 00 00  # e8/call 20/disp32&quot;, msg)</span>
 <span id="L5272" class="LineNr">5272 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L5273" class="LineNr">5273 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-disp32-operand&quot;</span>/imm32
@@ -4341,7 +4341,7 @@ if ('onhashchange' in window) {
 <span id="L5334" class="LineNr">5334 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L5335" class="LineNr">5335 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L5336" class="LineNr">5336 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L5337" class="Folded">5337 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L5337" class="Folded">5337 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L5363" class="LineNr">5363 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;e8 20 00  # e8/call 20/disp16&quot;, msg)</span>
 <span id="L5364" class="LineNr">5364 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L5365" class="LineNr">5365 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-disp16-operand&quot;</span>/imm32
@@ -4408,7 +4408,7 @@ if ('onhashchange' in window) {
 <span id="L5426" class="LineNr">5426 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L5427" class="LineNr">5427 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L5428" class="LineNr">5428 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L5429" class="Folded">5429 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L5429" class="Folded">5429 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L5455" class="LineNr">5455 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;eb 20  # eb/jump 20/disp8&quot;, msg)</span>
 <span id="L5456" class="LineNr">5456 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L5457" class="LineNr">5457 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-disp8-operand&quot;</span>/imm32
@@ -4475,7 +4475,7 @@ if ('onhashchange' in window) {
 <span id="L5518" class="LineNr">5518 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L5519" class="LineNr">5519 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L5520" class="LineNr">5520 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L5521" class="Folded">5521 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L5521" class="Folded">5521 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L5547" class="LineNr">5547 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;eb xyz/disp8  # eb/jump xyz/disp8&quot;, msg)</span>
 <span id="L5548" class="LineNr">5548 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L5549" class="LineNr">5549 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-disp8-name&quot;</span>/imm32
@@ -4542,7 +4542,7 @@ if ('onhashchange' in window) {
 <span id="L5610" class="LineNr">5610 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L5611" class="LineNr">5611 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L5612" class="LineNr">5612 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L5613" class="Folded">5613 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L5613" class="Folded">5613 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L5639" class="LineNr">5639 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;68 20 00 00 00  # 68/push 0x20/imm32&quot;, msg)</span>
 <span id="L5640" class="LineNr">5640 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L5641" class="LineNr">5641 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-imm32-operand&quot;</span>/imm32
@@ -4610,7 +4610,7 @@ if ('onhashchange' in window) {
 <span id="L5703" class="LineNr">5703 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L5704" class="LineNr">5704 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L5705" class="LineNr">5705 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L5706" class="Folded">5706 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L5706" class="Folded">5706 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L5732" class="LineNr">5732 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;68 20 00  # 68/push 0x20/imm16&quot;, msg)</span>
 <span id="L5733" class="LineNr">5733 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L5734" class="LineNr">5734 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-imm16-operand&quot;</span>/imm32
@@ -4678,7 +4678,7 @@ if ('onhashchange' in window) {
 <span id="L5796" class="LineNr">5796 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L5797" class="LineNr">5797 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L5798" class="LineNr">5798 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L5799" class="Folded">5799 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L5799" class="Folded">5799 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L5825" class="LineNr">5825 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;68 20  # 68/push 0x20/imm8&quot;, msg)</span>
 <span id="L5826" class="LineNr">5826 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L5827" class="LineNr">5827 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-imm8-operand&quot;</span>/imm32
diff --git a/html/apps/sigils.subx.html b/html/apps/sigils.subx.html
index 865a9db3..6bec4179 100644
--- a/html/apps/sigils.subx.html
+++ b/html/apps/sigils.subx.html
@@ -269,7 +269,7 @@ if ('onhashchange' in window) {
 <span id="L207" class="LineNr"> 207 </span>    3d/compare-eax-and  0x25/imm32/percent
 <span id="L208" class="LineNr"> 208 </span>    75/jump-if-!=  $subx-sigils:check-for-indirect-mode/disp8
 <span id="L209" class="LineNr"> 209 </span><span class="Constant">$subx-sigils:direct-mode</span>:
-<span id="L210" class="Folded"> 210 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L210" class="Folded"> 210 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice --------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L250" class="LineNr"> 250 </span>    <span class="subxComment"># emit-direct-mode(out, word-slice)</span>
 <span id="L251" class="LineNr"> 251 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L252" class="LineNr"> 252 </span>    52/push-edx
@@ -511,7 +511,7 @@ if ('onhashchange' in window) {
 <span id="L488" class="LineNr"> 488 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L489" class="LineNr"> 489 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L490" class="LineNr"> 490 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L491" class="Folded"> 491 </span><span class="Folded">+-- 26 lines: #?     # dump _test-output-stream --------------------------------------------------------------------------------------------------------------</span>
+<span id="L491" class="Folded"> 491 </span><span class="Folded">+-- 26 lines: #?     # dump _test-output-stream -----------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L517" class="LineNr"> 517 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;== abcd 0x1 \n&quot;, msg)</span>
 <span id="L518" class="LineNr"> 518 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L519" class="LineNr"> 519 </span>    68/push  <span class="Constant">&quot;F - test-subx-sigils-passes-most-words-through&quot;</span>/imm32
@@ -584,7 +584,7 @@ if ('onhashchange' in window) {
 <span id="L586" class="LineNr"> 586 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L587" class="LineNr"> 587 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L588" class="LineNr"> 588 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L589" class="Folded"> 589 </span><span class="Folded">+-- 26 lines: #?     # dump _test-output-stream --------------------------------------------------------------------------------------------------------------</span>
+<span id="L589" class="Folded"> 589 </span><span class="Folded">+-- 26 lines: #?     # dump _test-output-stream -----------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L615" class="LineNr"> 615 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;ab 3/mod/direct 0x00000001/rm32 \n&quot;, msg)</span>
 <span id="L616" class="LineNr"> 616 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L617" class="LineNr"> 617 </span>    68/push  <span class="Constant">&quot;F - test-subx-sigils-direct-mode&quot;</span>/imm32
@@ -729,7 +729,7 @@ if ('onhashchange' in window) {
 <span id="L756" class="LineNr"> 756 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L757" class="LineNr"> 757 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L758" class="LineNr"> 758 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L759" class="Folded"> 759 </span><span class="Folded">+-- 26 lines: #?     # dump _test-output-stream --------------------------------------------------------------------------------------------------------------</span>
+<span id="L759" class="Folded"> 759 </span><span class="Folded">+-- 26 lines: #?     # dump _test-output-stream -----------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L785" class="LineNr"> 785 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;ab 0/mod/indirect 0x00000001/rm32 \n&quot;, msg)</span>
 <span id="L786" class="LineNr"> 786 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L787" class="LineNr"> 787 </span>    68/push  <span class="Constant">&quot;F - test-subx-sigils-register-indirect-mode&quot;</span>/imm32
@@ -874,7 +874,7 @@ if ('onhashchange' in window) {
 <span id="L926" class="LineNr"> 926 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L927" class="LineNr"> 927 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L928" class="LineNr"> 928 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L929" class="Folded"> 929 </span><span class="Folded">+-- 26 lines: #?     # dump _test-output-stream --------------------------------------------------------------------------------------------------------------</span>
+<span id="L929" class="Folded"> 929 </span><span class="Folded">+-- 26 lines: #?     # dump _test-output-stream -----------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L955" class="LineNr"> 955 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;ab 0/mod/indirect 1/rm32 \n&quot;, msg)</span>
 <span id="L956" class="LineNr"> 956 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L957" class="LineNr"> 957 </span>    68/push  <span class="Constant">&quot;F - test-subx-sigils-register-indirect-mode-without-displacement&quot;</span>/imm32
@@ -947,7 +947,7 @@ if ('onhashchange' in window) {
 <span id="L1024" class="LineNr">1024 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L1025" class="LineNr">1025 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1026" class="LineNr">1026 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L1027" class="Folded">1027 </span><span class="Folded">+-- 26 lines: #?     # dump _test-output-stream --------------------------------------------------------------------------------------------------------------</span>
+<span id="L1027" class="Folded">1027 </span><span class="Folded">+-- 26 lines: #?     # dump _test-output-stream -----------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1053" class="LineNr">1053 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;ab 2/mod/*+disp32 1/rm32 4/disp32 \n&quot;, msg)</span>
 <span id="L1054" class="LineNr">1054 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1055" class="LineNr">1055 </span>    68/push  <span class="Constant">&quot;F - test-subx-sigils-register-indirect-mode-with-displacement&quot;</span>/imm32
@@ -1021,7 +1021,7 @@ if ('onhashchange' in window) {
 <span id="L1123" class="LineNr">1123 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L1124" class="LineNr">1124 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1125" class="LineNr">1125 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L1126" class="Folded">1126 </span><span class="Folded">+-- 26 lines: #?     # dump _test-output-stream --------------------------------------------------------------------------------------------------------------</span>
+<span id="L1126" class="Folded">1126 </span><span class="Folded">+-- 26 lines: #?     # dump _test-output-stream -----------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1152" class="LineNr">1152 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;ab 2/mod/*+disp32 4/rm32/sib 1/base 2/index 3/scale 4/disp32 \n&quot;, msg)</span>
 <span id="L1153" class="LineNr">1153 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1154" class="LineNr">1154 </span>    68/push  <span class="Constant">&quot;F - test-subx-sigils-register-indirect-mode-with-sib-byte&quot;</span>/imm32
@@ -1094,7 +1094,7 @@ if ('onhashchange' in window) {
 <span id="L1221" class="LineNr">1221 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L1222" class="LineNr">1222 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1223" class="LineNr">1223 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L1224" class="Folded">1224 </span><span class="Folded">+-- 26 lines: #?     # dump _test-output-stream --------------------------------------------------------------------------------------------------------------</span>
+<span id="L1224" class="Folded">1224 </span><span class="Folded">+-- 26 lines: #?     # dump _test-output-stream -----------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1250" class="LineNr">1250 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;ab 2/mod/*+disp32 4/rm32/sib 1/base 2/index 3/scale -4/disp32 \n&quot;, msg)</span>
 <span id="L1251" class="LineNr">1251 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1252" class="LineNr">1252 </span>    68/push  <span class="Constant">&quot;F - test-subx-sigils-register-indirect-mode-with-sib-byte-negative-displacement&quot;</span>/imm32
@@ -1167,7 +1167,7 @@ if ('onhashchange' in window) {
 <span id="L1319" class="LineNr">1319 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L1320" class="LineNr">1320 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1321" class="LineNr">1321 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L1322" class="Folded">1322 </span><span class="Folded">+-- 26 lines: #?     # dump _test-output-stream --------------------------------------------------------------------------------------------------------------</span>
+<span id="L1322" class="Folded">1322 </span><span class="Folded">+-- 26 lines: #?     # dump _test-output-stream -----------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1348" class="LineNr">1348 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;ab 0/mod/indirect 5/rm32/.disp32 Foo/disp32 \n&quot;, msg)</span>
 <span id="L1349" class="LineNr">1349 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1350" class="LineNr">1350 </span>    68/push  <span class="Constant">&quot;F - test-subx-sigils-indirect-mode-without-register&quot;</span>/imm32
@@ -1293,7 +1293,7 @@ if ('onhashchange' in window) {
 <span id="L1470" class="LineNr">1470 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L1471" class="LineNr">1471 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1472" class="LineNr">1472 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L1473" class="Folded">1473 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1473" class="Folded">1473 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1499" class="LineNr">1499 </span>    <span class="subxComment"># check-stream-equal(_test-output-stream, &quot;3/mod/direct 0/rm32&quot;, msg)</span>
 <span id="L1500" class="LineNr">1500 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1501" class="LineNr">1501 </span>    68/push  <span class="Constant">&quot;F - <a href='sigils.subx.html#L1430'>test-emit-direct-mode</a>/0&quot;</span>/imm32
@@ -1351,7 +1351,7 @@ if ('onhashchange' in window) {
 <span id="L1553" class="LineNr">1553 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L1554" class="LineNr">1554 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1555" class="LineNr">1555 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L1556" class="Folded">1556 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1556" class="Folded">1556 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1582" class="LineNr">1582 </span>    <span class="subxComment"># check-stream-equal(_test-output-stream, &quot;3/mod/direct 7/rm32&quot;, msg)</span>
 <span id="L1583" class="LineNr">1583 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1584" class="LineNr">1584 </span>    68/push  <span class="Constant">&quot;F - <a href='sigils.subx.html#L1430'>test-emit-direct-mode</a>/1&quot;</span>/imm32
@@ -3129,7 +3129,7 @@ if ('onhashchange' in window) {
 <span id="L3356" class="LineNr">3356 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L3357" class="LineNr">3357 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3358" class="LineNr">3358 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L3359" class="Folded">3359 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3359" class="Folded">3359 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3385" class="LineNr">3385 </span>    <span class="subxComment"># check-stream-equal(_test-output-stream, &quot;0/mod/indirect 0/rm32&quot;, msg)</span>
 <span id="L3386" class="LineNr">3386 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3387" class="LineNr">3387 </span>    68/push  <span class="Constant">&quot;F - test-emit-indirect-mode&quot;</span>/imm32
@@ -3181,7 +3181,7 @@ if ('onhashchange' in window) {
 <span id="L3433" class="LineNr">3433 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L3434" class="LineNr">3434 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3435" class="LineNr">3435 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L3436" class="Folded">3436 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3436" class="Folded">3436 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3462" class="LineNr">3462 </span>    <span class="subxComment"># check-stream-equal(_test-output-stream, &quot;0/mod/indirect 7/rm32&quot;, msg)</span>
 <span id="L3463" class="LineNr">3463 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3464" class="LineNr">3464 </span>    68/push  <span class="Constant">&quot;F - test-emit-indirect-mode-2&quot;</span>/imm32
@@ -3233,7 +3233,7 @@ if ('onhashchange' in window) {
 <span id="L3510" class="LineNr">3510 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L3511" class="LineNr">3511 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3512" class="LineNr">3512 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L3513" class="Folded">3513 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3513" class="Folded">3513 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3539" class="LineNr">3539 </span>    <span class="subxComment"># check-stream-equal(_test-output-stream, &quot;2/mod/*+disp32 6/rm32 4/disp32&quot;, msg)</span>
 <span id="L3540" class="LineNr">3540 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3541" class="LineNr">3541 </span>    68/push  <span class="Constant">&quot;F - test-emit-indirect-mode-with-disp&quot;</span>/imm32
@@ -3285,7 +3285,7 @@ if ('onhashchange' in window) {
 <span id="L3587" class="LineNr">3587 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L3588" class="LineNr">3588 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3589" class="LineNr">3589 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L3590" class="Folded">3590 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3590" class="Folded">3590 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3616" class="LineNr">3616 </span>    <span class="subxComment"># check-stream-equal(_test-output-stream, &quot;2/mod/*+disp32 6/rm32 -4/disp32&quot;, msg)</span>
 <span id="L3617" class="LineNr">3617 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3618" class="LineNr">3618 </span>    68/push  <span class="Constant">&quot;F - test-emit-indirect-mode-with-disp&quot;</span>/imm32
@@ -3337,7 +3337,7 @@ if ('onhashchange' in window) {
 <span id="L3664" class="LineNr">3664 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L3665" class="LineNr">3665 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3666" class="LineNr">3666 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L3667" class="Folded">3667 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3667" class="Folded">3667 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3693" class="LineNr">3693 </span>    <span class="subxComment"># check-stream-equal(_test-output-stream, &quot;2/mod/indirect 4/rm32/sib 6/base 1/index 2/scale 4/disp&quot;, msg)</span>
 <span id="L3694" class="LineNr">3694 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3695" class="LineNr">3695 </span>    68/push  <span class="Constant">&quot;F - test-emit-indirect-mode-with-sib&quot;</span>/imm32
@@ -3389,7 +3389,7 @@ if ('onhashchange' in window) {
 <span id="L3741" class="LineNr">3741 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L3742" class="LineNr">3742 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3743" class="LineNr">3743 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L3744" class="Folded">3744 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3744" class="Folded">3744 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3770" class="LineNr">3770 </span>    <span class="subxComment"># check-stream-equal(_test-output-stream, &quot;2/mod/*+disp32 4/rm32/sib 5/base/ebp 0/index 0/scale 0/disp32&quot;, msg)</span>
 <span id="L3771" class="LineNr">3771 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3772" class="LineNr">3772 </span>    68/push  <span class="Constant">&quot;F - test-emit-indirect-mode-ebp&quot;</span>/imm32
@@ -3441,7 +3441,7 @@ if ('onhashchange' in window) {
 <span id="L3818" class="LineNr">3818 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L3819" class="LineNr">3819 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3820" class="LineNr">3820 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L3821" class="Folded">3821 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3821" class="Folded">3821 </span><span class="Folded">+-- 26 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3847" class="LineNr">3847 </span>    <span class="subxComment"># check-stream-equal(_test-output-stream, &quot;2/mod/*+disp32 4/rm32/sib 4/base/ebp 0/index 0/scale 0/disp32&quot;, msg)</span>
 <span id="L3848" class="LineNr">3848 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3849" class="LineNr">3849 </span>    68/push  <span class="Constant">&quot;F - test-emit-indirect-mode-esp&quot;</span>/imm32
diff --git a/html/apps/survey.subx.html b/html/apps/survey.subx.html
index dc442e1f..24b9d9d9 100644
--- a/html/apps/survey.subx.html
+++ b/html/apps/survey.subx.html
@@ -220,8 +220,8 @@ if ('onhashchange' in window) {
 <span id="L157" class="LineNr"> 157 </span>    <span class="subxS1Comment"># . write</span>
 <span id="L158" class="LineNr"> 158 </span>    68/push  0/imm32/write
 <span id="L159" class="LineNr"> 159 </span>    89/copy                         3/mod/direct    6/rm32/esi   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          4/r32/esp  <span class="Normal"> . </span>             <span class="Normal"> . </span>                <span class="subxComment"># copy esp to esi</span>
-<span id="L160" class="Folded"> 160 </span><span class="Folded">+-- 41 lines: #?     # dump labels-&gt;write --------------------------------------------------------------------------------------------------------------------</span>
-<span id="L201" class="Folded"> 201 </span><span class="Folded">+--  9 lines: #?     # write(2/stderr, &quot;slurp in\n&quot;) ---------------------------------------------------------------------------------------------------------</span>
+<span id="L160" class="Folded"> 160 </span><span class="Folded">+-- 41 lines: #?     # dump labels-&gt;write -----------------------------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L201" class="Folded"> 201 </span><span class="Folded">+--  9 lines: #?     # write(2/stderr, &quot;slurp in\n&quot;) ------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L210" class="LineNr"> 210 </span>    <span class="subxComment"># slurp(infile, in)</span>
 <span id="L211" class="LineNr"> 211 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L212" class="LineNr"> 212 </span>    56/push-esi
@@ -230,9 +230,9 @@ if ('onhashchange' in window) {
 <span id="L215" class="LineNr"> 215 </span>    e8/call  <a href='../082slurp.subx.html#L8'>slurp</a>/disp32
 <span id="L216" class="LineNr"> 216 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L217" class="LineNr"> 217 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L218" class="Folded"> 218 </span><span class="Folded">+-- 40 lines: #?     # dump labels-&gt;write --------------------------------------------------------------------------------------------------------------------</span>
-<span id="L258" class="Folded"> 258 </span><span class="Folded">+-- 33 lines: #?     # dump in -------------------------------------------------------------------------------------------------------------------------------</span>
-<span id="L291" class="Folded"> 291 </span><span class="Folded">+--  9 lines: #?     # write(2/stderr, &quot;compute-offsets\n&quot;) --------------------------------------------------------------------------------------------------</span>
+<span id="L218" class="Folded"> 218 </span><span class="Folded">+-- 40 lines: #?     # dump labels-&gt;write -----------------------------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L258" class="Folded"> 258 </span><span class="Folded">+-- 33 lines: #?     # dump in ----------------------------------------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L291" class="Folded"> 291 </span><span class="Folded">+--  9 lines: #?     # write(2/stderr, &quot;compute-offsets\n&quot;) -----------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L300" class="LineNr"> 300 </span>    <span class="subxComment"># compute-offsets(in, segments, labels)</span>
 <span id="L301" class="LineNr"> 301 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L302" class="LineNr"> 302 </span>    52/push-edx
@@ -242,7 +242,7 @@ if ('onhashchange' in window) {
 <span id="L306" class="LineNr"> 306 </span>    e8/call  <a href='survey.subx.html#L621'>compute-offsets</a>/disp32
 <span id="L307" class="LineNr"> 307 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L308" class="LineNr"> 308 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              0xc/imm32         <span class="subxComment"># add to esp</span>
-<span id="L309" class="Folded"> 309 </span><span class="Folded">+--  9 lines: #?     # write(2/stderr, &quot;compute-addresses\n&quot;) ------------------------------------------------------------------------------------------------</span>
+<span id="L309" class="Folded"> 309 </span><span class="Folded">+--  9 lines: #?     # write(2/stderr, &quot;compute-addresses\n&quot;) ---------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L318" class="LineNr"> 318 </span>    <span class="subxComment"># compute-addresses(segments, labels)</span>
 <span id="L319" class="LineNr"> 319 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L320" class="LineNr"> 320 </span>    52/push-edx
@@ -258,9 +258,9 @@ if ('onhashchange' in window) {
 <span id="L330" class="LineNr"> 330 </span>    e8/call  <a href='../055stream.subx.html#L54'>rewind-stream</a>/disp32
 <span id="L331" class="LineNr"> 331 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L332" class="LineNr"> 332 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L333" class="Folded"> 333 </span><span class="Folded">+--  9 lines: #?     # write(2/stderr, &quot;emit-output\n&quot;) ------------------------------------------------------------------------------------------------------</span>
-<span id="L342" class="Folded"> 342 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream --------------------------------------------------------------------------------------------------------------------</span>
-<span id="L368" class="Folded"> 368 </span><span class="Folded">+-- 40 lines: #?     # dump labels-&gt;write --------------------------------------------------------------------------------------------------------------------</span>
+<span id="L333" class="Folded"> 333 </span><span class="Folded">+--  9 lines: #?     # write(2/stderr, &quot;emit-output\n&quot;) ---------------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L342" class="Folded"> 342 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream -----------------------------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L368" class="Folded"> 368 </span><span class="Folded">+-- 40 lines: #?     # dump labels-&gt;write -----------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L408" class="LineNr"> 408 </span>    <span class="subxComment"># emit-output(in, out, segments, labels)</span>
 <span id="L409" class="LineNr"> 409 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L410" class="LineNr"> 410 </span>    52/push-edx
@@ -395,7 +395,7 @@ if ('onhashchange' in window) {
 <span id="L539" class="LineNr"> 539 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L540" class="LineNr"> 540 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L541" class="LineNr"> 541 </span>    <span class="subxComment"># check trace</span>
-<span id="L542" class="Folded"> 542 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream --------------------------------------------------------------------------------------------------------------------</span>
+<span id="L542" class="Folded"> 542 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream -----------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L568" class="LineNr"> 568 </span>    <span class="subxS1Comment"># . check-trace-contains(&quot;label 'x' is at address 0x00001079.&quot;, msg)</span>
 <span id="L569" class="LineNr"> 569 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L570" class="LineNr"> 570 </span>    68/push  <span class="Constant">&quot;F - <a href='survey.subx.html#L437'>test-subx-survey-computes-addresses</a>/0&quot;</span>/imm32
@@ -541,7 +541,7 @@ if ('onhashchange' in window) {
 <span id="L710" class="LineNr"> 710 </span>    8b/copy                         0/mod/indirect  1/rm32/ecx   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          0/r32/eax  <span class="Normal"> . </span>             <span class="Normal"> . </span>                <span class="subxComment"># copy *ecx to eax</span>
 <span id="L711" class="LineNr"> 711 </span>    3d/compare-eax-and  0/imm32
 <span id="L712" class="LineNr"> 712 </span>    0f 84/jump-if-=  $compute-offsets:break-line-loop/disp32
-<span id="L713" class="Folded"> 713 </span><span class="Folded">+-- 33 lines: #?     # dump line -----------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L713" class="Folded"> 713 </span><span class="Folded">+-- 33 lines: #?     # dump line --------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L746" class="LineNr"> 746 </span><span class="Constant">$compute-offsets:word-loop</span>:
 <span id="L747" class="LineNr"> 747 </span>    <span class="subxComment"># edx = word-slice</span>
 <span id="L748" class="LineNr"> 748 </span>    ba/copy-to-edx  <a href='survey.subx.html#L621'>compute-offsets</a>:word-slice/imm32
@@ -551,7 +551,7 @@ if ('onhashchange' in window) {
 <span id="L752" class="LineNr"> 752 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L753" class="LineNr"> 753 </span>    <span class="subxS1Comment"># . discard args</span>
 <span id="L754" class="LineNr"> 754 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L755" class="Folded"> 755 </span><span class="Folded">+-- 74 lines: #?     # dump word-slice and maybe curr-segment-name -------------------------------------------------------------------------------------------</span>
+<span id="L755" class="Folded"> 755 </span><span class="Folded">+-- 74 lines: #?     # dump word-slice and maybe curr-segment-name ----------------------------------------------------------------------------------------------------------------------</span>
 <span id="L829" class="LineNr"> 829 </span><span class="Constant">$compute-offsets:case-empty</span>:
 <span id="L830" class="LineNr"> 830 </span>    <span class="subxComment"># if slice-empty?(word/edx) break</span>
 <span id="L831" class="LineNr"> 831 </span>    <span class="subxS1Comment"># . eax = slice-empty?(word/edx)</span>
@@ -626,7 +626,7 @@ if ('onhashchange' in window) {
 <span id="L900" class="LineNr"> 900 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L901" class="LineNr"> 901 </span>    <span class="subxS1Comment"># . discard args</span>
 <span id="L902" class="LineNr"> 902 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L903" class="Folded"> 903 </span><span class="Folded">+-- 45 lines: #?     # dump curr-segment-name if not null (clobbering eax) -----------------------------------------------------------------------------------</span>
+<span id="L903" class="Folded"> 903 </span><span class="Folded">+-- 45 lines: #?     # dump curr-segment-name if not null (clobbering eax) --------------------------------------------------------------------------------------------------------------</span>
 <span id="L948" class="LineNr"> 948 </span><span class="Constant">$compute-offsets:update-curr-segment-name</span>:
 <span id="L949" class="LineNr"> 949 </span>    <span class="subxComment"># curr-segment-name = slice-to-string(segment-tmp)</span>
 <span id="L950" class="LineNr"> 950 </span>    <span class="subxS1Comment"># . eax = slice-to-string(Heap, segment-tmp)</span>
@@ -766,7 +766,7 @@ if ('onhashchange' in window) {
 <span id="L1084" class="LineNr">1084 </span>    01/add                          0/mod/indirect  5/rm32/.disp32           <span class="Normal"> . </span>           <span class="Normal"> . </span>          0/r32/eax   <a href='survey.subx.html#L621'>compute-offsets</a>:segment-offset/disp32 <span class="subxComment"># add eax to *segment-offset</span>
 <span id="L1085" class="LineNr">1085 </span>    <span class="subxComment"># file-offset += width</span>
 <span id="L1086" class="LineNr">1086 </span>    01/add                          0/mod/indirect  5/rm32/.disp32           <span class="Normal"> . </span>           <span class="Normal"> . </span>          0/r32/eax   <a href='survey.subx.html#L621'>compute-offsets</a>:file-offset/disp32 <span class="subxComment"># add eax to *file-offset</span>
-<span id="L1087" class="Folded">1087 </span><span class="Folded">+-- 41 lines: #?     # dump segment-offset -------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1087" class="Folded">1087 </span><span class="Folded">+-- 41 lines: #?     # dump segment-offset ----------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1128" class="LineNr">1128 </span>    e9/jump $compute-offsets:word-loop/disp32
 <span id="L1129" class="LineNr">1129 </span><span class="Constant">$compute-offsets:break-line-loop</span>:
 <span id="L1130" class="LineNr">1130 </span>    <span class="subxComment"># seg/eax = get-or-insert(segments, curr-segment-name, row-size=16)</span>
@@ -931,7 +931,7 @@ if ('onhashchange' in window) {
 <span id="L1289" class="LineNr">1289 </span>    e8/call  <a href='survey.subx.html#L621'>compute-offsets</a>/disp32
 <span id="L1290" class="LineNr">1290 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1291" class="LineNr">1291 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              0xc/imm32        <span class="subxComment"># add to esp</span>
-<span id="L1292" class="Folded">1292 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream --------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1292" class="Folded">1292 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream -----------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1318" class="LineNr">1318 </span>    <span class="subxComment"># check trace</span>
 <span id="L1319" class="LineNr">1319 </span>    <span class="subxS1Comment"># . check-trace-contains(&quot;segment 'code' is at file offset 0x00000000.&quot;, msg)</span>
 <span id="L1320" class="LineNr">1320 </span>    <span class="subxS2Comment"># . . push args</span>
@@ -1076,7 +1076,7 @@ if ('onhashchange' in window) {
 <span id="L1459" class="LineNr">1459 </span>    05/add-to-eax  0x10/imm32
 <span id="L1460" class="LineNr">1460 </span>    eb/jump  $compute-addresses:segment-loop/disp8
 <span id="L1461" class="LineNr">1461 </span><span class="Constant">$compute-addresses:segment-break</span>:
-<span id="L1462" class="Folded">1462 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream --------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1462" class="Folded">1462 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream -----------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1488" class="LineNr">1488 </span>    <span class="subxComment"># esi = labels</span>
 <span id="L1489" class="LineNr">1489 </span>    8b/copy                         1/mod/*+disp8   5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          6/r32/esi   0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># copy *(ebp+12) to esi</span>
 <span id="L1490" class="LineNr">1490 </span>    <span class="subxComment"># lrow/eax = labels-&gt;data</span>
@@ -1088,10 +1088,10 @@ if ('onhashchange' in window) {
 <span id="L1496" class="LineNr">1496 </span>    <span class="subxComment"># if (lrow &gt;= max) break</span>
 <span id="L1497" class="LineNr">1497 </span>    39/compare                      3/mod/direct    0/rm32/eax   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          1/r32/ecx  <span class="Normal"> . </span>             <span class="Normal"> . </span>                <span class="subxComment"># compare eax with ecx</span>
 <span id="L1498" class="LineNr">1498 </span>    0f 83/jump-if-addr&gt;=  $compute-addresses:end/disp32
-<span id="L1499" class="Folded">1499 </span><span class="Folded">+-- 26 lines: #?     # dump lrow-&gt;key ------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1499" class="Folded">1499 </span><span class="Folded">+-- 26 lines: #?     # dump lrow-&gt;key ---------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1525" class="LineNr">1525 </span>    <span class="subxComment"># var seg-name/edx: (addr array byte) = lrow-&gt;segment-name</span>
 <span id="L1526" class="LineNr">1526 </span>    8b/copy                         1/mod/*+disp8   0/rm32/eax   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          2/r32/edx   4/disp8        <span class="Normal"> . </span>                <span class="subxComment"># copy *eax to edx</span>
-<span id="L1527" class="Folded">1527 </span><span class="Folded">+-- 26 lines: #?     # dump seg-name -------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1527" class="Folded">1527 </span><span class="Folded">+-- 26 lines: #?     # dump seg-name ----------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1553" class="LineNr">1553 </span>    <span class="subxComment"># var label-seg/edx: (addr segment-info) = get(segments, seg-name, row-size=16, &quot;segment table&quot;)</span>
 <span id="L1554" class="LineNr">1554 </span>    <span class="subxS1Comment"># . save eax</span>
 <span id="L1555" class="LineNr">1555 </span>    50/push-eax
@@ -1235,7 +1235,7 @@ if ('onhashchange' in window) {
 <span id="L1693" class="LineNr">1693 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1694" class="LineNr">1694 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L1695" class="LineNr">1695 </span>    <span class="subxComment"># checks</span>
-<span id="L1696" class="Folded">1696 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream --------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1696" class="Folded">1696 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream -----------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1722" class="LineNr">1722 </span>    <span class="subxS1Comment"># . check-trace-contains(&quot;segment 'a' starts at address 0x00001094.&quot;, msg)</span>
 <span id="L1723" class="LineNr">1723 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1724" class="LineNr">1724 </span>    68/push  <span class="Constant">&quot;F - <a href='survey.subx.html#L1603'>test-compute-addresses</a>/0&quot;</span>/imm32
@@ -1396,7 +1396,7 @@ if ('onhashchange' in window) {
 <span id="L1879" class="LineNr">1879 </span>    <span class="subxS1Comment"># . prologue</span>
 <span id="L1880" class="LineNr">1880 </span>    55/push-ebp
 <span id="L1881" class="LineNr">1881 </span>    89/copy                         3/mod/direct    5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          4/r32/esp  <span class="Normal"> . </span>             <span class="Normal"> . </span>                <span class="subxComment"># copy esp to ebp</span>
-<span id="L1882" class="Folded">1882 </span><span class="Folded">+--  9 lines: #?     # write(2/stderr, &quot;emit-headers\n&quot;) -----------------------------------------------------------------------------------------------------</span>
+<span id="L1882" class="Folded">1882 </span><span class="Folded">+--  9 lines: #?     # write(2/stderr, &quot;emit-headers\n&quot;) --------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1891" class="LineNr">1891 </span>    <span class="subxComment"># emit-headers(out, segments, labels)</span>
 <span id="L1892" class="LineNr">1892 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1893" class="LineNr">1893 </span>    ff          6/subop/push        1/mod/*+disp8   5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          0x14/disp8      <span class="Normal"> . </span>               <span class="subxComment"># push *(ebp+20)</span>
@@ -1406,7 +1406,7 @@ if ('onhashchange' in window) {
 <span id="L1897" class="LineNr">1897 </span>    e8/call  <a href='survey.subx.html#L3176'>emit-headers</a>/disp32
 <span id="L1898" class="LineNr">1898 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1899" class="LineNr">1899 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              0xc/imm32         <span class="subxComment"># add to esp</span>
-<span id="L1900" class="Folded">1900 </span><span class="Folded">+--  9 lines: #?     # write(2/stderr, &quot;emit-segments\n&quot;) ----------------------------------------------------------------------------------------------------</span>
+<span id="L1900" class="Folded">1900 </span><span class="Folded">+--  9 lines: #?     # write(2/stderr, &quot;emit-segments\n&quot;) -------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1909" class="LineNr">1909 </span>    <span class="subxComment"># emit-segments(in, out, segments, labels)</span>
 <span id="L1910" class="LineNr">1910 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1911" class="LineNr">1911 </span>    ff          6/subop/push        1/mod/*+disp8   5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          0x14/disp8      <span class="Normal"> . </span>               <span class="subxComment"># push *(ebp+20)</span>
@@ -1520,7 +1520,7 @@ if ('onhashchange' in window) {
 <span id="L2019" class="LineNr">2019 </span>    e8/call  <a href='../071read-line.subx.html#L219'>read-line</a>/disp32
 <span id="L2020" class="LineNr">2020 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2021" class="LineNr">2021 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L2022" class="Folded">2022 </span><span class="Folded">+-- 33 lines: #?     # dump line -----------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L2022" class="Folded">2022 </span><span class="Folded">+-- 33 lines: #?     # dump line --------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L2055" class="LineNr">2055 </span><span class="Constant">$emit-segments:check-for-end-of-input</span>:
 <span id="L2056" class="LineNr">2056 </span>    <span class="subxComment"># if (line-&gt;write == 0) break</span>
 <span id="L2057" class="LineNr">2057 </span>    81          7/subop/compare     0/mod/indirect  1/rm32/ecx   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              0/imm32           <span class="subxComment"># compare *ecx</span>
@@ -1544,7 +1544,7 @@ if ('onhashchange' in window) {
 <span id="L2075" class="LineNr">2075 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L2076" class="LineNr">2076 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2077" class="LineNr">2077 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L2078" class="Folded">2078 </span><span class="Folded">+-- 33 lines: #?     # dump word-slice -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L2078" class="Folded">2078 </span><span class="Folded">+-- 33 lines: #?     # dump word-slice --------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L2111" class="LineNr">2111 </span><span class="Constant">$emit-segments:check-for-end-of-line</span>:
 <span id="L2112" class="LineNr">2112 </span>    <span class="subxComment"># if (slice-empty?(word-slice)) break</span>
 <span id="L2113" class="LineNr">2113 </span>    <span class="subxS1Comment"># . eax = slice-empty?(word-slice)</span>
@@ -1555,7 +1555,7 @@ if ('onhashchange' in window) {
 <span id="L2118" class="LineNr">2118 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2119" class="LineNr">2119 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
 <span id="L2120" class="LineNr">2120 </span>    <span class="subxS1Comment"># . if (eax != 0) break</span>
-<span id="L2121" class="LineNr">2121 </span>    3d/compare-eax-and  0/imm32
+<span id="L2121" class="LineNr">2121 </span>    3d/compare-eax-and  0/imm32/false
 <span id="L2122" class="LineNr">2122 </span>    0f 85/jump-if-!=  $emit-segments:next-line/disp32
 <span id="L2123" class="LineNr">2123 </span><span class="Constant">$emit-segments:check-for-comment</span>:
 <span id="L2124" class="LineNr">2124 </span>    <span class="subxComment"># if (slice-starts-with?(word-slice, &quot;#&quot;)) break</span>
@@ -1630,7 +1630,7 @@ if ('onhashchange' in window) {
 <span id="L2193" class="LineNr">2193 </span>    e8/call  <a href='../073next-token.subx.html#L163'>next-token-from-slice</a>/disp32
 <span id="L2194" class="LineNr">2194 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2195" class="LineNr">2195 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              0x10/imm32        <span class="subxComment"># add to esp</span>
-<span id="L2196" class="Folded">2196 </span><span class="Folded">+-- 33 lines: #?     # dump word-slice -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L2196" class="Folded">2196 </span><span class="Folded">+-- 33 lines: #?     # dump word-slice --------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L2229" class="LineNr">2229 </span>    <span class="subxComment"># info/esi = get-slice(labels, datum, row-size=16, &quot;label table&quot;)</span>
 <span id="L2230" class="LineNr">2230 </span>    <span class="subxS1Comment"># . eax = get-slice(labels, datum, row-size=16, &quot;label table&quot;)</span>
 <span id="L2231" class="LineNr">2231 </span>    <span class="subxS2Comment"># . . push args</span>
@@ -1645,7 +1645,7 @@ if ('onhashchange' in window) {
 <span id="L2240" class="LineNr">2240 </span>    <span class="subxS1Comment"># . esi = eax</span>
 <span id="L2241" class="LineNr">2241 </span>    89/copy                         3/mod/direct    6/rm32/esi   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          0/r32/eax  <span class="Normal"> . </span>             <span class="Normal"> . </span>                <span class="subxComment"># copy eax to esi</span>
 <span id="L2242" class="LineNr">2242 </span><span class="Constant">$emit-segments:check-global-variable</span>:
-<span id="L2243" class="Folded">2243 </span><span class="Folded">+-- 26 lines: #?     # dump info-&gt;segment-name ---------------------------------------------------------------------------------------------------------------</span>
+<span id="L2243" class="Folded">2243 </span><span class="Folded">+-- 26 lines: #?     # dump info-&gt;segment-name ------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L2269" class="LineNr">2269 </span>    <span class="subxComment"># if string-equal?(info-&gt;segment-name, &quot;code&quot;) goto code label checks</span>
 <span id="L2270" class="LineNr">2270 </span>    <span class="subxS1Comment"># . eax = string-equal?(info-&gt;segment-name, &quot;code&quot;)</span>
 <span id="L2271" class="LineNr">2271 </span>    <span class="subxS2Comment"># . . push args</span>
@@ -1720,9 +1720,9 @@ if ('onhashchange' in window) {
 <span id="L2340" class="LineNr">2340 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2341" class="LineNr">2341 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L2342" class="LineNr">2342 </span>    <span class="subxS1Comment"># . if (eax == false) goto next check</span>
-<span id="L2343" class="LineNr">2343 </span>    3d/compare-eax-and  0/imm32
+<span id="L2343" class="LineNr">2343 </span>    3d/compare-eax-and  0/imm32/false
 <span id="L2344" class="LineNr">2344 </span>    74/jump-if-=  $emit-segments:check-code-label-for-disp8/disp8
-<span id="L2345" class="Folded">2345 </span><span class="Folded">+-- 33 lines: #?     # dump info-&gt;address --------------------------------------------------------------------------------------------------------------------</span>
+<span id="L2345" class="Folded">2345 </span><span class="Folded">+-- 33 lines: #?     # dump info-&gt;address -----------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L2378" class="LineNr">2378 </span><span class="Constant">$emit-segments:emit-code-label-imm32</span>:
 <span id="L2379" class="LineNr">2379 </span>    <span class="subxComment"># emit-hex(out, info-&gt;address, 4)</span>
 <span id="L2380" class="LineNr">2380 </span>    <span class="subxS2Comment"># . . push args</span>
@@ -2043,7 +2043,7 @@ if ('onhashchange' in window) {
 <span id="L2695" class="LineNr">2695 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L2696" class="LineNr">2696 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2697" class="LineNr">2697 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L2698" class="Folded">2698 </span><span class="Folded">+-- 33 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L2698" class="Folded">2698 </span><span class="Folded">+-- 33 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L2731" class="LineNr">2731 </span>    <span class="subxS1Comment"># . check-next-stream-line-equal(_test-output-stream, &quot;ab cd ef gh &quot;, msg)</span>
 <span id="L2732" class="LineNr">2732 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L2733" class="LineNr">2733 </span>    68/push  <span class="Constant">&quot;F - <a href='survey.subx.html#L2531'>test-emit-segments-global-variable</a>/0&quot;</span>/imm32
@@ -2222,7 +2222,7 @@ if ('onhashchange' in window) {
 <span id="L2906" class="LineNr">2906 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L2907" class="LineNr">2907 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2908" class="LineNr">2908 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L2909" class="Folded">2909 </span><span class="Folded">+-- 33 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L2909" class="Folded">2909 </span><span class="Folded">+-- 33 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L2942" class="LineNr">2942 </span>    <span class="subxS1Comment"># . check-next-stream-line-equal(_test-output-stream, &quot;ab cd &quot;, msg)</span>
 <span id="L2943" class="LineNr">2943 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L2944" class="LineNr">2944 </span>    68/push  <span class="Constant">&quot;F - <a href='survey.subx.html#L2772'>test-emit-segments-code-label</a>/0&quot;</span>/imm32
@@ -2392,7 +2392,7 @@ if ('onhashchange' in window) {
 <span id="L3108" class="LineNr">3108 </span>    e8/call  <a href='../064write-byte.subx.html#L81'>flush</a>/disp32
 <span id="L3109" class="LineNr">3109 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3110" class="LineNr">3110 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              4/imm32           <span class="subxComment"># add to esp</span>
-<span id="L3111" class="Folded">3111 </span><span class="Folded">+-- 33 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3111" class="Folded">3111 </span><span class="Folded">+-- 33 lines: #?     # dump output ------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3144" class="LineNr">3144 </span>    <span class="subxS1Comment"># . check-next-stream-line-equal(_test-output-stream, &quot;ab cd &quot;, msg)</span>
 <span id="L3145" class="LineNr">3145 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3146" class="LineNr">3146 </span>    68/push  <span class="Constant">&quot;F - <a href='survey.subx.html#L2974'>test-emit-segments-code-label-absolute</a>/0&quot;</span>/imm32
@@ -2441,7 +2441,7 @@ if ('onhashchange' in window) {
 <span id="L3189" class="LineNr">3189 </span>    <span class="subxS1Comment"># . save registers</span>
 <span id="L3190" class="LineNr">3190 </span>    50/push-eax
 <span id="L3191" class="LineNr">3191 </span>    51/push-ecx
-<span id="L3192" class="Folded">3192 </span><span class="Folded">+--  9 lines: #?     # write(2/stderr, &quot;emit-elf-header\n&quot;) --------------------------------------------------------------------------------------------------</span>
+<span id="L3192" class="Folded">3192 </span><span class="Folded">+--  9 lines: #?     # write(2/stderr, &quot;emit-elf-header\n&quot;) -----------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3201" class="LineNr">3201 </span>    <span class="subxComment"># emit-elf-header(out, segments, labels)</span>
 <span id="L3202" class="LineNr">3202 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3203" class="LineNr">3203 </span>    ff          6/subop/push        1/mod/*+disp8   5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          0x10/disp8     <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+16)</span>
@@ -2463,8 +2463,8 @@ if ('onhashchange' in window) {
 <span id="L3219" class="LineNr">3219 </span>    <span class="subxComment"># if (curr-segment &gt;= max) break</span>
 <span id="L3220" class="LineNr">3220 </span>    39/compare                      3/mod/direct    0/rm32/eax   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          1/r32/ecx  <span class="Normal"> . </span>             <span class="Normal"> . </span>                <span class="subxComment"># compare eax with ecx</span>
 <span id="L3221" class="LineNr">3221 </span>    0f 83/jump-if-addr&gt;=  $emit-headers:end/disp32
-<span id="L3222" class="Folded">3222 </span><span class="Folded">+-- 63 lines: #?     # dump curr-segment-&gt;name ---------------------------------------------------------------------------------------------------------------</span>
-<span id="L3285" class="Folded">3285 </span><span class="Folded">+--  9 lines: #?     # write(2/stderr, &quot;emit-segment-header\n&quot;) ----------------------------------------------------------------------------------------------</span>
+<span id="L3222" class="Folded">3222 </span><span class="Folded">+-- 63 lines: #?     # dump curr-segment-&gt;name ------------------------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3285" class="Folded">3285 </span><span class="Folded">+--  9 lines: #?     # write(2/stderr, &quot;emit-segment-header\n&quot;) -------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3294" class="LineNr">3294 </span>    <span class="subxComment"># emit-elf-program-header-entry(out, curr-segment)</span>
 <span id="L3295" class="LineNr">3295 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3296" class="LineNr">3296 </span>    50/push-eax
@@ -2796,7 +2796,7 @@ if ('onhashchange' in window) {
 <span id="L3622" class="LineNr">3622 </span>    e8/call  <a href='survey.subx.html#L3557'>trace-sssns</a>/disp32
 <span id="L3623" class="LineNr">3623 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3624" class="LineNr">3624 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              0x14/imm32        <span class="subxComment"># add to esp</span>
-<span id="L3625" class="Folded">3625 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream --------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3625" class="Folded">3625 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream -----------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3651" class="LineNr">3651 </span>    <span class="subxComment"># check-trace-contains(&quot;Abc 0x00000003 e&quot;)</span>
 <span id="L3652" class="LineNr">3652 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3653" class="LineNr">3653 </span>    68/push  <span class="Constant">&quot;F - test-trace-sssns&quot;</span>/imm32
@@ -2878,7 +2878,7 @@ if ('onhashchange' in window) {
 <span id="L3729" class="LineNr">3729 </span>    e8/call  <a href='survey.subx.html#L3664'>trace-snsns</a>/disp32
 <span id="L3730" class="LineNr">3730 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3731" class="LineNr">3731 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              0x14/imm32        <span class="subxComment"># add to esp</span>
-<span id="L3732" class="Folded">3732 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream --------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3732" class="Folded">3732 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream -----------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3758" class="LineNr">3758 </span>    <span class="subxComment"># check-trace-contains(&quot;Abc 0x00000003 e&quot;)</span>
 <span id="L3759" class="LineNr">3759 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3760" class="LineNr">3760 </span>    68/push  <span class="Constant">&quot;F - test-trace-snsns&quot;</span>/imm32
@@ -2978,7 +2978,7 @@ if ('onhashchange' in window) {
 <span id="L3854" class="LineNr">3854 </span>    e8/call  <a href='survey.subx.html#L3771'>trace-slsls</a>/disp32
 <span id="L3855" class="LineNr">3855 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3856" class="LineNr">3856 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              0x14/imm32        <span class="subxComment"># add to esp</span>
-<span id="L3857" class="Folded">3857 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream --------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3857" class="Folded">3857 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream -----------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3883" class="LineNr">3883 </span>    <span class="subxComment"># check-trace-contains(&quot;Abcde&quot;)</span>
 <span id="L3884" class="LineNr">3884 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3885" class="LineNr">3885 </span>    68/push  <span class="Constant">&quot;F - test-trace-slsls&quot;</span>/imm32
@@ -3069,7 +3069,7 @@ if ('onhashchange' in window) {
 <span id="L3970" class="LineNr">3970 </span>    e8/call  <a href='survey.subx.html#L3896'>trace-slsns</a>/disp32
 <span id="L3971" class="LineNr">3971 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3972" class="LineNr">3972 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              0x14/imm32        <span class="subxComment"># add to esp</span>
-<span id="L3973" class="Folded">3973 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream --------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3973" class="Folded">3973 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream -----------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3999" class="LineNr">3999 </span>    <span class="subxComment"># check-trace-contains(&quot;Abc 0x00000003 e&quot;)</span>
 <span id="L4000" class="LineNr">4000 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4001" class="LineNr">4001 </span>    68/push  <span class="Constant">&quot;F - test-trace-slsls&quot;</span>/imm32
@@ -3160,7 +3160,7 @@ if ('onhashchange' in window) {
 <span id="L4086" class="LineNr">4086 </span>    e8/call  <a href='survey.subx.html#L4012'>trace-slsss</a>/disp32
 <span id="L4087" class="LineNr">4087 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4088" class="LineNr">4088 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              0x14/imm32        <span class="subxComment"># add to esp</span>
-<span id="L4089" class="Folded">4089 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream --------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4089" class="Folded">4089 </span><span class="Folded">+-- 26 lines: #?     # dump *Trace-stream -----------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4115" class="LineNr">4115 </span>    <span class="subxComment"># check-trace-contains(&quot;Abcde&quot;)</span>
 <span id="L4116" class="LineNr">4116 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4117" class="LineNr">4117 </span>    68/push  <span class="Constant">&quot;F - test-trace-slsss&quot;</span>/imm32
@@ -3203,7 +3203,7 @@ if ('onhashchange' in window) {
 <span id="L4154" class="LineNr">4154 </span>    68/push  0/imm32/end
 <span id="L4155" class="LineNr">4155 </span>    68/push  0/imm32/start
 <span id="L4156" class="LineNr">4156 </span>    89/copy                         3/mod/direct    1/rm32/ecx   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>          4/r32/esp  <span class="Normal"> . </span>             <span class="Normal"> . </span>                <span class="subxComment"># copy esp to ecx</span>
-<span id="L4157" class="Folded">4157 </span><span class="Folded">+-- 26 lines: #?     # dump line -----------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4157" class="Folded">4157 </span><span class="Folded">+-- 26 lines: #?     # dump line --------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4183" class="LineNr">4183 </span>    <span class="subxS1Comment"># . rewind-stream(line)</span>
 <span id="L4184" class="LineNr">4184 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4185" class="LineNr">4185 </span>    ff          6/subop/push        1/mod/*+disp8   5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          8/disp8        <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+8)</span>
@@ -3220,7 +3220,7 @@ if ('onhashchange' in window) {
 <span id="L4196" class="LineNr">4196 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L4197" class="LineNr">4197 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4198" class="LineNr">4198 </span>    81          0/subop/add         3/mod/direct    4/rm32/esp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              8/imm32           <span class="subxComment"># add to esp</span>
-<span id="L4199" class="Folded">4199 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4199" class="Folded">4199 </span><span class="Folded">+-- 40 lines: #?     # dump word-slice --------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4239" class="LineNr">4239 </span><span class="Constant">$num-bytes:check0</span>:
 <span id="L4240" class="LineNr">4240 </span>    <span class="subxComment"># if (slice-empty?(word-slice)) break</span>
 <span id="L4241" class="LineNr">4241 </span>    <span class="subxS1Comment"># . save result</span>
diff --git a/html/mu-init.subx.html b/html/mu-init.subx.html
index e9fa6bab..324210e4 100644
--- a/html/mu-init.subx.html
+++ b/html/mu-init.subx.html
@@ -57,9 +57,9 @@ if ('onhashchange' in window) {
 <span id="L3" class="LineNr"> 3 </span><span class="subxComment"># See translate_mu for how this file is used.</span>
 <span id="L4" class="LineNr"> 4 </span><span class="subxComment">#</span>
 <span id="L5" class="LineNr"> 5 </span><span class="subxComment"># Mu programs start at a function called 'main' with this signature:</span>
-<span id="L6" class="LineNr"> 6 </span><span class="subxComment">#   fn main args: (address array kernel-string) -&gt; exit_status/ebx: int</span>
+<span id="L6" class="LineNr"> 6 </span><span class="subxComment">#   fn main args: (addr array kernel-string) -&gt; exit-status/ebx: int</span>
 <span id="L7" class="LineNr"> 7 </span><span class="subxComment"># If your program doesn't need commandline arguments you can drop it:</span>
-<span id="L8" class="LineNr"> 8 </span><span class="subxComment">#   fn main -&gt; exit_status/ebx: int</span>
+<span id="L8" class="LineNr"> 8 </span><span class="subxComment">#   fn main -&gt; exit-status/ebx: int</span>
 <span id="L9" class="LineNr"> 9 </span><span class="subxComment">#</span>
 <span id="L10" class="LineNr">10 </span><span class="subxComment"># Notice that the output must be in ebx, so that the exit() syscall can pick</span>
 <span id="L11" class="LineNr">11 </span><span class="subxComment"># it up.</span>
@@ -69,7 +69,7 @@ if ('onhashchange' in window) {
 <span id="L15" class="LineNr">15 </span><span class="SpecialChar">Entry</span>:
 <span id="L16" class="LineNr">16 </span>    <span class="subxComment"># we don't use ebp in Entry; just initialize it</span>
 <span id="L17" class="LineNr">17 </span>    bd/copy-to-ebp 0/imm32
-<span id="L18" class="LineNr">18 </span>    <span class="subxComment"># var args/eax: (address array kernel-string)</span>
+<span id="L18" class="LineNr">18 </span>    <span class="subxComment"># var args/eax: (addr array kernel-string)</span>
 <span id="L19" class="LineNr">19 </span>    89/&lt;- %eax 4/r32/esp
 <span id="L20" class="LineNr">20 </span>    <span class="subxComment"># initialize the heap</span>
 <span id="L21" class="LineNr">21 </span>    (<a href='053new-segment.subx.html#L41'>new-segment</a> *<span class="SpecialChar"><a href='069allocate.subx.html#L29'>Heap-size</a></span> <span class="SpecialChar"><a href='069allocate.subx.html#L22'>Heap</a></span>)