SDL Now Supports DOS

Why SDL for DOS?

  • Many see it as fun and “because we can,” fitting the spirit of hobbyist hacking rather than “serious” use.
  • Others highlight that DOS (and FreeDOS) is still used in industrial control and legacy systems where “if it ain’t broke, don’t fix it” dominates.
  • Some argue older systems are conceptually simpler and more fully understandable by one person, which is attractive for learning and tinkering.
  • A project goal mentioned: getting modern engines (e.g., Diablo via DevilutionX, OHRRPGCE) running “on anything,” including DOS.

Technical/Platform Details

  • Implementation uses DJGPP and DPMI, so it’s 32‑bit protected mode, not “old-school” segmented real-mode DOS.
  • Requirements claimed: i386+ with VGA and 4MB RAM, comparable to Doom-era hardware; a K6-2 test machine reportedly runs Quake via SDL at ~45 fps in 640×480.
  • Input support includes gameport joysticks via BIOS with auto-calibration, contrasted with painful manual joystick calibration in classic DOS games.
  • Discussion notes that DOS as a target combines with browser DOSBox for easy, portable deployment of mid‑90s‑era games.

Bare-Metal / Pre‑OS Game Ideas

  • Multiple comments imagine SDL-style games running in pre‑OS environments: BIOS, UEFI, “SDL for bare metal.”
  • UEFI is compared (contentiously) to a “modern DOS”: simple shell, crude drivers, program loader model.
  • Limitations raised: lack of standardized sound in UEFI, no vsync indication in graphics protocol, messy Bluetooth/USB audio; several argue it’s easier to just boot a minimal Linux and run the game as PID 1.
  • Historical parallels: Amiga and PC “booter” games that boot directly into a game without a general-purpose OS.

Ecosystem, Maintenance, and Obscure Targets

  • Some are surprised upstream accepted DOS support, expecting maintenance-cost objections.
  • Others note that obscure ports often survive thanks to one dedicated maintainer and that SDL already spans many platforms.

FreeDOS and Policy Oddities

  • In some countries, laws requiring a bundled OS lead vendors to ship FreeDOS as the cheapest option.
  • Vendors sometimes layer FreeDOS inside Linux/QEMU when hardware isn’t DOS‑compatible.