FATFudge update
📅 2026-01-15 · ✍️ Bas v.d. Wiel · 🏷 update
Supporting DOS 3.xx turns out to be something of a challenge due to a lack of authoritative documentation. There simply is no documentation that describes, accurately, how different versions of DOS lay out hard disk structures for the many different types of hardware available at the time. This is a problem for a project that aims for accuracy. So FATFudge was born.
FATFudge is turning into a developer tool that mass-generates hard disk images and runs actual historical DOS versions to partition and format them. This leans heavily on third-party tools like Qemu to emulate a 386 PC, SQLite for database management and some Rust glue to pull relevant metadata from the generated disk images.
Yes, this is brute-forcing a problem that should have been documented by our elders in the 1980’s. To be clear, FATFudge does the following:
- Generate hard disk images for every size conceivable for a particular version of DOS.
- Stick the disk image into Qemu and boot DOS from a boot floppy.
- The boot floppy runs a script that partitions and formats the hard disk, then shuts down.
- FATFudge pulls disk layout characteristics from the newly formatted hard disk and stores those into the SQLite database.
- Rinse, repeat..
…and this is then done for tens of thousands of disk images. The result will be a database that can be used to look up exactly how a version of DOS partitions a particular hard disk type. Getting all the tools to play nicely together is something of a chore, but rest assured: work on DOSContainer has not stalled.