about summary refs log tree commit diff stats
path: root/html/shell/primitives.mu.html
diff options
context:
space:
mode:
authorKartik Agaram <vc@akkartik.com>2021-08-30 09:21:52 -0700
committerKartik Agaram <vc@akkartik.com>2021-08-30 09:21:52 -0700
commit61ec86b71928afc4a7b0a9c787ba88d5b4b3040b (patch)
tree1c3da9ed40fa8bb36adb081e6dc538dfebf87afd /html/shell/primitives.mu.html
parenta479f0d0837be5fec7e92ef806cc50b9c17ed50c (diff)
downloadmu-61ec86b71928afc4a7b0a9c787ba88d5b4b3040b.tar.gz
.
Diffstat (limited to 'html/shell/primitives.mu.html')
-rw-r--r--html/shell/primitives.mu.html140
1 files changed, 70 insertions, 70 deletions
diff --git a/html/shell/primitives.mu.html b/html/shell/primitives.mu.html
index 0b702821..3cebf0f6 100644
--- a/html/shell/primitives.mu.html
+++ b/html/shell/primitives.mu.html
@@ -137,56 +137,56 @@ if ('onhashchange' in window) {
 <span id="L72" class="LineNr">  72 </span><span class="PreProc">fn</span> <span class="muFunction"><a href='primitives.mu.html#L72'>render-primitives</a></span> <a href='../500fake-screen.mu.html#L14'>screen</a>: (addr <a href='../500fake-screen.mu.html#L14'>screen</a>), xmin: int, xmax: int, ymax: int <span class="Delimiter">{</span>
 <span id="L73" class="LineNr">  73 </span>  <span class="PreProc">var</span> y/<span class="muRegEcx">ecx</span>: int <span class="Special">&lt;-</span> copy ymax
 <span id="L74" class="LineNr">  74 </span>  y <span class="Special">&lt;-</span> subtract <span class="Constant">0x11</span>/primitives-border
-<span id="L75" class="LineNr">  75 </span>  <a href='../500fake-screen.mu.html#L353'>clear-rect</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, xmin, y, xmax, ymax, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L75" class="LineNr">  75 </span>  <a href='../500fake-screen.mu.html#L409'>clear-rect</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, xmin, y, xmax, ymax, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L76" class="LineNr">  76 </span>  y <span class="Special">&lt;-</span> increment
 <span id="L77" class="LineNr">  77 </span>  <span class="PreProc">var</span> right-min/<span class="muRegEdx">edx</span>: int <span class="Special">&lt;-</span> copy xmax
 <span id="L78" class="LineNr">  78 </span>  right-min <span class="Special">&lt;-</span> subtract <span class="Constant">0x1e</span>/primitives-divider
-<span id="L79" class="LineNr">  79 </span>  <a href='../500fake-screen.mu.html#L190'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
-<span id="L80" class="LineNr">  80 </span>  <a href='../501draw-text.mu.html#L261'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;primitives&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L79" class="LineNr">  79 </span>  <a href='../500fake-screen.mu.html#L246'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
+<span id="L80" class="LineNr">  80 </span>  <a href='../501draw-text.mu.html#L269'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;primitives&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L81" class="LineNr">  81 </span>  y <span class="Special">&lt;-</span> increment
-<span id="L82" class="LineNr">  82 </span>  <a href='../500fake-screen.mu.html#L190'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
-<span id="L83" class="LineNr">  83 </span>  <a href='../501draw-text.mu.html#L261'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  fn <a href='evaluate.mu.html#L681'>apply</a> set if while&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L82" class="LineNr">  82 </span>  <a href='../500fake-screen.mu.html#L246'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
+<span id="L83" class="LineNr">  83 </span>  <a href='../501draw-text.mu.html#L269'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  fn <a href='evaluate.mu.html#L681'>apply</a> set if while&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L84" class="LineNr">  84 </span>  y <span class="Special">&lt;-</span> increment
-<span id="L85" class="LineNr">  85 </span>  <a href='../500fake-screen.mu.html#L190'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
-<span id="L86" class="LineNr">  86 </span>  <a href='../501draw-text.mu.html#L261'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;booleans&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L85" class="LineNr">  85 </span>  <a href='../500fake-screen.mu.html#L246'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
+<span id="L86" class="LineNr">  86 </span>  <a href='../501draw-text.mu.html#L269'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;booleans&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L87" class="LineNr">  87 </span>  y <span class="Special">&lt;-</span> increment
-<span id="L88" class="LineNr">  88 </span>  <a href='../500fake-screen.mu.html#L190'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
-<span id="L89" class="LineNr">  89 </span>  <a href='../501draw-text.mu.html#L261'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  = and or not&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L88" class="LineNr">  88 </span>  <a href='../500fake-screen.mu.html#L246'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
+<span id="L89" class="LineNr">  89 </span>  <a href='../501draw-text.mu.html#L269'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  = and or not&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L90" class="LineNr">  90 </span>  y <span class="Special">&lt;-</span> increment
-<span id="L91" class="LineNr">  91 </span>  <a href='../500fake-screen.mu.html#L190'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
-<span id="L92" class="LineNr">  92 </span>  <a href='../501draw-text.mu.html#L261'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;lists&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L91" class="LineNr">  91 </span>  <a href='../500fake-screen.mu.html#L246'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
+<span id="L92" class="LineNr">  92 </span>  <a href='../501draw-text.mu.html#L269'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;lists&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L93" class="LineNr">  93 </span>  y <span class="Special">&lt;-</span> increment
-<span id="L94" class="LineNr">  94 </span>  <a href='../500fake-screen.mu.html#L190'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
-<span id="L95" class="LineNr">  95 </span>  <a href='../501draw-text.mu.html#L261'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  cons <a href='evaluate.mu.html#L1237'>car</a> <a href='evaluate.mu.html#L1265'>cdr</a> no cons? len&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L94" class="LineNr">  94 </span>  <a href='../500fake-screen.mu.html#L246'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
+<span id="L95" class="LineNr">  95 </span>  <a href='../501draw-text.mu.html#L269'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  cons <a href='evaluate.mu.html#L1237'>car</a> <a href='evaluate.mu.html#L1265'>cdr</a> no cons? len&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L96" class="LineNr">  96 </span>  y <span class="Special">&lt;-</span> increment
-<span id="L97" class="LineNr">  97 </span>  <a href='../500fake-screen.mu.html#L190'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
-<span id="L98" class="LineNr">  98 </span>  <a href='../501draw-text.mu.html#L261'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;numbers&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L97" class="LineNr">  97 </span>  <a href='../500fake-screen.mu.html#L246'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
+<span id="L98" class="LineNr">  98 </span>  <a href='../501draw-text.mu.html#L269'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;numbers&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L99" class="LineNr">  99 </span>  y <span class="Special">&lt;-</span> increment
-<span id="L100" class="LineNr"> 100 </span>  <a href='../500fake-screen.mu.html#L190'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
-<span id="L101" class="LineNr"> 101 </span>  <a href='../501draw-text.mu.html#L261'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  + - * / %&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L100" class="LineNr"> 100 </span>  <a href='../500fake-screen.mu.html#L246'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
+<span id="L101" class="LineNr"> 101 </span>  <a href='../501draw-text.mu.html#L269'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  + - * / %&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L102" class="LineNr"> 102 </span>  y <span class="Special">&lt;-</span> increment
-<span id="L103" class="LineNr"> 103 </span>  <a href='../500fake-screen.mu.html#L190'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
-<span id="L104" class="LineNr"> 104 </span>  <a href='../501draw-text.mu.html#L261'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  &lt; &gt; &lt;= &gt;=&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L103" class="LineNr"> 103 </span>  <a href='../500fake-screen.mu.html#L246'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
+<span id="L104" class="LineNr"> 104 </span>  <a href='../501draw-text.mu.html#L269'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  &lt; &gt; &lt;= &gt;=&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L105" class="LineNr"> 105 </span>  y <span class="Special">&lt;-</span> increment
-<span id="L106" class="LineNr"> 106 </span>  <a href='../500fake-screen.mu.html#L190'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
-<span id="L107" class="LineNr"> 107 </span>  <a href='../501draw-text.mu.html#L261'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  sqrt <a href='../506math.mu.html#L1'>abs</a> sgn&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L106" class="LineNr"> 106 </span>  <a href='../500fake-screen.mu.html#L246'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
+<span id="L107" class="LineNr"> 107 </span>  <a href='../501draw-text.mu.html#L269'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  sqrt <a href='../506math.mu.html#L1'>abs</a> sgn&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L108" class="LineNr"> 108 </span>  y <span class="Special">&lt;-</span> increment
-<span id="L109" class="LineNr"> 109 </span>  <a href='../500fake-screen.mu.html#L190'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
-<span id="L110" class="LineNr"> 110 </span>  <a href='../501draw-text.mu.html#L261'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;arrays&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L109" class="LineNr"> 109 </span>  <a href='../500fake-screen.mu.html#L246'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
+<span id="L110" class="LineNr"> 110 </span>  <a href='../501draw-text.mu.html#L269'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;arrays&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L111" class="LineNr"> 111 </span>  y <span class="Special">&lt;-</span> increment
-<span id="L112" class="LineNr"> 112 </span>  <a href='../500fake-screen.mu.html#L190'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
-<span id="L113" class="LineNr"> 113 </span>  <a href='../501draw-text.mu.html#L261'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  array index iset len&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L112" class="LineNr"> 112 </span>  <a href='../500fake-screen.mu.html#L246'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
+<span id="L113" class="LineNr"> 113 </span>  <a href='../501draw-text.mu.html#L269'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  array index iset len&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L114" class="LineNr"> 114 </span>  y <span class="Special">&lt;-</span> increment
 <span id="L115" class="LineNr"> 115 </span>  <span class="PreProc">var</span> tmpx/eax: int <span class="Special">&lt;-</span> copy right-min
-<span id="L116" class="LineNr"> 116 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  populate&quot;</span>, tmpx, xmax, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
-<span id="L117" class="LineNr"> 117 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: int _ -&gt; array&quot;</span>, tmpx, xmax, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L116" class="LineNr"> 116 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  populate&quot;</span>, tmpx, xmax, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L117" class="LineNr"> 117 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: int _ -&gt; array&quot;</span>, tmpx, xmax, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L118" class="LineNr"> 118 </span>  y <span class="Special">&lt;-</span> increment
-<span id="L119" class="LineNr"> 119 </span>  <a href='../500fake-screen.mu.html#L190'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
-<span id="L120" class="LineNr"> 120 </span>  <a href='../501draw-text.mu.html#L261'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;images&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L119" class="LineNr"> 119 </span>  <a href='../500fake-screen.mu.html#L246'>set-cursor-position</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, right-min, y
+<span id="L120" class="LineNr"> 120 </span>  <a href='../501draw-text.mu.html#L269'>draw-text-wrapping-right-then-down-from-cursor</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;images&quot;</span>, right-min, y, xmax, ymax, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L121" class="LineNr"> 121 </span>  y <span class="Special">&lt;-</span> increment
 <span id="L122" class="LineNr"> 122 </span>  <span class="PreProc">var</span> tmpx/eax: int <span class="Special">&lt;-</span> copy right-min
-<span id="L123" class="LineNr"> 123 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  img&quot;</span>, tmpx, xmax, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
-<span id="L124" class="LineNr"> 124 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: <a href='../500fake-screen.mu.html#L14'>screen</a> stream x y w h&quot;</span>, tmpx, xmax, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L123" class="LineNr"> 123 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  img&quot;</span>, tmpx, xmax, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L124" class="LineNr"> 124 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: <a href='../500fake-screen.mu.html#L14'>screen</a> stream x y w h&quot;</span>, tmpx, xmax, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L125" class="LineNr"> 125 </span><span class="CommentedCode">#?   {</span>
 <span id="L126" class="LineNr"> 126 </span><span class="CommentedCode">#?     compare screen, 0</span>
 <span id="L127" class="LineNr"> 127 </span><span class="CommentedCode">#?     break-if-!=</span>
@@ -199,64 +199,64 @@ if ('onhashchange' in window) {
 <span id="L134" class="LineNr"> 134 </span>  <span class="PreProc">var</span> left-max/<span class="muRegEdx">edx</span>: int <span class="Special">&lt;-</span> copy xmax
 <span id="L135" class="LineNr"> 135 </span>  left-max <span class="Special">&lt;-</span> subtract <span class="Constant">0x20</span>/primitives-divider
 <span id="L136" class="LineNr"> 136 </span>  <span class="PreProc">var</span> tmpx/eax: int <span class="Special">&lt;-</span> copy xmin
-<span id="L137" class="LineNr"> 137 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;cursor graphics&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L137" class="LineNr"> 137 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;cursor graphics&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L138" class="LineNr"> 138 </span>  y <span class="Special">&lt;-</span> increment
 <span id="L139" class="LineNr"> 139 </span>  <span class="PreProc">var</span> tmpx/eax: int <span class="Special">&lt;-</span> copy xmin
-<span id="L140" class="LineNr"> 140 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  print&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
-<span id="L141" class="LineNr"> 141 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: <a href='../500fake-screen.mu.html#L14'>screen</a> _ -&gt; _&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L140" class="LineNr"> 140 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  print&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L141" class="LineNr"> 141 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: <a href='../500fake-screen.mu.html#L14'>screen</a> _ -&gt; _&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L142" class="LineNr"> 142 </span>  y <span class="Special">&lt;-</span> increment
 <span id="L143" class="LineNr"> 143 </span>  <span class="PreProc">var</span> tmpx/eax: int <span class="Special">&lt;-</span> copy xmin
-<span id="L144" class="LineNr"> 144 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  lines columns&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
-<span id="L145" class="LineNr"> 145 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: <a href='../500fake-screen.mu.html#L14'>screen</a> -&gt; number&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L144" class="LineNr"> 144 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  lines columns&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L145" class="LineNr"> 145 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: <a href='../500fake-screen.mu.html#L14'>screen</a> -&gt; number&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L146" class="LineNr"> 146 </span>  y <span class="Special">&lt;-</span> increment
 <span id="L147" class="LineNr"> 147 </span>  <span class="PreProc">var</span> tmpx/eax: int <span class="Special">&lt;-</span> copy xmin
-<span id="L148" class="LineNr"> 148 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  up down left right&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
-<span id="L149" class="LineNr"> 149 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: screen&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L148" class="LineNr"> 148 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  up down left right&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L149" class="LineNr"> 149 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: screen&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L150" class="LineNr"> 150 </span>  y <span class="Special">&lt;-</span> increment
 <span id="L151" class="LineNr"> 151 </span>  <span class="PreProc">var</span> tmpx/eax: int <span class="Special">&lt;-</span> copy xmin
-<span id="L152" class="LineNr"> 152 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  cr&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
-<span id="L153" class="LineNr"> 153 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: <a href='../500fake-screen.mu.html#L14'>screen</a>   &quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
-<span id="L154" class="LineNr"> 154 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;# move cursor down and to left margin&quot;</span>, tmpx, left-max, y, <span class="Constant">0x38</span>/fg=trace, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L152" class="LineNr"> 152 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  cr&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L153" class="LineNr"> 153 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: <a href='../500fake-screen.mu.html#L14'>screen</a>   &quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L154" class="LineNr"> 154 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;# move cursor down and to left margin&quot;</span>, tmpx, left-max, y, <span class="Constant">0x38</span>/fg=trace, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L155" class="LineNr"> 155 </span>  y <span class="Special">&lt;-</span> increment
 <span id="L156" class="LineNr"> 156 </span>  <span class="PreProc">var</span> tmpx/eax: int <span class="Special">&lt;-</span> copy xmin
-<span id="L157" class="LineNr"> 157 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;pixel graphics&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L157" class="LineNr"> 157 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;pixel graphics&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L158" class="LineNr"> 158 </span>  y <span class="Special">&lt;-</span> increment
 <span id="L159" class="LineNr"> 159 </span>  <span class="PreProc">var</span> tmpx/eax: int <span class="Special">&lt;-</span> copy xmin
-<span id="L160" class="LineNr"> 160 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  circle bezier line hline vline pixel&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L160" class="LineNr"> 160 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  circle bezier line hline vline pixel&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L161" class="LineNr"> 161 </span>  y <span class="Special">&lt;-</span> increment
 <span id="L162" class="LineNr"> 162 </span>  <span class="PreProc">var</span> tmpx/eax: int <span class="Special">&lt;-</span> copy xmin
-<span id="L163" class="LineNr"> 163 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  width height&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
-<span id="L164" class="LineNr"> 164 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: <a href='../500fake-screen.mu.html#L14'>screen</a> -&gt; number&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L163" class="LineNr"> 163 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  width height&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L164" class="LineNr"> 164 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: <a href='../500fake-screen.mu.html#L14'>screen</a> -&gt; number&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L165" class="LineNr"> 165 </span>  y <span class="Special">&lt;-</span> increment
 <span id="L166" class="LineNr"> 166 </span>  <span class="PreProc">var</span> tmpx/eax: int <span class="Special">&lt;-</span> copy xmin
-<span id="L167" class="LineNr"> 167 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  clear&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
-<span id="L168" class="LineNr"> 168 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: screen&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L167" class="LineNr"> 167 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  clear&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L168" class="LineNr"> 168 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: screen&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L169" class="LineNr"> 169 </span>  y <span class="Special">&lt;-</span> increment
 <span id="L170" class="LineNr"> 170 </span>  <span class="PreProc">var</span> tmpx/eax: int <span class="Special">&lt;-</span> copy xmin
-<span id="L171" class="LineNr"> 171 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;input&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L171" class="LineNr"> 171 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;input&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L172" class="LineNr"> 172 </span>  y <span class="Special">&lt;-</span> increment
 <span id="L173" class="LineNr"> 173 </span>  <span class="PreProc">var</span> tmpx/eax: int <span class="Special">&lt;-</span> copy xmin
-<span id="L174" class="LineNr"> 174 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  key&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
-<span id="L175" class="LineNr"> 175 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: keyboard -&gt; grapheme?&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L174" class="LineNr"> 174 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  key&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L175" class="LineNr"> 175 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: keyboard -&gt; grapheme?&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L176" class="LineNr"> 176 </span>  y <span class="Special">&lt;-</span> increment
 <span id="L177" class="LineNr"> 177 </span>  <span class="PreProc">var</span> tmpx/eax: int <span class="Special">&lt;-</span> copy xmin
-<span id="L178" class="LineNr"> 178 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;streams&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L178" class="LineNr"> 178 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;streams&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L179" class="LineNr"> 179 </span>  y <span class="Special">&lt;-</span> increment
 <span id="L180" class="LineNr"> 180 </span>  <span class="PreProc">var</span> tmpx/eax: int <span class="Special">&lt;-</span> copy xmin
-<span id="L181" class="LineNr"> 181 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  stream&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
-<span id="L182" class="LineNr"> 182 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: -&gt; stream &quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L181" class="LineNr"> 181 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  stream&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L182" class="LineNr"> 182 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: -&gt; stream &quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L183" class="LineNr"> 183 </span>  y <span class="Special">&lt;-</span> increment
 <span id="L184" class="LineNr"> 184 </span>  <span class="PreProc">var</span> tmpx/eax: int <span class="Special">&lt;-</span> copy xmin
-<span id="L185" class="LineNr"> 185 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  write&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
-<span id="L186" class="LineNr"> 186 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: stream grapheme -&gt; stream&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L185" class="LineNr"> 185 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  write&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L186" class="LineNr"> 186 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: stream grapheme -&gt; stream&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L187" class="LineNr"> 187 </span>  y <span class="Special">&lt;-</span> increment
 <span id="L188" class="LineNr"> 188 </span>  <span class="PreProc">var</span> tmpx/eax: int <span class="Special">&lt;-</span> copy xmin
-<span id="L189" class="LineNr"> 189 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  rewind clear&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
-<span id="L190" class="LineNr"> 190 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: stream&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L189" class="LineNr"> 189 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  rewind clear&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L190" class="LineNr"> 190 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: stream&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L191" class="LineNr"> 191 </span>  y <span class="Special">&lt;-</span> increment
 <span id="L192" class="LineNr"> 192 </span>  <span class="PreProc">var</span> tmpx/eax: int <span class="Special">&lt;-</span> copy xmin
-<span id="L193" class="LineNr"> 193 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  read&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
-<span id="L194" class="LineNr"> 194 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L100'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: stream -&gt; grapheme&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L193" class="LineNr"> 193 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;  read&quot;</span>, tmpx, left-max, y, <span class="Constant">0x2a</span>/fg=orange, <span class="Constant">0xdc</span>/bg=green-bg
+<span id="L194" class="LineNr"> 194 </span>  tmpx <span class="Special">&lt;-</span> <a href='../501draw-text.mu.html#L106'>draw-text-rightward</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, <span class="Constant">&quot;: stream -&gt; grapheme&quot;</span>, tmpx, left-max, y, <span class="Constant">7</span>/fg=grey, <span class="Constant">0xdc</span>/bg=green-bg
 <span id="L195" class="LineNr"> 195 </span><span class="Delimiter">}</span>
 <span id="L196" class="LineNr"> 196 </span>
 <span id="L197" class="LineNr"> 197 </span><span class="PreProc">fn</span> <span class="muFunction"><a href='primitives.mu.html#L197'>primitive-global?</a></span> _x: (addr <a href='global.mu.html#L8'>global</a>)<span class="PreProc"> -&gt; </span>_/eax: boolean <span class="Delimiter">{</span>
@@ -1836,7 +1836,7 @@ if ('onhashchange' in window) {
 <span id="L1771" class="LineNr">1771 </span>  <span class="PreProc">var</span> stream-storage: (stream byte <span class="Constant">0x100</span>)
 <span id="L1772" class="LineNr">1772 </span>  <span class="PreProc">var</span> stream/<span class="muRegEdi">edi</span>: (addr stream byte) <span class="Special">&lt;-</span> address stream-storage
 <span id="L1773" class="LineNr">1773 </span>  <a href='print.mu.html#L7'>print-cell</a> second-ah, stream, trace
-<span id="L1774" class="LineNr">1774 </span>  <a href='../501draw-text.mu.html#L232'>draw-stream-wrapping-right-then-down-from-cursor-over-full-screen</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, stream, <span class="Constant">7</span>/fg, <span class="Constant">0</span>/bg
+<span id="L1774" class="LineNr">1774 </span>  <a href='../501draw-text.mu.html#L240'>draw-stream-wrapping-right-then-down-from-cursor-over-full-screen</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, stream, <span class="Constant">7</span>/fg, <span class="Constant">0</span>/bg
 <span id="L1775" class="LineNr">1775 </span>  <span class="muComment"># return what was printed</span>
 <span id="L1776" class="LineNr">1776 </span>  copy-object second-ah, out
 <span id="L1777" class="LineNr">1777 </span><span class="Delimiter">}</span>
@@ -1879,7 +1879,7 @@ if ('onhashchange' in window) {
 <span id="L1814" class="LineNr">1814 </span>    <span class="PreProc">var</span> screen-ah/eax: (addr handle <a href='../500fake-screen.mu.html#L14'>screen</a>) <span class="Special">&lt;-</span> get first, screen-data
 <span id="L1815" class="LineNr">1815 </span>    <span class="PreProc">var</span> _screen/eax: (addr <a href='../500fake-screen.mu.html#L14'>screen</a>) <span class="Special">&lt;-</span> <a href='../120allocate.subx.html#L235'>lookup</a> *screen-ah
 <span id="L1816" class="LineNr">1816 </span>    <span class="PreProc">var</span> <a href='../500fake-screen.mu.html#L14'>screen</a>/<span class="muRegEcx">ecx</span>: (addr <a href='../500fake-screen.mu.html#L14'>screen</a>) <span class="Special">&lt;-</span> copy _screen
-<span id="L1817" class="LineNr">1817 </span>    <a href='../500fake-screen.mu.html#L251'>clear-screen</a> <a href='../500fake-screen.mu.html#L14'>screen</a>
+<span id="L1817" class="LineNr">1817 </span>    <a href='../500fake-screen.mu.html#L307'>clear-screen</a> <a href='../500fake-screen.mu.html#L14'>screen</a>
 <span id="L1818" class="LineNr">1818 </span>    <span class="PreProc">return</span>
 <span id="L1819" class="LineNr">1819 </span>  <span class="Delimiter">}</span>
 <span id="L1820" class="LineNr">1820 </span>  <span class="Special"><a href='trace.mu.html#L197'>error</a></span> trace, <span class="Constant">&quot;first arg for 'clear' is not a <a href='../500fake-screen.mu.html#L14'>screen</a> or a stream&quot;</span>
@@ -2184,7 +2184,7 @@ if ('onhashchange' in window) {
 <span id="L2119" class="LineNr">2119 </span>  <span class="Delimiter">}</span>
 <span id="L2120" class="LineNr">2120 </span>  <span class="PreProc">var</span> fourth-value/eax: (addr float) <span class="Special">&lt;-</span> get fourth, number-data
 <span id="L2121" class="LineNr">2121 </span>  <span class="PreProc">var</span> color/eax: int <span class="Special">&lt;-</span> convert *fourth-value
-<span id="L2122" class="LineNr">2122 </span>  <a href='../500fake-screen.mu.html#L483'>pixel</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, x, y, color
+<span id="L2122" class="LineNr">2122 </span>  <a href='../500fake-screen.mu.html#L557'>pixel</a> <a href='../500fake-screen.mu.html#L14'>screen</a>, x, y, color
 <span id="L2123" class="LineNr">2123 </span>  <span class="muComment"># return nothing</span>
 <span id="L2124" class="LineNr">2124 </span><span class="Delimiter">}</span>
 <span id="L2125" class="LineNr">2125 </span>
@@ -3193,7 +3193,7 @@ if ('onhashchange' in window) {
 <span id="L3128" class="LineNr">3128 </span>  <span class="PreProc">var</span> x-float/<span class="Constant">xmm0</span>: float <span class="Special">&lt;-</span> copy *second-value
 <span id="L3129" class="LineNr">3129 </span>  <span class="PreProc">var</span> x/eax: int <span class="Special">&lt;-</span> convert x-float
 <span id="L3130" class="LineNr">3130 </span>  <span class="PreProc">var</span> x-grapheme/eax: grapheme <span class="Special">&lt;-</span> copy x
-<span id="L3131" class="LineNr">3131 </span>  <a href='../403unicode.mu.html#L176'>write-grapheme</a> stream-data, x-grapheme
+<span id="L3131" class="LineNr">3131 </span>  <a href='../403unicode.mu.html#L339'>write-grapheme</a> stream-data, x-grapheme
 <span id="L3132" class="LineNr">3132 </span>  <span class="muComment"># return the stream</span>
 <span id="L3133" class="LineNr">3133 </span>  copy-object first-ah, out
 <span id="L3134" class="LineNr">3134 </span><span class="Delimiter">}</span>
@@ -3267,7 +3267,7 @@ if ('onhashchange' in window) {
 <span id="L3202" class="LineNr">3202 </span>  <span class="PreProc">var</span> _stream-data/eax: (addr stream byte) <span class="Special">&lt;-</span> <a href='../120allocate.subx.html#L235'>lookup</a> *stream-data-ah
 <span id="L3203" class="LineNr">3203 </span>  <span class="PreProc">var</span> stream-data/<span class="muRegEbx">ebx</span>: (addr stream byte) <span class="Special">&lt;-</span> copy _stream-data
 <span id="L3204" class="LineNr">3204 </span><span class="CommentedCode">#?   rewind-stream stream-data</span>
-<span id="L3205" class="LineNr">3205 </span>  <span class="PreProc">var</span> result-grapheme/eax: grapheme <span class="Special">&lt;-</span> <a href='../403unicode.mu.html#L92'>read-grapheme</a> stream-data
+<span id="L3205" class="LineNr">3205 </span>  <span class="PreProc">var</span> result-grapheme/eax: grapheme <span class="Special">&lt;-</span> <a href='../403unicode.mu.html#L236'>read-grapheme</a> stream-data
 <span id="L3206" class="LineNr">3206 </span>  <span class="PreProc">var</span> result/eax: int <span class="Special">&lt;-</span> copy result-grapheme
 <span id="L3207" class="LineNr">3207 </span>  <a href='cell.mu.html#L99'>new-integer</a> out, result
 <span id="L3208" class="LineNr">3208 </span><span class="Delimiter">}</span>
@@ -3307,7 +3307,7 @@ if ('onhashchange' in window) {
 <span id="L3242" class="LineNr">3242 </span>  <span class="muComment"># compute dimensions</span>
 <span id="L3243" class="LineNr">3243 </span>  <span class="PreProc">var</span> dummy/eax: int <span class="Special">&lt;-</span> copy <span class="Constant">0</span>
 <span id="L3244" class="LineNr">3244 </span>  <span class="PreProc">var</span> height/<span class="muRegEcx">ecx</span>: int <span class="Special">&lt;-</span> copy <span class="Constant">0</span>
-<span id="L3245" class="LineNr">3245 </span>  dummy, height <span class="Special">&lt;-</span> <a href='../500fake-screen.mu.html#L86'>screen-size</a> <a href='../500fake-screen.mu.html#L14'>screen</a>
+<span id="L3245" class="LineNr">3245 </span>  dummy, height <span class="Special">&lt;-</span> <a href='../500fake-screen.mu.html#L73'>screen-size</a> <a href='../500fake-screen.mu.html#L14'>screen</a>
 <span id="L3246" class="LineNr">3246 </span>  <span class="PreProc">var</span> result/<span class="Constant">xmm0</span>: float <span class="Special">&lt;-</span> convert height
 <span id="L3247" class="LineNr">3247 </span>  <a href='cell.mu.html#L112'>new-float</a> out, result
 <span id="L3248" class="LineNr">3248 </span><span class="Delimiter">}</span>
@@ -3347,7 +3347,7 @@ if ('onhashchange' in window) {
 <span id="L3282" class="LineNr">3282 </span>  <span class="muComment"># compute dimensions</span>
 <span id="L3283" class="LineNr">3283 </span>  <span class="PreProc">var</span> width/eax: int <span class="Special">&lt;-</span> copy <span class="Constant">0</span>
 <span id="L3284" class="LineNr">3284 </span>  <span class="PreProc">var</span> dummy/<span class="muRegEcx">ecx</span>: int <span class="Special">&lt;-</span> copy <span class="Constant">0</span>
-<span id="L3285" class="LineNr">3285 </span>  width, dummy <span class="Special">&lt;-</span> <a href='../500fake-screen.mu.html#L86'>screen-size</a> <a href='../500fake-screen.mu.html#L14'>screen</a>
+<span id="L3285" class="LineNr">3285 </span>  width, dummy <span class="Special">&lt;-</span> <a href='../500fake-screen.mu.html#L73'>screen-size</a> <a href='../500fake-screen.mu.html#L14'>screen</a>
 <span id="L3286" class="LineNr">3286 </span>  <span class="PreProc">var</span> result/<span class="Constant">xmm0</span>: float <span class="Special">&lt;-</span> convert width
 <span id="L3287" class="LineNr">3287 </span>  <a href='cell.mu.html#L112'>new-float</a> out, result
 <span id="L3288" class="LineNr">3288 </span><span class="Delimiter">}</span>
@@ -3387,7 +3387,7 @@ if ('onhashchange' in window) {
 <span id="L3322" class="LineNr">3322 </span>  <span class="muComment"># compute dimensions</span>
 <span id="L3323" class="LineNr">3323 </span>  <span class="PreProc">var</span> width/eax: int <span class="Special">&lt;-</span> copy <span class="Constant">0</span>
 <span id="L3324" class="LineNr">3324 </span>  <span class="PreProc">var</span> dummy/<span class="muRegEcx">ecx</span>: int <span class="Special">&lt;-</span> copy <span class="Constant">0</span>
-<span id="L3325" class="LineNr">3325 </span>  width, dummy <span class="Special">&lt;-</span> <a href='../500fake-screen.mu.html#L86'>screen-size</a> <a href='../500fake-screen.mu.html#L14'>screen</a>
+<span id="L3325" class="LineNr">3325 </span>  width, dummy <span class="Special">&lt;-</span> <a href='../500fake-screen.mu.html#L73'>screen-size</a> <a href='../500fake-screen.mu.html#L14'>screen</a>
 <span id="L3326" class="LineNr">3326 </span>  width <span class="Special">&lt;-</span> shift-left <span class="Constant">3</span>/log2-font-width
 <span id="L3327" class="LineNr">3327 </span>  <span class="PreProc">var</span> result/<span class="Constant">xmm0</span>: float <span class="Special">&lt;-</span> convert width
 <span id="L3328" class="LineNr">3328 </span>  <a href='cell.mu.html#L112'>new-float</a> out, result
@@ -3428,7 +3428,7 @@ if ('onhashchange' in window) {
 <span id="L3363" class="LineNr">3363 </span>  <span class="muComment"># compute dimensions</span>
 <span id="L3364" class="LineNr">3364 </span>  <span class="PreProc">var</span> dummy/eax: int <span class="Special">&lt;-</span> copy <span class="Constant">0</span>
 <span id="L3365" class="LineNr">3365 </span>  <span class="PreProc">var</span> height/<span class="muRegEcx">ecx</span>: int <span class="Special">&lt;-</span> copy <span class="Constant">0</span>
-<span id="L3366" class="LineNr">3366 </span>  dummy, height <span class="Special">&lt;-</span> <a href='../500fake-screen.mu.html#L86'>screen-size</a> <a href='../500fake-screen.mu.html#L14'>screen</a>
+<span id="L3366" class="LineNr">3366 </span>  dummy, height <span class="Special">&lt;-</span> <a href='../500fake-screen.mu.html#L73'>screen-size</a> <a href='../500fake-screen.mu.html#L14'>screen</a>
 <span id="L3367" class="LineNr">3367 </span>  height <span class="Special">&lt;-</span> shift-left <span class="Constant">4</span>/log2-font-height
 <span id="L3368" class="LineNr">3368 </span>  <span class="PreProc">var</span> result/<span class="Constant">xmm0</span>: float <span class="Special">&lt;-</span> convert height
 <span id="L3369" class="LineNr">3369 </span>  <a href='cell.mu.html#L112'>new-float</a> out, result
@@ -3558,8 +3558,8 @@ if ('onhashchange' in window) {
 <span id="L3493" class="LineNr">3493 </span>  <span class="PreProc">var</span> dest-ah/eax: (addr handle <a href='../500fake-screen.mu.html#L14'>screen</a>) <span class="Special">&lt;-</span> get second, screen-data
 <span id="L3494" class="LineNr">3494 </span>  <span class="PreProc">var</span> dest/eax: (addr <a href='../500fake-screen.mu.html#L14'>screen</a>) <span class="Special">&lt;-</span> <a href='../120allocate.subx.html#L235'>lookup</a> *dest-ah
 <span id="L3495" class="LineNr">3495 </span>  <span class="muComment">#</span>
-<span id="L3496" class="LineNr">3496 </span>  <a href='../500fake-screen.mu.html#L588'>convert-graphemes-to-pixels</a> src
-<span id="L3497" class="LineNr">3497 </span>  <a href='../500fake-screen.mu.html#L548'>copy-pixels</a> src, dest
+<span id="L3496" class="LineNr">3496 </span>  <a href='../500fake-screen.mu.html#L660'>convert-screen-cells-to-pixels</a> src
+<span id="L3497" class="LineNr">3497 </span>  <a href='../500fake-screen.mu.html#L620'>copy-pixels</a> src, dest
 <span id="L3498" class="LineNr">3498 </span><span class="Delimiter">}</span>
 <span id="L3499" class="LineNr">3499 </span>
 <span id="L3500" class="LineNr">3500 </span><span class="PreProc">fn</span> <span class="muFunction"><a href='primitives.mu.html#L3500'>apply-array</a></span> _args-ah: (addr handle <a href='cell.mu.html#L1'>cell</a>), _out-ah: (addr handle <a href='cell.mu.html#L1'>cell</a>), trace: (addr trace) <span class="Delimiter">{</span>