diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2021-08-29 11:25:08 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2021-08-29 11:25:08 -0700 |
commit | bd226ccb3ad94e3196ac10a0e70734293a38e52c (patch) | |
tree | e4401db29430cae4b27afb918bed75ce05f54fe8 /translate_emulated | |
parent | efae02cf1120fa58a64affadbfc4966ad0835c4d (diff) | |
download | mu-bd226ccb3ad94e3196ac10a0e70734293a38e52c.tar.gz |
improve translation scripts
Diffstat (limited to 'translate_emulated')
-rwxr-xr-x | translate_emulated | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/translate_emulated b/translate_emulated index 1093c3ba..6d3b6681 100755 --- a/translate_emulated +++ b/translate_emulated @@ -7,6 +7,15 @@ set -e set -v +# Map of the Mu code disk +export DISK=20160 # 20*16*63 512-byte sectors = almost 10MB +dd if=/dev/zero of=code.img count=$DISK +# code: sectors 0-10079 +# debug: sector 10080 onwards +export DEBUG=10080 + +## Code + cat $* [0-9]*.mu |linux/bootstrap/bootstrap run linux/mu > a.subx cat boot.subx font.subx mu-init.subx [0-9]*.subx a.subx |linux/bootstrap/bootstrap run linux/braces > a.braces @@ -28,8 +37,6 @@ cat a.pack |linux/bootstrap/boots cat a.survey |linux/bootstrap/bootstrap run 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) @@ -44,8 +51,14 @@ then 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" a.bin` -ge $(($DEBUG*512)) ] +then + echo "a.bin will overwrite debug info on disk" + exit 1 +fi + +## Latter half of disk is for debug info + 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" @@ -57,3 +70,5 @@ then echo "abort will go into infinite regress" exit 1 fi + +dd if=labels of=code.img seek=$DEBUG conv=notrunc # keep this sync'd with abort.subx |