dosllm / src /make_image.sh
HelloSun's picture
小貓中文 v1.0 by HelloSun (2026-10-25): author attribution + GPLv3 section 7(b) term, startup notice, modified-version mark
aa96610 verified
Raw History Blame Contribute Delete
1.47 kB
#!/bin/bash
# Assemble the 1.44 MB FreeDOS boot floppy (build/dosllm.img). Needs mtools.
set -euo pipefail
ROOT="$(cd "$(dirname "$0")/.." && pwd)"; D="${DEPS:-$ROOT/deps}"; OUT="$ROOT/build"; IMG="$OUT/dosllm.img"
cp "$D/fd14/144m/x86BOOT.img" "$IMG"
# Drop installer-only files to make room (about 1 MB stays free).
mdel -i "$IMG" ::/SETUP.BAT ::/FREEDOS/SETUP.BAT 2>/dev/null || true
mdeltree -i "$IMG" ::/FREEDOS/NLS ::/FREEDOS/CONFIGS 2>/dev/null || true
for f in FDISK.EXE FDISK.INI FORMAT.EXE SLICEREX.EXE SYS.COM FC.EXE FDAPM.COM COUNTRY.SYS FASTHELP.BAT SETLANG.BAT WELCOME.BAT; do mdel -i "$IMG" "::/FREEDOS/BIN/$f" 2>/dev/null || true; done
mdel -i "$IMG" ::/FREEDOS/BIN/V*.COM 2>/dev/null || true
for f in FDCONFIG.SYS FDAUTO.BAT MTCP.CFG; do sed 's/\r$//; s/$/\r/' "$ROOT/src/dos/$f" > "$OUT/$f"; mcopy -o -i "$IMG" "$OUT/$f" "::/$f"; done
mcopy -o -i "$IMG" "$D/ne2k/NE2000.COM" ::/NE2000.COM
mcopy -o -i "$IMG" "$D/mtcp-bin/dhcp.exe" ::/DHCP.EXE
mcopy -o -i "$IMG" "$OUT/G.EXE" ::/G.EXE
# XiaoMao Chinese (Big5 display + Zhuyin input): patched EXE + font/phrase data + HimemX (XMS) from third_party/
mcopy -o -i "$IMG" "$OUT/XIAOMAO.EXE" ::/XIAOMAO.EXE
for f in FONT.DAT IME.DAT HIMEMX.EXE; do mcopy -o -i "$IMG" "$ROOT/third_party/xiaomao/$f" "::/$f"; done
mcopy -o -i "$IMG" "$ROOT/third_party/xiaomao/AUTHOR.TXT" ::/AUTHOR.TXT # author + licence terms, readable in DOS (TYPE AUTHOR.TXT)
mdir -i "$IMG" :: | tail -12