<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rs-dos/seed, branch qemu</title>
<subtitle>Simple, kernel-only, 64bit OS, early stage.
</subtitle>
<id>https://git.2137697.xyz/rs-dos/atom?h=qemu</id>
<link rel='self' href='https://git.2137697.xyz/rs-dos/atom?h=qemu'/>
<link rel='alternate' type='text/html' href='https://git.2137697.xyz/rs-dos/'/>
<updated>2026-07-31T23:56:12Z</updated>
<entry>
<title>scripts: automate the data-disk workflow (mkdisk / sendkeys / test-disk)</title>
<updated>2026-07-31T23:56:12Z</updated>
<author>
<name>salmonik</name>
<email>salmonik@tuta.io</email>
</author>
<published>2026-07-31T23:56:12Z</published>
<link rel='alternate' type='text/html' href='https://git.2137697.xyz/rs-dos/commit/?id=4ea992c71dd0cdcffe0f74216e748256bd700a31'/>
<id>urn:sha1:4ea992c71dd0cdcffe0f74216e748256bd700a31</id>
<content type='text'>
- scripts/mkdisk.sh: create the FAT32 disk with mkfs.fat -C (the flag
  that actually creates the file — plain mkfs.fat fails on a missing
  path), accept M/G/K sizes, seed seed/ files via mtools; --fresh
  re-formats, --no-seed skips seeding
- scripts/sendkeys.py: type lines into the guest via the QEMU monitor
  (US layout).  Punctuation must use QEMU's named keys (minus, slash,
  dot, ...) — bare '-', '.', '/' are not valid sendkey names, and '-'
  is the modifier separator, so they were silently dropped before
- scripts/test-disk.sh: full automated round trip — build, deploy,
  ensure image, boot headless QEMU, drive the shell (ls /disk, mkdir,
  echo &gt;, cat, poweroff), then verify with fsck.fat (must be clean)
  and mtype (file content must have survived poweroff)
- Makefile: make disk / disk-fresh / inspect / test-disk; run, run-gui
  and debug now auto-create a missing DISK_IMG; fix the stale comment
  (mkfs.fat without -C)
- scripts/boot.sh: auto-create a missing DISK_IMG via mkdisk.sh
- seed/: motd.txt + lines.txt seeded onto fresh images
- Verified end to end: ./scripts/test-disk.sh --fresh passes
</content>
</entry>
</feed>
