about summary refs log tree commit diff stats
path: root/translate_subx
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2021-08-29 09:32:40 -0700
committerKartik K. Agaram <vc@akkartik.com>2021-08-29 11:21:09 -0700
commit899cdcc3f3da2be04801ab79b53ec2264e8b1e4c (patch)
treebef3db0e929e0674ff088cfac228f52e640d658f /translate_subx
parentc5f8415e0327124a7a9fed12b524390ddf417f83 (diff)
downloadmu-899cdcc3f3da2be04801ab79b53ec2264e8b1e4c.tar.gz
inline SubX translation
We can't really translate purely SubX code anyway at the top-level. Stop
exposing those scripts.
Diffstat (limited to 'translate_subx')
-rwxr-xr-xtranslate_subx62
1 files changed, 0 insertions, 62 deletions
diff --git a/translate_subx b/translate_subx
deleted file mode 100755
index 6a902a42..00000000
--- a/translate_subx
+++ /dev/null
@@ -1,62 +0,0 @@
-#!/bin/sh
-# Translate SubX files to a bootable disk image.
-#
-# A couple of gotchas:
-# * Many phases here have no error-checking. Perhaps I should use a
-#   version of translate_subx_debug for baremetal.
-# * Don't pass in numbered .subx files without translated .mu files. Our test
-#   harness is in test.mu, and only Mu programs can run tests in baremetal.
-#
-# The top level is in general not as rigorous about avoiding dependency cycles
-# as the lower-level tools in linux/
-
-set -e
-
-cat $*          |linux/braces                                   > a.braces
-
-cat a.braces    |linux/calls                                    > a.calls
-
-cat a.calls     |linux/sigils                                   > a.sigils
-
-cat a.sigils    |linux/tests                                    > a.tests
-
-# no assort since baremetal SubX doesn't have segments yet
-
-cat a.tests     |linux/dquotes                                  > a.dquotes
-
-cat a.dquotes   |linux/pack                                     > a.pack
-
-cat a.pack      |linux/survey_baremetal   > labels
-cat a.pack      |linux/labels_baremetal     labels              > a.survey
-
-cat a.survey    |linux/hex                                      > a.bin
-
-# Create code.img containing a.bin
-dd if=/dev/zero of=code.img count=20160  # 20*16*63 512-byte sectors = almost 10MB
-dd if=a.bin of=code.img conv=notrunc
-
-if [ `stat --printf="%s" a.bin` -ge 492544 ]  # 15 tracks * 63 sectors per track * 512 bytes per sector (keep this sync'd with boot.subx)
-then
-  echo "a.bin won't all be loaded on boot"
-  exit 1
-fi
-
-if [ `stat --printf="%s" a.bin` -ge 492544 ]  # 15 tracks * 63 sectors per track * 512 bytes per sector
-then
-  echo "a.bin will overwrite BIOS/Video memory; you'll need to adjust boot.subx to load code to some other non-contiguous area of memory"
-  exit 1
-fi
-
-# Latter half of disk is for debug info.
-dd if=labels of=code.img seek=10080 conv=notrunc  # keep this sync'd with abort.subx
-if [ `stat --printf="%s" labels` -ge 1048576 ]  # 8 reads * 256 sectors * 512 bytes per sector
-then
-  echo "labels won't all be loaded on abort"
-  exit 1
-fi
-
-if [ `wc -l < labels` -gt 20480 ]  # 0x5000 stream capacity in abort.subx
-then
-  echo "abort will go into infinite regress"
-  exit 1
-fi