Skip to content
dos wants to be free

30 years later, FreeDOS is still keeping the dream of the command prompt alive

Project's creator talks to Ars about where FreeDOS has been, where it's going.

Andrew Cunningham
Preparing to install the floppy disk edition of FreeDOS 1.3 in a virtual machine. Credit: Andrew Cunningham
Preparing to install the floppy disk edition of FreeDOS 1.3 in a virtual machine. Credit: Andrew Cunningham

Two big things happened in the world of text-based disk operating systems in June 1994.

The first is that Microsoft released MS-DOS version 6.22, the last version of its long-running operating system that would be sold to consumers as a standalone product. MS-DOS would continue to evolve for a few years after this, but only as an increasingly invisible loading mechanism for Windows.

The second was that a developer named Jim Hall wrote a post announcing something called “PD-DOS.” Unhappy with Windows 3.x and unexcited by the project we would come to know as Windows 95, Hall wanted to break ground on a new “public domain” version of DOS that could keep the traditional command-line interface alive as most of the world left it behind for more user-friendly but resource-intensive graphical user interfaces.

PD-DOS would soon be renamed FreeDOS, and 30 years and many contributions later, it stands as the last MS-DOS-compatible operating system still under active development.

While it’s not really usable as a standalone modern operating system in the Internet age—among other things, DOS is not really innately aware of “the Internet” as a concept—FreeDOS still has an important place in today’s computing firmament. It’s there for people who need to run legacy applications on modern systems, whether it’s running inside of a virtual machine or directly on the hardware; it’s also the best way to get an actively maintained DOS offshoot running on legacy hardware going as far back as the original IBM PC and its Intel 8088 CPU.

To mark FreeDOS’ 20th anniversary in 2014, we talked with Hall and other FreeDOS maintainers about its continued relevance, the legacy of DOS, and the developers’ since-abandoned plans to add ambitious modern features like multitasking and built-in networking support (we also tried, earnestly but with mixed success, to do a modern day’s work using only FreeDOS). The world of MS-DOS-compatible operating systems moves slowly enough that most of this information is still relevant; FreeDOS was at version 1.1 back in 2014, and it’s on version 1.3 now.

For the 30th anniversary, we’ve checked in with Hall again about how the last decade or so has treated the FreeDOS project, why it’s still important, and how it continues to draw new users into the fold. We also talked, strange as it might seem, about what the future might hold for this inherently backward-looking operating system.

FreeDOS is still kicking, even as hardware evolves beyond it

Running AsEasyAs, a Lotus 1-2-3-compatible spreadsheet program, in FreeDOS. Credit: Jim Hall

If the last decade hasn't ushered in The Year of FreeDOS On The Desktop, Hall says that interest in and usage of the operating system has stayed fairly level since 2014. The difference is that, as time has gone on, more users are encountering FreeDOS as their first DOS-compatible operating system, not as an updated take on Microsoft and IBM's dusty old '80s- and '90s-era software.

"Compared to about 10 years ago, I’d say the interest level in FreeDOS is about the same," Hall told Ars in an email interview. "Our developer community has remained about the same over that time, I think. And judging by the emails that people send me to ask questions, or the new folks I see asking questions on our freedos-user or freedos-devel email lists, or the people talking about FreeDOS on the Facebook group and other forums, I’d say there are still about the same number of people who are participating in the FreeDOS community in some way."

"I get a lot of questions around September and October from people who ask, basically, 'I installed FreeDOS, but I don’t know how to use it. What do I do?' And I think these people learned about FreeDOS in a university computer science course and wanted to learn more about it—or maybe they are already working somewhere and they read an article about it, never heard of this “DOS” thing before, and wanted to try it out. Either way, I think more folks in the user community are learning about “DOS” at the same time they are learning about FreeDOS."

Though it's still being downloaded and used, shifts in PC hardware are making it more difficult to install and run FreeDOS directly on a new PC (called a “bare metal” install, to distinguish between an operating system installed directly on your PC and one that’s being run on top of another OS via some kind of emulator or virtual machine). And it's not just about the slowly rising wave of systems with Arm-based processors in them, chips whose language FreeDOS doesn't speak.

One issue is the UEFI firmware used to boot modern PCs. UEFI began replacing the traditional PC BIOS at the tail end of the 2000s, and today, it’s the default mechanism used for booting Windows, macOS, and Linux, though Windows and Linux both technically can still boot on non-UEFI systems.

For a long time, new computers with UEFI firmware still included some kind of legacy compatibility mode to support operating systems like FreeDOS that will only boot in BIOS mode. Many PCs still do, particularly home-built desktop PCs whose motherboards offer users lots of configuration options (your motherboard may refer to BIOS support as “CSM,” which stands for Compatibility Support Module). But plenty of new PCs will only boot using UEFI, and that’s a problem for running FreeDOS directly on the hardware.

Though the FreeDOS team had more ambitious plans once upon a time, the main reason FreeDOS exists is to run classic DOS programs and games, like Commander Keen. Credit: Jim Hall

"People have asked if it’s possible to rewrite or update the FreeDOS kernel to use UEFI instead of BIOS, and the answer is more complicated than just that," Hall told Ars. "Maybe it’s possible to replace those parts of the kernel that use BIOS, but a ton of DOS applications and games call BIOS directly. Remember, DOS isn’t like more modern operating systems that use a Hardware Abstraction Layer or HAL, where applications talk to the HAL and the HAL talks to the hardware. A DOS program typically interacted with the hardware directly."

In other words, you could write a version of FreeDOS that could boot on a UEFI system, and you might even be able to write a version that booted on an Arm system. But either change would break the vast majority of existing DOS applications, and running those old applications is the main reason why FreeDOS exists in the first place.

"That’s one reason why we recommend running FreeDOS in a virtual machine," said Hall. "The virtual machine provides the BIOS. Although, from a practical side, I think most people aren’t interested in trying to run FreeDOS on bare hardware on a new desktop or laptop, with a 16-core Intel Core Ultra CPU, 32GB memory, 512GB SSD, and Wi-Fi. If you’re going to run FreeDOS, you are probably looking for that 'retro' computing experience, so you’re more likely to install FreeDOS on an older PC anyway."

Weird retro PCs are a great way to experience FreeDOS

The Book 8088 is a deeply strange machine, but it makes some aspects of retrocomputing more accessible to modern audiences.
The Book 8088 is a deeply strange machine, but it makes some aspects of retrocomputing more accessible to modern audiences. Credit: Andrew Cunningham

On the topic of retro PCs, they've actually gotten a bit easier to find and use in the last couple of years. That's thanks in part to the rise of oddball AliExpress hardware like the Book 8088, Hand 386, and Pocket 386. Though they exist in an ethical gray area at best—the Book 8088 we used shipped with all kinds of old-but-still-copyrighted software on it, plus a BIOS swiped from the open-source community with no attribution—they're also easier to buy and make room for than an actual hoary old IBM PC or suitcase-sized Compaq Deskpro.

These portable systems use a mix of genuine vintage parts and newer replicas to replicate, mostly faithfully, the experience of using a retro PC. Modern screen and battery technology and solid-state storage make them a bit more pleasant to use than the genuine article, but it's still closer to the original experience than an emulator like 86Box running on a fully modern system.

Hall thinks these old systems are "great," and he has been running retro games and applications in FreeDOS running on a Pocket 386. With its 40 MHz 386SX processor and 8MB of RAM, this PC would have been considered a bit outmoded when FreeDOS came on the scene in the mid-'90s, but it's still representative of the kind of system you might have found slowly aging in any given computer lab, office, or family room at the time.

"The higher-end games like DOOM and Rise of the Triad run slowly, so you have to minimize the screen for those to work. Tomb Raider (demo) crashes during setup, and Shadow Warrior won’t run at all," Hall said. "But a lot of other classic DOS games run great there! Dark Forces runs a little slow but it is very playable. Duke Nukum (that’s the first game, and the correct spelling) and Commander Keen and Biomenace are all 2-D action games, and they are very smooth. Jill of the Jungle plays very well and fully supports the soundtrack through the on-board OPL-3 AdLib-compatible music card, although I noticed some video glitches in VGA mode so I switched to EGA, and that’s fine. Epic Pinball and Wolfenstein 3D also work very well and are a lot of fun to play."

Hall also sang the praises of the Pocket 386 as a retro word processor and spreadsheet machine; these kinds of DOS productivity apps run reasonably well even on an 8088, so a 386 delivers a much more pleasant experience.

Plenty of people will choose to run actual MS-DOS or IBM PC-DOS on these systems, and MS-DOS is what the manufacturer ships them with. But the benefit of FreeDOS' continuing development is that it can support a few modern amenities that make the retro-computing experience more pleasant.

"We provide a lot of extensions in 'user space,'" said Hall when asked about extending FreeDOS' capabilities. "The FreeDOS kernel has to be a pretty classic DOS kernel, but we can add pretty much anything we need as separate utilities and tools. So we provide extra archive programs like 7z and zip/unzip, and even gzip and tar. You have extra device drivers like a CD-ROM cache (cdrcache), DOS long file name support (doslfn or lfndos), and a cacheing driver for hard disks and SSDs on UDMA (uhdd). And, of course, a large collection of developer tools—including compilers, assemblers, debuggers, and editors—so you can create your own programs. And I didn’t even mention the games."

What could be coming to FreeDOS 1.4

Current versions of FreeDOS can't serve as loaders for Windows 3.x, as MS-DOS and PC-DOS can. The next version could change that.
Current versions of FreeDOS can't serve as loaders for Windows 3.x, as MS-DOS and PC-DOS can. The next version could change that. Credit: Andrew Cunningham

Since hitting 1.0 in September of 2006, the project has averaged about one major numbered update every four to six years. You can't do a ton to DOS without trying to make it into something that it isn't; upgrades tend to be gradual and narrowly focused. But work is definitely underway on a collection of updates that Hall says will most likely constitute a FreeDOS 1.4 update.

"Our distribution coordinator, Jerome Shidel, created a monthly test release that we use to test the latest versions of FreeDOS programs. And our plan is that one day, that test release will become the basis of the next distribution," Hall told Ars. "The test release currently has a lot of cool updates, most of which provide fixes to things, like the new fdisk that provides workarounds for the Book8088 BIOS bug, a new zoo archiver that has a fix for cluster sizes over 32 kB, and an updated edlin editor that has a quieter startup."

One other new feature that might make its way to a theoretical FreeDOS 1.4? Windows support.

Though FreeDOS maintains compatibility with the vast majority of classic DOS software, one thing that current versions can't do is serve as a bootloader for older versions of Windows like 3.1 or 3.11 for Workgroups—at least, it can't run those operating systems in their fully functional "386 Enhanced" modes. Though FreeDOS was started because Hall and others wanted to stay away from Windows, Hall says that support for those old Windows versions is a common user request.

"Maybe when that kernel is ready, we might spin off the test release to be the new “1.4” distribution," said Hall. "But that’s just my thought, I don’t want to get ahead of the community. We discuss everything on the freedos-devel email list, and that’s where we’ll make the decision."

Listing image: Andrew Cunningham

Photo of Andrew Cunningham
Andrew Cunningham Senior Technology Reporter
Andrew is a Senior Technology Reporter at Ars Technica, with a focus on consumer tech including computer hardware and in-depth reviews of operating systems like Windows and macOS. Andrew lives in Philadelphia and co-hosts a weekly book podcast called Overdue.
Most Read
  1. Listing image for first story in Most Read: Helene ravaged the NC plant that makes 60% of the country’s IV fluid supply
    1. Helene ravaged the NC plant that makes 60% of the country’s IV fluid supply
  2. 2. Apple couldn’t tell fake iPhones from real ones, lost $2.5M to scammers
  3. 3. X fails to avoid Australia child safety fine by arguing Twitter doesn’t exist
  4. 4. Neo-Nazis head to encrypted SimpleX Chat app, bail on Telegram
  5. 5. ULA’s second Vulcan rocket lost part of its booster and kept going