about summary refs log tree commit diff stats
path: root/html/apps/pack.subx.html
diff options
context:
space:
mode:
Diffstat (limited to 'html/apps/pack.subx.html')
-rw-r--r--html/apps/pack.subx.html360
1 files changed, 180 insertions, 180 deletions
diff --git a/html/apps/pack.subx.html b/html/apps/pack.subx.html
index 05b04d4d..86267ee6 100644
--- a/html/apps/pack.subx.html
+++ b/html/apps/pack.subx.html
@@ -65,7 +65,7 @@ if ('onhashchange' in window) {
 <span id="L3" class="LineNr">   3 </span><span class="subxComment"># uses are left untouched.</span>
 <span id="L4" class="LineNr">   4 </span><span class="subxComment">#</span>
 <span id="L5" class="LineNr">   5 </span><span class="subxComment"># To run:</span>
-<span id="L6" class="LineNr">   6 </span><span class="subxComment">#   $ ./subx translate init.linux 0*.subx apps/subx-common.subx apps/pack.subx  -o apps/pack</span>
+<span id="L6" class="LineNr">   6 </span><span class="subxComment">#   $ ./subx translate init.linux 0*.subx apps/subx-params.subx apps/pack.subx  -o apps/pack</span>
 <span id="L7" class="LineNr">   7 </span><span class="subxComment">#   $ echo '05/add-to-eax 0x20/imm32'  |./subx run apps/pack</span>
 <span id="L8" class="LineNr">   8 </span><span class="subxComment"># Expected output:</span>
 <span id="L9" class="LineNr">   9 </span><span class="subxComment">#   05 20 00 00 00  # 05/add-to-eax 0x20/imm32</span>
@@ -85,20 +85,20 @@ if ('onhashchange' in window) {
 <span id="L23" class="LineNr">  23 </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="L24" class="LineNr">  24 </span>
 <span id="L25" class="LineNr">  25 </span>    <span class="subxComment"># initialize heap</span>
-<span id="L26" class="LineNr">  26 </span>    <span class="subxS1Comment"># . Heap = new-segment(64KB)</span>
+<span id="L26" class="LineNr">  26 </span>    <span class="subxS1Comment"># . Heap = new-segment(Heap-size)</span>
 <span id="L27" class="LineNr">  27 </span>    <span class="subxS2Comment"># . . push args</span>
-<span id="L28" class="LineNr">  28 </span>    68/push  <span class="SpecialChar"><a href='../075array-equal.subx.html#L623'>Heap</a></span>/imm32
-<span id="L29" class="LineNr">  29 </span>    68/push  0x10000/imm32/64KB
+<span id="L28" class="LineNr">  28 </span>    68/push  <span class="SpecialChar"><a href='../069allocate.subx.html#L22'>Heap</a></span>/imm32
+<span id="L29" class="LineNr">  29 </span>    68/push  <span class="SpecialChar"><a href='../069allocate.subx.html#L29'>Heap-size</a></span>/imm32
 <span id="L30" class="LineNr">  30 </span>    <span class="subxS2Comment"># . . call</span>
 <span id="L31" class="LineNr">  31 </span>    e8/call  <a href='../053new-segment.subx.html#L41'>new-segment</a>/disp32
 <span id="L32" class="LineNr">  32 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L33" class="LineNr">  33 </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="L34" class="LineNr">  34 </span>
 <span id="L35" class="LineNr">  35 </span>    <span class="subxH1Comment"># - if argc &gt; 1 and argv[1] == &quot;test&quot;, then return run_tests()</span>
-<span id="L36" class="LineNr">  36 </span>    <span class="subxComment"># if (argc &lt;= 1) goto run-main</span>
+<span id="L36" class="LineNr">  36 </span>    <span class="subxComment"># if (argc &lt;= 1) goto interactive</span>
 <span id="L37" class="LineNr">  37 </span>    81          7/subop/compare     1/mod/*+disp8   5/rm32/ebp   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>          0/disp8         1/imm32           <span class="subxComment"># compare *ebp</span>
-<span id="L38" class="LineNr">  38 </span>    7e/jump-if-lesser-or-equal  $run-main/disp8
-<span id="L39" class="LineNr">  39 </span>    <span class="subxComment"># if (!kernel-string-equal?(argv[1], &quot;test&quot;)) goto run-main</span>
+<span id="L38" class="LineNr">  38 </span>    7e/jump-if-lesser-or-equal  $subx-pack-main:interactive/disp8
+<span id="L39" class="LineNr">  39 </span>    <span class="subxComment"># if (!kernel-string-equal?(argv[1], &quot;test&quot;)) goto interactive</span>
 <span id="L40" class="LineNr">  40 </span>    <span class="subxS1Comment"># . eax = kernel-string-equal?(argv[1], &quot;test&quot;)</span>
 <span id="L41" class="LineNr">  41 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L42" class="LineNr">  42 </span>    68/push  <span class="Constant">&quot;test&quot;</span>/imm32
@@ -107,15 +107,15 @@ if ('onhashchange' in window) {
 <span id="L45" class="LineNr">  45 </span>    e8/call  <a href='../052kernel-string-equal.subx.html#L31'>kernel-string-equal?</a>/disp32
 <span id="L46" class="LineNr">  46 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L47" class="LineNr">  47 </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="L48" class="LineNr">  48 </span>    <span class="subxS1Comment"># . if (eax == 0) goto run-main</span>
+<span id="L48" class="LineNr">  48 </span>    <span class="subxS1Comment"># . if (eax == 0) goto interactive</span>
 <span id="L49" class="LineNr">  49 </span>    3d/compare-eax-and  0/imm32
-<span id="L50" class="LineNr">  50 </span>    74/jump-if-equal  $run-main/disp8
+<span id="L50" class="LineNr">  50 </span>    74/jump-if-equal  $subx-pack-main:interactive/disp8
 <span id="L51" class="LineNr">  51 </span>    <span class="subxComment"># run-tests()</span>
 <span id="L52" class="LineNr">  52 </span>    e8/call  run-tests/disp32
 <span id="L53" class="LineNr">  53 </span>    <span class="subxComment"># syscall(exit, *Num-test-failures)</span>
 <span id="L54" class="LineNr">  54 </span>    8b/copy                         0/mod/indirect  5/rm32/.disp32           <span class="Normal"> . </span>           <span class="Normal"> . </span>          3/r32/ebx   <span class="SpecialChar"><a href='../051test.subx.html#L90'>Num-test-failures</a></span>/disp32          <span class="subxComment"># copy *Num-test-failures to ebx</span>
-<span id="L55" class="LineNr">  55 </span>    eb/jump  $main:end/disp8
-<span id="L56" class="LineNr">  56 </span><span class="Constant">$run-main</span>:
+<span id="L55" class="LineNr">  55 </span>    eb/jump  $subx-pack-main:end/disp8
+<span id="L56" class="LineNr">  56 </span><span class="Constant">$subx-pack-main:interactive</span>:
 <span id="L57" class="LineNr">  57 </span>    <span class="subxH1Comment"># - otherwise convert stdin</span>
 <span id="L58" class="LineNr">  58 </span>    <span class="subxComment"># var ed/eax : exit-descriptor</span>
 <span id="L59" class="LineNr">  59 </span>    81          5/subop/subtract    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"># subtract from esp</span>
@@ -123,19 +123,19 @@ if ('onhashchange' in window) {
 <span id="L61" class="LineNr">  61 </span>    <span class="subxComment"># configure ed to really exit()</span>
 <span id="L62" class="LineNr">  62 </span>    <span class="subxS1Comment"># . ed-&gt;target = 0</span>
 <span id="L63" class="LineNr">  63 </span>    c7          0/subop/copy        0/mod/direct    0/rm32/eax   <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"># copy to *eax</span>
-<span id="L64" class="LineNr">  64 </span>    <span class="subxComment"># convert(Stdin, Stdout, Stderr, ed)</span>
+<span id="L64" class="LineNr">  64 </span>    <span class="subxComment"># subx-pack(Stdin, Stdout, Stderr, ed)</span>
 <span id="L65" class="LineNr">  65 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L66" class="LineNr">  66 </span>    50/push-eax/ed
 <span id="L67" class="LineNr">  67 </span>    68/push  <span class="SpecialChar"><a href='../065write-buffered.subx.html#L213'>Stderr</a></span>/imm32
 <span id="L68" class="LineNr">  68 </span>    68/push  <span class="SpecialChar"><a href='../064write-byte.subx.html#L10'>Stdout</a></span>/imm32
 <span id="L69" class="LineNr">  69 </span>    68/push  <span class="SpecialChar"><a href='../061read-byte.subx.html#L14'>Stdin</a></span>/imm32
 <span id="L70" class="LineNr">  70 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L71" class="LineNr">  71 </span>    e8/call  <a href='pack.subx.html#L100'>convert</a>/disp32
+<span id="L71" class="LineNr">  71 </span>    e8/call  <a href='pack.subx.html#L100'>subx-pack</a>/disp32
 <span id="L72" class="LineNr">  72 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L73" class="LineNr">  73 </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="L74" class="LineNr">  74 </span>    <span class="subxComment"># syscall(exit, 0)</span>
 <span id="L75" class="LineNr">  75 </span>    bb/copy-to-ebx  0/imm32
-<span id="L76" class="LineNr">  76 </span><span class="Constant">$main:end</span>:
+<span id="L76" class="LineNr">  76 </span><span class="Constant">$subx-pack-main:end</span>:
 <span id="L77" class="LineNr">  77 </span>    b8/copy-to-eax  1/imm32/exit
 <span id="L78" class="LineNr">  78 </span>    cd/syscall  0x80/imm8
 <span id="L79" class="LineNr">  79 </span>
@@ -159,7 +159,7 @@ if ('onhashchange' in window) {
 <span id="L97" class="LineNr">  97 </span><span class="subxComment">#   next-token-from-slice(start, end, delim char) -&gt; slice</span>
 <span id="L98" class="LineNr">  98 </span><span class="subxComment">#   slice-equal?(slice, string)</span>
 <span id="L99" class="LineNr">  99 </span>
-<span id="L100" class="LineNr"> 100 </span><span class="subxFunction">convert</span>:  <span class="subxComment"># in : (address buffered-file), out : (address buffered-file) -&gt; &lt;void&gt;</span>
+<span id="L100" class="LineNr"> 100 </span><span class="subxFunction">subx-pack</span>:  <span class="subxComment"># in : (address buffered-file), out : (address buffered-file) -&gt; &lt;void&gt;</span>
 <span id="L101" class="LineNr"> 101 </span>    <span class="subxComment"># pseudocode:</span>
 <span id="L102" class="LineNr"> 102 </span>    <span class="subxComment">#   var line = new-stream(512, 1)</span>
 <span id="L103" class="LineNr"> 103 </span>    <span class="subxComment">#   var in-code? = false</span>
@@ -202,7 +202,7 @@ if ('onhashchange' in window) {
 <span id="L140" class="LineNr"> 140 </span>    89/copy                         3/mod/direct    2/rm32/edx   <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 edx</span>
 <span id="L141" class="LineNr"> 141 </span>    <span class="subxComment"># var in-code?/ebx = false</span>
 <span id="L142" class="LineNr"> 142 </span>    31/xor                          3/mod/direct    3/rm32/ebx   <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"># clear ebx</span>
-<span id="L143" class="LineNr"> 143 </span><span class="Constant">$convert:loop</span>:
+<span id="L143" class="LineNr"> 143 </span><span class="Constant">$subx-pack:loop</span>:
 <span id="L144" class="LineNr"> 144 </span>    <span class="subxComment"># clear-stream(line)</span>
 <span id="L145" class="LineNr"> 145 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L146" class="LineNr"> 146 </span>    51/push-ecx
@@ -218,20 +218,20 @@ if ('onhashchange' in window) {
 <span id="L156" class="LineNr"> 156 </span>    e8/call  <a href='../071read-line.subx.html#L9'>read-line-buffered</a>/disp32
 <span id="L157" class="LineNr"> 157 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L158" class="LineNr"> 158 </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="L159" class="LineNr"> 159 </span><span class="Constant">$convert:check0</span>:
+<span id="L159" class="LineNr"> 159 </span><span class="Constant">$subx-pack:check0</span>:
 <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-equal  $convert:break/disp32
-<span id="L163" class="Folded"> 163 </span><span class="Folded">+-- 26 lines: #?     # dump line -----------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L162" class="LineNr"> 162 </span>    0f 84/jump-if-equal  $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="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
 <span id="L192" class="LineNr"> 192 </span>    51/push-ecx
 <span id="L193" class="LineNr"> 193 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L194" class="LineNr"> 194 </span>    e8/call  next-word/disp32
+<span id="L194" class="LineNr"> 194 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L195" class="LineNr"> 195 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L196" class="LineNr"> 196 </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="L197" class="LineNr"> 197 </span><span class="Constant">$convert:check1</span>:
+<span id="L197" class="LineNr"> 197 </span><span class="Constant">$subx-pack:check1</span>:
 <span id="L198" class="LineNr"> 198 </span>    <span class="subxComment"># if (slice-empty?(word-slice)) write-stream-data(out, line)</span>
 <span id="L199" class="LineNr"> 199 </span>    <span class="subxS1Comment"># . eax = slice-empty?(word-slice)</span>
 <span id="L200" class="LineNr"> 200 </span>    <span class="subxS2Comment"># . . push args</span>
@@ -242,9 +242,9 @@ if ('onhashchange' in window) {
 <span id="L205" class="LineNr"> 205 </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="L206" class="LineNr"> 206 </span>    <span class="subxS1Comment"># . if (eax != 0) write-stream-data(out, line)</span>
 <span id="L207" class="LineNr"> 207 </span>    3d/compare-eax-and  0/imm32
-<span id="L208" class="LineNr"> 208 </span>    0f 85/jump-if-not-equal  $convert:pass-through/disp32
-<span id="L209" class="LineNr"> 209 </span><span class="Constant">$convert:check2</span>:
-<span id="L210" class="Folded"> 210 </span><span class="Folded">+-- 42 lines: #?     # dump word-slice -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L208" class="LineNr"> 208 </span>    0f 85/jump-if-not-equal  $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">+-- 42 lines: #?     # dump word-slice -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L252" class="LineNr"> 252 </span>    <span class="subxComment"># if (!slice-equal?(word-slice, &quot;==&quot;)) goto next check</span>
 <span id="L253" class="LineNr"> 253 </span>    <span class="subxS1Comment"># . eax = slice-equal?(word-slice, &quot;==&quot;)</span>
 <span id="L254" class="LineNr"> 254 </span>    <span class="subxS2Comment"># . . push args</span>
@@ -256,16 +256,16 @@ if ('onhashchange' in window) {
 <span id="L260" class="LineNr"> 260 </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="L261" class="LineNr"> 261 </span>    <span class="subxS1Comment"># . if (eax == 0) goto check3</span>
 <span id="L262" class="LineNr"> 262 </span>    3d/compare-eax-and  0/imm32
-<span id="L263" class="LineNr"> 263 </span>    0f 84/jump-if-equal  $convert:check3/disp32
+<span id="L263" class="LineNr"> 263 </span>    0f 84/jump-if-equal  $subx-pack:check3/disp32
 <span id="L264" class="LineNr"> 264 </span>    <span class="subxComment"># word-slice = next-word(line)</span>
 <span id="L265" class="LineNr"> 265 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L266" class="LineNr"> 266 </span>    52/push-edx
 <span id="L267" class="LineNr"> 267 </span>    51/push-ecx
 <span id="L268" class="LineNr"> 268 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L269" class="LineNr"> 269 </span>    e8/call  next-word/disp32
+<span id="L269" class="LineNr"> 269 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L270" class="LineNr"> 270 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L271" class="LineNr"> 271 </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="L272" class="Folded"> 272 </span><span class="Folded">+-- 42 lines: #?     # dump segment name ---------------------------------------------------------------------------------------------------------------------</span>
+<span id="L272" class="Folded"> 272 </span><span class="Folded">+-- 42 lines: #?     # dump segment name -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L314" class="LineNr"> 314 </span>    <span class="subxComment"># in-code? = slice-equal?(word-slice, &quot;code&quot;)</span>
 <span id="L315" class="LineNr"> 315 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L316" class="LineNr"> 316 </span>    68/push  <span class="Constant">&quot;code&quot;</span>/imm32
@@ -277,20 +277,20 @@ if ('onhashchange' in window) {
 <span id="L322" class="LineNr"> 322 </span>    <span class="subxS2Comment"># . . in-code? = eax</span>
 <span id="L323" class="LineNr"> 323 </span>    89/copy                         3/mod/direct    3/rm32/ebx   <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 ebx</span>
 <span id="L324" class="LineNr"> 324 </span>    <span class="subxComment"># write-stream-data(out, line)</span>
-<span id="L325" class="LineNr"> 325 </span>    eb/jump  $convert:pass-through/disp8
-<span id="L326" class="LineNr"> 326 </span><span class="Constant">$convert:check3</span>:
+<span id="L325" class="LineNr"> 325 </span>    eb/jump  $subx-pack:pass-through/disp8
+<span id="L326" class="LineNr"> 326 </span><span class="Constant">$subx-pack:check3</span>:
 <span id="L327" class="LineNr"> 327 </span>    <span class="subxComment"># else rewind-stream(line)</span>
 <span id="L328" class="LineNr"> 328 </span>    <span class="subxS1Comment"># . rewind-stream(line)</span>
 <span id="L329" class="LineNr"> 329 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L330" class="LineNr"> 330 </span>    51/push-ecx
 <span id="L331" class="LineNr"> 331 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L332" class="LineNr"> 332 </span>    e8/call  <a href='../055stream.subx.html#L55'>rewind-stream</a>/disp32
+<span id="L332" class="LineNr"> 332 </span>    e8/call  <a href='../055stream.subx.html#L54'>rewind-stream</a>/disp32
 <span id="L333" class="LineNr"> 333 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L334" class="LineNr"> 334 </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="L335" class="LineNr"> 335 </span>    <span class="subxComment"># if (in-code? != 0) convert-instruction(line, out)</span>
 <span id="L336" class="LineNr"> 336 </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="L337" class="LineNr"> 337 </span>    74/jump-if-equal  $convert:data/disp8
-<span id="L338" class="LineNr"> 338 </span><span class="Constant">$convert:code</span>:
+<span id="L337" class="LineNr"> 337 </span>    74/jump-if-equal  $subx-pack:data/disp8
+<span id="L338" class="LineNr"> 338 </span><span class="Constant">$subx-pack:code</span>:
 <span id="L339" class="LineNr"> 339 </span>    <span class="subxS1Comment"># . convert-instruction(line, out)</span>
 <span id="L340" class="LineNr"> 340 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L341" class="LineNr"> 341 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
@@ -300,8 +300,8 @@ if ('onhashchange' in window) {
 <span id="L345" class="LineNr"> 345 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L346" class="LineNr"> 346 </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="L347" class="LineNr"> 347 </span>    <span class="subxS1Comment"># . loop</span>
-<span id="L348" class="LineNr"> 348 </span>    e9/jump  $convert:loop/disp32
-<span id="L349" class="LineNr"> 349 </span><span class="Constant">$convert:data</span>:
+<span id="L348" class="LineNr"> 348 </span>    e9/jump  $subx-pack:<span class="Constant">loop</span>/disp32
+<span id="L349" class="LineNr"> 349 </span><span class="Constant">$subx-pack:data</span>:
 <span id="L350" class="LineNr"> 350 </span>    <span class="subxComment"># else convert-data(line, out)</span>
 <span id="L351" class="LineNr"> 351 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L352" class="LineNr"> 352 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
@@ -311,19 +311,19 @@ if ('onhashchange' in window) {
 <span id="L356" class="LineNr"> 356 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L357" class="LineNr"> 357 </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="L358" class="LineNr"> 358 </span>    <span class="subxS1Comment"># . loop</span>
-<span id="L359" class="LineNr"> 359 </span>    e9/jump  $convert:loop/disp32
-<span id="L360" class="LineNr"> 360 </span><span class="Constant">$convert:pass-through</span>:
+<span id="L359" class="LineNr"> 359 </span>    e9/jump  $subx-pack:<span class="Constant">loop</span>/disp32
+<span id="L360" class="LineNr"> 360 </span><span class="Constant">$subx-pack:pass-through</span>:
 <span id="L361" class="LineNr"> 361 </span>    <span class="subxComment"># write-stream-data(out, line)</span>
 <span id="L362" class="LineNr"> 362 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L363" class="LineNr"> 363 </span>    51/push-ecx
 <span id="L364" class="LineNr"> 364 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L365" class="LineNr"> 365 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L366" class="LineNr"> 366 </span>    e8/call  write-stream-data/disp32
+<span id="L366" class="LineNr"> 366 </span>    e8/call  <a href='../074write-stream-data.subx.html#L11'>write-stream-data</a>/disp32
 <span id="L367" class="LineNr"> 367 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L368" class="LineNr"> 368 </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="L369" class="LineNr"> 369 </span>    <span class="subxS1Comment"># . loop</span>
-<span id="L370" class="LineNr"> 370 </span>    e9/jump  $convert:loop/disp32
-<span id="L371" class="LineNr"> 371 </span><span class="Constant">$convert:break</span>:
+<span id="L370" class="LineNr"> 370 </span>    e9/jump  $subx-pack:<span class="Constant">loop</span>/disp32
+<span id="L371" class="LineNr"> 371 </span><span class="Constant">$subx-pack:break</span>:
 <span id="L372" class="LineNr"> 372 </span>    <span class="subxComment"># flush(out)</span>
 <span id="L373" class="LineNr"> 373 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L374" class="LineNr"> 374 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
@@ -331,7 +331,7 @@ if ('onhashchange' in window) {
 <span id="L376" class="LineNr"> 376 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L377" class="LineNr"> 377 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L378" class="LineNr"> 378 </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="L379" class="LineNr"> 379 </span><span class="Constant">$convert:end</span>:
+<span id="L379" class="LineNr"> 379 </span><span class="Constant">$subx-pack:end</span>:
 <span id="L380" class="LineNr"> 380 </span>    <span class="subxS1Comment"># . reclaim locals</span>
 <span id="L381" class="LineNr"> 381 </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>              0x214/imm32       <span class="subxComment"># add to esp</span>
 <span id="L382" class="LineNr"> 382 </span>    <span class="subxS1Comment"># . restore registers</span>
@@ -344,7 +344,7 @@ if ('onhashchange' in window) {
 <span id="L389" class="LineNr"> 389 </span>    5d/pop-to-ebp
 <span id="L390" class="LineNr"> 390 </span>    c3/return
 <span id="L391" class="LineNr"> 391 </span>
-<span id="L392" class="LineNr"> 392 </span><span class="subxTest">test-convert-passes-empty-lines-through</span>:
+<span id="L392" class="LineNr"> 392 </span><span class="subxTest">test-subx-pack-passes-empty-lines-through</span>:
 <span id="L393" class="LineNr"> 393 </span>    <span class="subxComment"># if a line is empty, pass it along unchanged</span>
 <span id="L394" class="LineNr"> 394 </span>    <span class="subxS1Comment"># . prolog</span>
 <span id="L395" class="LineNr"> 395 </span>    55/push-ebp
@@ -383,12 +383,12 @@ if ('onhashchange' in window) {
 <span id="L428" class="LineNr"> 428 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L429" class="LineNr"> 429 </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="L430" class="LineNr"> 430 </span>    <span class="subxComment"># write nothing to input</span>
-<span id="L431" class="LineNr"> 431 </span>    <span class="subxComment"># convert(_test-input-buffered-file, _test-output-buffered-file)</span>
+<span id="L431" class="LineNr"> 431 </span>    <span class="subxComment"># subx-pack(_test-input-buffered-file, _test-output-buffered-file)</span>
 <span id="L432" class="LineNr"> 432 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L433" class="LineNr"> 433 </span>    68/push  <a href='../064write-byte.subx.html#L332'>_test-output-buffered-file</a>/imm32
 <span id="L434" class="LineNr"> 434 </span>    68/push  <a href='../061read-byte.subx.html#L319'>_test-input-buffered-file</a>/imm32
 <span id="L435" class="LineNr"> 435 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L436" class="LineNr"> 436 </span>    e8/call  <a href='pack.subx.html#L100'>convert</a>/disp32
+<span id="L436" class="LineNr"> 436 </span>    e8/call  <a href='pack.subx.html#L100'>subx-pack</a>/disp32
 <span id="L437" class="LineNr"> 437 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L438" class="LineNr"> 438 </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="L439" class="LineNr"> 439 </span>    <span class="subxComment"># check that the line just passed through</span>
@@ -401,7 +401,7 @@ if ('onhashchange' in window) {
 <span id="L446" class="LineNr"> 446 </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="L447" class="LineNr"> 447 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;&quot;, msg)</span>
 <span id="L448" class="LineNr"> 448 </span>    <span class="subxS2Comment"># . . push args</span>
-<span id="L449" class="LineNr"> 449 </span>    68/push  <span class="Constant">&quot;F - test-convert-passes-empty-lines-through&quot;</span>/imm32
+<span id="L449" class="LineNr"> 449 </span>    68/push  <span class="Constant">&quot;F - test-subx-pack-passes-empty-lines-through&quot;</span>/imm32
 <span id="L450" class="LineNr"> 450 </span>    68/push  <span class="Constant">&quot;&quot;</span>/imm32
 <span id="L451" class="LineNr"> 451 </span>    68/push  <a href='../064write-byte.subx.html#L290'>_test-output-stream</a>/imm32
 <span id="L452" class="LineNr"> 452 </span>    <span class="subxS2Comment"># . . call</span>
@@ -413,7 +413,7 @@ if ('onhashchange' in window) {
 <span id="L458" class="LineNr"> 458 </span>    5d/pop-to-ebp
 <span id="L459" class="LineNr"> 459 </span>    c3/return
 <span id="L460" class="LineNr"> 460 </span>
-<span id="L461" class="LineNr"> 461 </span><span class="subxTest">test-convert-passes-lines-with-just-whitespace-through</span>:
+<span id="L461" class="LineNr"> 461 </span><span class="subxTest">test-subx-pack-passes-lines-with-just-whitespace-through</span>:
 <span id="L462" class="LineNr"> 462 </span>    <span class="subxComment"># if a line is empty, pass it along unchanged</span>
 <span id="L463" class="LineNr"> 463 </span>    <span class="subxS1Comment"># . prolog</span>
 <span id="L464" class="LineNr"> 464 </span>    55/push-ebp
@@ -460,12 +460,12 @@ if ('onhashchange' in window) {
 <span id="L505" class="LineNr"> 505 </span>    e8/call  <a href='../057write.subx.html#L24'>write</a>/disp32
 <span id="L506" class="LineNr"> 506 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L507" class="LineNr"> 507 </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="L508" class="LineNr"> 508 </span>    <span class="subxComment"># convert(_test-input-buffered-file, _test-output-buffered-file)</span>
+<span id="L508" class="LineNr"> 508 </span>    <span class="subxComment"># subx-pack(_test-input-buffered-file, _test-output-buffered-file)</span>
 <span id="L509" class="LineNr"> 509 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L510" class="LineNr"> 510 </span>    68/push  <a href='../064write-byte.subx.html#L332'>_test-output-buffered-file</a>/imm32
 <span id="L511" class="LineNr"> 511 </span>    68/push  <a href='../061read-byte.subx.html#L319'>_test-input-buffered-file</a>/imm32
 <span id="L512" class="LineNr"> 512 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L513" class="LineNr"> 513 </span>    e8/call  <a href='pack.subx.html#L100'>convert</a>/disp32
+<span id="L513" class="LineNr"> 513 </span>    e8/call  <a href='pack.subx.html#L100'>subx-pack</a>/disp32
 <span id="L514" class="LineNr"> 514 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L515" class="LineNr"> 515 </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="L516" class="LineNr"> 516 </span>    <span class="subxComment"># check that the line just passed through</span>
@@ -478,7 +478,7 @@ if ('onhashchange' in window) {
 <span id="L523" class="LineNr"> 523 </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="L524" class="LineNr"> 524 </span>    <span class="subxS1Comment"># . check-next-stream-line-equal(_test-output-stream, &quot;    &quot;, msg)</span>
 <span id="L525" class="LineNr"> 525 </span>    <span class="subxS2Comment"># . . push args</span>
-<span id="L526" class="LineNr"> 526 </span>    68/push  <span class="Constant">&quot;F - test-convert-passes-with-just-whitespace-through&quot;</span>/imm32
+<span id="L526" class="LineNr"> 526 </span>    68/push  <span class="Constant">&quot;F - test-subx-pack-passes-with-just-whitespace-through&quot;</span>/imm32
 <span id="L527" class="LineNr"> 527 </span>    68/push  <span class="Constant">&quot;    &quot;</span>/imm32
 <span id="L528" class="LineNr"> 528 </span>    68/push  <a href='../064write-byte.subx.html#L290'>_test-output-stream</a>/imm32
 <span id="L529" class="LineNr"> 529 </span>    <span class="subxS2Comment"># . . call</span>
@@ -490,7 +490,7 @@ if ('onhashchange' in window) {
 <span id="L535" class="LineNr"> 535 </span>    5d/pop-to-ebp
 <span id="L536" class="LineNr"> 536 </span>    c3/return
 <span id="L537" class="LineNr"> 537 </span>
-<span id="L538" class="LineNr"> 538 </span><span class="subxTest">test-convert-passes-segment-headers-through</span>:
+<span id="L538" class="LineNr"> 538 </span><span class="subxTest">test-subx-pack-passes-segment-headers-through</span>:
 <span id="L539" class="LineNr"> 539 </span>    <span class="subxComment"># if a line starts with '==', pass it along unchanged</span>
 <span id="L540" class="LineNr"> 540 </span>    <span class="subxS1Comment"># . prolog</span>
 <span id="L541" class="LineNr"> 541 </span>    55/push-ebp
@@ -537,12 +537,12 @@ if ('onhashchange' in window) {
 <span id="L582" class="LineNr"> 582 </span>    e8/call  <a href='../057write.subx.html#L24'>write</a>/disp32
 <span id="L583" class="LineNr"> 583 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L584" class="LineNr"> 584 </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="L585" class="LineNr"> 585 </span>    <span class="subxComment"># convert(_test-input-buffered-file, _test-output-buffered-file)</span>
+<span id="L585" class="LineNr"> 585 </span>    <span class="subxComment"># subx-pack(_test-input-buffered-file, _test-output-buffered-file)</span>
 <span id="L586" class="LineNr"> 586 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L587" class="LineNr"> 587 </span>    68/push  <a href='../064write-byte.subx.html#L332'>_test-output-buffered-file</a>/imm32
 <span id="L588" class="LineNr"> 588 </span>    68/push  <a href='../061read-byte.subx.html#L319'>_test-input-buffered-file</a>/imm32
 <span id="L589" class="LineNr"> 589 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L590" class="LineNr"> 590 </span>    e8/call  <a href='pack.subx.html#L100'>convert</a>/disp32
+<span id="L590" class="LineNr"> 590 </span>    e8/call  <a href='pack.subx.html#L100'>subx-pack</a>/disp32
 <span id="L591" class="LineNr"> 591 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L592" class="LineNr"> 592 </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="L593" class="LineNr"> 593 </span>    <span class="subxComment"># check that the line just passed through</span>
@@ -555,7 +555,7 @@ if ('onhashchange' in window) {
 <span id="L600" class="LineNr"> 600 </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="L601" class="LineNr"> 601 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;== abcd 0x1&quot;, msg)</span>
 <span id="L602" class="LineNr"> 602 </span>    <span class="subxS2Comment"># . . push args</span>
-<span id="L603" class="LineNr"> 603 </span>    68/push  <span class="Constant">&quot;F - test-convert-passes-segment-headers-through&quot;</span>/imm32
+<span id="L603" class="LineNr"> 603 </span>    68/push  <span class="Constant">&quot;F - test-subx-pack-passes-segment-headers-through&quot;</span>/imm32
 <span id="L604" class="LineNr"> 604 </span>    68/push  <span class="Constant">&quot;== abcd 0x1&quot;</span>/imm32
 <span id="L605" class="LineNr"> 605 </span>    68/push  <a href='../064write-byte.subx.html#L290'>_test-output-stream</a>/imm32
 <span id="L606" class="LineNr"> 606 </span>    <span class="subxS2Comment"># . . call</span>
@@ -567,7 +567,7 @@ if ('onhashchange' in window) {
 <span id="L612" class="LineNr"> 612 </span>    5d/pop-to-ebp
 <span id="L613" class="LineNr"> 613 </span>    c3/return
 <span id="L614" class="LineNr"> 614 </span>
-<span id="L615" class="LineNr"> 615 </span><span class="subxTest">test-convert-in-data-segment</span>:
+<span id="L615" class="LineNr"> 615 </span><span class="subxTest">test-subx-pack-in-data-segment</span>:
 <span id="L616" class="LineNr"> 616 </span>    <span class="subxComment"># correctly process lines in the data segment</span>
 <span id="L617" class="LineNr"> 617 </span>    <span class="subxS1Comment"># . prolog</span>
 <span id="L618" class="LineNr"> 618 </span>    55/push-ebp
@@ -633,16 +633,16 @@ if ('onhashchange' in window) {
 <span id="L678" class="LineNr"> 678 </span>    e8/call  <a href='../057write.subx.html#L24'>write</a>/disp32
 <span id="L679" class="LineNr"> 679 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L680" class="LineNr"> 680 </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="L681" class="LineNr"> 681 </span>    <span class="subxComment"># convert(_test-input-buffered-file, _test-output-buffered-file)</span>
+<span id="L681" class="LineNr"> 681 </span>    <span class="subxComment"># subx-pack(_test-input-buffered-file, _test-output-buffered-file)</span>
 <span id="L682" class="LineNr"> 682 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L683" class="LineNr"> 683 </span>    68/push  <a href='../064write-byte.subx.html#L332'>_test-output-buffered-file</a>/imm32
 <span id="L684" class="LineNr"> 684 </span>    68/push  <a href='../061read-byte.subx.html#L319'>_test-input-buffered-file</a>/imm32
 <span id="L685" class="LineNr"> 685 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L686" class="LineNr"> 686 </span>    e8/call  <a href='pack.subx.html#L100'>convert</a>/disp32
+<span id="L686" class="LineNr"> 686 </span>    e8/call  <a href='pack.subx.html#L100'>subx-pack</a>/disp32
 <span id="L687" class="LineNr"> 687 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L688" class="LineNr"> 688 </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="L689" class="LineNr"> 689 </span>    <span class="subxComment"># check output</span>
-<span id="L690" class="Folded"> 690 </span><span class="Folded">+-- 26 lines: #?     # debug print ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L690" class="Folded"> 690 </span><span class="Folded">+-- 26 lines: #?     # debug print -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L716" class="LineNr"> 716 </span>    <span class="subxS1Comment"># . flush(_test-output-buffered-file)</span>
 <span id="L717" class="LineNr"> 717 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L718" class="LineNr"> 718 </span>    68/push  <a href='../064write-byte.subx.html#L332'>_test-output-buffered-file</a>/imm32
@@ -652,7 +652,7 @@ if ('onhashchange' in window) {
 <span id="L722" class="LineNr"> 722 </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="L723" class="LineNr"> 723 </span>    <span class="subxS1Comment"># . check-next-stream-line-equal(_test-output-stream, &quot;== code 0x1&quot;, msg)</span>
 <span id="L724" class="LineNr"> 724 </span>    <span class="subxS2Comment"># . . push args</span>
-<span id="L725" class="LineNr"> 725 </span>    68/push  <span class="Constant">&quot;F - <a href='pack.subx.html#L615'>test-convert-in-data-segment</a>/0&quot;</span>/imm32
+<span id="L725" class="LineNr"> 725 </span>    68/push  <span class="Constant">&quot;F - <a href='pack.subx.html#L615'>test-subx-pack-in-data-segment</a>/0&quot;</span>/imm32
 <span id="L726" class="LineNr"> 726 </span>    68/push  <span class="Constant">&quot;== code 0x1&quot;</span>/imm32
 <span id="L727" class="LineNr"> 727 </span>    68/push  <a href='../064write-byte.subx.html#L290'>_test-output-stream</a>/imm32
 <span id="L728" class="LineNr"> 728 </span>    <span class="subxS2Comment"># . . call</span>
@@ -661,7 +661,7 @@ if ('onhashchange' in window) {
 <span id="L731" class="LineNr"> 731 </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="L732" class="LineNr"> 732 </span>    <span class="subxS1Comment"># . check-next-stream-line-equal(_test-output-stream, &quot;== data 0x2&quot;, msg)</span>
 <span id="L733" class="LineNr"> 733 </span>    <span class="subxS2Comment"># . . push args</span>
-<span id="L734" class="LineNr"> 734 </span>    68/push  <span class="Constant">&quot;F - <a href='pack.subx.html#L615'>test-convert-in-data-segment</a>/1&quot;</span>/imm32
+<span id="L734" class="LineNr"> 734 </span>    68/push  <span class="Constant">&quot;F - <a href='pack.subx.html#L615'>test-subx-pack-in-data-segment</a>/1&quot;</span>/imm32
 <span id="L735" class="LineNr"> 735 </span>    68/push  <span class="Constant">&quot;== data 0x2&quot;</span>/imm32
 <span id="L736" class="LineNr"> 736 </span>    68/push  <a href='../064write-byte.subx.html#L290'>_test-output-stream</a>/imm32
 <span id="L737" class="LineNr"> 737 </span>    <span class="subxS2Comment"># . . call</span>
@@ -670,7 +670,7 @@ if ('onhashchange' in window) {
 <span id="L740" class="LineNr"> 740 </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="L741" class="LineNr"> 741 </span>    <span class="subxS1Comment"># . check-next-stream-line-equal(_test-output-stream, &quot;03 04 00 00 00 &quot;, msg)</span>
 <span id="L742" class="LineNr"> 742 </span>    <span class="subxS2Comment"># . . push args</span>
-<span id="L743" class="LineNr"> 743 </span>    68/push  <span class="Constant">&quot;F - <a href='pack.subx.html#L615'>test-convert-in-data-segment</a>/2&quot;</span>/imm32
+<span id="L743" class="LineNr"> 743 </span>    68/push  <span class="Constant">&quot;F - <a href='pack.subx.html#L615'>test-subx-pack-in-data-segment</a>/2&quot;</span>/imm32
 <span id="L744" class="LineNr"> 744 </span>    68/push  <span class="Constant">&quot;03 04 00 00 00 &quot;</span>/imm32
 <span id="L745" class="LineNr"> 745 </span>    68/push  <a href='../064write-byte.subx.html#L290'>_test-output-stream</a>/imm32
 <span id="L746" class="LineNr"> 746 </span>    <span class="subxS2Comment"># . . call</span>
@@ -682,7 +682,7 @@ if ('onhashchange' in window) {
 <span id="L752" class="LineNr"> 752 </span>    5d/pop-to-ebp
 <span id="L753" class="LineNr"> 753 </span>    c3/return
 <span id="L754" class="LineNr"> 754 </span>
-<span id="L755" class="LineNr"> 755 </span><span class="subxTest">test-convert-code-and-data-segments</span>:
+<span id="L755" class="LineNr"> 755 </span><span class="subxTest">test-subx-pack-code-and-data-segments</span>:
 <span id="L756" class="LineNr"> 756 </span>    <span class="subxComment"># correctly process lines in both code and data segments</span>
 <span id="L757" class="LineNr"> 757 </span>    <span class="subxS1Comment"># . prolog</span>
 <span id="L758" class="LineNr"> 758 </span>    55/push-ebp
@@ -766,12 +766,12 @@ if ('onhashchange' in window) {
 <span id="L836" class="LineNr"> 836 </span>    e8/call  <a href='../057write.subx.html#L24'>write</a>/disp32
 <span id="L837" class="LineNr"> 837 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L838" class="LineNr"> 838 </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="L839" class="LineNr"> 839 </span>    <span class="subxComment"># convert(_test-input-buffered-file, _test-output-buffered-file)</span>
+<span id="L839" class="LineNr"> 839 </span>    <span class="subxComment"># subx-pack(_test-input-buffered-file, _test-output-buffered-file)</span>
 <span id="L840" class="LineNr"> 840 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L841" class="LineNr"> 841 </span>    68/push  <a href='../064write-byte.subx.html#L332'>_test-output-buffered-file</a>/imm32
 <span id="L842" class="LineNr"> 842 </span>    68/push  <a href='../061read-byte.subx.html#L319'>_test-input-buffered-file</a>/imm32
 <span id="L843" class="LineNr"> 843 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L844" class="LineNr"> 844 </span>    e8/call  <a href='pack.subx.html#L100'>convert</a>/disp32
+<span id="L844" class="LineNr"> 844 </span>    e8/call  <a href='pack.subx.html#L100'>subx-pack</a>/disp32
 <span id="L845" class="LineNr"> 845 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L846" class="LineNr"> 846 </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="L847" class="LineNr"> 847 </span>    <span class="subxComment"># check output</span>
@@ -780,7 +780,7 @@ if ('onhashchange' in window) {
 <span id="L850" class="LineNr"> 850 </span>    <span class="subxComment">#   68 20  # 68/push 0x20/imm8</span>
 <span id="L851" class="LineNr"> 851 </span>    <span class="subxComment">#   == data 0x2</span>
 <span id="L852" class="LineNr"> 852 </span>    <span class="subxComment">#   03 04 00 00 00</span>
-<span id="L853" class="Folded"> 853 </span><span class="Folded">+-- 26 lines: #?     # debug print ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L853" class="Folded"> 853 </span><span class="Folded">+-- 26 lines: #?     # debug print -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L879" class="LineNr"> 879 </span>    <span class="subxS1Comment"># . flush(_test-output-buffered-file)</span>
 <span id="L880" class="LineNr"> 880 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L881" class="LineNr"> 881 </span>    68/push  <a href='../064write-byte.subx.html#L332'>_test-output-buffered-file</a>/imm32
@@ -790,7 +790,7 @@ if ('onhashchange' in window) {
 <span id="L885" class="LineNr"> 885 </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="L886" class="LineNr"> 886 </span>    <span class="subxS1Comment"># . check-next-stream-line-equal(_test-output-stream, &quot;== code 0x1&quot;, msg)</span>
 <span id="L887" class="LineNr"> 887 </span>    <span class="subxS2Comment"># . . push args</span>
-<span id="L888" class="LineNr"> 888 </span>    68/push  <span class="Constant">&quot;F - <a href='pack.subx.html#L755'>test-convert-code-and-data-segments</a>/0&quot;</span>/imm32
+<span id="L888" class="LineNr"> 888 </span>    68/push  <span class="Constant">&quot;F - <a href='pack.subx.html#L755'>test-subx-pack-code-and-data-segments</a>/0&quot;</span>/imm32
 <span id="L889" class="LineNr"> 889 </span>    68/push  <span class="Constant">&quot;== code 0x1&quot;</span>/imm32
 <span id="L890" class="LineNr"> 890 </span>    68/push  <a href='../064write-byte.subx.html#L290'>_test-output-stream</a>/imm32
 <span id="L891" class="LineNr"> 891 </span>    <span class="subxS2Comment"># . . call</span>
@@ -799,7 +799,7 @@ if ('onhashchange' in window) {
 <span id="L894" class="LineNr"> 894 </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="L895" class="LineNr"> 895 </span>    <span class="subxS1Comment"># . check-next-stream-line-equal(_test-output-stream, &quot;e8 20 00 00 00  # e8/call 20/disp32&quot;, msg)</span>
 <span id="L896" class="LineNr"> 896 </span>    <span class="subxS2Comment"># . . push args</span>
-<span id="L897" class="LineNr"> 897 </span>    68/push  <span class="Constant">&quot;F - <a href='pack.subx.html#L755'>test-convert-code-and-data-segments</a>/1&quot;</span>/imm32
+<span id="L897" class="LineNr"> 897 </span>    68/push  <span class="Constant">&quot;F - <a href='pack.subx.html#L755'>test-subx-pack-code-and-data-segments</a>/1&quot;</span>/imm32
 <span id="L898" class="LineNr"> 898 </span>    68/push  <span class="Constant">&quot;e8 20 00 00 00  # e8/call 20/disp32&quot;</span>/imm32
 <span id="L899" class="LineNr"> 899 </span>    68/push  <a href='../064write-byte.subx.html#L290'>_test-output-stream</a>/imm32
 <span id="L900" class="LineNr"> 900 </span>    <span class="subxS2Comment"># . . call</span>
@@ -808,7 +808,7 @@ if ('onhashchange' in window) {
 <span id="L903" class="LineNr"> 903 </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="L904" class="LineNr"> 904 </span>    <span class="subxS1Comment"># . check-next-stream-line-equal(_test-output-stream, &quot;68 20  # 68/push 0x20/imm8&quot;, msg)</span>
 <span id="L905" class="LineNr"> 905 </span>    <span class="subxS2Comment"># . . push args</span>
-<span id="L906" class="LineNr"> 906 </span>    68/push  <span class="Constant">&quot;F - <a href='pack.subx.html#L755'>test-convert-code-and-data-segments</a>/2&quot;</span>/imm32
+<span id="L906" class="LineNr"> 906 </span>    68/push  <span class="Constant">&quot;F - <a href='pack.subx.html#L755'>test-subx-pack-code-and-data-segments</a>/2&quot;</span>/imm32
 <span id="L907" class="LineNr"> 907 </span>    68/push  <span class="Constant">&quot;68 20  # 68/push 0x20/imm8&quot;</span>/imm32
 <span id="L908" class="LineNr"> 908 </span>    68/push  <a href='../064write-byte.subx.html#L290'>_test-output-stream</a>/imm32
 <span id="L909" class="LineNr"> 909 </span>    <span class="subxS2Comment"># . . call</span>
@@ -817,7 +817,7 @@ if ('onhashchange' in window) {
 <span id="L912" class="LineNr"> 912 </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="L913" class="LineNr"> 913 </span>    <span class="subxS1Comment"># . check-next-stream-line-equal(_test-output-stream, &quot;== data 0x2&quot;, msg)</span>
 <span id="L914" class="LineNr"> 914 </span>    <span class="subxS2Comment"># . . push args</span>
-<span id="L915" class="LineNr"> 915 </span>    68/push  <span class="Constant">&quot;F - <a href='pack.subx.html#L755'>test-convert-code-and-data-segments</a>/3&quot;</span>/imm32
+<span id="L915" class="LineNr"> 915 </span>    68/push  <span class="Constant">&quot;F - <a href='pack.subx.html#L755'>test-subx-pack-code-and-data-segments</a>/3&quot;</span>/imm32
 <span id="L916" class="LineNr"> 916 </span>    68/push  <span class="Constant">&quot;== data 0x2&quot;</span>/imm32
 <span id="L917" class="LineNr"> 917 </span>    68/push  <a href='../064write-byte.subx.html#L290'>_test-output-stream</a>/imm32
 <span id="L918" class="LineNr"> 918 </span>    <span class="subxS2Comment"># . . call</span>
@@ -826,7 +826,7 @@ if ('onhashchange' in window) {
 <span id="L921" class="LineNr"> 921 </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="L922" class="LineNr"> 922 </span>    <span class="subxS1Comment"># . check-next-stream-line-equal(_test-output-stream, &quot;03 04 00 00 00 &quot;, msg)</span>
 <span id="L923" class="LineNr"> 923 </span>    <span class="subxS2Comment"># . . push args</span>
-<span id="L924" class="LineNr"> 924 </span>    68/push  <span class="Constant">&quot;F - <a href='pack.subx.html#L755'>test-convert-code-and-data-segments</a>/4&quot;</span>/imm32
+<span id="L924" class="LineNr"> 924 </span>    68/push  <span class="Constant">&quot;F - <a href='pack.subx.html#L755'>test-subx-pack-code-and-data-segments</a>/4&quot;</span>/imm32
 <span id="L925" class="LineNr"> 925 </span>    68/push  <span class="Constant">&quot;03 04 00 00 00 &quot;</span>/imm32
 <span id="L926" class="LineNr"> 926 </span>    68/push  <a href='../064write-byte.subx.html#L290'>_test-output-stream</a>/imm32
 <span id="L927" class="LineNr"> 927 </span>    <span class="subxS2Comment"># . . call</span>
@@ -869,17 +869,17 @@ if ('onhashchange' in window) {
 <span id="L964" class="LineNr"> 964 </span>    68/push  0/imm32/end
 <span id="L965" class="LineNr"> 965 </span>    68/push  0/imm32/start
 <span id="L966" class="LineNr"> 966 </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="L967" class="Folded"> 967 </span><span class="Folded">+-- 26 lines: #?     # dump line -----------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L967" class="Folded"> 967 </span><span class="Folded">+-- 26 lines: #?     # dump line -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L993" class="LineNr"> 993 </span><span class="Constant">$convert-data:loop</span>:
 <span id="L994" class="LineNr"> 994 </span>    <span class="subxComment"># next-word(line, word-slice)</span>
 <span id="L995" class="LineNr"> 995 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L996" class="LineNr"> 996 </span>    51/push-ecx
 <span id="L997" class="LineNr"> 997 </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>
 <span id="L998" class="LineNr"> 998 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L999" class="LineNr"> 999 </span>    e8/call  next-word/disp32
+<span id="L999" class="LineNr"> 999 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L1000" class="LineNr">1000 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1001" class="LineNr">1001 </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="L1002" class="Folded">1002 </span><span class="Folded">+-- 42 lines: #?     # dump word-slice -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1002" class="Folded">1002 </span><span class="Folded">+-- 42 lines: #?     # dump word-slice -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1044" class="LineNr">1044 </span><span class="Constant">$convert-data:check0</span>:
 <span id="L1045" class="LineNr">1045 </span>    <span class="subxComment"># if (slice-empty?(word-slice)) break</span>
 <span id="L1046" class="LineNr">1046 </span>    <span class="subxS1Comment"># . eax = slice-empty?(word-slice)</span>
@@ -891,7 +891,7 @@ if ('onhashchange' in window) {
 <span id="L1052" class="LineNr">1052 </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="L1053" class="LineNr">1053 </span>    <span class="subxS1Comment"># . if (eax != 0) break</span>
 <span id="L1054" class="LineNr">1054 </span>    3d/compare-eax-and  0/imm32
-<span id="L1055" class="LineNr">1055 </span>    0f 85/jump-if-not-equal  $convert-data:break/disp32
+<span id="L1055" class="LineNr">1055 </span>    0f 85/jump-if-not-equal  $convert-data:<span class="Constant">break</span>/disp32
 <span id="L1056" class="LineNr">1056 </span><span class="Constant">$convert-data:check-for-comment</span>:
 <span id="L1057" class="LineNr">1057 </span>    <span class="subxComment"># if (slice-starts-with?(word-slice, &quot;#&quot;))</span>
 <span id="L1058" class="LineNr">1058 </span>    <span class="subxS1Comment"># . start/edx = word-slice-&gt;start</span>
@@ -929,7 +929,7 @@ if ('onhashchange' in window) {
 <span id="L1090" class="LineNr">1090 </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>
 <span id="L1091" class="LineNr">1091 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L1092" class="LineNr">1092 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L1093" class="LineNr">1093 </span>    e8/call  write-stream-data/disp32
+<span id="L1093" class="LineNr">1093 </span>    e8/call  <a href='../074write-stream-data.subx.html#L11'>write-stream-data</a>/disp32
 <span id="L1094" class="LineNr">1094 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1095" class="LineNr">1095 </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="L1096" class="LineNr">1096 </span>    <span class="subxComment"># return</span>
@@ -941,7 +941,7 @@ if ('onhashchange' in window) {
 <span id="L1102" class="LineNr">1102 </span>    68/push  <span class="Constant">&quot;imm32&quot;</span>/imm32
 <span id="L1103" class="LineNr">1103 </span>    51/push-ecx
 <span id="L1104" class="LineNr">1104 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L1105" class="LineNr">1105 </span>    e8/call  has-metadata?/disp32
+<span id="L1105" class="LineNr">1105 </span>    e8/call  <a href='../077subx-words.subx.html#L8'>has-metadata?</a>/disp32
 <span id="L1106" class="LineNr">1106 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1107" class="LineNr">1107 </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="L1108" class="LineNr">1108 </span>    <span class="subxS1Comment"># . if (eax == 0) process as a single byte</span>
@@ -954,10 +954,10 @@ if ('onhashchange' in window) {
 <span id="L1115" class="LineNr">1115 </span>    51/push-ecx
 <span id="L1116" class="LineNr">1116 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L1117" class="LineNr">1117 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L1118" class="LineNr">1118 </span>    e8/call  emit/disp32
+<span id="L1118" class="LineNr">1118 </span>    e8/call  <a href='../079emit.subx.html#L10'>emit</a>/disp32
 <span id="L1119" class="LineNr">1119 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1120" class="LineNr">1120 </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="L1121" class="LineNr">1121 </span>    e9/jump  $convert-data:loop/disp32
+<span id="L1121" class="LineNr">1121 </span>    e9/jump  $convert-data:<span class="Constant">loop</span>/disp32
 <span id="L1122" class="LineNr">1122 </span><span class="Constant">$convert-data:single-byte</span>:
 <span id="L1123" class="LineNr">1123 </span>    <span class="subxComment"># emit(out, word-slice, 1)</span>
 <span id="L1124" class="LineNr">1124 </span>    <span class="subxS2Comment"># . . push args</span>
@@ -965,14 +965,14 @@ if ('onhashchange' in window) {
 <span id="L1126" class="LineNr">1126 </span>    51/push-ecx
 <span id="L1127" class="LineNr">1127 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L1128" class="LineNr">1128 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L1129" class="LineNr">1129 </span>    e8/call  emit/disp32
+<span id="L1129" class="LineNr">1129 </span>    e8/call  <a href='../079emit.subx.html#L10'>emit</a>/disp32
 <span id="L1130" class="LineNr">1130 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1131" class="LineNr">1131 </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="L1132" class="LineNr">1132 </span>    e9/jump  $convert-data:loop/disp32
+<span id="L1132" class="LineNr">1132 </span>    e9/jump  $convert-data:<span class="Constant">loop</span>/disp32
 <span id="L1133" class="LineNr">1133 </span><span class="Constant">$convert-data:break</span>:
 <span id="L1134" class="LineNr">1134 </span>    <span class="subxComment"># write-buffered(out, &quot;\n&quot;)</span>
 <span id="L1135" class="LineNr">1135 </span>    <span class="subxS2Comment"># . . push args</span>
-<span id="L1136" class="LineNr">1136 </span>    68/push  <span class="Constant">&quot;\n&quot;</span>/imm32
+<span id="L1136" class="LineNr">1136 </span>    68/push  <span class="SpecialChar"><a href='../051test.subx.html#L83'>Newline</a></span>/imm32
 <span id="L1137" class="LineNr">1137 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L1138" class="LineNr">1138 </span>    <span class="subxS2Comment"># . . call</span>
 <span id="L1139" class="LineNr">1139 </span>    e8/call  <a href='../065write-buffered.subx.html#L8'>write-buffered</a>/disp32
@@ -1044,7 +1044,7 @@ if ('onhashchange' in window) {
 <span id="L1205" class="LineNr">1205 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L1206" class="LineNr">1206 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1207" class="LineNr">1207 </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="L1208" class="Folded">1208 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1208" class="Folded">1208 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1234" class="LineNr">1234 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;# abcd&quot;, msg)</span>
 <span id="L1235" class="LineNr">1235 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1236" class="LineNr">1236 </span>    68/push  <span class="Constant">&quot;F - test-convert-data-passes-comments-through&quot;</span>/imm32
@@ -1523,7 +1523,7 @@ if ('onhashchange' in window) {
 <span id="L1709" class="LineNr">1709 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L1710" class="LineNr">1710 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1711" class="LineNr">1711 </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="L1712" class="Folded">1712 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1712" class="Folded">1712 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1738" class="LineNr">1738 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;30 abcd/o 42 e1 00 00 \n&quot;, msg)</span>
 <span id="L1739" class="LineNr">1739 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1740" class="LineNr">1740 </span>    68/push  <span class="Constant">&quot;F - test-convert-data-multiple-words&quot;</span>/imm32
@@ -1592,7 +1592,7 @@ if ('onhashchange' in window) {
 <span id="L1803" class="LineNr">1803 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L1804" class="LineNr">1804 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1805" class="LineNr">1805 </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="L1806" class="Folded">1806 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L1806" class="Folded">1806 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L1832" class="LineNr">1832 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;30 00 00 00 # comment&quot;, msg)</span>
 <span id="L1833" class="LineNr">1833 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L1834" class="LineNr">1834 </span>    68/push  <span class="Constant">&quot;F - test-convert-data-trailing-comment&quot;</span>/imm32
@@ -1654,7 +1654,7 @@ if ('onhashchange' in window) {
 <span id="L1890" class="LineNr">1890 </span>    51/push-ecx
 <span id="L1891" class="LineNr">1891 </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>
 <span id="L1892" class="LineNr">1892 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L1893" class="LineNr">1893 </span>    e8/call  next-word/disp32
+<span id="L1893" class="LineNr">1893 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L1894" class="LineNr">1894 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1895" class="LineNr">1895 </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="L1896" class="LineNr">1896 </span><span class="Constant">$convert-instruction:check0</span>:
@@ -1695,7 +1695,7 @@ if ('onhashchange' in window) {
 <span id="L1931" class="LineNr">1931 </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>
 <span id="L1932" class="LineNr">1932 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L1933" class="LineNr">1933 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L1934" class="LineNr">1934 </span>    e8/call  write-stream-data/disp32
+<span id="L1934" class="LineNr">1934 </span>    e8/call  <a href='../074write-stream-data.subx.html#L11'>write-stream-data</a>/disp32
 <span id="L1935" class="LineNr">1935 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L1936" class="LineNr">1936 </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="L1937" class="LineNr">1937 </span>    <span class="subxComment"># return</span>
@@ -1814,7 +1814,7 @@ if ('onhashchange' in window) {
 <span id="L2050" class="LineNr">2050 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L2051" class="LineNr">2051 </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>
 <span id="L2052" class="LineNr">2052 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2053" class="LineNr">2053 </span>    e8/call  <a href='../055stream.subx.html#L55'>rewind-stream</a>/disp32
+<span id="L2053" class="LineNr">2053 </span>    e8/call  <a href='../055stream.subx.html#L54'>rewind-stream</a>/disp32
 <span id="L2054" class="LineNr">2054 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2055" class="LineNr">2055 </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="L2056" class="LineNr">2056 </span><span class="Constant">$emit-opcodes:op1</span>:
@@ -1823,7 +1823,7 @@ if ('onhashchange' in window) {
 <span id="L2059" class="LineNr">2059 </span>    51/push-ecx
 <span id="L2060" class="LineNr">2060 </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>
 <span id="L2061" class="LineNr">2061 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2062" class="LineNr">2062 </span>    e8/call  next-word/disp32
+<span id="L2062" class="LineNr">2062 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L2063" class="LineNr">2063 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2064" class="LineNr">2064 </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="L2065" class="LineNr">2065 </span>    <span class="subxComment"># if (slice-empty?(op1)) return</span>
@@ -1866,7 +1866,7 @@ if ('onhashchange' in window) {
 <span id="L2102" class="LineNr">2102 </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="L2103" class="LineNr">2103 </span>    <span class="subxComment"># write-buffered(out, &quot; &quot;)</span>
 <span id="L2104" class="LineNr">2104 </span>    <span class="subxS2Comment"># . . push args</span>
-<span id="L2105" class="LineNr">2105 </span>    68/push  <span class="Constant">&quot; &quot;</span>/imm32
+<span id="L2105" class="LineNr">2105 </span>    68/push  <span class="SpecialChar"><a href='../051test.subx.html#L94'>Space</a></span>/imm32
 <span id="L2106" class="LineNr">2106 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L2107" class="LineNr">2107 </span>    <span class="subxS2Comment"># . . call</span>
 <span id="L2108" class="LineNr">2108 </span>    e8/call  <a href='../065write-buffered.subx.html#L8'>write-buffered</a>/disp32
@@ -1916,7 +1916,7 @@ if ('onhashchange' in window) {
 <span id="L2152" class="LineNr">2152 </span>    52/push-edx
 <span id="L2153" class="LineNr">2153 </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>
 <span id="L2154" class="LineNr">2154 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2155" class="LineNr">2155 </span>    e8/call  next-word/disp32
+<span id="L2155" class="LineNr">2155 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L2156" class="LineNr">2156 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2157" class="LineNr">2157 </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="L2158" class="LineNr">2158 </span>    <span class="subxComment"># if (slice-empty?(op2)) return</span>
@@ -1959,7 +1959,7 @@ if ('onhashchange' in window) {
 <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>              8/imm32           <span class="subxComment"># add to esp</span>
 <span id="L2196" class="LineNr">2196 </span>    <span class="subxComment"># write-buffered(out, &quot; &quot;)</span>
 <span id="L2197" class="LineNr">2197 </span>    <span class="subxS2Comment"># . . push args</span>
-<span id="L2198" class="LineNr">2198 </span>    68/push  <span class="Constant">&quot; &quot;</span>/imm32
+<span id="L2198" class="LineNr">2198 </span>    68/push  <span class="SpecialChar"><a href='../051test.subx.html#L94'>Space</a></span>/imm32
 <span id="L2199" class="LineNr">2199 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L2200" class="LineNr">2200 </span>    <span class="subxS2Comment"># . . call</span>
 <span id="L2201" class="LineNr">2201 </span>    e8/call  <a href='../065write-buffered.subx.html#L8'>write-buffered</a>/disp32
@@ -1995,7 +1995,7 @@ if ('onhashchange' in window) {
 <span id="L2231" class="LineNr">2231 </span>    52/push-edx
 <span id="L2232" class="LineNr">2232 </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>
 <span id="L2233" class="LineNr">2233 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2234" class="LineNr">2234 </span>    e8/call  next-word/disp32
+<span id="L2234" class="LineNr">2234 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L2235" class="LineNr">2235 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2236" class="LineNr">2236 </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="L2237" class="LineNr">2237 </span>    <span class="subxComment"># if (slice-empty?(op3)) return</span>
@@ -2038,7 +2038,7 @@ if ('onhashchange' in window) {
 <span id="L2274" class="LineNr">2274 </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="L2275" class="LineNr">2275 </span>    <span class="subxComment"># write-buffered(out, &quot; &quot;)</span>
 <span id="L2276" class="LineNr">2276 </span>    <span class="subxS2Comment"># . . push args</span>
-<span id="L2277" class="LineNr">2277 </span>    68/push  <span class="Constant">&quot; &quot;</span>/imm32
+<span id="L2277" class="LineNr">2277 </span>    68/push  <span class="SpecialChar"><a href='../051test.subx.html#L94'>Space</a></span>/imm32
 <span id="L2278" class="LineNr">2278 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L2279" class="LineNr">2279 </span>    <span class="subxS2Comment"># . . call</span>
 <span id="L2280" class="LineNr">2280 </span>    e8/call  <a href='../065write-buffered.subx.html#L8'>write-buffered</a>/disp32
@@ -2109,20 +2109,20 @@ if ('onhashchange' in window) {
 <span id="L2345" class="LineNr">2345 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L2346" class="LineNr">2346 </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>
 <span id="L2347" class="LineNr">2347 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2348" class="LineNr">2348 </span>    e8/call  <a href='../055stream.subx.html#L55'>rewind-stream</a>/disp32
+<span id="L2348" class="LineNr">2348 </span>    e8/call  <a href='../055stream.subx.html#L54'>rewind-stream</a>/disp32
 <span id="L2349" class="LineNr">2349 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2350" class="LineNr">2350 </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="L2351" class="Folded">2351 </span><span class="Folded">+-- 33 lines: #?     # dump line -----------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L2351" class="Folded">2351 </span><span class="Folded">+-- 33 lines: #?     # dump line -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L2384" class="LineNr">2384 </span><span class="Constant">$emit-modrm:loop</span>:
 <span id="L2385" class="LineNr">2385 </span>    <span class="subxComment"># next-word(line, word-slice)</span>
 <span id="L2386" class="LineNr">2386 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L2387" class="LineNr">2387 </span>    51/push-ecx
 <span id="L2388" class="LineNr">2388 </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>
 <span id="L2389" class="LineNr">2389 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2390" class="LineNr">2390 </span>    e8/call  next-word/disp32
+<span id="L2390" class="LineNr">2390 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L2391" class="LineNr">2391 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2392" class="LineNr">2392 </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="L2393" class="Folded">2393 </span><span class="Folded">+-- 42 lines: #?     # dump word-slice -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L2393" class="Folded">2393 </span><span class="Folded">+-- 42 lines: #?     # dump word-slice -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L2435" class="LineNr">2435 </span><span class="Constant">$emit-modrm:check0</span>:
 <span id="L2436" class="LineNr">2436 </span>    <span class="subxComment"># if (slice-empty?(word-slice)) break</span>
 <span id="L2437" class="LineNr">2437 </span>    <span class="subxS1Comment"># . eax = slice-empty?(word-slice)</span>
@@ -2134,7 +2134,7 @@ if ('onhashchange' in window) {
 <span id="L2443" class="LineNr">2443 </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="L2444" class="LineNr">2444 </span>    <span class="subxS1Comment"># . if (eax != 0) pass through</span>
 <span id="L2445" class="LineNr">2445 </span>    3d/compare-eax-and  0/imm32
-<span id="L2446" class="LineNr">2446 </span>    0f 85/jump-if-not-equal  $emit-modrm:break/disp32
+<span id="L2446" class="LineNr">2446 </span>    0f 85/jump-if-not-equal  $emit-modrm:<span class="Constant">break</span>/disp32
 <span id="L2447" class="LineNr">2447 </span><span class="Constant">$emit-modrm:check1</span>:
 <span id="L2448" class="LineNr">2448 </span>    <span class="subxComment"># if (slice-starts-with?(word-slice, &quot;#&quot;)) break</span>
 <span id="L2449" class="LineNr">2449 </span>    <span class="subxS1Comment"># . spill edx</span>
@@ -2148,7 +2148,7 @@ if ('onhashchange' in window) {
 <span id="L2457" class="LineNr">2457 </span>    5a/pop-to-edx
 <span id="L2458" class="LineNr">2458 </span>    <span class="subxS1Comment"># . if (eax == '#') pass through</span>
 <span id="L2459" class="LineNr">2459 </span>    3d/compare-eax-and  0x23/imm32/hash
-<span id="L2460" class="LineNr">2460 </span>    0f 84/jump-if-equal  $emit-modrm:break/disp32
+<span id="L2460" class="LineNr">2460 </span>    0f 84/jump-if-equal  $emit-modrm:<span class="Constant">break</span>/disp32
 <span id="L2461" class="LineNr">2461 </span><span class="Constant">$emit-modrm:check-for-mod</span>:
 <span id="L2462" class="LineNr">2462 </span>    <span class="subxComment"># if (has-metadata?(word-slice, &quot;mod&quot;))</span>
 <span id="L2463" class="LineNr">2463 </span>    <span class="subxS1Comment"># . eax = has-metadata?(ecx, &quot;mod&quot;)</span>
@@ -2156,7 +2156,7 @@ if ('onhashchange' in window) {
 <span id="L2465" class="LineNr">2465 </span>    68/push  <span class="Constant">&quot;mod&quot;</span>/imm32
 <span id="L2466" class="LineNr">2466 </span>    51/push-ecx
 <span id="L2467" class="LineNr">2467 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2468" class="LineNr">2468 </span>    e8/call  has-metadata?/disp32
+<span id="L2468" class="LineNr">2468 </span>    e8/call  <a href='../077subx-words.subx.html#L8'>has-metadata?</a>/disp32
 <span id="L2469" class="LineNr">2469 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2470" class="LineNr">2470 </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="L2471" class="LineNr">2471 </span>    <span class="subxS1Comment"># . if (eax == 0) goto next check</span>
@@ -2176,7 +2176,7 @@ if ('onhashchange' in window) {
 <span id="L2485" class="LineNr">2485 </span>    <span class="subxComment"># has-modrm? = true</span>
 <span id="L2486" class="LineNr">2486 </span>    ba/copy-to-edx  1/imm32/true
 <span id="L2487" class="LineNr">2487 </span>    <span class="subxComment"># continue</span>
-<span id="L2488" class="LineNr">2488 </span>    e9/jump  $emit-modrm:loop/disp32
+<span id="L2488" class="LineNr">2488 </span>    e9/jump  $emit-modrm:<span class="Constant">loop</span>/disp32
 <span id="L2489" class="LineNr">2489 </span><span class="Constant">$emit-modrm:check-for-rm32</span>:
 <span id="L2490" class="LineNr">2490 </span>    <span class="subxComment"># if (has-metadata?(word-slice, &quot;rm32&quot;))</span>
 <span id="L2491" class="LineNr">2491 </span>    <span class="subxS1Comment"># . eax = has-metadata?(ecx, &quot;rm32&quot;)</span>
@@ -2184,7 +2184,7 @@ if ('onhashchange' in window) {
 <span id="L2493" class="LineNr">2493 </span>    68/push  <span class="Constant">&quot;rm32&quot;</span>/imm32
 <span id="L2494" class="LineNr">2494 </span>    51/push-ecx
 <span id="L2495" class="LineNr">2495 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2496" class="LineNr">2496 </span>    e8/call  has-metadata?/disp32
+<span id="L2496" class="LineNr">2496 </span>    e8/call  <a href='../077subx-words.subx.html#L8'>has-metadata?</a>/disp32
 <span id="L2497" class="LineNr">2497 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2498" class="LineNr">2498 </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="L2499" class="LineNr">2499 </span>    <span class="subxS1Comment"># . if (eax == 0) goto next check</span>
@@ -2204,7 +2204,7 @@ if ('onhashchange' in window) {
 <span id="L2513" class="LineNr">2513 </span>    <span class="subxComment"># has-modrm? = true</span>
 <span id="L2514" class="LineNr">2514 </span>    ba/copy-to-edx  1/imm32/true
 <span id="L2515" class="LineNr">2515 </span>    <span class="subxComment"># continue</span>
-<span id="L2516" class="LineNr">2516 </span>    e9/jump  $emit-modrm:loop/disp32
+<span id="L2516" class="LineNr">2516 </span>    e9/jump  $emit-modrm:<span class="Constant">loop</span>/disp32
 <span id="L2517" class="LineNr">2517 </span><span class="Constant">$emit-modrm:check-for-r32</span>:
 <span id="L2518" class="LineNr">2518 </span>    <span class="subxComment"># if (has-metadata?(word-slice, &quot;r32&quot;))</span>
 <span id="L2519" class="LineNr">2519 </span>    <span class="subxS1Comment"># . eax = has-metadata?(ecx, &quot;r32&quot;)</span>
@@ -2212,7 +2212,7 @@ if ('onhashchange' in window) {
 <span id="L2521" class="LineNr">2521 </span>    68/push  <span class="Constant">&quot;r32&quot;</span>/imm32
 <span id="L2522" class="LineNr">2522 </span>    51/push-ecx
 <span id="L2523" class="LineNr">2523 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2524" class="LineNr">2524 </span>    e8/call  has-metadata?/disp32
+<span id="L2524" class="LineNr">2524 </span>    e8/call  <a href='../077subx-words.subx.html#L8'>has-metadata?</a>/disp32
 <span id="L2525" class="LineNr">2525 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2526" class="LineNr">2526 </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="L2527" class="LineNr">2527 </span>    <span class="subxS1Comment"># . if (eax == 0) goto next check</span>
@@ -2232,7 +2232,7 @@ if ('onhashchange' in window) {
 <span id="L2541" class="LineNr">2541 </span>    <span class="subxComment"># has-modrm? = true</span>
 <span id="L2542" class="LineNr">2542 </span>    ba/copy-to-edx  1/imm32/true
 <span id="L2543" class="LineNr">2543 </span>    <span class="subxComment"># continue</span>
-<span id="L2544" class="LineNr">2544 </span>    e9/jump  $emit-modrm:loop/disp32
+<span id="L2544" class="LineNr">2544 </span>    e9/jump  $emit-modrm:<span class="Constant">loop</span>/disp32
 <span id="L2545" class="LineNr">2545 </span><span class="Constant">$emit-modrm:check-for-subop</span>:
 <span id="L2546" class="LineNr">2546 </span>    <span class="subxComment"># if (has-metadata?(word-slice, &quot;subop&quot;))</span>
 <span id="L2547" class="LineNr">2547 </span>    <span class="subxS1Comment"># . eax = has-metadata?(ecx, &quot;subop&quot;)</span>
@@ -2240,12 +2240,12 @@ if ('onhashchange' in window) {
 <span id="L2549" class="LineNr">2549 </span>    68/push  <span class="Constant">&quot;subop&quot;</span>/imm32
 <span id="L2550" class="LineNr">2550 </span>    51/push-ecx
 <span id="L2551" class="LineNr">2551 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2552" class="LineNr">2552 </span>    e8/call  has-metadata?/disp32
+<span id="L2552" class="LineNr">2552 </span>    e8/call  <a href='../077subx-words.subx.html#L8'>has-metadata?</a>/disp32
 <span id="L2553" class="LineNr">2553 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2554" class="LineNr">2554 </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="L2555" class="LineNr">2555 </span>    <span class="subxS1Comment"># . if (eax == 0) loop</span>
 <span id="L2556" class="LineNr">2556 </span>    3d/compare-eax-and  0/imm32
-<span id="L2557" class="LineNr">2557 </span>    0f 84/jump-if-equal  $emit-modrm:loop/disp32
+<span id="L2557" class="LineNr">2557 </span>    0f 84/jump-if-equal  $emit-modrm:<span class="Constant">loop</span>/disp32
 <span id="L2558" class="LineNr">2558 </span><span class="Constant">$emit-modrm:subop</span>:
 <span id="L2559" class="LineNr">2559 </span>    <span class="subxComment"># r32 = parse-hex-int(next-token-from-slice(word-slice-&gt;start, word-slice-&gt;end, '/'))</span>
 <span id="L2560" class="LineNr">2560 </span>    <span class="subxS1Comment"># . eax = parse-datum-of-word(word-slice)</span>
@@ -2260,7 +2260,7 @@ if ('onhashchange' in window) {
 <span id="L2569" class="LineNr">2569 </span>    <span class="subxComment"># has-modrm? = true</span>
 <span id="L2570" class="LineNr">2570 </span>    ba/copy-to-edx  1/imm32/true
 <span id="L2571" class="LineNr">2571 </span>    <span class="subxComment"># continue</span>
-<span id="L2572" class="LineNr">2572 </span>    e9/jump  $emit-modrm:loop/disp32
+<span id="L2572" class="LineNr">2572 </span>    e9/jump  $emit-modrm:<span class="Constant">loop</span>/disp32
 <span id="L2573" class="LineNr">2573 </span><span class="Constant">$emit-modrm:break</span>:
 <span id="L2574" class="LineNr">2574 </span>    <span class="subxComment"># if (!has-modrm?) return</span>
 <span id="L2575" class="LineNr">2575 </span>    81          7/subop/compare     3/mod/direct    2/rm32/edx   <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 edx</span>
@@ -2278,14 +2278,14 @@ if ('onhashchange' in window) {
 <span id="L2587" class="LineNr">2587 </span>    <span class="subxComment"># modrm |= rm32 &amp; 0b111</span>
 <span id="L2588" class="LineNr">2588 </span>    81          4/subop/and         3/mod/direct    6/rm32/esi   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              7/imm32/0b111     <span class="subxComment"># bitwise and of esi</span>
 <span id="L2589" class="LineNr">2589 </span>    09/or                           3/mod/direct    3/rm32/ebx   <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"># ebx = bitwise OR with esi</span>
-<span id="L2590" class="LineNr">2590 </span><span class="Constant">$emit-modrm:emit</span>:
+<span id="L2590" class="LineNr">2590 </span><span class="Constant">$emit-modrm:<a href='../079emit.subx.html#L10'>emit</a></span>:
 <span id="L2591" class="LineNr">2591 </span>    <span class="subxComment"># emit-hex(out, modrm, 1)</span>
 <span id="L2592" class="LineNr">2592 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L2593" class="LineNr">2593 </span>    68/push  1/imm32
 <span id="L2594" class="LineNr">2594 </span>    53/push-ebx
 <span id="L2595" class="LineNr">2595 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L2596" class="LineNr">2596 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2597" class="LineNr">2597 </span>    e8/call  emit-hex/disp32
+<span id="L2597" class="LineNr">2597 </span>    e8/call  <a href='../078emit-hex.subx.html#L7'>emit-hex</a>/disp32
 <span id="L2598" class="LineNr">2598 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2599" class="LineNr">2599 </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="L2600" class="LineNr">2600 </span><span class="Constant">$emit-modrm:end</span>:
@@ -2354,20 +2354,20 @@ if ('onhashchange' in window) {
 <span id="L2663" class="LineNr">2663 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L2664" class="LineNr">2664 </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>
 <span id="L2665" class="LineNr">2665 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2666" class="LineNr">2666 </span>    e8/call  <a href='../055stream.subx.html#L55'>rewind-stream</a>/disp32
+<span id="L2666" class="LineNr">2666 </span>    e8/call  <a href='../055stream.subx.html#L54'>rewind-stream</a>/disp32
 <span id="L2667" class="LineNr">2667 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2668" class="LineNr">2668 </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="L2669" class="LineNr">2669 </span><span class="Constant">$emit-sib:loop</span>:
-<span id="L2670" class="Folded">2670 </span><span class="Folded">+-- 26 lines: #?     # dump line -----------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L2670" class="Folded">2670 </span><span class="Folded">+-- 26 lines: #?     # dump line -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L2696" class="LineNr">2696 </span>    <span class="subxComment"># next-word(line, word-slice)</span>
 <span id="L2697" class="LineNr">2697 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L2698" class="LineNr">2698 </span>    51/push-ecx
 <span id="L2699" class="LineNr">2699 </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>
 <span id="L2700" class="LineNr">2700 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2701" class="LineNr">2701 </span>    e8/call  next-word/disp32
+<span id="L2701" class="LineNr">2701 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L2702" class="LineNr">2702 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2703" class="LineNr">2703 </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="L2704" class="Folded">2704 </span><span class="Folded">+-- 42 lines: #?     # dump word-slice -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L2704" class="Folded">2704 </span><span class="Folded">+-- 42 lines: #?     # dump word-slice -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L2746" class="LineNr">2746 </span><span class="Constant">$emit-sib:check0</span>:
 <span id="L2747" class="LineNr">2747 </span>    <span class="subxComment"># if (slice-empty?(word-slice)) break</span>
 <span id="L2748" class="LineNr">2748 </span>    <span class="subxS1Comment"># . eax = slice-empty?(word-slice)</span>
@@ -2379,7 +2379,7 @@ if ('onhashchange' in window) {
 <span id="L2754" class="LineNr">2754 </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="L2755" class="LineNr">2755 </span>    <span class="subxS1Comment"># . if (eax != 0) pass through</span>
 <span id="L2756" class="LineNr">2756 </span>    3d/compare-eax-and  0/imm32
-<span id="L2757" class="LineNr">2757 </span>    0f 85/jump-if-not-equal  $emit-sib:break/disp32
+<span id="L2757" class="LineNr">2757 </span>    0f 85/jump-if-not-equal  $emit-sib:<span class="Constant">break</span>/disp32
 <span id="L2758" class="LineNr">2758 </span><span class="Constant">$emit-sib:check1</span>:
 <span id="L2759" class="LineNr">2759 </span>    <span class="subxComment"># if (slice-starts-with?(word-slice, &quot;#&quot;)) break</span>
 <span id="L2760" class="LineNr">2760 </span>    <span class="subxS1Comment"># . spill edx</span>
@@ -2393,7 +2393,7 @@ if ('onhashchange' in window) {
 <span id="L2768" class="LineNr">2768 </span>    5a/pop-to-edx
 <span id="L2769" class="LineNr">2769 </span>    <span class="subxS1Comment"># . if (eax == '#') pass through</span>
 <span id="L2770" class="LineNr">2770 </span>    3d/compare-eax-and  0x23/imm32/hash
-<span id="L2771" class="LineNr">2771 </span>    0f 84/jump-if-equal  $emit-sib:break/disp32
+<span id="L2771" class="LineNr">2771 </span>    0f 84/jump-if-equal  $emit-sib:<span class="Constant">break</span>/disp32
 <span id="L2772" class="LineNr">2772 </span><span class="Constant">$emit-sib:check-for-scale</span>:
 <span id="L2773" class="LineNr">2773 </span>    <span class="subxComment"># if (has-metadata?(word-slice, &quot;scale&quot;))</span>
 <span id="L2774" class="LineNr">2774 </span>    <span class="subxS1Comment"># . eax = has-metadata?(ecx, &quot;scale&quot;)</span>
@@ -2401,7 +2401,7 @@ if ('onhashchange' in window) {
 <span id="L2776" class="LineNr">2776 </span>    68/push  <span class="Constant">&quot;scale&quot;</span>/imm32
 <span id="L2777" class="LineNr">2777 </span>    51/push-ecx
 <span id="L2778" class="LineNr">2778 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2779" class="LineNr">2779 </span>    e8/call  has-metadata?/disp32
+<span id="L2779" class="LineNr">2779 </span>    e8/call  <a href='../077subx-words.subx.html#L8'>has-metadata?</a>/disp32
 <span id="L2780" class="LineNr">2780 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2781" class="LineNr">2781 </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="L2782" class="LineNr">2782 </span>    <span class="subxS1Comment"># . if (eax == 0) goto next check</span>
@@ -2421,7 +2421,7 @@ if ('onhashchange' in window) {
 <span id="L2796" class="LineNr">2796 </span>    <span class="subxComment"># has-sib? = true</span>
 <span id="L2797" class="LineNr">2797 </span>    ba/copy-to-edx  1/imm32/true
 <span id="L2798" class="LineNr">2798 </span>    <span class="subxComment"># continue</span>
-<span id="L2799" class="LineNr">2799 </span>    e9/jump  $emit-sib:loop/disp32
+<span id="L2799" class="LineNr">2799 </span>    e9/jump  $emit-sib:<span class="Constant">loop</span>/disp32
 <span id="L2800" class="LineNr">2800 </span><span class="Constant">$emit-sib:check-for-base</span>:
 <span id="L2801" class="LineNr">2801 </span>    <span class="subxComment"># if (has-metadata?(word-slice, &quot;base&quot;))</span>
 <span id="L2802" class="LineNr">2802 </span>    <span class="subxS1Comment"># . eax = has-metadata?(ecx, &quot;base&quot;)</span>
@@ -2429,7 +2429,7 @@ if ('onhashchange' in window) {
 <span id="L2804" class="LineNr">2804 </span>    68/push  <span class="Constant">&quot;base&quot;</span>/imm32
 <span id="L2805" class="LineNr">2805 </span>    51/push-ecx
 <span id="L2806" class="LineNr">2806 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2807" class="LineNr">2807 </span>    e8/call  has-metadata?/disp32
+<span id="L2807" class="LineNr">2807 </span>    e8/call  <a href='../077subx-words.subx.html#L8'>has-metadata?</a>/disp32
 <span id="L2808" class="LineNr">2808 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2809" class="LineNr">2809 </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="L2810" class="LineNr">2810 </span>    <span class="subxS1Comment"># . if (eax == 0) goto next check</span>
@@ -2449,7 +2449,7 @@ if ('onhashchange' in window) {
 <span id="L2824" class="LineNr">2824 </span>    <span class="subxComment"># has-sib? = true</span>
 <span id="L2825" class="LineNr">2825 </span>    ba/copy-to-edx  1/imm32/true
 <span id="L2826" class="LineNr">2826 </span>    <span class="subxComment"># continue</span>
-<span id="L2827" class="LineNr">2827 </span>    e9/jump  $emit-sib:loop/disp32
+<span id="L2827" class="LineNr">2827 </span>    e9/jump  $emit-sib:<span class="Constant">loop</span>/disp32
 <span id="L2828" class="LineNr">2828 </span><span class="Constant">$emit-sib:check-for-index</span>:
 <span id="L2829" class="LineNr">2829 </span>    <span class="subxComment"># if (has-metadata?(word-slice, &quot;index&quot;))</span>
 <span id="L2830" class="LineNr">2830 </span>    <span class="subxS1Comment"># . eax = has-metadata?(ecx, &quot;index&quot;)</span>
@@ -2457,12 +2457,12 @@ if ('onhashchange' in window) {
 <span id="L2832" class="LineNr">2832 </span>    68/push  <span class="Constant">&quot;index&quot;</span>/imm32
 <span id="L2833" class="LineNr">2833 </span>    51/push-ecx
 <span id="L2834" class="LineNr">2834 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2835" class="LineNr">2835 </span>    e8/call  has-metadata?/disp32
+<span id="L2835" class="LineNr">2835 </span>    e8/call  <a href='../077subx-words.subx.html#L8'>has-metadata?</a>/disp32
 <span id="L2836" class="LineNr">2836 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2837" class="LineNr">2837 </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="L2838" class="LineNr">2838 </span>    <span class="subxS1Comment"># . if (eax == 0) loop</span>
 <span id="L2839" class="LineNr">2839 </span>    3d/compare-eax-and  0/imm32
-<span id="L2840" class="LineNr">2840 </span>    0f 84/jump-if-equal  $emit-sib:loop/disp32
+<span id="L2840" class="LineNr">2840 </span>    0f 84/jump-if-equal  $emit-sib:<span class="Constant">loop</span>/disp32
 <span id="L2841" class="LineNr">2841 </span><span class="Constant">$emit-sib:index</span>:
 <span id="L2842" class="LineNr">2842 </span>    <span class="subxComment"># index = parse-hex-int(next-token-from-slice(word-slice-&gt;start, word-slice-&gt;end, '/'))</span>
 <span id="L2843" class="LineNr">2843 </span>    <span class="subxS1Comment"># . eax = parse-datum-of-word(word-slice)</span>
@@ -2477,7 +2477,7 @@ if ('onhashchange' in window) {
 <span id="L2852" class="LineNr">2852 </span>    <span class="subxComment"># has-sib? = true</span>
 <span id="L2853" class="LineNr">2853 </span>    ba/copy-to-edx  1/imm32/true
 <span id="L2854" class="LineNr">2854 </span>    <span class="subxComment"># continue</span>
-<span id="L2855" class="LineNr">2855 </span>    e9/jump  $emit-sib:loop/disp32
+<span id="L2855" class="LineNr">2855 </span>    e9/jump  $emit-sib:<span class="Constant">loop</span>/disp32
 <span id="L2856" class="LineNr">2856 </span><span class="Constant">$emit-sib:break</span>:
 <span id="L2857" class="LineNr">2857 </span>    <span class="subxComment"># if (!has-sib?) return</span>
 <span id="L2858" class="LineNr">2858 </span>    81          7/subop/compare     3/mod/direct    2/rm32/edx   <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 edx</span>
@@ -2495,14 +2495,14 @@ if ('onhashchange' in window) {
 <span id="L2870" class="LineNr">2870 </span>    <span class="subxComment"># sib |= base &amp; 0b111</span>
 <span id="L2871" class="LineNr">2871 </span>    81          4/subop/and         3/mod/direct    6/rm32/esi   <span class="Normal"> . </span>         <span class="Normal"> . </span>           <span class="Normal"> . </span>         <span class="Normal"> . </span>         <span class="Normal"> . </span>              7/imm32/0b111     <span class="subxComment"># bitwise and of esi</span>
 <span id="L2872" class="LineNr">2872 </span>    09/or                           3/mod/direct    3/rm32/ebx   <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"># ebx = bitwise OR with esi</span>
-<span id="L2873" class="LineNr">2873 </span><span class="Constant">$emit-sib:emit</span>:
+<span id="L2873" class="LineNr">2873 </span><span class="Constant">$emit-sib:<a href='../079emit.subx.html#L10'>emit</a></span>:
 <span id="L2874" class="LineNr">2874 </span>    <span class="subxComment"># emit-hex(out, sib, 1)</span>
 <span id="L2875" class="LineNr">2875 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L2876" class="LineNr">2876 </span>    68/push  1/imm32
 <span id="L2877" class="LineNr">2877 </span>    53/push-ebx
 <span id="L2878" class="LineNr">2878 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L2879" class="LineNr">2879 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2880" class="LineNr">2880 </span>    e8/call  emit-hex/disp32
+<span id="L2880" class="LineNr">2880 </span>    e8/call  <a href='../078emit-hex.subx.html#L7'>emit-hex</a>/disp32
 <span id="L2881" class="LineNr">2881 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2882" class="LineNr">2882 </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="L2883" class="LineNr">2883 </span><span class="Constant">$emit-sib:end</span>:
@@ -2553,20 +2553,20 @@ if ('onhashchange' in window) {
 <span id="L2928" class="LineNr">2928 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L2929" class="LineNr">2929 </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>
 <span id="L2930" class="LineNr">2930 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2931" class="LineNr">2931 </span>    e8/call  <a href='../055stream.subx.html#L55'>rewind-stream</a>/disp32
+<span id="L2931" class="LineNr">2931 </span>    e8/call  <a href='../055stream.subx.html#L54'>rewind-stream</a>/disp32
 <span id="L2932" class="LineNr">2932 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2933" class="LineNr">2933 </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="L2934" class="Folded">2934 </span><span class="Folded">+-- 26 lines: #?     # dump line -----------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L2934" class="Folded">2934 </span><span class="Folded">+-- 26 lines: #?     # dump line -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L2960" class="LineNr">2960 </span><span class="Constant">$emit-disp:loop</span>:
 <span id="L2961" class="LineNr">2961 </span>    <span class="subxComment"># next-word(line, word-slice)</span>
 <span id="L2962" class="LineNr">2962 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L2963" class="LineNr">2963 </span>    51/push-ecx
 <span id="L2964" class="LineNr">2964 </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>
 <span id="L2965" class="LineNr">2965 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L2966" class="LineNr">2966 </span>    e8/call  next-word/disp32
+<span id="L2966" class="LineNr">2966 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L2967" class="LineNr">2967 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L2968" class="LineNr">2968 </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="L2969" class="Folded">2969 </span><span class="Folded">+-- 42 lines: #?     # dump word-slice -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L2969" class="Folded">2969 </span><span class="Folded">+-- 42 lines: #?     # dump word-slice -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3011" class="LineNr">3011 </span><span class="Constant">$emit-disp:check0</span>:
 <span id="L3012" class="LineNr">3012 </span>    <span class="subxComment"># if (slice-empty?(word-slice)) break</span>
 <span id="L3013" class="LineNr">3013 </span>    <span class="subxS1Comment"># . eax = slice-empty?(word-slice)</span>
@@ -2578,7 +2578,7 @@ if ('onhashchange' in window) {
 <span id="L3019" class="LineNr">3019 </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="L3020" class="LineNr">3020 </span>    <span class="subxS1Comment"># . if (eax != 0) pass through</span>
 <span id="L3021" class="LineNr">3021 </span>    3d/compare-eax-and  0/imm32
-<span id="L3022" class="LineNr">3022 </span>    0f 85/jump-if-not-equal  $emit-disp:break/disp32
+<span id="L3022" class="LineNr">3022 </span>    0f 85/jump-if-not-equal  $emit-disp:<span class="Constant">break</span>/disp32
 <span id="L3023" class="LineNr">3023 </span><span class="Constant">$emit-disp:check1</span>:
 <span id="L3024" class="LineNr">3024 </span>    <span class="subxComment"># if (slice-starts-with?(word-slice, &quot;#&quot;)) break</span>
 <span id="L3025" class="LineNr">3025 </span>    <span class="subxS1Comment"># . start/edx = word-slice-&gt;start</span>
@@ -2588,7 +2588,7 @@ if ('onhashchange' in window) {
 <span id="L3029" class="LineNr">3029 </span>    8a/copy-byte                    0/mod/indirect  2/rm32/edx   <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 *edx to AL</span>
 <span id="L3030" class="LineNr">3030 </span>    <span class="subxS1Comment"># . if (eax == '#') break</span>
 <span id="L3031" class="LineNr">3031 </span>    3d/compare-eax-and  0x23/imm32/hash
-<span id="L3032" class="LineNr">3032 </span>    0f 84/jump-if-equal  $emit-disp:break/disp32
+<span id="L3032" class="LineNr">3032 </span>    0f 84/jump-if-equal  $emit-disp:<span class="Constant">break</span>/disp32
 <span id="L3033" class="LineNr">3033 </span><span class="Constant">$emit-disp:check-for-disp32</span>:
 <span id="L3034" class="LineNr">3034 </span>    <span class="subxComment"># if (has-metadata?(word-slice, &quot;disp32&quot;))</span>
 <span id="L3035" class="LineNr">3035 </span>    <span class="subxS1Comment"># . eax = has-metadata?(ecx, &quot;disp32&quot;)</span>
@@ -2596,7 +2596,7 @@ if ('onhashchange' in window) {
 <span id="L3037" class="LineNr">3037 </span>    68/push  <span class="Constant">&quot;disp32&quot;</span>/imm32
 <span id="L3038" class="LineNr">3038 </span>    51/push-ecx
 <span id="L3039" class="LineNr">3039 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L3040" class="LineNr">3040 </span>    e8/call  has-metadata?/disp32
+<span id="L3040" class="LineNr">3040 </span>    e8/call  <a href='../077subx-words.subx.html#L8'>has-metadata?</a>/disp32
 <span id="L3041" class="LineNr">3041 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3042" class="LineNr">3042 </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="L3043" class="LineNr">3043 </span>    <span class="subxS1Comment"># . if (eax == 0) goto next check</span>
@@ -2609,11 +2609,11 @@ if ('onhashchange' in window) {
 <span id="L3050" class="LineNr">3050 </span>    51/push-ecx
 <span id="L3051" class="LineNr">3051 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L3052" class="LineNr">3052 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L3053" class="LineNr">3053 </span>    e8/call  emit/disp32
+<span id="L3053" class="LineNr">3053 </span>    e8/call  <a href='../079emit.subx.html#L10'>emit</a>/disp32
 <span id="L3054" class="LineNr">3054 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3055" class="LineNr">3055 </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="L3056" class="LineNr">3056 </span>    <span class="subxComment"># break</span>
-<span id="L3057" class="LineNr">3057 </span>    e9/jump  $emit-disp:break/disp32
+<span id="L3057" class="LineNr">3057 </span>    e9/jump  $emit-disp:<span class="Constant">break</span>/disp32
 <span id="L3058" class="LineNr">3058 </span><span class="Constant">$emit-disp:check-for-disp16</span>:
 <span id="L3059" class="LineNr">3059 </span>    <span class="subxComment"># else if (has-metadata?(word-slice, &quot;disp16&quot;))</span>
 <span id="L3060" class="LineNr">3060 </span>    <span class="subxS1Comment"># . eax = has-metadata?(ecx, &quot;disp16&quot;)</span>
@@ -2621,7 +2621,7 @@ if ('onhashchange' in window) {
 <span id="L3062" class="LineNr">3062 </span>    68/push  <span class="Constant">&quot;disp16&quot;</span>/imm32
 <span id="L3063" class="LineNr">3063 </span>    51/push-ecx
 <span id="L3064" class="LineNr">3064 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L3065" class="LineNr">3065 </span>    e8/call  has-metadata?/disp32
+<span id="L3065" class="LineNr">3065 </span>    e8/call  <a href='../077subx-words.subx.html#L8'>has-metadata?</a>/disp32
 <span id="L3066" class="LineNr">3066 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3067" class="LineNr">3067 </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="L3068" class="LineNr">3068 </span>    <span class="subxS1Comment"># . if (eax == 0) goto next check</span>
@@ -2634,11 +2634,11 @@ if ('onhashchange' in window) {
 <span id="L3075" class="LineNr">3075 </span>    51/push-ecx
 <span id="L3076" class="LineNr">3076 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L3077" class="LineNr">3077 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L3078" class="LineNr">3078 </span>    e8/call  emit/disp32
+<span id="L3078" class="LineNr">3078 </span>    e8/call  <a href='../079emit.subx.html#L10'>emit</a>/disp32
 <span id="L3079" class="LineNr">3079 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3080" class="LineNr">3080 </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="L3081" class="LineNr">3081 </span>    <span class="subxComment"># break</span>
-<span id="L3082" class="LineNr">3082 </span>    e9/jump  $emit-disp:break/disp32
+<span id="L3082" class="LineNr">3082 </span>    e9/jump  $emit-disp:<span class="Constant">break</span>/disp32
 <span id="L3083" class="LineNr">3083 </span><span class="Constant">$emit-disp:check-for-disp8</span>:
 <span id="L3084" class="LineNr">3084 </span>    <span class="subxComment"># if (has-metadata?(word-slice, &quot;disp8&quot;))</span>
 <span id="L3085" class="LineNr">3085 </span>    <span class="subxS1Comment"># . eax = has-metadata?(ecx, &quot;disp8&quot;)</span>
@@ -2646,12 +2646,12 @@ if ('onhashchange' in window) {
 <span id="L3087" class="LineNr">3087 </span>    68/push  <span class="Constant">&quot;disp8&quot;</span>/imm32
 <span id="L3088" class="LineNr">3088 </span>    51/push-ecx
 <span id="L3089" class="LineNr">3089 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L3090" class="LineNr">3090 </span>    e8/call  has-metadata?/disp32
+<span id="L3090" class="LineNr">3090 </span>    e8/call  <a href='../077subx-words.subx.html#L8'>has-metadata?</a>/disp32
 <span id="L3091" class="LineNr">3091 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3092" class="LineNr">3092 </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="L3093" class="LineNr">3093 </span>    <span class="subxS1Comment"># . if (eax == 0) loop</span>
 <span id="L3094" class="LineNr">3094 </span>    3d/compare-eax-and  0/imm32
-<span id="L3095" class="LineNr">3095 </span>    0f 84/jump-if-equal  $emit-disp:loop/disp32
+<span id="L3095" class="LineNr">3095 </span>    0f 84/jump-if-equal  $emit-disp:<span class="Constant">loop</span>/disp32
 <span id="L3096" class="LineNr">3096 </span><span class="Constant">$emit-disp:disp8</span>:
 <span id="L3097" class="LineNr">3097 </span>    <span class="subxComment"># emit(out, word-slice, 1)</span>
 <span id="L3098" class="LineNr">3098 </span>    <span class="subxS2Comment"># . . push args</span>
@@ -2659,7 +2659,7 @@ if ('onhashchange' in window) {
 <span id="L3100" class="LineNr">3100 </span>    51/push-ecx
 <span id="L3101" class="LineNr">3101 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L3102" class="LineNr">3102 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L3103" class="LineNr">3103 </span>    e8/call  emit/disp32
+<span id="L3103" class="LineNr">3103 </span>    e8/call  <a href='../079emit.subx.html#L10'>emit</a>/disp32
 <span id="L3104" class="LineNr">3104 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3105" class="LineNr">3105 </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="L3106" class="LineNr">3106 </span>    <span class="subxComment"># break</span>
@@ -2708,20 +2708,20 @@ if ('onhashchange' in window) {
 <span id="L3149" class="LineNr">3149 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3150" class="LineNr">3150 </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>
 <span id="L3151" class="LineNr">3151 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L3152" class="LineNr">3152 </span>    e8/call  <a href='../055stream.subx.html#L55'>rewind-stream</a>/disp32
+<span id="L3152" class="LineNr">3152 </span>    e8/call  <a href='../055stream.subx.html#L54'>rewind-stream</a>/disp32
 <span id="L3153" class="LineNr">3153 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3154" class="LineNr">3154 </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="L3155" class="Folded">3155 </span><span class="Folded">+-- 26 lines: #?     # dump line -----------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3155" class="Folded">3155 </span><span class="Folded">+-- 26 lines: #?     # dump line -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3181" class="LineNr">3181 </span><span class="Constant">$emit-imm:loop</span>:
 <span id="L3182" class="LineNr">3182 </span>    <span class="subxComment"># next-word(line, word-slice)</span>
 <span id="L3183" class="LineNr">3183 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3184" class="LineNr">3184 </span>    51/push-ecx
 <span id="L3185" class="LineNr">3185 </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>
 <span id="L3186" class="LineNr">3186 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L3187" class="LineNr">3187 </span>    e8/call  next-word/disp32
+<span id="L3187" class="LineNr">3187 </span>    e8/call  <a href='../076next-word.subx.html#L10'>next-word</a>/disp32
 <span id="L3188" class="LineNr">3188 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3189" class="LineNr">3189 </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="L3190" class="Folded">3190 </span><span class="Folded">+-- 42 lines: #?     # dump word-slice -----------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3190" class="Folded">3190 </span><span class="Folded">+-- 42 lines: #?     # dump word-slice -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3232" class="LineNr">3232 </span><span class="Constant">$emit-imm:check0</span>:
 <span id="L3233" class="LineNr">3233 </span>    <span class="subxComment"># if (slice-empty?(word-slice)) break</span>
 <span id="L3234" class="LineNr">3234 </span>    <span class="subxS1Comment"># . eax = slice-empty?(word-slice)</span>
@@ -2733,7 +2733,7 @@ if ('onhashchange' in window) {
 <span id="L3240" class="LineNr">3240 </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="L3241" class="LineNr">3241 </span>    <span class="subxS1Comment"># . if (eax != 0) pass through</span>
 <span id="L3242" class="LineNr">3242 </span>    3d/compare-eax-and  0/imm32
-<span id="L3243" class="LineNr">3243 </span>    0f 85/jump-if-not-equal  $emit-imm:break/disp32
+<span id="L3243" class="LineNr">3243 </span>    0f 85/jump-if-not-equal  $emit-imm:<span class="Constant">break</span>/disp32
 <span id="L3244" class="LineNr">3244 </span><span class="Constant">$emit-imm:check1</span>:
 <span id="L3245" class="LineNr">3245 </span>    <span class="subxComment"># if (slice-starts-with?(word-slice, &quot;#&quot;)) break</span>
 <span id="L3246" class="LineNr">3246 </span>    <span class="subxS1Comment"># . start/edx = slice-&gt;start</span>
@@ -2743,7 +2743,7 @@ if ('onhashchange' in window) {
 <span id="L3250" class="LineNr">3250 </span>    8a/copy-byte                    0/mod/indirect  2/rm32/edx   <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 *edx to AL</span>
 <span id="L3251" class="LineNr">3251 </span>    <span class="subxS1Comment"># . if (eax == '#') break</span>
 <span id="L3252" class="LineNr">3252 </span>    3d/compare-eax-and  0x23/imm32/hash
-<span id="L3253" class="LineNr">3253 </span>    0f 84/jump-if-equal  $emit-imm:break/disp32
+<span id="L3253" class="LineNr">3253 </span>    0f 84/jump-if-equal  $emit-imm:<span class="Constant">break</span>/disp32
 <span id="L3254" class="LineNr">3254 </span><span class="Constant">$emit-imm:check-for-imm32</span>:
 <span id="L3255" class="LineNr">3255 </span>    <span class="subxComment"># if (has-metadata?(word-slice, &quot;imm32&quot;))</span>
 <span id="L3256" class="LineNr">3256 </span>    <span class="subxS1Comment"># . eax = has-metadata?(ecx, &quot;imm32&quot;)</span>
@@ -2751,7 +2751,7 @@ if ('onhashchange' in window) {
 <span id="L3258" class="LineNr">3258 </span>    68/push  <span class="Constant">&quot;imm32&quot;</span>/imm32
 <span id="L3259" class="LineNr">3259 </span>    51/push-ecx
 <span id="L3260" class="LineNr">3260 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L3261" class="LineNr">3261 </span>    e8/call  has-metadata?/disp32
+<span id="L3261" class="LineNr">3261 </span>    e8/call  <a href='../077subx-words.subx.html#L8'>has-metadata?</a>/disp32
 <span id="L3262" class="LineNr">3262 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3263" class="LineNr">3263 </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="L3264" class="LineNr">3264 </span>    <span class="subxS1Comment"># . if (eax == 0) goto next check</span>
@@ -2764,11 +2764,11 @@ if ('onhashchange' in window) {
 <span id="L3271" class="LineNr">3271 </span>    51/push-ecx
 <span id="L3272" class="LineNr">3272 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L3273" class="LineNr">3273 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L3274" class="LineNr">3274 </span>    e8/call  emit/disp32
+<span id="L3274" class="LineNr">3274 </span>    e8/call  <a href='../079emit.subx.html#L10'>emit</a>/disp32
 <span id="L3275" class="LineNr">3275 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3276" class="LineNr">3276 </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="L3277" class="LineNr">3277 </span>    <span class="subxComment"># break</span>
-<span id="L3278" class="LineNr">3278 </span>    e9/jump  $emit-imm:break/disp32
+<span id="L3278" class="LineNr">3278 </span>    e9/jump  $emit-imm:<span class="Constant">break</span>/disp32
 <span id="L3279" class="LineNr">3279 </span><span class="Constant">$emit-imm:check-for-imm16</span>:
 <span id="L3280" class="LineNr">3280 </span>    <span class="subxComment"># if (has-metadata?(word-slice, &quot;imm16&quot;))</span>
 <span id="L3281" class="LineNr">3281 </span>    <span class="subxS1Comment"># . eax = has-metadata?(ecx, &quot;imm16&quot;)</span>
@@ -2776,7 +2776,7 @@ if ('onhashchange' in window) {
 <span id="L3283" class="LineNr">3283 </span>    68/push  <span class="Constant">&quot;imm16&quot;</span>/imm32
 <span id="L3284" class="LineNr">3284 </span>    51/push-ecx
 <span id="L3285" class="LineNr">3285 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L3286" class="LineNr">3286 </span>    e8/call  has-metadata?/disp32
+<span id="L3286" class="LineNr">3286 </span>    e8/call  <a href='../077subx-words.subx.html#L8'>has-metadata?</a>/disp32
 <span id="L3287" class="LineNr">3287 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3288" class="LineNr">3288 </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="L3289" class="LineNr">3289 </span>    <span class="subxS1Comment"># . if (eax == 0) goto next check</span>
@@ -2789,11 +2789,11 @@ if ('onhashchange' in window) {
 <span id="L3296" class="LineNr">3296 </span>    51/push-ecx
 <span id="L3297" class="LineNr">3297 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L3298" class="LineNr">3298 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L3299" class="LineNr">3299 </span>    e8/call  emit/disp32
+<span id="L3299" class="LineNr">3299 </span>    e8/call  <a href='../079emit.subx.html#L10'>emit</a>/disp32
 <span id="L3300" class="LineNr">3300 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3301" class="LineNr">3301 </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="L3302" class="LineNr">3302 </span>    <span class="subxComment"># break</span>
-<span id="L3303" class="LineNr">3303 </span>    e9/jump  $emit-imm:break/disp32
+<span id="L3303" class="LineNr">3303 </span>    e9/jump  $emit-imm:<span class="Constant">break</span>/disp32
 <span id="L3304" class="LineNr">3304 </span><span class="Constant">$emit-imm:check-for-imm8</span>:
 <span id="L3305" class="LineNr">3305 </span>    <span class="subxComment"># if (has-metadata?(word-slice, &quot;imm8&quot;))</span>
 <span id="L3306" class="LineNr">3306 </span>    <span class="subxS1Comment"># . eax = has-metadata?(ecx, &quot;imm8&quot;)</span>
@@ -2801,12 +2801,12 @@ if ('onhashchange' in window) {
 <span id="L3308" class="LineNr">3308 </span>    68/push  <span class="Constant">&quot;imm8&quot;</span>/imm32
 <span id="L3309" class="LineNr">3309 </span>    51/push-ecx
 <span id="L3310" class="LineNr">3310 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L3311" class="LineNr">3311 </span>    e8/call  has-metadata?/disp32
+<span id="L3311" class="LineNr">3311 </span>    e8/call  <a href='../077subx-words.subx.html#L8'>has-metadata?</a>/disp32
 <span id="L3312" class="LineNr">3312 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3313" class="LineNr">3313 </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="L3314" class="LineNr">3314 </span>    <span class="subxS1Comment"># . if (eax == 0) loop</span>
 <span id="L3315" class="LineNr">3315 </span>    3d/compare-eax-and  0/imm32
-<span id="L3316" class="LineNr">3316 </span>    0f 84/jump-if-equal  $emit-imm:loop/disp32
+<span id="L3316" class="LineNr">3316 </span>    0f 84/jump-if-equal  $emit-imm:<span class="Constant">loop</span>/disp32
 <span id="L3317" class="LineNr">3317 </span><span class="Constant">$emit-imm:imm8</span>:
 <span id="L3318" class="LineNr">3318 </span>    <span class="subxComment"># emit(out, word-slice, 1)</span>
 <span id="L3319" class="LineNr">3319 </span>    <span class="subxS2Comment"># . . push args</span>
@@ -2814,7 +2814,7 @@ if ('onhashchange' in window) {
 <span id="L3321" class="LineNr">3321 </span>    51/push-ecx
 <span id="L3322" class="LineNr">3322 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L3323" class="LineNr">3323 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L3324" class="LineNr">3324 </span>    e8/call  emit/disp32
+<span id="L3324" class="LineNr">3324 </span>    e8/call  <a href='../079emit.subx.html#L10'>emit</a>/disp32
 <span id="L3325" class="LineNr">3325 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3326" class="LineNr">3326 </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="L3327" class="LineNr">3327 </span>    <span class="subxComment"># break</span>
@@ -2847,7 +2847,7 @@ if ('onhashchange' in window) {
 <span id="L3354" class="LineNr">3354 </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>
 <span id="L3355" class="LineNr">3355 </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>          0xc/disp8      <span class="Normal"> . </span>                <span class="subxComment"># push *(ebp+12)</span>
 <span id="L3356" class="LineNr">3356 </span>    <span class="subxS2Comment"># . . call</span>
-<span id="L3357" class="LineNr">3357 </span>    e8/call  write-stream-data/disp32
+<span id="L3357" class="LineNr">3357 </span>    e8/call  <a href='../074write-stream-data.subx.html#L11'>write-stream-data</a>/disp32
 <span id="L3358" class="LineNr">3358 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3359" class="LineNr">3359 </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="L3360" class="LineNr">3360 </span><span class="Constant">$emit-line-in-comment:end</span>:
@@ -3046,7 +3046,7 @@ if ('onhashchange' in window) {
 <span id="L3553" class="LineNr">3553 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L3554" class="LineNr">3554 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3555" class="LineNr">3555 </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="L3556" class="Folded">3556 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3556" class="Folded">3556 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3582" class="LineNr">3582 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;ab  # ab/cd # comment&quot;, msg)</span>
 <span id="L3583" class="LineNr">3583 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3584" class="LineNr">3584 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-single-opcode&quot;</span>/imm32
@@ -3115,7 +3115,7 @@ if ('onhashchange' in window) {
 <span id="L3647" class="LineNr">3647 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L3648" class="LineNr">3648 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3649" class="LineNr">3649 </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="L3650" class="Folded">3650 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3650" class="Folded">3650 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3676" class="LineNr">3676 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;0f ab  # 0f/m1 ab/m2 # comment&quot;, msg)</span>
 <span id="L3677" class="LineNr">3677 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3678" class="LineNr">3678 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-0f-opcode&quot;</span>/imm32
@@ -3184,7 +3184,7 @@ if ('onhashchange' in window) {
 <span id="L3741" class="LineNr">3741 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>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="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;f2 ab  # f2/m1 ab/m2 # comment&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-convert-instruction-handles-f2-opcode&quot;</span>/imm32
@@ -3253,7 +3253,7 @@ if ('onhashchange' in window) {
 <span id="L3835" class="LineNr">3835 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L3836" class="LineNr">3836 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3837" class="LineNr">3837 </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="L3838" class="Folded">3838 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3838" class="Folded">3838 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3864" class="LineNr">3864 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;f3 ab  # f3/m1 ab/m2 # comment&quot;, msg)</span>
 <span id="L3865" class="LineNr">3865 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3866" class="LineNr">3866 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-f3-opcode&quot;</span>/imm32
@@ -3322,7 +3322,7 @@ if ('onhashchange' in window) {
 <span id="L3929" class="LineNr">3929 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L3930" class="LineNr">3930 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L3931" class="LineNr">3931 </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="L3932" class="Folded">3932 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L3932" class="Folded">3932 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L3958" class="LineNr">3958 </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="L3959" class="LineNr">3959 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L3960" class="LineNr">3960 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-f2-0f-opcode&quot;</span>/imm32
@@ -3391,7 +3391,7 @@ if ('onhashchange' in window) {
 <span id="L4023" class="LineNr">4023 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L4024" class="LineNr">4024 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4025" class="LineNr">4025 </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="L4026" class="Folded">4026 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4026" class="Folded">4026 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4052" class="LineNr">4052 </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="L4053" class="LineNr">4053 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4054" class="LineNr">4054 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-f3-0f-opcode&quot;</span>/imm32
@@ -3460,7 +3460,7 @@ if ('onhashchange' in window) {
 <span id="L4117" class="LineNr">4117 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L4118" class="LineNr">4118 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4119" class="LineNr">4119 </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="L4120" class="Folded">4120 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4120" class="Folded">4120 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4146" class="LineNr">4146 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;ab  # f3/m1 0f/m2 ab/m3 # comment&quot;, msg)</span>
 <span id="L4147" class="LineNr">4147 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4148" class="LineNr">4148 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-unused-opcodes&quot;</span>/imm32
@@ -3529,7 +3529,7 @@ if ('onhashchange' in window) {
 <span id="L4211" class="LineNr">4211 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L4212" class="LineNr">4212 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4213" class="LineNr">4213 </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="L4214" class="Folded">4214 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4214" class="Folded">4214 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4240" class="LineNr">4240 </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="L4241" class="LineNr">4241 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4242" class="LineNr">4242 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-unused-second-opcodes&quot;</span>/imm32
@@ -3598,7 +3598,7 @@ if ('onhashchange' in window) {
 <span id="L4305" class="LineNr">4305 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L4306" class="LineNr">4306 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4307" class="LineNr">4307 </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="L4308" class="Folded">4308 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4308" class="Folded">4308 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4334" class="LineNr">4334 </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="L4335" class="LineNr">4335 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4336" class="LineNr">4336 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-unused-second-opcodes&quot;</span>/imm32
@@ -3667,7 +3667,7 @@ if ('onhashchange' in window) {
 <span id="L4399" class="LineNr">4399 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L4400" class="LineNr">4400 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4401" class="LineNr">4401 </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="L4402" class="Folded">4402 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4402" class="Folded">4402 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4428" class="LineNr">4428 </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="L4429" class="LineNr">4429 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4430" class="LineNr">4430 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-emits-modrm-byte&quot;</span>/imm32
@@ -3734,7 +3734,7 @@ if ('onhashchange' in window) {
 <span id="L4491" class="LineNr">4491 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L4492" class="LineNr">4492 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4493" class="LineNr">4493 </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="L4494" class="Folded">4494 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4494" class="Folded">4494 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4520" class="LineNr">4520 </span>    <span class="subxComment"># check output</span>
 <span id="L4521" class="LineNr">4521 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;# abcd&quot;, msg)</span>
 <span id="L4522" class="LineNr">4522 </span>    <span class="subxS2Comment"># . . push args</span>
@@ -3804,7 +3804,7 @@ if ('onhashchange' in window) {
 <span id="L4586" class="LineNr">4586 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L4587" class="LineNr">4587 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4588" class="LineNr">4588 </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="L4589" class="Folded">4589 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4589" class="Folded">4589 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4615" class="LineNr">4615 </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="L4616" class="LineNr">4616 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4617" class="LineNr">4617 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-emits-modrm-byte-from-subop&quot;</span>/imm32
@@ -3873,7 +3873,7 @@ if ('onhashchange' in window) {
 <span id="L4680" class="LineNr">4680 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L4681" class="LineNr">4681 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4682" class="LineNr">4682 </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="L4683" class="Folded">4683 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4683" class="Folded">4683 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4709" class="LineNr">4709 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;8b 08  # 8b/copy 0/rm32 1/r32&quot;, msg)</span>
 <span id="L4710" class="LineNr">4710 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4711" class="LineNr">4711 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-emits-modrm-byte-with-missing-mod&quot;</span>/imm32
@@ -3942,7 +3942,7 @@ if ('onhashchange' in window) {
 <span id="L4774" class="LineNr">4774 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L4775" class="LineNr">4775 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4776" class="LineNr">4776 </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="L4777" class="Folded">4777 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4777" class="Folded">4777 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4803" class="LineNr">4803 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;8b 08  # 8b/copy 0/mod 1/r32&quot;, msg)</span>
 <span id="L4804" class="LineNr">4804 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4805" class="LineNr">4805 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-emits-modrm-byte-with-missing-rm32&quot;</span>/imm32
@@ -4011,7 +4011,7 @@ if ('onhashchange' in window) {
 <span id="L4868" class="LineNr">4868 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L4869" class="LineNr">4869 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4870" class="LineNr">4870 </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="L4871" class="Folded">4871 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4871" class="Folded">4871 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4897" class="LineNr">4897 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;8b 00  # 8b/copy 0/mod 0/rm32&quot;, msg)</span>
 <span id="L4898" class="LineNr">4898 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4899" class="LineNr">4899 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-emits-modrm-byte-with-missing-r32&quot;</span>/imm32
@@ -4080,7 +4080,7 @@ if ('onhashchange' in window) {
 <span id="L4962" class="LineNr">4962 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L4963" class="LineNr">4963 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L4964" class="LineNr">4964 </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="L4965" class="Folded">4965 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L4965" class="Folded">4965 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L4991" class="LineNr">4991 </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="L4992" class="LineNr">4992 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L4993" class="LineNr">4993 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-emits-sib-byte&quot;</span>/imm32
@@ -4149,7 +4149,7 @@ if ('onhashchange' in window) {
 <span id="L5056" class="LineNr">5056 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L5057" class="LineNr">5057 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L5058" class="LineNr">5058 </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="L5059" class="Folded">5059 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L5059" class="Folded">5059 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L5085" class="LineNr">5085 </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="L5086" class="LineNr">5086 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L5087" class="LineNr">5087 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-emits-sib-byte-with-missing-base&quot;</span>/imm32
@@ -4218,7 +4218,7 @@ if ('onhashchange' in window) {
 <span id="L5150" class="LineNr">5150 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>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 0/scale&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-index&quot;</span>/imm32
@@ -4287,7 +4287,7 @@ if ('onhashchange' in window) {
 <span id="L5244" class="LineNr">5244 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L5245" class="LineNr">5245 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L5246" class="LineNr">5246 </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="L5247" class="Folded">5247 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L5247" class="Folded">5247 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L5273" class="LineNr">5273 </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="L5274" class="LineNr">5274 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L5275" class="LineNr">5275 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-emits-sib-byte-with-missing-scale&quot;</span>/imm32
@@ -4356,7 +4356,7 @@ if ('onhashchange' in window) {
 <span id="L5338" class="LineNr">5338 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L5339" class="LineNr">5339 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L5340" class="LineNr">5340 </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="L5341" class="Folded">5341 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L5341" class="Folded">5341 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L5367" class="LineNr">5367 </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="L5368" class="LineNr">5368 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L5369" class="LineNr">5369 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-disp32-operand&quot;</span>/imm32
@@ -4425,7 +4425,7 @@ if ('onhashchange' in window) {
 <span id="L5432" class="LineNr">5432 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L5433" class="LineNr">5433 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L5434" class="LineNr">5434 </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="L5435" class="Folded">5435 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L5435" class="Folded">5435 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L5461" class="LineNr">5461 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;e8 20 00  # e8/call 20/disp16&quot;, msg)</span>
 <span id="L5462" class="LineNr">5462 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L5463" class="LineNr">5463 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-disp16-operand&quot;</span>/imm32
@@ -4494,7 +4494,7 @@ if ('onhashchange' in window) {
 <span id="L5526" class="LineNr">5526 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L5527" class="LineNr">5527 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L5528" class="LineNr">5528 </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="L5529" class="Folded">5529 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L5529" class="Folded">5529 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L5555" class="LineNr">5555 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;eb 20  # eb/jump 20/disp8&quot;, msg)</span>
 <span id="L5556" class="LineNr">5556 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L5557" class="LineNr">5557 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-disp8-operand&quot;</span>/imm32
@@ -4563,7 +4563,7 @@ if ('onhashchange' in window) {
 <span id="L5620" class="LineNr">5620 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L5621" class="LineNr">5621 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L5622" class="LineNr">5622 </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="L5623" class="Folded">5623 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L5623" class="Folded">5623 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L5649" class="LineNr">5649 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;eb xyz/disp8  # eb/jump xyz/disp8&quot;, msg)</span>
 <span id="L5650" class="LineNr">5650 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L5651" class="LineNr">5651 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-disp8-name&quot;</span>/imm32
@@ -4632,7 +4632,7 @@ if ('onhashchange' in window) {
 <span id="L5714" class="LineNr">5714 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L5715" class="LineNr">5715 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L5716" class="LineNr">5716 </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="L5717" class="Folded">5717 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L5717" class="Folded">5717 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L5743" class="LineNr">5743 </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="L5744" class="LineNr">5744 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L5745" class="LineNr">5745 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-imm32-operand&quot;</span>/imm32
@@ -4702,7 +4702,7 @@ if ('onhashchange' in window) {
 <span id="L5809" class="LineNr">5809 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L5810" class="LineNr">5810 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L5811" class="LineNr">5811 </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="L5812" class="Folded">5812 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L5812" class="Folded">5812 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L5838" class="LineNr">5838 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;68 20 00  # 68/push 0x20/imm16&quot;, msg)</span>
 <span id="L5839" class="LineNr">5839 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L5840" class="LineNr">5840 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-imm16-operand&quot;</span>/imm32
@@ -4772,7 +4772,7 @@ if ('onhashchange' in window) {
 <span id="L5904" class="LineNr">5904 </span>    e8/call  <a href='../064write-byte.subx.html#L79'>flush</a>/disp32
 <span id="L5905" class="LineNr">5905 </span>    <span class="subxS2Comment"># . . discard args</span>
 <span id="L5906" class="LineNr">5906 </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="L5907" class="Folded">5907 </span><span class="Folded">+-- 26 lines: #?     # dump output ---------------------------------------------------------------------------------------------------------------------------</span>
+<span id="L5907" class="Folded">5907 </span><span class="Folded">+-- 26 lines: #?     # dump output -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------</span>
 <span id="L5933" class="LineNr">5933 </span>    <span class="subxS1Comment"># . check-stream-equal(_test-output-stream, &quot;68 20  # 68/push 0x20/imm8&quot;, msg)</span>
 <span id="L5934" class="LineNr">5934 </span>    <span class="subxS2Comment"># . . push args</span>
 <span id="L5935" class="LineNr">5935 </span>    68/push  <span class="Constant">&quot;F - test-convert-instruction-handles-imm8-operand&quot;</span>/imm32