about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorKartik Agaram <vc@akkartik.com>2020-12-30 09:37:50 -0800
committerKartik Agaram <vc@akkartik.com>2020-12-30 09:39:50 -0800
commit762107fdc23e7739e9db6843173506c4d00cae0e (patch)
tree5c2cc65b89c126490587dde871b6f20e6b6bcbd2
parentd0bc0d2673c41da7b5007766a7015df99020c353 (diff)
downloadmu-762107fdc23e7739e9db6843173506c4d00cae0e.tar.gz
7476
-rw-r--r--html/000organization.cc.html2
-rw-r--r--html/001help.cc.html2
-rw-r--r--html/002test.cc.html2
-rw-r--r--html/003trace.cc.html2
-rw-r--r--html/003trace.test.cc.html2
-rw-r--r--html/010vm.cc.html2
-rw-r--r--html/011run.cc.html2
-rw-r--r--html/012elf.cc.html2
-rw-r--r--html/013direct_addressing.cc.html2
-rw-r--r--html/014indirect_addressing.cc.html2
-rw-r--r--html/015immediate_addressing.cc.html2
-rw-r--r--html/016index_addressing.cc.html2
-rw-r--r--html/017jump_disp8.cc.html2
-rw-r--r--html/018jump_disp32.cc.html2
-rw-r--r--html/019functions.cc.html2
-rw-r--r--html/020syscalls.cc.html2
-rw-r--r--html/021byte_addressing.cc.html2
-rw-r--r--html/022div.cc.html2
-rw-r--r--html/023float.cc.html2
-rw-r--r--html/030translate.cc.html2
-rw-r--r--html/031transforms.cc.html2
-rw-r--r--html/032operands.cc.html2
-rw-r--r--html/033check_operands.cc.html2
-rw-r--r--html/034check_operand_bounds.cc.html2
-rw-r--r--html/035compute_segment_address.cc.html2
-rw-r--r--html/036labels.cc.html2
-rw-r--r--html/037global_variables.cc.html2
-rw-r--r--html/038literal_strings.cc.html2
-rw-r--r--html/039debug.cc.html2
-rw-r--r--html/040tests.cc.html2
-rw-r--r--html/101_write.subx.html2
-rw-r--r--html/102test.subx.html2
-rw-r--r--html/103kernel-string-equal.subx.html2
-rw-r--r--html/104new-segment.subx.html2
-rw-r--r--html/105string-equal.subx.html2
-rw-r--r--html/106stream.subx.html2
-rw-r--r--html/107trace.subx.html2
-rw-r--r--html/108write.subx.html2
-rw-r--r--html/109stream-equal.subx.html2
-rw-r--r--html/110stop.subx.html2
-rw-r--r--html/111read.subx.html2
-rw-r--r--html/112read-byte.subx.html2
-rw-r--r--html/113write-stream.subx.html2
-rw-r--r--html/114error.subx.html2
-rw-r--r--html/115write-byte.subx.html2
-rw-r--r--html/116write-buffered.subx.html2
-rw-r--r--html/117write-int-hex.subx.html2
-rw-r--r--html/118parse-hex-int.subx.html2
-rw-r--r--html/119error-byte.subx.html2
-rw-r--r--html/120allocate.subx.html2
-rw-r--r--html/121new-stream.subx.html2
-rw-r--r--html/122read-line.subx.html2
-rw-r--r--html/123slice.subx.html2
-rw-r--r--html/124next-token.subx.html2
-rw-r--r--html/125write-stream-data.subx.html2
-rw-r--r--html/126write-int-decimal.subx.html2
-rw-r--r--html/127next-word.subx.html2
-rw-r--r--html/128subx-words.subx.html2
-rw-r--r--html/129emit-hex.subx.html2
-rw-r--r--html/130emit.subx.html2
-rw-r--r--html/131table.subx.html2
-rw-r--r--html/132slurp.subx.html2
-rw-r--r--html/133subx-widths.subx.html2
-rw-r--r--html/134emit-hex-array.subx.html2
-rw-r--r--html/135next-word-or-string.subx.html2
-rw-r--r--html/201register-names.subx.html2
-rw-r--r--html/202write-int.subx.html2
-rw-r--r--html/203stack.subx.html2
-rw-r--r--html/301array-equal.subx.html2
-rw-r--r--html/302stack_allocate.subx.html2
-rw-r--r--html/303kernel-string.subx.html2
-rw-r--r--html/304screen.subx.html2
-rw-r--r--html/305keyboard.subx.html2
-rw-r--r--html/306files.subx.html2
-rw-r--r--html/307size.subx.html2
-rw-r--r--html/308allocate-array.subx.html2
-rw-r--r--html/309stream.subx.html2
-rw-r--r--html/310copy-bytes.subx.html2
-rw-r--r--html/311decimal-int.subx.html2
-rw-r--r--html/312copy.subx.html2
-rw-r--r--html/313index-bounds-check.subx.html2
-rw-r--r--html/314divide.subx.html2
-rw-r--r--html/315slice.subx.html2
-rw-r--r--html/400.mu.html2
-rw-r--r--html/401test.mu.html2
-rw-r--r--html/402time.mu.html2
-rw-r--r--html/403unicode.mu.html2
-rw-r--r--html/404stream.mu.html2
-rw-r--r--html/405screen.mu.html2
-rw-r--r--html/406int32.mu.html2
-rw-r--r--html/407print-int32-decimal-right-justified.mu.html2
-rw-r--r--html/408float.mu.html2
-rw-r--r--html/409print-float-hex.mu.html2
-rw-r--r--html/410file.mu.html2
-rw-r--r--html/411string.mu.html2
-rw-r--r--html/412print-float-decimal.mu.html2
-rw-r--r--html/apps/advent2020/1a.mu.html2
-rw-r--r--html/apps/advent2020/1b.mu.html2
-rw-r--r--html/apps/advent2020/2a.mu.html2
-rw-r--r--html/apps/advent2020/2b.mu.html2
-rw-r--r--html/apps/advent2020/3a.mu.html2
-rw-r--r--html/apps/advent2020/3b.mu.html2
-rw-r--r--html/apps/advent2020/4a.mu.html2
-rw-r--r--html/apps/advent2020/4b.mu.html2
-rw-r--r--html/apps/advent2020/5a.mu.html2
-rw-r--r--html/apps/advent2020/5b.mu.html2
-rw-r--r--html/apps/arith.mu.html2
-rw-r--r--html/apps/assort.subx.html2
-rw-r--r--html/apps/boot.hex.html2
-rw-r--r--html/apps/braces.subx.html2
-rw-r--r--html/apps/browse/main.mu.html2
-rw-r--r--html/apps/browse/paginated-screen.mu.html2
-rw-r--r--html/apps/calls.subx.html2
-rw-r--r--html/apps/crenshaw2-1.subx.html2
-rw-r--r--html/apps/crenshaw2-1b.subx.html2
-rw-r--r--html/apps/dquotes.subx.html2
-rw-r--r--html/apps/ex1.mu.html2
-rw-r--r--html/apps/ex1.subx.html2
-rw-r--r--html/apps/ex10.subx.html2
-rw-r--r--html/apps/ex11.subx.html2
-rw-r--r--html/apps/ex12.subx.html2
-rw-r--r--html/apps/ex13.subx.html2
-rw-r--r--html/apps/ex14.subx.html2
-rw-r--r--html/apps/ex2.mu.html2
-rw-r--r--html/apps/ex2.subx.html2
-rw-r--r--html/apps/ex3.2.mu.html2
-rw-r--r--html/apps/ex3.mu.html2
-rw-r--r--html/apps/ex3.subx.html2
-rw-r--r--html/apps/ex4.subx.html2
-rw-r--r--html/apps/ex5.subx.html2
-rw-r--r--html/apps/ex6.subx.html2
-rw-r--r--html/apps/ex7.subx.html2
-rw-r--r--html/apps/ex8.subx.html2
-rw-r--r--html/apps/ex9.subx.html2
-rw-r--r--html/apps/factorial.mu.html2
-rw-r--r--html/apps/factorial.subx.html2
-rw-r--r--html/apps/factorial2.subx.html2
-rw-r--r--html/apps/factorial3.subx.html2
-rw-r--r--html/apps/factorial4.subx.html2
-rw-r--r--html/apps/hello.mu.html2
-rw-r--r--html/apps/hex.subx.html2
-rw-r--r--html/apps/mu.subx.html2
-rw-r--r--html/apps/pack.subx.html2
-rw-r--r--html/apps/parse-int.mu.html2
-rw-r--r--html/apps/print-file.mu.html2
-rw-r--r--html/apps/random.subx.html2
-rw-r--r--html/apps/raytracing/1.mu.html2
-rw-r--r--html/apps/raytracing/2.mu.html2
-rw-r--r--html/apps/raytracing/3.mu.html2
-rw-r--r--html/apps/raytracing/color.mu.html2
-rw-r--r--html/apps/raytracing/ray.mu.html2
-rw-r--r--html/apps/raytracing/vec.mu.html2
-rw-r--r--html/apps/rpn.mu.html2
-rw-r--r--html/apps/sigils.subx.html2
-rw-r--r--html/apps/subx-params.subx.html2
-rw-r--r--html/apps/survey.subx.html2
-rw-r--r--html/apps/tests.subx.html2
-rw-r--r--html/apps/texture.mu.html2
-rw-r--r--html/apps/tile/box.mu.html2
-rw-r--r--html/apps/tile/data.mu.html2
-rw-r--r--html/apps/tile/environment.mu.html2
-rw-r--r--html/apps/tile/float-stack.mu.html2
-rw-r--r--html/apps/tile/gap-buffer.mu.html2
-rw-r--r--html/apps/tile/grapheme-stack.mu.html2
-rw-r--r--html/apps/tile/int-stack.mu.html2
-rw-r--r--html/apps/tile/main.mu.html2
-rw-r--r--html/apps/tile/rpn.mu.html2
-rw-r--r--html/apps/tile/surface.mu.html2
-rw-r--r--html/apps/tile/table.mu.html2
-rw-r--r--html/apps/tile/value-stack.mu.html2
-rw-r--r--html/apps/tile/value.mu.html2
-rw-r--r--html/apps/tile/word.mu.html2
-rw-r--r--html/apps/tui.mu.html2
-rw-r--r--html/baremetal/101screen.subx.html2
-rw-r--r--html/baremetal/400.mu.html2
-rw-r--r--html/baremetal/boot.hex.html2
-rw-r--r--html/baremetal/boot0.hex.html2
-rw-r--r--html/baremetal/ex1.hex.html2
-rw-r--r--html/baremetal/ex1.subx.html2
-rw-r--r--html/baremetal/ex2.hex.html2
-rw-r--r--html/baremetal/ex2.mu.html2
-rw-r--r--html/baremetal/ex2.subx.html2
-rw-r--r--html/baremetal/ex3.hex.html2
-rw-r--r--html/baremetal/mu-init.subx.html2
-rw-r--r--html/mu-init-test.subx.html2
-rw-r--r--html/mu-init.subx.html2
-rw-r--r--html/run_one_test.subx.html2
-rwxr-xr-xtools/update_html2
188 files changed, 188 insertions, 188 deletions
diff --git a/html/000organization.cc.html b/html/000organization.cc.html
index f53b0f5d..8d3684c1 100644
--- a/html/000organization.cc.html
+++ b/html/000organization.cc.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/000organization.cc'>https://github.com/akkartik/mu/blob/master/000organization.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/000organization.cc'>https://github.com/akkartik/mu/blob/main/000organization.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment">//: You guessed right: the '000' prefix means you should start reading here.</span>
 <span id="L2" class="LineNr">  2 </span><span class="Comment">//:</span>
diff --git a/html/001help.cc.html b/html/001help.cc.html
index 9edab617..393d7ddc 100644
--- a/html/001help.cc.html
+++ b/html/001help.cc.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/001help.cc'>https://github.com/akkartik/mu/blob/master/001help.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/001help.cc'>https://github.com/akkartik/mu/blob/main/001help.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment">//: Everything this project/binary supports.</span>
 <span id="L2" class="LineNr">  2 </span><span class="Comment">//: This should give you a sense for what to look forward to in later layers.</span>
diff --git a/html/002test.cc.html b/html/002test.cc.html
index 8af1961d..c15c5528 100644
--- a/html/002test.cc.html
+++ b/html/002test.cc.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/002test.cc'>https://github.com/akkartik/mu/blob/master/002test.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/002test.cc'>https://github.com/akkartik/mu/blob/main/002test.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment">//: A simple test harness. To create new tests, define functions starting with</span>
 <span id="L2" class="LineNr">  2 </span><span class="Comment">//: 'test_'. To run all tests so defined, run:</span>
diff --git a/html/003trace.cc.html b/html/003trace.cc.html
index 7c259d19..d1ef9d05 100644
--- a/html/003trace.cc.html
+++ b/html/003trace.cc.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/003trace.cc'>https://github.com/akkartik/mu/blob/master/003trace.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/003trace.cc'>https://github.com/akkartik/mu/blob/main/003trace.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment">//: The goal of layers is to make programs more easy to understand and more</span>
 <span id="L2" class="LineNr">  2 </span><span class="Comment">//: malleable, easy to rewrite in radical ways without accidentally breaking</span>
diff --git a/html/003trace.test.cc.html b/html/003trace.test.cc.html
index ba949d58..45635f13 100644
--- a/html/003trace.test.cc.html
+++ b/html/003trace.test.cc.html
@@ -52,7 +52,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/003trace.test.cc'>https://github.com/akkartik/mu/blob/master/003trace.test.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/003trace.test.cc'>https://github.com/akkartik/mu/blob/main/003trace.test.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Normal">void</span> <a href='003trace.test.cc.html#L1'>test_trace_check_compares</a><span class="Delimiter">()</span> <span class="Delimiter">{</span>
 <span id="L2" class="LineNr">  2 </span>  <a href='003trace.cc.html#L96'>trace</a><span class="Delimiter">(</span><span class="Constant">&quot;test layer&quot;</span><span class="Delimiter">)</span> &lt;&lt; <span class="Constant">&quot;foo&quot;</span> &lt;&lt; end<span class="Delimiter">();</span>
diff --git a/html/010vm.cc.html b/html/010vm.cc.html
index 171dfd1e..fccf145e 100644
--- a/html/010vm.cc.html
+++ b/html/010vm.cc.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/010vm.cc'>https://github.com/akkartik/mu/blob/master/010vm.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/010vm.cc'>https://github.com/akkartik/mu/blob/main/010vm.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment">//: Core data structures for simulating the SubX VM (subset of an x86 processor),</span>
 <span id="L2" class="LineNr">  2 </span><span class="Comment">//: either in tests or debug aids.</span>
diff --git a/html/011run.cc.html b/html/011run.cc.html
index 1109b35a..793d8bf0 100644
--- a/html/011run.cc.html
+++ b/html/011run.cc.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/011run.cc'>https://github.com/akkartik/mu/blob/master/011run.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/011run.cc'>https://github.com/akkartik/mu/blob/main/011run.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment">//: Running SubX programs on the VM.</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/012elf.cc.html b/html/012elf.cc.html
index 44ae55e3..3aa91207 100644
--- a/html/012elf.cc.html
+++ b/html/012elf.cc.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/012elf.cc'>https://github.com/akkartik/mu/blob/master/012elf.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/012elf.cc'>https://github.com/akkartik/mu/blob/main/012elf.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment">//: Loading SubX programs from ELF binaries.</span>
 <span id="L2" class="LineNr">  2 </span><span class="Comment">//: This will allow us to run them natively on a Linux kernel.</span>
diff --git a/html/013direct_addressing.cc.html b/html/013direct_addressing.cc.html
index 6ed4363f..1a10aa7f 100644
--- a/html/013direct_addressing.cc.html
+++ b/html/013direct_addressing.cc.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/013direct_addressing.cc'>https://github.com/akkartik/mu/blob/master/013direct_addressing.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/013direct_addressing.cc'>https://github.com/akkartik/mu/blob/main/013direct_addressing.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">   1 </span><span class="Comment">//: operating directly on a register</span>
 <span id="L2" class="LineNr">   2 </span>
diff --git a/html/014indirect_addressing.cc.html b/html/014indirect_addressing.cc.html
index fdc384b5..946be41c 100644
--- a/html/014indirect_addressing.cc.html
+++ b/html/014indirect_addressing.cc.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/014indirect_addressing.cc'>https://github.com/akkartik/mu/blob/master/014indirect_addressing.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/014indirect_addressing.cc'>https://github.com/akkartik/mu/blob/main/014indirect_addressing.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">   1 </span><span class="Comment">//: operating on memory at the address provided by some register</span>
 <span id="L2" class="LineNr">   2 </span><span class="Comment">//: we'll now start providing data in a separate segment</span>
diff --git a/html/015immediate_addressing.cc.html b/html/015immediate_addressing.cc.html
index cb271e7f..57a25eeb 100644
--- a/html/015immediate_addressing.cc.html
+++ b/html/015immediate_addressing.cc.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/015immediate_addressing.cc'>https://github.com/akkartik/mu/blob/master/015immediate_addressing.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/015immediate_addressing.cc'>https://github.com/akkartik/mu/blob/main/015immediate_addressing.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">   1 </span><span class="Comment">//: instructions that (immediately) contain an argument to act with</span>
 <span id="L2" class="LineNr">   2 </span>
diff --git a/html/016index_addressing.cc.html b/html/016index_addressing.cc.html
index 79b5b615..ac1cfcfc 100644
--- a/html/016index_addressing.cc.html
+++ b/html/016index_addressing.cc.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/016index_addressing.cc'>https://github.com/akkartik/mu/blob/master/016index_addressing.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/016index_addressing.cc'>https://github.com/akkartik/mu/blob/main/016index_addressing.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment">//: operating on memory at the address provided by some register plus optional scale and offset</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/017jump_disp8.cc.html b/html/017jump_disp8.cc.html
index 4c32c45b..6f73aa7f 100644
--- a/html/017jump_disp8.cc.html
+++ b/html/017jump_disp8.cc.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/017jump_disp8.cc'>https://github.com/akkartik/mu/blob/master/017jump_disp8.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/017jump_disp8.cc'>https://github.com/akkartik/mu/blob/main/017jump_disp8.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment">//: jump to 8-bit offset</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/018jump_disp32.cc.html b/html/018jump_disp32.cc.html
index 4e3f00ab..8f3dd933 100644
--- a/html/018jump_disp32.cc.html
+++ b/html/018jump_disp32.cc.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/018jump_disp32.cc'>https://github.com/akkartik/mu/blob/master/018jump_disp32.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/018jump_disp32.cc'>https://github.com/akkartik/mu/blob/main/018jump_disp32.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment">//: jump to 32-bit offset</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/019functions.cc.html b/html/019functions.cc.html
index 3fe84e95..51fb2920 100644
--- a/html/019functions.cc.html
+++ b/html/019functions.cc.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/019functions.cc'>https://github.com/akkartik/mu/blob/master/019functions.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/019functions.cc'>https://github.com/akkartik/mu/blob/main/019functions.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="SalientComment">//:: call</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/020syscalls.cc.html b/html/020syscalls.cc.html
index 2532168a..4e744513 100644
--- a/html/020syscalls.cc.html
+++ b/html/020syscalls.cc.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/020syscalls.cc'>https://github.com/akkartik/mu/blob/master/020syscalls.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/020syscalls.cc'>https://github.com/akkartik/mu/blob/main/020syscalls.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Delimiter">:(before &quot;End Initialize Op Names&quot;)</span>
 <span id="L2" class="LineNr">  2 </span><a href='001help.cc.html#L235'>put_new</a><span class="Delimiter">(</span><span class="SpecialChar"><a href='010vm.cc.html#L355'>Name</a></span><span class="Delimiter">,</span> <span class="Constant">&quot;cd&quot;</span><span class="Delimiter">,</span> <span class="Constant">&quot;software interrupt (int)&quot;</span><span class="Delimiter">);</span>
diff --git a/html/021byte_addressing.cc.html b/html/021byte_addressing.cc.html
index 2da9c622..eb1f7051 100644
--- a/html/021byte_addressing.cc.html
+++ b/html/021byte_addressing.cc.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/021byte_addressing.cc'>https://github.com/akkartik/mu/blob/master/021byte_addressing.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/021byte_addressing.cc'>https://github.com/akkartik/mu/blob/main/021byte_addressing.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment">//: SubX mostly deals with instructions operating on 32-bit operands, but we</span>
 <span id="L2" class="LineNr">  2 </span><span class="Comment">//: still need to deal with raw bytes for strings and so on.</span>
diff --git a/html/022div.cc.html b/html/022div.cc.html
index 76938759..4b945034 100644
--- a/html/022div.cc.html
+++ b/html/022div.cc.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/022div.cc'>https://github.com/akkartik/mu/blob/master/022div.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/022div.cc'>https://github.com/akkartik/mu/blob/main/022div.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="Comment">//: helper for division operations: sign-extend EAX into EDX</span>
 <span id="L2" class="LineNr"> 2 </span>
diff --git a/html/023float.cc.html b/html/023float.cc.html
index fbc8f34f..f94c55fe 100644
--- a/html/023float.cc.html
+++ b/html/023float.cc.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/023float.cc'>https://github.com/akkartik/mu/blob/master/023float.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/023float.cc'>https://github.com/akkartik/mu/blob/main/023float.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment">//: floating-point operations</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/030translate.cc.html b/html/030translate.cc.html
index b7b992ba..b1daa9a2 100644
--- a/html/030translate.cc.html
+++ b/html/030translate.cc.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/030translate.cc'>https://github.com/akkartik/mu/blob/master/030translate.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/030translate.cc'>https://github.com/akkartik/mu/blob/main/030translate.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment">//: After that lengthy prelude to define an x86 emulator, we are now ready to</span>
 <span id="L2" class="LineNr">  2 </span><span class="Comment">//: start translating SubX notation.</span>
diff --git a/html/031transforms.cc.html b/html/031transforms.cc.html
index 1e33e388..0f45bdbc 100644
--- a/html/031transforms.cc.html
+++ b/html/031transforms.cc.html
@@ -53,7 +53,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/031transforms.cc'>https://github.com/akkartik/mu/blob/master/031transforms.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/031transforms.cc'>https://github.com/akkartik/mu/blob/main/031transforms.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="Delimiter">:(before &quot;End Types&quot;)</span>
 <span id="L2" class="LineNr"> 2 </span><span class="Normal">typedef</span> <span class="Normal">void</span> <span class="Delimiter">(</span>*transform_fn<span class="Delimiter">)(</span>program&amp;<span class="Delimiter">);</span>
diff --git a/html/032operands.cc.html b/html/032operands.cc.html
index a259124e..f7118508 100644
--- a/html/032operands.cc.html
+++ b/html/032operands.cc.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/032operands.cc'>https://github.com/akkartik/mu/blob/master/032operands.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/032operands.cc'>https://github.com/akkartik/mu/blob/main/032operands.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment">//: Metadata for fields of an x86 instruction.</span>
 <span id="L2" class="LineNr">  2 </span><span class="Comment">//:</span>
diff --git a/html/033check_operands.cc.html b/html/033check_operands.cc.html
index ebaecdb2..4f60c111 100644
--- a/html/033check_operands.cc.html
+++ b/html/033check_operands.cc.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/033check_operands.cc'>https://github.com/akkartik/mu/blob/master/033check_operands.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/033check_operands.cc'>https://github.com/akkartik/mu/blob/main/033check_operands.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment">//: Since we're tagging arguments with their types, let's start checking these</span>
 <span id="L2" class="LineNr">  2 </span><span class="Comment">//: argument types for each instruction.</span>
diff --git a/html/034check_operand_bounds.cc.html b/html/034check_operand_bounds.cc.html
index a9426384..f5070a01 100644
--- a/html/034check_operand_bounds.cc.html
+++ b/html/034check_operand_bounds.cc.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/034check_operand_bounds.cc'>https://github.com/akkartik/mu/blob/master/034check_operand_bounds.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/034check_operand_bounds.cc'>https://github.com/akkartik/mu/blob/main/034check_operand_bounds.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="SalientComment">//:: Check that the different arguments of an instruction aren't too large for their bitfields.</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/035compute_segment_address.cc.html b/html/035compute_segment_address.cc.html
index 1fadcf82..56255364 100644
--- a/html/035compute_segment_address.cc.html
+++ b/html/035compute_segment_address.cc.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/035compute_segment_address.cc'>https://github.com/akkartik/mu/blob/master/035compute_segment_address.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/035compute_segment_address.cc'>https://github.com/akkartik/mu/blob/main/035compute_segment_address.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="Comment">//: ELF binaries have finicky rules about the precise alignment each segment</span>
 <span id="L2" class="LineNr"> 2 </span><span class="Comment">//: should start at. They depend on the amount of code in a program.</span>
diff --git a/html/036labels.cc.html b/html/036labels.cc.html
index 1c386106..c7bff00f 100644
--- a/html/036labels.cc.html
+++ b/html/036labels.cc.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/036labels.cc'>https://github.com/akkartik/mu/blob/master/036labels.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/036labels.cc'>https://github.com/akkartik/mu/blob/main/036labels.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment">//: Labels are defined by ending names with a ':'. This layer will compute</span>
 <span id="L2" class="LineNr">  2 </span><span class="Comment">//: displacements for labels, and compute the offset for instructions using them.</span>
diff --git a/html/037global_variables.cc.html b/html/037global_variables.cc.html
index 709a7b7d..e59c8c82 100644
--- a/html/037global_variables.cc.html
+++ b/html/037global_variables.cc.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/037global_variables.cc'>https://github.com/akkartik/mu/blob/master/037global_variables.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/037global_variables.cc'>https://github.com/akkartik/mu/blob/main/037global_variables.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment">//: Global variables.</span>
 <span id="L2" class="LineNr">  2 </span><span class="Comment">//:</span>
diff --git a/html/038literal_strings.cc.html b/html/038literal_strings.cc.html
index 506b4ea4..8ef14621 100644
--- a/html/038literal_strings.cc.html
+++ b/html/038literal_strings.cc.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/038literal_strings.cc'>https://github.com/akkartik/mu/blob/master/038literal_strings.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/038literal_strings.cc'>https://github.com/akkartik/mu/blob/main/038literal_strings.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment">//: Allow instructions to mention literals directly.</span>
 <span id="L2" class="LineNr">  2 </span><span class="Comment">//:</span>
diff --git a/html/039debug.cc.html b/html/039debug.cc.html
index 0f71c0f2..e4f90b0f 100644
--- a/html/039debug.cc.html
+++ b/html/039debug.cc.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/039debug.cc'>https://github.com/akkartik/mu/blob/master/039debug.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/039debug.cc'>https://github.com/akkartik/mu/blob/main/039debug.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="SalientComment">//:: Some helpers for debugging.</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/040tests.cc.html b/html/040tests.cc.html
index a5b86b88..9a40de19 100644
--- a/html/040tests.cc.html
+++ b/html/040tests.cc.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/040tests.cc'>https://github.com/akkartik/mu/blob/master/040tests.cc</a>
+<a href='https://github.com/akkartik/mu/blob/main/040tests.cc'>https://github.com/akkartik/mu/blob/main/040tests.cc</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="Comment">//: Automatically aggregate functions starting with 'test-' into a test suite</span>
 <span id="L2" class="LineNr"> 2 </span><span class="Comment">//: called 'run-tests'. Running this function will run all tests.</span>
diff --git a/html/101_write.subx.html b/html/101_write.subx.html
index 4fc2310e..c992256b 100644
--- a/html/101_write.subx.html
+++ b/html/101_write.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/101_write.subx'>https://github.com/akkartik/mu/blob/master/101_write.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/101_write.subx'>https://github.com/akkartik/mu/blob/main/101_write.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># _write: write to a file descriptor (fd)</span>
 <span id="L2" class="LineNr"> 2 </span>
diff --git a/html/102test.subx.html b/html/102test.subx.html
index dbd86b08..fcbc43b2 100644
--- a/html/102test.subx.html
+++ b/html/102test.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/102test.subx'>https://github.com/akkartik/mu/blob/master/102test.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/102test.subx'>https://github.com/akkartik/mu/blob/main/102test.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Rudimentary test harness</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/103kernel-string-equal.subx.html b/html/103kernel-string-equal.subx.html
index 45f25205..7be0d2dd 100644
--- a/html/103kernel-string-equal.subx.html
+++ b/html/103kernel-string-equal.subx.html
@@ -58,7 +58,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/103kernel-string-equal.subx'>https://github.com/akkartik/mu/blob/master/103kernel-string-equal.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/103kernel-string-equal.subx'>https://github.com/akkartik/mu/blob/main/103kernel-string-equal.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Checking null-terminated strings.</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#</span>
diff --git a/html/104new-segment.subx.html b/html/104new-segment.subx.html
index 12967d38..b850f2b4 100644
--- a/html/104new-segment.subx.html
+++ b/html/104new-segment.subx.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/104new-segment.subx'>https://github.com/akkartik/mu/blob/master/104new-segment.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/104new-segment.subx'>https://github.com/akkartik/mu/blob/main/104new-segment.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Create a new segment (pool of memory for allocating chunks from) in the form</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment"># of an *allocation descriptor* that can be passed to the memory allocator</span>
diff --git a/html/105string-equal.subx.html b/html/105string-equal.subx.html
index 4223ce1b..a9152b9c 100644
--- a/html/105string-equal.subx.html
+++ b/html/105string-equal.subx.html
@@ -58,7 +58,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/105string-equal.subx'>https://github.com/akkartik/mu/blob/master/105string-equal.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/105string-equal.subx'>https://github.com/akkartik/mu/blob/main/105string-equal.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Comparing 'regular' size-prefixed strings.</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/106stream.subx.html b/html/106stream.subx.html
index c5f8c4ad..df024499 100644
--- a/html/106stream.subx.html
+++ b/html/106stream.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/106stream.subx'>https://github.com/akkartik/mu/blob/master/106stream.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/106stream.subx'>https://github.com/akkartik/mu/blob/main/106stream.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># streams: data structure for operating on arrays in a stateful manner</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/107trace.subx.html b/html/107trace.subx.html
index acdaf67d..afc6000c 100644
--- a/html/107trace.subx.html
+++ b/html/107trace.subx.html
@@ -59,7 +59,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/107trace.subx'>https://github.com/akkartik/mu/blob/master/107trace.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/107trace.subx'>https://github.com/akkartik/mu/blob/main/107trace.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># primitives for emitting traces to a 'trace' stream, and for tests to make assertions on its contents</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#</span>
diff --git a/html/108write.subx.html b/html/108write.subx.html
index c94151ba..03c5c07e 100644
--- a/html/108write.subx.html
+++ b/html/108write.subx.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/108write.subx'>https://github.com/akkartik/mu/blob/master/108write.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/108write.subx'>https://github.com/akkartik/mu/blob/main/108write.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># write: like _write, but also support in-memory streams in addition to file</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment"># descriptors.</span>
diff --git a/html/109stream-equal.subx.html b/html/109stream-equal.subx.html
index d5b2743a..6d4bc9c9 100644
--- a/html/109stream-equal.subx.html
+++ b/html/109stream-equal.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/109stream-equal.subx'>https://github.com/akkartik/mu/blob/master/109stream-equal.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/109stream-equal.subx'>https://github.com/akkartik/mu/blob/main/109stream-equal.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># some primitives for checking stream contents</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/110stop.subx.html b/html/110stop.subx.html
index 81bc5194..13f239bc 100644
--- a/html/110stop.subx.html
+++ b/html/110stop.subx.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/110stop.subx'>https://github.com/akkartik/mu/blob/master/110stop.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/110stop.subx'>https://github.com/akkartik/mu/blob/main/110stop.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># stop: dependency-injected wrapper around the exit() syscall</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#</span>
diff --git a/html/111read.subx.html b/html/111read.subx.html
index e1c1307e..6601e68c 100644
--- a/html/111read.subx.html
+++ b/html/111read.subx.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/111read.subx'>https://github.com/akkartik/mu/blob/master/111read.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/111read.subx'>https://github.com/akkartik/mu/blob/main/111read.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># read: analogously to write, support reading from in-memory streams in</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment"># addition to file descriptors.</span>
diff --git a/html/112read-byte.subx.html b/html/112read-byte.subx.html
index 09881d12..cc322aaa 100644
--- a/html/112read-byte.subx.html
+++ b/html/112read-byte.subx.html
@@ -58,7 +58,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/112read-byte.subx'>https://github.com/akkartik/mu/blob/master/112read-byte.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/112read-byte.subx'>https://github.com/akkartik/mu/blob/main/112read-byte.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># read-byte-buffered: one higher-level abstraction atop 'read'.</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#</span>
diff --git a/html/113write-stream.subx.html b/html/113write-stream.subx.html
index 8f87dc33..d40357f1 100644
--- a/html/113write-stream.subx.html
+++ b/html/113write-stream.subx.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/113write-stream.subx'>https://github.com/akkartik/mu/blob/master/113write-stream.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/113write-stream.subx'>https://github.com/akkartik/mu/blob/main/113write-stream.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># write-stream: like write, but write streams rather than strings</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/114error.subx.html b/html/114error.subx.html
index b59f5cb8..98fe7bf6 100644
--- a/html/114error.subx.html
+++ b/html/114error.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/114error.subx'>https://github.com/akkartik/mu/blob/master/114error.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/114error.subx'>https://github.com/akkartik/mu/blob/main/114error.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Print an error message and exit.</span>
 <span id="L2" class="LineNr"> 2 </span>
diff --git a/html/115write-byte.subx.html b/html/115write-byte.subx.html
index e9fa265a..6ec80f05 100644
--- a/html/115write-byte.subx.html
+++ b/html/115write-byte.subx.html
@@ -58,7 +58,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/115write-byte.subx'>https://github.com/akkartik/mu/blob/master/115write-byte.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/115write-byte.subx'>https://github.com/akkartik/mu/blob/main/115write-byte.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># write-byte-buffered: add a single byte to a buffered-file.</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment"># flush: write out any buffered writes to disk.</span>
diff --git a/html/116write-buffered.subx.html b/html/116write-buffered.subx.html
index 3b36e7a0..adbd7d43 100644
--- a/html/116write-buffered.subx.html
+++ b/html/116write-buffered.subx.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/116write-buffered.subx'>https://github.com/akkartik/mu/blob/master/116write-buffered.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/116write-buffered.subx'>https://github.com/akkartik/mu/blob/main/116write-buffered.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># write-buffered: like 'write', but for a buffered-file</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/117write-int-hex.subx.html b/html/117write-int-hex.subx.html
index 1515c6bd..884ff2f0 100644
--- a/html/117write-int-hex.subx.html
+++ b/html/117write-int-hex.subx.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/117write-int-hex.subx'>https://github.com/akkartik/mu/blob/master/117write-int-hex.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/117write-int-hex.subx'>https://github.com/akkartik/mu/blob/main/117write-int-hex.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Write out the (hex) textual representation of numbers.</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/118parse-hex-int.subx.html b/html/118parse-hex-int.subx.html
index ed9289cf..8f8a15b1 100644
--- a/html/118parse-hex-int.subx.html
+++ b/html/118parse-hex-int.subx.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/118parse-hex-int.subx'>https://github.com/akkartik/mu/blob/master/118parse-hex-int.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/118parse-hex-int.subx'>https://github.com/akkartik/mu/blob/main/118parse-hex-int.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># some utilities for converting numbers from hex</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment"># lowercase letters only for now</span>
diff --git a/html/119error-byte.subx.html b/html/119error-byte.subx.html
index 24998c8d..aae3a865 100644
--- a/html/119error-byte.subx.html
+++ b/html/119error-byte.subx.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/119error-byte.subx'>https://github.com/akkartik/mu/blob/master/119error-byte.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/119error-byte.subx'>https://github.com/akkartik/mu/blob/main/119error-byte.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Print an error message followed by the text representation of a byte. Then exit.</span>
 <span id="L2" class="LineNr"> 2 </span>
diff --git a/html/120allocate.subx.html b/html/120allocate.subx.html
index d64067f9..537832c5 100644
--- a/html/120allocate.subx.html
+++ b/html/120allocate.subx.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/120allocate.subx'>https://github.com/akkartik/mu/blob/master/120allocate.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/120allocate.subx'>https://github.com/akkartik/mu/blob/main/120allocate.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Helper to dynamically allocate memory on the heap.</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#</span>
diff --git a/html/121new-stream.subx.html b/html/121new-stream.subx.html
index 809c072b..1102b1d9 100644
--- a/html/121new-stream.subx.html
+++ b/html/121new-stream.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/121new-stream.subx'>https://github.com/akkartik/mu/blob/master/121new-stream.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/121new-stream.subx'>https://github.com/akkartik/mu/blob/main/121new-stream.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Helper to allocate a stream on the heap.</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/122read-line.subx.html b/html/122read-line.subx.html
index 4b5beb6e..a47ae94c 100644
--- a/html/122read-line.subx.html
+++ b/html/122read-line.subx.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/122read-line.subx'>https://github.com/akkartik/mu/blob/master/122read-line.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/122read-line.subx'>https://github.com/akkartik/mu/blob/main/122read-line.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span>== code
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#   instruction                     effective address                                                   register    displacement    immediate</span>
diff --git a/html/123slice.subx.html b/html/123slice.subx.html
index dc13cf2c..3fed457f 100644
--- a/html/123slice.subx.html
+++ b/html/123slice.subx.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/123slice.subx'>https://github.com/akkartik/mu/blob/master/123slice.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/123slice.subx'>https://github.com/akkartik/mu/blob/main/123slice.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">   1 </span><span class="subxComment"># new data structure: a slice is an open interval of addresses [start, end)</span>
 <span id="L2" class="LineNr">   2 </span><span class="subxComment"># that includes 'start' but not 'end'</span>
diff --git a/html/124next-token.subx.html b/html/124next-token.subx.html
index 9a2af2d5..f7373845 100644
--- a/html/124next-token.subx.html
+++ b/html/124next-token.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/124next-token.subx'>https://github.com/akkartik/mu/blob/master/124next-token.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/124next-token.subx'>https://github.com/akkartik/mu/blob/main/124next-token.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">   1 </span><span class="subxComment"># Some tokenization primitives.</span>
 <span id="L2" class="LineNr">   2 </span>
diff --git a/html/125write-stream-data.subx.html b/html/125write-stream-data.subx.html
index ac07c9ea..bae56597 100644
--- a/html/125write-stream-data.subx.html
+++ b/html/125write-stream-data.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/125write-stream-data.subx'>https://github.com/akkartik/mu/blob/master/125write-stream-data.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/125write-stream-data.subx'>https://github.com/akkartik/mu/blob/main/125write-stream-data.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span>== code
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#   instruction                     effective address                                                   register    displacement    immediate</span>
diff --git a/html/126write-int-decimal.subx.html b/html/126write-int-decimal.subx.html
index ec709f60..9dfa4309 100644
--- a/html/126write-int-decimal.subx.html
+++ b/html/126write-int-decimal.subx.html
@@ -59,7 +59,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/126write-int-decimal.subx'>https://github.com/akkartik/mu/blob/master/126write-int-decimal.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/126write-int-decimal.subx'>https://github.com/akkartik/mu/blob/main/126write-int-decimal.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Helper to print an int32 in decimal.</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/127next-word.subx.html b/html/127next-word.subx.html
index caab845e..1bdd36da 100644
--- a/html/127next-word.subx.html
+++ b/html/127next-word.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/127next-word.subx'>https://github.com/akkartik/mu/blob/master/127next-word.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/127next-word.subx'>https://github.com/akkartik/mu/blob/main/127next-word.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Tokenize by whitespace.</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/128subx-words.subx.html b/html/128subx-words.subx.html
index ae547435..48783fac 100644
--- a/html/128subx-words.subx.html
+++ b/html/128subx-words.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/128subx-words.subx'>https://github.com/akkartik/mu/blob/master/128subx-words.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/128subx-words.subx'>https://github.com/akkartik/mu/blob/main/128subx-words.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Helpers for parsing SubX words, with their rules for hex, labels and metadata.</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/129emit-hex.subx.html b/html/129emit-hex.subx.html
index ad83ec68..15ee30a2 100644
--- a/html/129emit-hex.subx.html
+++ b/html/129emit-hex.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/129emit-hex.subx'>https://github.com/akkartik/mu/blob/master/129emit-hex.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/129emit-hex.subx'>https://github.com/akkartik/mu/blob/main/129emit-hex.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span>== code
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#   instruction                     effective address                                                   register    displacement    immediate</span>
diff --git a/html/130emit.subx.html b/html/130emit.subx.html
index dedfd1f0..d7c42c3f 100644
--- a/html/130emit.subx.html
+++ b/html/130emit.subx.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/130emit.subx'>https://github.com/akkartik/mu/blob/master/130emit.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/130emit.subx'>https://github.com/akkartik/mu/blob/main/130emit.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span>== code
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#   instruction                     effective address                                                   register    displacement    immediate</span>
diff --git a/html/131table.subx.html b/html/131table.subx.html
index 78ebde34..7bc50395 100644
--- a/html/131table.subx.html
+++ b/html/131table.subx.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/131table.subx'>https://github.com/akkartik/mu/blob/master/131table.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/131table.subx'>https://github.com/akkartik/mu/blob/main/131table.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">   1 </span><span class="subxComment"># A table is a stream of (key, value) rows.</span>
 <span id="L2" class="LineNr">   2 </span><span class="subxComment">#</span>
diff --git a/html/132slurp.subx.html b/html/132slurp.subx.html
index 4d091edd..8bb7d9ff 100644
--- a/html/132slurp.subx.html
+++ b/html/132slurp.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/132slurp.subx'>https://github.com/akkartik/mu/blob/master/132slurp.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/132slurp.subx'>https://github.com/akkartik/mu/blob/main/132slurp.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span>== code
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#   instruction                     effective address                                                   register    displacement    immediate</span>
diff --git a/html/133subx-widths.subx.html b/html/133subx-widths.subx.html
index da52fa66..67edfe0e 100644
--- a/html/133subx-widths.subx.html
+++ b/html/133subx-widths.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/133subx-widths.subx'>https://github.com/akkartik/mu/blob/master/133subx-widths.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/133subx-widths.subx'>https://github.com/akkartik/mu/blob/main/133subx-widths.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Helpers to compute widths of SubX arguments based on their metadata.</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#   /imm8 =&gt; 1 byte,</span>
diff --git a/html/134emit-hex-array.subx.html b/html/134emit-hex-array.subx.html
index 6753ac54..b9baa1ed 100644
--- a/html/134emit-hex-array.subx.html
+++ b/html/134emit-hex-array.subx.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/134emit-hex-array.subx'>https://github.com/akkartik/mu/blob/master/134emit-hex-array.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/134emit-hex-array.subx'>https://github.com/akkartik/mu/blob/main/134emit-hex-array.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span>== code
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#   instruction                     effective address                                                   register    displacement    immediate</span>
diff --git a/html/135next-word-or-string.subx.html b/html/135next-word-or-string.subx.html
index c3aac6e4..853286d5 100644
--- a/html/135next-word-or-string.subx.html
+++ b/html/135next-word-or-string.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/135next-word-or-string.subx'>https://github.com/akkartik/mu/blob/master/135next-word-or-string.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/135next-word-or-string.subx'>https://github.com/akkartik/mu/blob/main/135next-word-or-string.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span>== code
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#   instruction                     effective address                                                   register    displacement    immediate</span>
diff --git a/html/201register-names.subx.html b/html/201register-names.subx.html
index 59c05d56..632fc532 100644
--- a/html/201register-names.subx.html
+++ b/html/201register-names.subx.html
@@ -51,7 +51,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/201register-names.subx'>https://github.com/akkartik/mu/blob/master/201register-names.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/201register-names.subx'>https://github.com/akkartik/mu/blob/main/201register-names.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span>== data
 <span id="L2" class="LineNr">  2 </span><span class="SpecialChar">Registers</span>:  <span class="subxComment"># (addr stream {(handle array byte), int})</span>
diff --git a/html/202write-int.subx.html b/html/202write-int.subx.html
index 331243d8..2bb9a494 100644
--- a/html/202write-int.subx.html
+++ b/html/202write-int.subx.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/202write-int.subx'>https://github.com/akkartik/mu/blob/master/202write-int.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/202write-int.subx'>https://github.com/akkartik/mu/blob/main/202write-int.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># write-int: add (the binary representation of) a single int to a stream</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/203stack.subx.html b/html/203stack.subx.html
index b378a982..3419f607 100644
--- a/html/203stack.subx.html
+++ b/html/203stack.subx.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/203stack.subx'>https://github.com/akkartik/mu/blob/master/203stack.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/203stack.subx'>https://github.com/akkartik/mu/blob/main/203stack.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># A stack looks like this:</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#   top: int</span>
diff --git a/html/301array-equal.subx.html b/html/301array-equal.subx.html
index 5ba2e491..94b1f52d 100644
--- a/html/301array-equal.subx.html
+++ b/html/301array-equal.subx.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/301array-equal.subx'>https://github.com/akkartik/mu/blob/master/301array-equal.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/301array-equal.subx'>https://github.com/akkartik/mu/blob/main/301array-equal.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Comparing arrays of numbers.</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/302stack_allocate.subx.html b/html/302stack_allocate.subx.html
index 171eeafc..5752a165 100644
--- a/html/302stack_allocate.subx.html
+++ b/html/302stack_allocate.subx.html
@@ -53,7 +53,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/302stack_allocate.subx'>https://github.com/akkartik/mu/blob/master/302stack_allocate.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/302stack_allocate.subx'>https://github.com/akkartik/mu/blob/main/302stack_allocate.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># A function which pushes n zeros on the stack.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment"># Really only intended to be called from code generated by mu.subx (for array</span>
diff --git a/html/303kernel-string.subx.html b/html/303kernel-string.subx.html
index 63c78ae3..857fa9f4 100644
--- a/html/303kernel-string.subx.html
+++ b/html/303kernel-string.subx.html
@@ -52,7 +52,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/303kernel-string.subx'>https://github.com/akkartik/mu/blob/master/303kernel-string.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/303kernel-string.subx'>https://github.com/akkartik/mu/blob/main/303kernel-string.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># We can't really do much with null-terminated kernel strings, and we don't</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment"># want to. Let's turn them into regular length-prefixed strings at the first</span>
diff --git a/html/304screen.subx.html b/html/304screen.subx.html
index c2799cc8..8a1c99a9 100644
--- a/html/304screen.subx.html
+++ b/html/304screen.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/304screen.subx'>https://github.com/akkartik/mu/blob/master/304screen.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/304screen.subx'>https://github.com/akkartik/mu/blob/main/304screen.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Primitives for screen control.</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment"># Require Linux and a modern terminal.</span>
diff --git a/html/305keyboard.subx.html b/html/305keyboard.subx.html
index a06b8bd2..71984561 100644
--- a/html/305keyboard.subx.html
+++ b/html/305keyboard.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/305keyboard.subx'>https://github.com/akkartik/mu/blob/master/305keyboard.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/305keyboard.subx'>https://github.com/akkartik/mu/blob/main/305keyboard.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Primitives for keyboard control.</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment"># Require Linux and a modern terminal.</span>
diff --git a/html/306files.subx.html b/html/306files.subx.html
index d3629a8e..182815d5 100644
--- a/html/306files.subx.html
+++ b/html/306files.subx.html
@@ -53,7 +53,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/306files.subx'>https://github.com/akkartik/mu/blob/master/306files.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/306files.subx'>https://github.com/akkartik/mu/blob/main/306files.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Methods for constructing buffered-file objects.</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#</span>
diff --git a/html/307size.subx.html b/html/307size.subx.html
index 363a8d6c..5078c510 100644
--- a/html/307size.subx.html
+++ b/html/307size.subx.html
@@ -52,7 +52,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/307size.subx'>https://github.com/akkartik/mu/blob/master/307size.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/307size.subx'>https://github.com/akkartik/mu/blob/main/307size.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Size of an array in bytes.</span>
 <span id="L2" class="LineNr"> 2 </span>
diff --git a/html/308allocate-array.subx.html b/html/308allocate-array.subx.html
index d2e6e7d4..6d020471 100644
--- a/html/308allocate-array.subx.html
+++ b/html/308allocate-array.subx.html
@@ -52,7 +52,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/308allocate-array.subx'>https://github.com/akkartik/mu/blob/master/308allocate-array.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/308allocate-array.subx'>https://github.com/akkartik/mu/blob/main/308allocate-array.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># 2-arg version of allocate-array.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment"># Really only intended to be called from code generated by mu.subx.</span>
diff --git a/html/309stream.subx.html b/html/309stream.subx.html
index 515b45ff..4330eafa 100644
--- a/html/309stream.subx.html
+++ b/html/309stream.subx.html
@@ -53,7 +53,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/309stream.subx'>https://github.com/akkartik/mu/blob/master/309stream.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/309stream.subx'>https://github.com/akkartik/mu/blob/main/309stream.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Some unsafe methods not intended to be used directly in SubX, only through</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment"># Mu after proper type-checking.</span>
diff --git a/html/310copy-bytes.subx.html b/html/310copy-bytes.subx.html
index 26f10708..83f0ce5a 100644
--- a/html/310copy-bytes.subx.html
+++ b/html/310copy-bytes.subx.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/310copy-bytes.subx'>https://github.com/akkartik/mu/blob/master/310copy-bytes.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/310copy-bytes.subx'>https://github.com/akkartik/mu/blob/main/310copy-bytes.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Some helpers for copying non-overlapping regions of memory.</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment"># Really only intended to be called from code generated by mu.subx.</span>
diff --git a/html/311decimal-int.subx.html b/html/311decimal-int.subx.html
index e3e13b65..1563386c 100644
--- a/html/311decimal-int.subx.html
+++ b/html/311decimal-int.subx.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/311decimal-int.subx'>https://github.com/akkartik/mu/blob/master/311decimal-int.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/311decimal-int.subx'>https://github.com/akkartik/mu/blob/main/311decimal-int.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Helpers for decimal ints.</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/312copy.subx.html b/html/312copy.subx.html
index a1a365f8..904f1e49 100644
--- a/html/312copy.subx.html
+++ b/html/312copy.subx.html
@@ -53,7 +53,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/312copy.subx'>https://github.com/akkartik/mu/blob/master/312copy.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/312copy.subx'>https://github.com/akkartik/mu/blob/main/312copy.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span>== code
 <span id="L2" class="LineNr"> 2 </span>
diff --git a/html/313index-bounds-check.subx.html b/html/313index-bounds-check.subx.html
index 06197c02..50c34ac6 100644
--- a/html/313index-bounds-check.subx.html
+++ b/html/313index-bounds-check.subx.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/313index-bounds-check.subx'>https://github.com/akkartik/mu/blob/master/313index-bounds-check.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/313index-bounds-check.subx'>https://github.com/akkartik/mu/blob/main/313index-bounds-check.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Helper to check an array's bounds, and to abort if they're violated.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment"># Really only intended to be called from code generated by mu.subx.</span>
diff --git a/html/314divide.subx.html b/html/314divide.subx.html
index d284f8e7..6d30db6f 100644
--- a/html/314divide.subx.html
+++ b/html/314divide.subx.html
@@ -52,7 +52,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/314divide.subx'>https://github.com/akkartik/mu/blob/master/314divide.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/314divide.subx'>https://github.com/akkartik/mu/blob/main/314divide.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span>== code
 <span id="L2" class="LineNr"> 2 </span>
diff --git a/html/315slice.subx.html b/html/315slice.subx.html
index cbbd0f0d..57dc95a0 100644
--- a/html/315slice.subx.html
+++ b/html/315slice.subx.html
@@ -52,7 +52,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/315slice.subx'>https://github.com/akkartik/mu/blob/master/315slice.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/315slice.subx'>https://github.com/akkartik/mu/blob/main/315slice.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span>== code
 <span id="L2" class="LineNr"> 2 </span>
diff --git a/html/400.mu.html b/html/400.mu.html
index e7c46c2f..b0bca113 100644
--- a/html/400.mu.html
+++ b/html/400.mu.html
@@ -51,7 +51,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/400.mu'>https://github.com/akkartik/mu/blob/master/400.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/400.mu'>https://github.com/akkartik/mu/blob/main/400.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="muComment"># The 4xx series is for primitives implemented in Mu.</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/401test.mu.html b/html/401test.mu.html
index d236a7f2..ec9da86c 100644
--- a/html/401test.mu.html
+++ b/html/401test.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/401test.mu'>https://github.com/akkartik/mu/blob/master/401test.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/401test.mu'>https://github.com/akkartik/mu/blob/main/401test.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># Some helpers for Mu tests.</span>
 <span id="L2" class="LineNr"> 2 </span>
diff --git a/html/402time.mu.html b/html/402time.mu.html
index 912366b2..703127a5 100644
--- a/html/402time.mu.html
+++ b/html/402time.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/402time.mu'>https://github.com/akkartik/mu/blob/master/402time.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/402time.mu'>https://github.com/akkartik/mu/blob/main/402time.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="PreProc">type</span> <a href='402time.mu.html#L1'>timespec</a> <span class="Delimiter">{</span>
 <span id="L2" class="LineNr"> 2 </span>  tv_sec: int
diff --git a/html/403unicode.mu.html b/html/403unicode.mu.html
index 691a8ddd..06592d59 100644
--- a/html/403unicode.mu.html
+++ b/html/403unicode.mu.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/403unicode.mu'>https://github.com/akkartik/mu/blob/master/403unicode.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/403unicode.mu'>https://github.com/akkartik/mu/blob/main/403unicode.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="muComment"># Helpers for Unicode.</span>
 <span id="L2" class="LineNr">  2 </span><span class="muComment">#</span>
diff --git a/html/404stream.mu.html b/html/404stream.mu.html
index d57b8573..c537db4b 100644
--- a/html/404stream.mu.html
+++ b/html/404stream.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/404stream.mu'>https://github.com/akkartik/mu/blob/master/404stream.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/404stream.mu'>https://github.com/akkartik/mu/blob/main/404stream.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># Tests for Mu's stream primitives.</span>
 <span id="L2" class="LineNr"> 2 </span>
diff --git a/html/405screen.mu.html b/html/405screen.mu.html
index dc7c14ff..7b5b4f42 100644
--- a/html/405screen.mu.html
+++ b/html/405screen.mu.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/405screen.mu'>https://github.com/akkartik/mu/blob/master/405screen.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/405screen.mu'>https://github.com/akkartik/mu/blob/main/405screen.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">   1 </span><span class="muComment"># Wrappers for real screen primitives that can be passed a fake screen.</span>
 <span id="L2" class="LineNr">   2 </span><span class="muComment"># The tests here have been painstakingly validated against a real terminal</span>
diff --git a/html/406int32.mu.html b/html/406int32.mu.html
index c6571c98..c7d06f06 100644
--- a/html/406int32.mu.html
+++ b/html/406int32.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/406int32.mu'>https://github.com/akkartik/mu/blob/master/406int32.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/406int32.mu'>https://github.com/akkartik/mu/blob/main/406int32.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># Some slow but convenient helpers</span>
 <span id="L2" class="LineNr"> 2 </span>
diff --git a/html/407print-int32-decimal-right-justified.mu.html b/html/407print-int32-decimal-right-justified.mu.html
index c62978e9..cbba9de9 100644
--- a/html/407print-int32-decimal-right-justified.mu.html
+++ b/html/407print-int32-decimal-right-justified.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/407print-int32-decimal-right-justified.mu'>https://github.com/akkartik/mu/blob/master/407print-int32-decimal-right-justified.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/407print-int32-decimal-right-justified.mu'>https://github.com/akkartik/mu/blob/main/407print-int32-decimal-right-justified.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># print 'n' with enough leading spaces to be right-justified in 'width'</span>
 <span id="L2" class="LineNr"> 2 </span><span class="PreProc">fn</span> <span class="muFunction"><a href='407print-int32-decimal-right-justified.mu.html#L2'>print-int32-decimal-right-justified</a></span> <a href='405screen.mu.html#L9'>screen</a>: (addr <a href='405screen.mu.html#L9'>screen</a>), n: int, _width: int <span class="Delimiter">{</span>
diff --git a/html/408float.mu.html b/html/408float.mu.html
index 8b16fd5a..183f4eda 100644
--- a/html/408float.mu.html
+++ b/html/408float.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/408float.mu'>https://github.com/akkartik/mu/blob/master/408float.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/408float.mu'>https://github.com/akkartik/mu/blob/main/408float.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># Some quick-n-dirty ways to create floats.</span>
 <span id="L2" class="LineNr"> 2 </span>
diff --git a/html/409print-float-hex.mu.html b/html/409print-float-hex.mu.html
index 9eb93661..bfb62e92 100644
--- a/html/409print-float-hex.mu.html
+++ b/html/409print-float-hex.mu.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/409print-float-hex.mu'>https://github.com/akkartik/mu/blob/master/409print-float-hex.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/409print-float-hex.mu'>https://github.com/akkartik/mu/blob/main/409print-float-hex.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="muComment"># quick-n-dirty way to print out floats in hex</span>
 <span id="L2" class="LineNr">  2 </span><span class="muComment"># <a href="https://www.exploringbinary.com/hexadecimal-floating-point-constants">https://www.exploringbinary.com/hexadecimal-floating-point-constants</a></span>
diff --git a/html/410file.mu.html b/html/410file.mu.html
index da75a2fa..6ff29a66 100644
--- a/html/410file.mu.html
+++ b/html/410file.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/410file.mu'>https://github.com/akkartik/mu/blob/master/410file.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/410file.mu'>https://github.com/akkartik/mu/blob/main/410file.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="PreProc">fn</span> <span class="muFunction"><a href='410file.mu.html#L1'>read-lines</a></span> in: (addr buffered-file), out: (addr handle array (handle array byte)) <span class="Delimiter">{</span>
 <span id="L2" class="LineNr"> 2 </span>  <span class="PreProc">var</span> stream: (stream (handle array byte) <span class="Constant">0x10</span>)
diff --git a/html/411string.mu.html b/html/411string.mu.html
index bbf392bf..0f4c684b 100644
--- a/html/411string.mu.html
+++ b/html/411string.mu.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/411string.mu'>https://github.com/akkartik/mu/blob/master/411string.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/411string.mu'>https://github.com/akkartik/mu/blob/main/411string.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="muComment"># read up to 'len' graphemes after skipping the first 'start' ones</span>
 <span id="L2" class="LineNr">  2 </span><span class="PreProc">fn</span> <span class="muFunction"><a href='411string.mu.html#L2'>substring</a></span> in: (addr array byte), start: int, len: int, out-ah: (addr handle array byte) <span class="Delimiter">{</span>
diff --git a/html/412print-float-decimal.mu.html b/html/412print-float-decimal.mu.html
index bfea44ff..37519ae7 100644
--- a/html/412print-float-decimal.mu.html
+++ b/html/412print-float-decimal.mu.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/412print-float-decimal.mu'>https://github.com/akkartik/mu/blob/master/412print-float-decimal.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/412print-float-decimal.mu'>https://github.com/akkartik/mu/blob/main/412print-float-decimal.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="muComment"># print out floats in decimal</span>
 <span id="L2" class="LineNr">  2 </span><span class="muComment"># <a href="https://research.swtch.com/ftoa">https://research.swtch.com/ftoa</a></span>
diff --git a/html/apps/advent2020/1a.mu.html b/html/apps/advent2020/1a.mu.html
index 64bf44e5..8a88b678 100644
--- a/html/apps/advent2020/1a.mu.html
+++ b/html/apps/advent2020/1a.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/advent2020/1a.mu'>https://github.com/akkartik/mu/blob/master/apps/advent2020/1a.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/advent2020/1a.mu'>https://github.com/akkartik/mu/blob/main/apps/advent2020/1a.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># <a href="https://adventofcode.com/2020/day/1">https://adventofcode.com/2020/day/1</a></span>
 <span id="L2" class="LineNr"> 2 </span><span class="muComment">#</span>
diff --git a/html/apps/advent2020/1b.mu.html b/html/apps/advent2020/1b.mu.html
index c7ac42b1..2affa9bd 100644
--- a/html/apps/advent2020/1b.mu.html
+++ b/html/apps/advent2020/1b.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/advent2020/1b.mu'>https://github.com/akkartik/mu/blob/master/apps/advent2020/1b.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/advent2020/1b.mu'>https://github.com/akkartik/mu/blob/main/apps/advent2020/1b.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="muComment"># <a href="https://adventofcode.com/2020/day/1">https://adventofcode.com/2020/day/1</a></span>
 <span id="L2" class="LineNr">  2 </span><span class="muComment">#</span>
diff --git a/html/apps/advent2020/2a.mu.html b/html/apps/advent2020/2a.mu.html
index f9bda192..bf5a31af 100644
--- a/html/apps/advent2020/2a.mu.html
+++ b/html/apps/advent2020/2a.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/advent2020/2a.mu'>https://github.com/akkartik/mu/blob/master/apps/advent2020/2a.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/advent2020/2a.mu'>https://github.com/akkartik/mu/blob/main/apps/advent2020/2a.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># <a href="https://adventofcode.com/2020/day/2">https://adventofcode.com/2020/day/2</a></span>
 <span id="L2" class="LineNr"> 2 </span><span class="muComment">#</span>
diff --git a/html/apps/advent2020/2b.mu.html b/html/apps/advent2020/2b.mu.html
index c44e2917..53a57c40 100644
--- a/html/apps/advent2020/2b.mu.html
+++ b/html/apps/advent2020/2b.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/advent2020/2b.mu'>https://github.com/akkartik/mu/blob/master/apps/advent2020/2b.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/advent2020/2b.mu'>https://github.com/akkartik/mu/blob/main/apps/advent2020/2b.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="muComment"># <a href="https://adventofcode.com/2020/day/2">https://adventofcode.com/2020/day/2</a></span>
 <span id="L2" class="LineNr">  2 </span><span class="muComment">#</span>
diff --git a/html/apps/advent2020/3a.mu.html b/html/apps/advent2020/3a.mu.html
index 1fd1c8d5..a6aff5e0 100644
--- a/html/apps/advent2020/3a.mu.html
+++ b/html/apps/advent2020/3a.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/advent2020/3a.mu'>https://github.com/akkartik/mu/blob/master/apps/advent2020/3a.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/advent2020/3a.mu'>https://github.com/akkartik/mu/blob/main/apps/advent2020/3a.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="muComment"># <a href="https://adventofcode.com/2020/day/3">https://adventofcode.com/2020/day/3</a></span>
 <span id="L2" class="LineNr">  2 </span><span class="muComment">#</span>
diff --git a/html/apps/advent2020/3b.mu.html b/html/apps/advent2020/3b.mu.html
index bab7c758..c77ebe3b 100644
--- a/html/apps/advent2020/3b.mu.html
+++ b/html/apps/advent2020/3b.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/advent2020/3b.mu'>https://github.com/akkartik/mu/blob/master/apps/advent2020/3b.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/advent2020/3b.mu'>https://github.com/akkartik/mu/blob/main/apps/advent2020/3b.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="muComment"># <a href="https://adventofcode.com/2020/day/3">https://adventofcode.com/2020/day/3</a></span>
 <span id="L2" class="LineNr">  2 </span><span class="muComment">#</span>
diff --git a/html/apps/advent2020/4a.mu.html b/html/apps/advent2020/4a.mu.html
index 95dd953a..36d1f6a6 100644
--- a/html/apps/advent2020/4a.mu.html
+++ b/html/apps/advent2020/4a.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/advent2020/4a.mu'>https://github.com/akkartik/mu/blob/master/apps/advent2020/4a.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/advent2020/4a.mu'>https://github.com/akkartik/mu/blob/main/apps/advent2020/4a.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># <a href="https://adventofcode.com/2020/day/4">https://adventofcode.com/2020/day/4</a></span>
 <span id="L2" class="LineNr"> 2 </span><span class="muComment">#</span>
diff --git a/html/apps/advent2020/4b.mu.html b/html/apps/advent2020/4b.mu.html
index 379fa0a5..1a8c2b8d 100644
--- a/html/apps/advent2020/4b.mu.html
+++ b/html/apps/advent2020/4b.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/advent2020/4b.mu'>https://github.com/akkartik/mu/blob/master/apps/advent2020/4b.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/advent2020/4b.mu'>https://github.com/akkartik/mu/blob/main/apps/advent2020/4b.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="muComment"># <a href="https://adventofcode.com/2020/day/4">https://adventofcode.com/2020/day/4</a></span>
 <span id="L2" class="LineNr">  2 </span><span class="muComment">#</span>
diff --git a/html/apps/advent2020/5a.mu.html b/html/apps/advent2020/5a.mu.html
index d45c6e54..9fd217bd 100644
--- a/html/apps/advent2020/5a.mu.html
+++ b/html/apps/advent2020/5a.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/advent2020/5a.mu'>https://github.com/akkartik/mu/blob/master/apps/advent2020/5a.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/advent2020/5a.mu'>https://github.com/akkartik/mu/blob/main/apps/advent2020/5a.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># <a href="https://adventofcode.com/2020/day/5">https://adventofcode.com/2020/day/5</a></span>
 <span id="L2" class="LineNr"> 2 </span><span class="muComment">#</span>
diff --git a/html/apps/advent2020/5b.mu.html b/html/apps/advent2020/5b.mu.html
index 372d83b3..7d2ccf8c 100644
--- a/html/apps/advent2020/5b.mu.html
+++ b/html/apps/advent2020/5b.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/advent2020/5b.mu'>https://github.com/akkartik/mu/blob/master/apps/advent2020/5b.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/advent2020/5b.mu'>https://github.com/akkartik/mu/blob/main/apps/advent2020/5b.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># <a href="https://adventofcode.com/2020/day/5">https://adventofcode.com/2020/day/5</a></span>
 <span id="L2" class="LineNr"> 2 </span><span class="muComment">#</span>
diff --git a/html/apps/arith.mu.html b/html/apps/arith.mu.html
index 6bca6493..0113e57b 100644
--- a/html/apps/arith.mu.html
+++ b/html/apps/arith.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/arith.mu'>https://github.com/akkartik/mu/blob/master/apps/arith.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/arith.mu'>https://github.com/akkartik/mu/blob/main/apps/arith.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="muComment"># Integer arithmetic using conventional precedence.</span>
 <span id="L2" class="LineNr">  2 </span><span class="muComment">#</span>
diff --git a/html/apps/assort.subx.html b/html/apps/assort.subx.html
index cfcc9c9c..47bf4f0d 100644
--- a/html/apps/assort.subx.html
+++ b/html/apps/assort.subx.html
@@ -58,7 +58,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/assort.subx'>https://github.com/akkartik/mu/blob/master/apps/assort.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/assort.subx'>https://github.com/akkartik/mu/blob/main/apps/assort.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">   1 </span><span class="subxComment"># Read a series of segments from stdin and concatenate segments with the same</span>
 <span id="L2" class="LineNr">   2 </span><span class="subxComment"># name on stdout.</span>
diff --git a/html/apps/boot.hex.html b/html/apps/boot.hex.html
index 74d72610..73afd017 100644
--- a/html/apps/boot.hex.html
+++ b/html/apps/boot.hex.html
@@ -49,7 +49,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/boot.hex'>https://github.com/akkartik/mu/blob/master/apps/boot.hex</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/boot.hex'>https://github.com/akkartik/mu/blob/main/apps/boot.hex</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment"># Bootable image that:</span>
 <span id="L2" class="LineNr">  2 </span><span class="Comment">#   - loads more sectors past the first boot sector (using BIOS primitives)</span>
diff --git a/html/apps/braces.subx.html b/html/apps/braces.subx.html
index 2be7916c..bf2a5d60 100644
--- a/html/apps/braces.subx.html
+++ b/html/apps/braces.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/braces.subx'>https://github.com/akkartik/mu/blob/master/apps/braces.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/braces.subx'>https://github.com/akkartik/mu/blob/main/apps/braces.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Structured control flow using break/loop rather than jump.</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#</span>
diff --git a/html/apps/browse/main.mu.html b/html/apps/browse/main.mu.html
index e4dbaa9a..2cd268a1 100644
--- a/html/apps/browse/main.mu.html
+++ b/html/apps/browse/main.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/browse/main.mu'>https://github.com/akkartik/mu/blob/master/apps/browse/main.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/browse/main.mu'>https://github.com/akkartik/mu/blob/main/apps/browse/main.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="PreProc">fn</span> <span class="muFunction"><a href='main.mu.html#L1'>main</a></span> args-on-stack: (addr array addr array byte)<span class="PreProc"> -&gt; </span>_/<span class="Constant">ebx</span>: int <span class="Delimiter">{</span>
 <span id="L2" class="LineNr">  2 </span>  <span class="PreProc">var</span> args/<span class="Constant">eax</span>: (addr array addr array byte) <span class="SpecialChar">&lt;-</span> copy args-on-stack
diff --git a/html/apps/browse/paginated-screen.mu.html b/html/apps/browse/paginated-screen.mu.html
index 2b70fe63..a10e4d8f 100644
--- a/html/apps/browse/paginated-screen.mu.html
+++ b/html/apps/browse/paginated-screen.mu.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/browse/paginated-screen.mu'>https://github.com/akkartik/mu/blob/master/apps/browse/paginated-screen.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/browse/paginated-screen.mu'>https://github.com/akkartik/mu/blob/main/apps/browse/paginated-screen.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="muComment"># If a screen is too wide, split it up into a fixed size of pages.</span>
 <span id="L2" class="LineNr">  2 </span><span class="muComment"># We take control of drawing and moving the cursor, and delegate everything else.</span>
diff --git a/html/apps/calls.subx.html b/html/apps/calls.subx.html
index be585234..23c86179 100644
--- a/html/apps/calls.subx.html
+++ b/html/apps/calls.subx.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/calls.subx'>https://github.com/akkartik/mu/blob/master/apps/calls.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/calls.subx'>https://github.com/akkartik/mu/blob/main/apps/calls.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">   1 </span><span class="subxComment"># Function calls in a single line.</span>
 <span id="L2" class="LineNr">   2 </span><span class="subxComment">#</span>
diff --git a/html/apps/crenshaw2-1.subx.html b/html/apps/crenshaw2-1.subx.html
index ac74bb5f..387e33a4 100644
--- a/html/apps/crenshaw2-1.subx.html
+++ b/html/apps/crenshaw2-1.subx.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/crenshaw2-1.subx'>https://github.com/akkartik/mu/blob/master/apps/crenshaw2-1.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/crenshaw2-1.subx'>https://github.com/akkartik/mu/blob/main/apps/crenshaw2-1.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Port of <a href="https://github.com/akkartik/crenshaw/blob/master/tutor2.1.pas">https://github.com/akkartik/crenshaw/blob/master/tutor2.1.pas</a></span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment"># which corresponds to the section &quot;single digits&quot; in <a href="https://compilers.iecc.com/crenshaw/tutor2.txt">https://compilers.iecc.com/crenshaw/tutor2.txt</a></span>
diff --git a/html/apps/crenshaw2-1b.subx.html b/html/apps/crenshaw2-1b.subx.html
index c741325c..c9114fa5 100644
--- a/html/apps/crenshaw2-1b.subx.html
+++ b/html/apps/crenshaw2-1b.subx.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/crenshaw2-1b.subx'>https://github.com/akkartik/mu/blob/master/apps/crenshaw2-1b.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/crenshaw2-1b.subx'>https://github.com/akkartik/mu/blob/main/apps/crenshaw2-1b.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Port of <a href="https://github.com/akkartik/crenshaw/blob/master/tutor2.1.pas">https://github.com/akkartik/crenshaw/blob/master/tutor2.1.pas</a></span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment"># which corresponds to the section &quot;single digits&quot; in <a href="https://compilers.iecc.com/crenshaw/tutor2.txt">https://compilers.iecc.com/crenshaw/tutor2.txt</a></span>
diff --git a/html/apps/dquotes.subx.html b/html/apps/dquotes.subx.html
index 18cdaf0b..3e6e39c3 100644
--- a/html/apps/dquotes.subx.html
+++ b/html/apps/dquotes.subx.html
@@ -59,7 +59,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/dquotes.subx'>https://github.com/akkartik/mu/blob/master/apps/dquotes.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/dquotes.subx'>https://github.com/akkartik/mu/blob/main/apps/dquotes.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">   1 </span><span class="subxComment"># Translate literal strings within double quotes.</span>
 <span id="L2" class="LineNr">   2 </span><span class="subxComment"># Replace them with references to new variables in the data segment.</span>
diff --git a/html/apps/ex1.mu.html b/html/apps/ex1.mu.html
index ae91194c..dca1abcd 100644
--- a/html/apps/ex1.mu.html
+++ b/html/apps/ex1.mu.html
@@ -53,7 +53,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/ex1.mu'>https://github.com/akkartik/mu/blob/master/apps/ex1.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/ex1.mu'>https://github.com/akkartik/mu/blob/main/apps/ex1.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># First example: return the answer to the Ultimate Question of Life, the</span>
 <span id="L2" class="LineNr"> 2 </span><span class="muComment"># Universe, and Everything.</span>
diff --git a/html/apps/ex1.subx.html b/html/apps/ex1.subx.html
index 13ce34a7..12084dd3 100644
--- a/html/apps/ex1.subx.html
+++ b/html/apps/ex1.subx.html
@@ -51,7 +51,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/ex1.subx'>https://github.com/akkartik/mu/blob/master/apps/ex1.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/ex1.subx'>https://github.com/akkartik/mu/blob/main/apps/ex1.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># First program: same as <a href="https://www.muppetlabs.com/~breadbox/software/tiny/teensy.html">https://www.muppetlabs.com/~breadbox/software/tiny/teensy.html</a></span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment"># Just return 42.</span>
diff --git a/html/apps/ex10.subx.html b/html/apps/ex10.subx.html
index ddfd8a6e..21f57033 100644
--- a/html/apps/ex10.subx.html
+++ b/html/apps/ex10.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/ex10.subx'>https://github.com/akkartik/mu/blob/master/apps/ex10.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/ex10.subx'>https://github.com/akkartik/mu/blob/main/apps/ex10.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># String comparison: return 1 iff the two args passed in at the commandline are equal.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/apps/ex11.subx.html b/html/apps/ex11.subx.html
index 577920fc..aa111e0b 100644
--- a/html/apps/ex11.subx.html
+++ b/html/apps/ex11.subx.html
@@ -58,7 +58,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/ex11.subx'>https://github.com/akkartik/mu/blob/master/apps/ex11.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/ex11.subx'>https://github.com/akkartik/mu/blob/main/apps/ex11.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Null-terminated vs size-prefixed ascii strings.</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#</span>
diff --git a/html/apps/ex12.subx.html b/html/apps/ex12.subx.html
index 4f753e5c..6ce6d94d 100644
--- a/html/apps/ex12.subx.html
+++ b/html/apps/ex12.subx.html
@@ -53,7 +53,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/ex12.subx'>https://github.com/akkartik/mu/blob/master/apps/ex12.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/ex12.subx'>https://github.com/akkartik/mu/blob/main/apps/ex12.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Example showing mmap syscall.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment"># Create a new segment using mmap, save the address, write to it.</span>
diff --git a/html/apps/ex13.subx.html b/html/apps/ex13.subx.html
index 883d1532..523f2197 100644
--- a/html/apps/ex13.subx.html
+++ b/html/apps/ex13.subx.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/ex13.subx'>https://github.com/akkartik/mu/blob/master/apps/ex13.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/ex13.subx'>https://github.com/akkartik/mu/blob/main/apps/ex13.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Compare 3 and 3.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/apps/ex14.subx.html b/html/apps/ex14.subx.html
index ed5fa2ee..e37734fd 100644
--- a/html/apps/ex14.subx.html
+++ b/html/apps/ex14.subx.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/ex14.subx'>https://github.com/akkartik/mu/blob/master/apps/ex14.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/ex14.subx'>https://github.com/akkartik/mu/blob/main/apps/ex14.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Multiply 2 numbers.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/apps/ex2.mu.html b/html/apps/ex2.mu.html
index 603e330f..9c408104 100644
--- a/html/apps/ex2.mu.html
+++ b/html/apps/ex2.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/ex2.mu'>https://github.com/akkartik/mu/blob/master/apps/ex2.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/ex2.mu'>https://github.com/akkartik/mu/blob/main/apps/ex2.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># Add 3 and 4, and return the result in the exit code.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="muComment">#</span>
diff --git a/html/apps/ex2.subx.html b/html/apps/ex2.subx.html
index 4ff62017..9f872a0c 100644
--- a/html/apps/ex2.subx.html
+++ b/html/apps/ex2.subx.html
@@ -51,7 +51,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/ex2.subx'>https://github.com/akkartik/mu/blob/master/apps/ex2.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/ex2.subx'>https://github.com/akkartik/mu/blob/main/apps/ex2.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Add 3 and 4, and return the result in the exit code.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/apps/ex3.2.mu.html b/html/apps/ex3.2.mu.html
index b23f7a09..014ecfb6 100644
--- a/html/apps/ex3.2.mu.html
+++ b/html/apps/ex3.2.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/ex3.2.mu'>https://github.com/akkartik/mu/blob/master/apps/ex3.2.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/ex3.2.mu'>https://github.com/akkartik/mu/blob/main/apps/ex3.2.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># Unnecessarily use an array to sum 1..10</span>
 <span id="L2" class="LineNr"> 2 </span><span class="muComment">#</span>
diff --git a/html/apps/ex3.mu.html b/html/apps/ex3.mu.html
index ab536575..486ea626 100644
--- a/html/apps/ex3.mu.html
+++ b/html/apps/ex3.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/ex3.mu'>https://github.com/akkartik/mu/blob/master/apps/ex3.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/ex3.mu'>https://github.com/akkartik/mu/blob/main/apps/ex3.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># Add the first 10 numbers, and return the result in the exit code.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="muComment">#</span>
diff --git a/html/apps/ex3.subx.html b/html/apps/ex3.subx.html
index 645e97af..e5b4360b 100644
--- a/html/apps/ex3.subx.html
+++ b/html/apps/ex3.subx.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/ex3.subx'>https://github.com/akkartik/mu/blob/master/apps/ex3.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/ex3.subx'>https://github.com/akkartik/mu/blob/main/apps/ex3.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Add the first 10 numbers, and return the result in the exit code.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/apps/ex4.subx.html b/html/apps/ex4.subx.html
index 297576bb..6193dbb2 100644
--- a/html/apps/ex4.subx.html
+++ b/html/apps/ex4.subx.html
@@ -52,7 +52,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/ex4.subx'>https://github.com/akkartik/mu/blob/master/apps/ex4.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/ex4.subx'>https://github.com/akkartik/mu/blob/main/apps/ex4.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Read a character from stdin, save it to a global, write it to stdout.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/apps/ex5.subx.html b/html/apps/ex5.subx.html
index 8575bbfd..16ae1fe0 100644
--- a/html/apps/ex5.subx.html
+++ b/html/apps/ex5.subx.html
@@ -53,7 +53,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/ex5.subx'>https://github.com/akkartik/mu/blob/master/apps/ex5.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/ex5.subx'>https://github.com/akkartik/mu/blob/main/apps/ex5.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Read a character from stdin, save it to a local on the stack, write it to stdout.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/apps/ex6.subx.html b/html/apps/ex6.subx.html
index ba8a4037..1578c57f 100644
--- a/html/apps/ex6.subx.html
+++ b/html/apps/ex6.subx.html
@@ -53,7 +53,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/ex6.subx'>https://github.com/akkartik/mu/blob/master/apps/ex6.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/ex6.subx'>https://github.com/akkartik/mu/blob/main/apps/ex6.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Print out a (global variable) string to stdout.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/apps/ex7.subx.html b/html/apps/ex7.subx.html
index 76a1de01..56c2bacd 100644
--- a/html/apps/ex7.subx.html
+++ b/html/apps/ex7.subx.html
@@ -53,7 +53,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/ex7.subx'>https://github.com/akkartik/mu/blob/master/apps/ex7.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/ex7.subx'>https://github.com/akkartik/mu/blob/main/apps/ex7.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Example showing file syscalls.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/apps/ex8.subx.html b/html/apps/ex8.subx.html
index a6458493..0e6cb43d 100644
--- a/html/apps/ex8.subx.html
+++ b/html/apps/ex8.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/ex8.subx'>https://github.com/akkartik/mu/blob/master/apps/ex8.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/ex8.subx'>https://github.com/akkartik/mu/blob/main/apps/ex8.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Example reading commandline arguments: compute length of first arg.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/apps/ex9.subx.html b/html/apps/ex9.subx.html
index c2489a56..4048004b 100644
--- a/html/apps/ex9.subx.html
+++ b/html/apps/ex9.subx.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/ex9.subx'>https://github.com/akkartik/mu/blob/master/apps/ex9.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/ex9.subx'>https://github.com/akkartik/mu/blob/main/apps/ex9.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Example showing arg order on the stack.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/apps/factorial.mu.html b/html/apps/factorial.mu.html
index 3567b1a6..838ca6b1 100644
--- a/html/apps/factorial.mu.html
+++ b/html/apps/factorial.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/factorial.mu'>https://github.com/akkartik/mu/blob/master/apps/factorial.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/factorial.mu'>https://github.com/akkartik/mu/blob/main/apps/factorial.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># compute the factorial of 5, and return the result in the exit code</span>
 <span id="L2" class="LineNr"> 2 </span><span class="muComment">#</span>
diff --git a/html/apps/factorial.subx.html b/html/apps/factorial.subx.html
index 3c65968b..7beb276e 100644
--- a/html/apps/factorial.subx.html
+++ b/html/apps/factorial.subx.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/factorial.subx'>https://github.com/akkartik/mu/blob/master/apps/factorial.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/factorial.subx'>https://github.com/akkartik/mu/blob/main/apps/factorial.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment">## compute the factorial of 5, and print the result</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#</span>
diff --git a/html/apps/factorial2.subx.html b/html/apps/factorial2.subx.html
index 7e23c999..1533e1b8 100644
--- a/html/apps/factorial2.subx.html
+++ b/html/apps/factorial2.subx.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/factorial2.subx'>https://github.com/akkartik/mu/blob/master/apps/factorial2.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/factorial2.subx'>https://github.com/akkartik/mu/blob/main/apps/factorial2.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment">## compute the factorial of 5, and return the result in the exit code</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#</span>
diff --git a/html/apps/factorial3.subx.html b/html/apps/factorial3.subx.html
index e5f5dab0..89428bfa 100644
--- a/html/apps/factorial3.subx.html
+++ b/html/apps/factorial3.subx.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/factorial3.subx'>https://github.com/akkartik/mu/blob/master/apps/factorial3.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/factorial3.subx'>https://github.com/akkartik/mu/blob/main/apps/factorial3.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment">## compute the factorial of 5, and return the result in the exit code</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/apps/factorial4.subx.html b/html/apps/factorial4.subx.html
index ac994117..ad8e07c1 100644
--- a/html/apps/factorial4.subx.html
+++ b/html/apps/factorial4.subx.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/factorial4.subx'>https://github.com/akkartik/mu/blob/master/apps/factorial4.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/factorial4.subx'>https://github.com/akkartik/mu/blob/main/apps/factorial4.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment">## compute the factorial of 5, and return the result in the exit code</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/apps/hello.mu.html b/html/apps/hello.mu.html
index f994f3ae..48144dc8 100644
--- a/html/apps/hello.mu.html
+++ b/html/apps/hello.mu.html
@@ -53,7 +53,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/hello.mu'>https://github.com/akkartik/mu/blob/master/apps/hello.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/hello.mu'>https://github.com/akkartik/mu/blob/main/apps/hello.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># Meaningless conventional example.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="muComment">#</span>
diff --git a/html/apps/hex.subx.html b/html/apps/hex.subx.html
index a7373f0d..78a3a9b9 100644
--- a/html/apps/hex.subx.html
+++ b/html/apps/hex.subx.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/hex.subx'>https://github.com/akkartik/mu/blob/master/apps/hex.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/hex.subx'>https://github.com/akkartik/mu/blob/main/apps/hex.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">   1 </span><span class="subxComment"># Read a text file containing whitespace-separated pairs of ascii hex bytes</span>
 <span id="L2" class="LineNr">   2 </span><span class="subxComment"># from stdin, and convert them into binary bytes (octets) on stdout. Ignore</span>
diff --git a/html/apps/mu.subx.html b/html/apps/mu.subx.html
index 5c05d5bf..136b4a6c 100644
--- a/html/apps/mu.subx.html
+++ b/html/apps/mu.subx.html
@@ -58,7 +58,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/mu.subx'>https://github.com/akkartik/mu/blob/master/apps/mu.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/mu.subx'>https://github.com/akkartik/mu/blob/main/apps/mu.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">    1 </span><span class="subxComment"># The Mu computer's level-2 language, also called Mu.</span>
 <span id="L2" class="LineNr">    2 </span><span class="subxComment"># <a href="http://akkartik.name/post/mu-2019-2">http://akkartik.name/post/mu-2019-2</a></span>
diff --git a/html/apps/pack.subx.html b/html/apps/pack.subx.html
index 935b79a5..2762f0fb 100644
--- a/html/apps/pack.subx.html
+++ b/html/apps/pack.subx.html
@@ -58,7 +58,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/pack.subx'>https://github.com/akkartik/mu/blob/master/apps/pack.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/pack.subx'>https://github.com/akkartik/mu/blob/main/apps/pack.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">   1 </span><span class="subxComment"># Read a text file of SubX instructions from stdin, and convert it into a list</span>
 <span id="L2" class="LineNr">   2 </span><span class="subxComment"># of whitespace-separated ascii hex bytes on stdout. Label definitions and</span>
diff --git a/html/apps/parse-int.mu.html b/html/apps/parse-int.mu.html
index 155e7a7a..daa5dd83 100644
--- a/html/apps/parse-int.mu.html
+++ b/html/apps/parse-int.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/parse-int.mu'>https://github.com/akkartik/mu/blob/master/apps/parse-int.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/parse-int.mu'>https://github.com/akkartik/mu/blob/main/apps/parse-int.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># parse a decimal int at the commandline</span>
 <span id="L2" class="LineNr"> 2 </span><span class="muComment">#</span>
diff --git a/html/apps/print-file.mu.html b/html/apps/print-file.mu.html
index c90dd8fa..746f6881 100644
--- a/html/apps/print-file.mu.html
+++ b/html/apps/print-file.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/print-file.mu'>https://github.com/akkartik/mu/blob/master/apps/print-file.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/print-file.mu'>https://github.com/akkartik/mu/blob/main/apps/print-file.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># accept a filename on the commandline, read it and print it out to screen</span>
 <span id="L2" class="LineNr"> 2 </span><span class="muComment"># only ascii right now, just like the rest of Mu</span>
diff --git a/html/apps/random.subx.html b/html/apps/random.subx.html
index 96e484bb..e03b3fbd 100644
--- a/html/apps/random.subx.html
+++ b/html/apps/random.subx.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/random.subx'>https://github.com/akkartik/mu/blob/master/apps/random.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/random.subx'>https://github.com/akkartik/mu/blob/main/apps/random.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Repeatedly read 32-bit numbers from /dev/random, print them to stdout.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/apps/raytracing/1.mu.html b/html/apps/raytracing/1.mu.html
index b72418ad..5c349ae2 100644
--- a/html/apps/raytracing/1.mu.html
+++ b/html/apps/raytracing/1.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/raytracing/1.mu'>https://github.com/akkartik/mu/blob/master/apps/raytracing/1.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/raytracing/1.mu'>https://github.com/akkartik/mu/blob/main/apps/raytracing/1.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># Listing 1 of <a href="https://raytracing.github.io/books/RayTracingInOneWeekend.html">https://raytracing.github.io/books/RayTracingInOneWeekend.html</a></span>
 <span id="L2" class="LineNr"> 2 </span><span class="muComment"># (simplified)</span>
diff --git a/html/apps/raytracing/2.mu.html b/html/apps/raytracing/2.mu.html
index 56563080..edb9d9d9 100644
--- a/html/apps/raytracing/2.mu.html
+++ b/html/apps/raytracing/2.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/raytracing/2.mu'>https://github.com/akkartik/mu/blob/master/apps/raytracing/2.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/raytracing/2.mu'>https://github.com/akkartik/mu/blob/main/apps/raytracing/2.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># Listing 7 of <a href="https://raytracing.github.io/books/RayTracingInOneWeekend.html">https://raytracing.github.io/books/RayTracingInOneWeekend.html</a></span>
 <span id="L2" class="LineNr"> 2 </span><span class="muComment">#</span>
diff --git a/html/apps/raytracing/3.mu.html b/html/apps/raytracing/3.mu.html
index 48dee774..0d22fec5 100644
--- a/html/apps/raytracing/3.mu.html
+++ b/html/apps/raytracing/3.mu.html
@@ -57,7 +57,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/raytracing/3.mu'>https://github.com/akkartik/mu/blob/master/apps/raytracing/3.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/raytracing/3.mu'>https://github.com/akkartik/mu/blob/main/apps/raytracing/3.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="muComment"># Listing 9 of <a href="https://raytracing.github.io/books/RayTracingInOneWeekend.html">https://raytracing.github.io/books/RayTracingInOneWeekend.html</a></span>
 <span id="L2" class="LineNr">  2 </span><span class="muComment">#</span>
diff --git a/html/apps/raytracing/color.mu.html b/html/apps/raytracing/color.mu.html
index edad7f47..ad8e4aa2 100644
--- a/html/apps/raytracing/color.mu.html
+++ b/html/apps/raytracing/color.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/raytracing/color.mu'>https://github.com/akkartik/mu/blob/master/apps/raytracing/color.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/raytracing/color.mu'>https://github.com/akkartik/mu/blob/main/apps/raytracing/color.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="PreProc">type</span> rgb <span class="Delimiter">{</span>
 <span id="L2" class="LineNr"> 2 </span>  <span class="muComment"># components normalized to within [0.0, 1.0]</span>
diff --git a/html/apps/raytracing/ray.mu.html b/html/apps/raytracing/ray.mu.html
index dbe00587..aa1a1064 100644
--- a/html/apps/raytracing/ray.mu.html
+++ b/html/apps/raytracing/ray.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/raytracing/ray.mu'>https://github.com/akkartik/mu/blob/master/apps/raytracing/ray.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/raytracing/ray.mu'>https://github.com/akkartik/mu/blob/main/apps/raytracing/ray.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="PreProc">type</span> ray <span class="Delimiter">{</span>
 <span id="L2" class="LineNr"> 2 </span>  orig: vec3  <span class="muComment"># point</span>
diff --git a/html/apps/raytracing/vec.mu.html b/html/apps/raytracing/vec.mu.html
index 36084516..e14fb498 100644
--- a/html/apps/raytracing/vec.mu.html
+++ b/html/apps/raytracing/vec.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/raytracing/vec.mu'>https://github.com/akkartik/mu/blob/master/apps/raytracing/vec.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/raytracing/vec.mu'>https://github.com/akkartik/mu/blob/main/apps/raytracing/vec.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="PreProc">type</span> vec3 <span class="Delimiter">{</span>
 <span id="L2" class="LineNr">  2 </span>  x: float
diff --git a/html/apps/rpn.mu.html b/html/apps/rpn.mu.html
index e28af2e0..b49a7801 100644
--- a/html/apps/rpn.mu.html
+++ b/html/apps/rpn.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/rpn.mu'>https://github.com/akkartik/mu/blob/master/apps/rpn.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/rpn.mu'>https://github.com/akkartik/mu/blob/main/apps/rpn.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="muComment"># Integer arithmetic using postfix notation</span>
 <span id="L2" class="LineNr">  2 </span><span class="muComment">#</span>
diff --git a/html/apps/sigils.subx.html b/html/apps/sigils.subx.html
index c9e95c39..9ee04d48 100644
--- a/html/apps/sigils.subx.html
+++ b/html/apps/sigils.subx.html
@@ -58,7 +58,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/sigils.subx'>https://github.com/akkartik/mu/blob/master/apps/sigils.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/sigils.subx'>https://github.com/akkartik/mu/blob/main/apps/sigils.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">   1 </span><span class="subxComment"># Syntax sugar for addressing modes that expand into /rm32 and other related</span>
 <span id="L2" class="LineNr">   2 </span><span class="subxComment"># arguments.</span>
diff --git a/html/apps/subx-params.subx.html b/html/apps/subx-params.subx.html
index 7af1f0a3..648a80a1 100644
--- a/html/apps/subx-params.subx.html
+++ b/html/apps/subx-params.subx.html
@@ -50,7 +50,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/subx-params.subx'>https://github.com/akkartik/mu/blob/master/apps/subx-params.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/subx-params.subx'>https://github.com/akkartik/mu/blob/main/apps/subx-params.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Various knobs for translating SubX programs using SubX.</span>
 <span id="L2" class="LineNr"> 2 </span>
diff --git a/html/apps/survey.subx.html b/html/apps/survey.subx.html
index 45e145b8..72513342 100644
--- a/html/apps/survey.subx.html
+++ b/html/apps/survey.subx.html
@@ -59,7 +59,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/survey.subx'>https://github.com/akkartik/mu/blob/master/apps/survey.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/survey.subx'>https://github.com/akkartik/mu/blob/main/apps/survey.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">   1 </span><span class="subxComment"># Assign addresses (co-ordinates) to instructions (landmarks) in a program</span>
 <span id="L2" class="LineNr">   2 </span><span class="subxComment"># (landscape).</span>
diff --git a/html/apps/tests.subx.html b/html/apps/tests.subx.html
index 46775f7e..b6786cbf 100644
--- a/html/apps/tests.subx.html
+++ b/html/apps/tests.subx.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/tests.subx'>https://github.com/akkartik/mu/blob/master/apps/tests.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/tests.subx'>https://github.com/akkartik/mu/blob/main/apps/tests.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Generate code for a new function called 'run-tests' which calls in sequence</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment"># all functions starting with 'test-'.</span>
diff --git a/html/apps/texture.mu.html b/html/apps/texture.mu.html
index 72f99d3b..56888ee6 100644
--- a/html/apps/texture.mu.html
+++ b/html/apps/texture.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/texture.mu'>https://github.com/akkartik/mu/blob/master/apps/texture.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/texture.mu'>https://github.com/akkartik/mu/blob/main/apps/texture.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># Playing with emitting cool textures.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="muComment">#</span>
diff --git a/html/apps/tile/box.mu.html b/html/apps/tile/box.mu.html
index 88d29001..bed85d6f 100644
--- a/html/apps/tile/box.mu.html
+++ b/html/apps/tile/box.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/tile/box.mu'>https://github.com/akkartik/mu/blob/master/apps/tile/box.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/tile/box.mu'>https://github.com/akkartik/mu/blob/main/apps/tile/box.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="PreProc">fn</span> <span class="muFunction"><a href='box.mu.html#L1'>draw-box</a></span> <a href='../../405screen.mu.html#L9'>screen</a>: (addr <a href='../../405screen.mu.html#L9'>screen</a>), row1: int, col1: int, row2: int, col2: int <span class="Delimiter">{</span>
 <span id="L2" class="LineNr">  2 </span>  <a href='box.mu.html#L26'>draw-horizontal-line</a> <a href='../../405screen.mu.html#L9'>screen</a>, row1, col1, col2
diff --git a/html/apps/tile/data.mu.html b/html/apps/tile/data.mu.html
index 0907d96e..46940746 100644
--- a/html/apps/tile/data.mu.html
+++ b/html/apps/tile/data.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/tile/data.mu'>https://github.com/akkartik/mu/blob/master/apps/tile/data.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/tile/data.mu'>https://github.com/akkartik/mu/blob/main/apps/tile/data.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="PreProc">type</span> <a href='data.mu.html#L1'>sandbox</a> <span class="Delimiter">{</span>
 <span id="L2" class="LineNr">  2 </span>  setup: (handle <a href='data.mu.html#L22'>line</a>)
diff --git a/html/apps/tile/environment.mu.html b/html/apps/tile/environment.mu.html
index bb4cec67..744501c3 100644
--- a/html/apps/tile/environment.mu.html
+++ b/html/apps/tile/environment.mu.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/tile/environment.mu'>https://github.com/akkartik/mu/blob/master/apps/tile/environment.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/tile/environment.mu'>https://github.com/akkartik/mu/blob/main/apps/tile/environment.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">   1 </span><span class="PreProc">type</span> <a href='environment.mu.html#L1'>environment</a> <span class="Delimiter">{</span>
 <span id="L2" class="LineNr">   2 </span>  <a href='../../405screen.mu.html#L9'>screen</a>: (handle <a href='../../405screen.mu.html#L9'>screen</a>)
diff --git a/html/apps/tile/float-stack.mu.html b/html/apps/tile/float-stack.mu.html
index 071b189c..d6d100b7 100644
--- a/html/apps/tile/float-stack.mu.html
+++ b/html/apps/tile/float-stack.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/tile/float-stack.mu'>https://github.com/akkartik/mu/blob/master/apps/tile/float-stack.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/tile/float-stack.mu'>https://github.com/akkartik/mu/blob/main/apps/tile/float-stack.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="PreProc">type</span> <a href='float-stack.mu.html#L1'>float-stack</a> <span class="Delimiter">{</span>
 <span id="L2" class="LineNr"> 2 </span>  data: (handle array float)
diff --git a/html/apps/tile/gap-buffer.mu.html b/html/apps/tile/gap-buffer.mu.html
index 29cdc22f..c7c9b7ce 100644
--- a/html/apps/tile/gap-buffer.mu.html
+++ b/html/apps/tile/gap-buffer.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/tile/gap-buffer.mu'>https://github.com/akkartik/mu/blob/master/apps/tile/gap-buffer.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/tile/gap-buffer.mu'>https://github.com/akkartik/mu/blob/main/apps/tile/gap-buffer.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="PreProc">type</span> <a href='gap-buffer.mu.html#L1'>gap-buffer</a> <span class="Delimiter">{</span>
 <span id="L2" class="LineNr">  2 </span>  left: <a href='grapheme-stack.mu.html#L1'>grapheme-stack</a>
diff --git a/html/apps/tile/grapheme-stack.mu.html b/html/apps/tile/grapheme-stack.mu.html
index fea2d996..0d08d5a0 100644
--- a/html/apps/tile/grapheme-stack.mu.html
+++ b/html/apps/tile/grapheme-stack.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/tile/grapheme-stack.mu'>https://github.com/akkartik/mu/blob/master/apps/tile/grapheme-stack.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/tile/grapheme-stack.mu'>https://github.com/akkartik/mu/blob/main/apps/tile/grapheme-stack.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="PreProc">type</span> <a href='grapheme-stack.mu.html#L1'>grapheme-stack</a> <span class="Delimiter">{</span>
 <span id="L2" class="LineNr">  2 </span>  data: (handle array grapheme)
diff --git a/html/apps/tile/int-stack.mu.html b/html/apps/tile/int-stack.mu.html
index d1210ea1..d006df2b 100644
--- a/html/apps/tile/int-stack.mu.html
+++ b/html/apps/tile/int-stack.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/tile/int-stack.mu'>https://github.com/akkartik/mu/blob/master/apps/tile/int-stack.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/tile/int-stack.mu'>https://github.com/akkartik/mu/blob/main/apps/tile/int-stack.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="PreProc">type</span> <a href='int-stack.mu.html#L1'>int-stack</a> <span class="Delimiter">{</span>
 <span id="L2" class="LineNr"> 2 </span>  data: (handle array int)
diff --git a/html/apps/tile/main.mu.html b/html/apps/tile/main.mu.html
index e1a6f9a9..a0552b51 100644
--- a/html/apps/tile/main.mu.html
+++ b/html/apps/tile/main.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/tile/main.mu'>https://github.com/akkartik/mu/blob/master/apps/tile/main.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/tile/main.mu'>https://github.com/akkartik/mu/blob/main/apps/tile/main.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="PreProc">fn</span> <span class="muFunction"><a href='main.mu.html#L1'>main</a></span> args-on-stack: (addr array addr array byte)<span class="PreProc"> -&gt; </span>_/<span class="Constant">ebx</span>: int <span class="Delimiter">{</span>
 <span id="L2" class="LineNr">  2 </span>  <span class="PreProc">var</span> args/<span class="Constant">eax</span>: (addr array addr array byte) <span class="SpecialChar">&lt;-</span> copy args-on-stack
diff --git a/html/apps/tile/rpn.mu.html b/html/apps/tile/rpn.mu.html
index 60f7625e..55564796 100644
--- a/html/apps/tile/rpn.mu.html
+++ b/html/apps/tile/rpn.mu.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/tile/rpn.mu'>https://github.com/akkartik/mu/blob/master/apps/tile/rpn.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/tile/rpn.mu'>https://github.com/akkartik/mu/blob/main/apps/tile/rpn.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="PreProc">fn</span> <span class="muFunction"><a href='rpn.mu.html#L1'>evaluate</a></span> functions: (addr handle <a href='data.mu.html#L14'>function</a>), bindings: (addr <a href='data.mu.html#L47'>table</a>), scratch: (addr <a href='data.mu.html#L22'>line</a>), end: (addr <a href='data.mu.html#L30'>word</a>), out: (addr <a href='value-stack.mu.html#L3'>value-stack</a>) <span class="Delimiter">{</span>
 <span id="L2" class="LineNr">  2 </span>  <span class="PreProc">var</span> <a href='data.mu.html#L22'>line</a>/<span class="Constant">eax</span>: (addr <a href='data.mu.html#L22'>line</a>) <span class="SpecialChar">&lt;-</span> copy scratch
diff --git a/html/apps/tile/surface.mu.html b/html/apps/tile/surface.mu.html
index 33ab2637..12f7127f 100644
--- a/html/apps/tile/surface.mu.html
+++ b/html/apps/tile/surface.mu.html
@@ -56,7 +56,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/tile/surface.mu'>https://github.com/akkartik/mu/blob/master/apps/tile/surface.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/tile/surface.mu'>https://github.com/akkartik/mu/blob/main/apps/tile/surface.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="muComment"># A surface is a large 2-D grid that you can only see a subset of through the</span>
 <span id="L2" class="LineNr">  2 </span><span class="muComment"># screen.</span>
diff --git a/html/apps/tile/table.mu.html b/html/apps/tile/table.mu.html
index 1f07d3b2..672fdd81 100644
--- a/html/apps/tile/table.mu.html
+++ b/html/apps/tile/table.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/tile/table.mu'>https://github.com/akkartik/mu/blob/master/apps/tile/table.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/tile/table.mu'>https://github.com/akkartik/mu/blob/main/apps/tile/table.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="PreProc">fn</span> <span class="muFunction"><a href='table.mu.html#L1'>initialize-table</a></span> _self: (addr <a href='data.mu.html#L47'>table</a>), n: int <span class="Delimiter">{</span>
 <span id="L2" class="LineNr">  2 </span>  <span class="PreProc">var</span> self/<span class="Constant">esi</span>: (addr <a href='data.mu.html#L47'>table</a>) <span class="SpecialChar">&lt;-</span> copy _self
diff --git a/html/apps/tile/value-stack.mu.html b/html/apps/tile/value-stack.mu.html
index dc118e7e..b1aeaed9 100644
--- a/html/apps/tile/value-stack.mu.html
+++ b/html/apps/tile/value-stack.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/tile/value-stack.mu'>https://github.com/akkartik/mu/blob/master/apps/tile/value-stack.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/tile/value-stack.mu'>https://github.com/akkartik/mu/blob/main/apps/tile/value-stack.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="muComment"># support for non-int values is untested</span>
 <span id="L2" class="LineNr">  2 </span>
diff --git a/html/apps/tile/value.mu.html b/html/apps/tile/value.mu.html
index 0606c756..51887537 100644
--- a/html/apps/tile/value.mu.html
+++ b/html/apps/tile/value.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/tile/value.mu'>https://github.com/akkartik/mu/blob/master/apps/tile/value.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/tile/value.mu'>https://github.com/akkartik/mu/blob/main/apps/tile/value.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="PreProc">fn</span> <span class="muFunction"><a href='value.mu.html#L1'>render-value-at</a></span> <a href='../../405screen.mu.html#L9'>screen</a>: (addr <a href='../../405screen.mu.html#L9'>screen</a>), row: int, col: int, _val: (addr <a href='data.mu.html#L37'>value</a>), max-width: int <span class="Delimiter">{</span>
 <span id="L2" class="LineNr">  2 </span>  <a href='../../405screen.mu.html#L109'>move-cursor</a> <a href='../../405screen.mu.html#L9'>screen</a>, row, col
diff --git a/html/apps/tile/word.mu.html b/html/apps/tile/word.mu.html
index ff4d9215..681865c4 100644
--- a/html/apps/tile/word.mu.html
+++ b/html/apps/tile/word.mu.html
@@ -55,7 +55,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/tile/word.mu'>https://github.com/akkartik/mu/blob/master/apps/tile/word.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/tile/word.mu'>https://github.com/akkartik/mu/blob/main/apps/tile/word.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="PreProc">fn</span> <span class="muFunction"><a href='word.mu.html#L1'>initialize-word</a></span> _self: (addr <a href='data.mu.html#L30'>word</a>) <span class="Delimiter">{</span>
 <span id="L2" class="LineNr">  2 </span>  <span class="PreProc">var</span> self/<span class="Constant">esi</span>: (addr <a href='data.mu.html#L30'>word</a>) <span class="SpecialChar">&lt;-</span> copy _self
diff --git a/html/apps/tui.mu.html b/html/apps/tui.mu.html
index 4d709b75..3771b143 100644
--- a/html/apps/tui.mu.html
+++ b/html/apps/tui.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/apps/tui.mu'>https://github.com/akkartik/mu/blob/master/apps/tui.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/apps/tui.mu'>https://github.com/akkartik/mu/blob/main/apps/tui.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># Test some primitives for text-mode.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="muComment">#</span>
diff --git a/html/baremetal/101screen.subx.html b/html/baremetal/101screen.subx.html
index 17222bc1..df52a5b8 100644
--- a/html/baremetal/101screen.subx.html
+++ b/html/baremetal/101screen.subx.html
@@ -52,7 +52,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/baremetal/101screen.subx'>https://github.com/akkartik/mu/blob/master/baremetal/101screen.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/baremetal/101screen.subx'>https://github.com/akkartik/mu/blob/main/baremetal/101screen.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Primitives for screen control.</span>
 <span id="L2" class="LineNr"> 2 </span>
diff --git a/html/baremetal/400.mu.html b/html/baremetal/400.mu.html
index a1149945..a2ee97a8 100644
--- a/html/baremetal/400.mu.html
+++ b/html/baremetal/400.mu.html
@@ -49,7 +49,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/baremetal/400.mu'>https://github.com/akkartik/mu/blob/master/baremetal/400.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/baremetal/400.mu'>https://github.com/akkartik/mu/blob/main/baremetal/400.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">1 </span><span class="PreProc">sig</span> <a href='101screen.subx.html#L3'>pixel</a> screen: (addr screen), x: int, y: int, color: int
 </pre>
diff --git a/html/baremetal/boot.hex.html b/html/baremetal/boot.hex.html
index 915bca0b..65cd7afe 100644
--- a/html/baremetal/boot.hex.html
+++ b/html/baremetal/boot.hex.html
@@ -50,7 +50,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/baremetal/boot.hex'>https://github.com/akkartik/mu/blob/master/baremetal/boot.hex</a>
+<a href='https://github.com/akkartik/mu/blob/main/baremetal/boot.hex'>https://github.com/akkartik/mu/blob/main/baremetal/boot.hex</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="subxComment"># Code for the first 2 disk sectors, that all programs in this directory need:</span>
 <span id="L2" class="LineNr">  2 </span><span class="subxComment">#   - load sectors past the first (using BIOS primitives) since only the first is available by default</span>
diff --git a/html/baremetal/boot0.hex.html b/html/baremetal/boot0.hex.html
index e6ada4e7..f619f115 100644
--- a/html/baremetal/boot0.hex.html
+++ b/html/baremetal/boot0.hex.html
@@ -50,7 +50,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/baremetal/boot0.hex'>https://github.com/akkartik/mu/blob/master/baremetal/boot0.hex</a>
+<a href='https://github.com/akkartik/mu/blob/main/baremetal/boot0.hex'>https://github.com/akkartik/mu/blob/main/baremetal/boot0.hex</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr">  1 </span><span class="Comment"># A minimal bootable image that:</span>
 <span id="L2" class="LineNr">  2 </span><span class="Comment">#   - loads more sectors past the first boot sector (using BIOS primitives)</span>
diff --git a/html/baremetal/ex1.hex.html b/html/baremetal/ex1.hex.html
index ff7fef1e..c3d5a530 100644
--- a/html/baremetal/ex1.hex.html
+++ b/html/baremetal/ex1.hex.html
@@ -49,7 +49,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/baremetal/ex1.hex'>https://github.com/akkartik/mu/blob/master/baremetal/ex1.hex</a>
+<a href='https://github.com/akkartik/mu/blob/main/baremetal/ex1.hex'>https://github.com/akkartik/mu/blob/main/baremetal/ex1.hex</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># The simplest possible program: just an infinite loop.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment"># All is well if your computer clears screen and hangs without restarting.</span>
diff --git a/html/baremetal/ex1.subx.html b/html/baremetal/ex1.subx.html
index c4bbcfec..e19160b8 100644
--- a/html/baremetal/ex1.subx.html
+++ b/html/baremetal/ex1.subx.html
@@ -50,7 +50,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/baremetal/ex1.subx'>https://github.com/akkartik/mu/blob/master/baremetal/ex1.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/baremetal/ex1.subx'>https://github.com/akkartik/mu/blob/main/baremetal/ex1.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># The simplest possible program: just an infinite loop.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment"># All is well if your computer clears screen and hangs without restarting.</span>
diff --git a/html/baremetal/ex2.hex.html b/html/baremetal/ex2.hex.html
index 1d9e1418..312aaf96 100644
--- a/html/baremetal/ex2.hex.html
+++ b/html/baremetal/ex2.hex.html
@@ -49,7 +49,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/baremetal/ex2.hex'>https://github.com/akkartik/mu/blob/master/baremetal/ex2.hex</a>
+<a href='https://github.com/akkartik/mu/blob/main/baremetal/ex2.hex'>https://github.com/akkartik/mu/blob/main/baremetal/ex2.hex</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Test out the video mode by filling in the screen with pixels.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/baremetal/ex2.mu.html b/html/baremetal/ex2.mu.html
index 0d902b4a..606d4f39 100644
--- a/html/baremetal/ex2.mu.html
+++ b/html/baremetal/ex2.mu.html
@@ -54,7 +54,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/baremetal/ex2.mu'>https://github.com/akkartik/mu/blob/master/baremetal/ex2.mu</a>
+<a href='https://github.com/akkartik/mu/blob/main/baremetal/ex2.mu'>https://github.com/akkartik/mu/blob/main/baremetal/ex2.mu</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="muComment"># Test out the video mode by filling in the screen with pixels.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="muComment">#</span>
diff --git a/html/baremetal/ex2.subx.html b/html/baremetal/ex2.subx.html
index 12c06aeb..e150cc4a 100644
--- a/html/baremetal/ex2.subx.html
+++ b/html/baremetal/ex2.subx.html
@@ -50,7 +50,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/baremetal/ex2.subx'>https://github.com/akkartik/mu/blob/master/baremetal/ex2.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/baremetal/ex2.subx'>https://github.com/akkartik/mu/blob/main/baremetal/ex2.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Test out the video mode by filling in the screen with pixels.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/baremetal/ex3.hex.html b/html/baremetal/ex3.hex.html
index 24d978d3..d2cf7595 100644
--- a/html/baremetal/ex3.hex.html
+++ b/html/baremetal/ex3.hex.html
@@ -49,7 +49,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/baremetal/ex3.hex'>https://github.com/akkartik/mu/blob/master/baremetal/ex3.hex</a>
+<a href='https://github.com/akkartik/mu/blob/main/baremetal/ex3.hex'>https://github.com/akkartik/mu/blob/main/baremetal/ex3.hex</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Draw pixels in response to keyboard events.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/baremetal/mu-init.subx.html b/html/baremetal/mu-init.subx.html
index 1c17c54f..59895590 100644
--- a/html/baremetal/mu-init.subx.html
+++ b/html/baremetal/mu-init.subx.html
@@ -50,7 +50,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/baremetal/mu-init.subx'>https://github.com/akkartik/mu/blob/master/baremetal/mu-init.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/baremetal/mu-init.subx'>https://github.com/akkartik/mu/blob/main/baremetal/mu-init.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Initialize the minimal runtime for Mu programs.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/mu-init-test.subx.html b/html/mu-init-test.subx.html
index bbfc78c0..182869fb 100644
--- a/html/mu-init-test.subx.html
+++ b/html/mu-init-test.subx.html
@@ -53,7 +53,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/mu-init-test.subx'>https://github.com/akkartik/mu/blob/master/mu-init-test.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/mu-init-test.subx'>https://github.com/akkartik/mu/blob/main/mu-init-test.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Just a test stub for mu-init.subx</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/mu-init.subx.html b/html/mu-init.subx.html
index bc78932c..8c27bb46 100644
--- a/html/mu-init.subx.html
+++ b/html/mu-init.subx.html
@@ -52,7 +52,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/mu-init.subx'>https://github.com/akkartik/mu/blob/master/mu-init.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/mu-init.subx'>https://github.com/akkartik/mu/blob/main/mu-init.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># Initialize the minimal runtime for Mu programs.</span>
 <span id="L2" class="LineNr"> 2 </span><span class="subxComment">#</span>
diff --git a/html/run_one_test.subx.html b/html/run_one_test.subx.html
index bfd463ea..ad577913 100644
--- a/html/run_one_test.subx.html
+++ b/html/run_one_test.subx.html
@@ -53,7 +53,7 @@ if ('onhashchange' in window) {
 </script>
 </head>
 <body onload='JumpToLine();'>
-<a href='https://github.com/akkartik/mu/blob/master/run_one_test.subx'>https://github.com/akkartik/mu/blob/master/run_one_test.subx</a>
+<a href='https://github.com/akkartik/mu/blob/main/run_one_test.subx'>https://github.com/akkartik/mu/blob/main/run_one_test.subx</a>
 <pre id='vimCodeElement'>
 <span id="L1" class="LineNr"> 1 </span><span class="subxComment"># run a single test</span>
 <span id="L2" class="LineNr"> 2 </span>
diff --git a/tools/update_html b/tools/update_html
index 763b929a..b75a6a9e 100755
--- a/tools/update_html
+++ b/tools/update_html
@@ -15,7 +15,7 @@ process() {
   mv html/$1.html.out html/$1.html
 }
 
-URL_BASE='https://github.com/akkartik/mu/blob/master'
+URL_BASE='https://github.com/akkartik/mu/blob/main'
 
 convert_html() {
   vim -c "set number" -c TOhtml -c write -c qall $1