This year marks the 23rd anniversary of the FreeDOS project. To help celebrate those many years and help raise awareness for the project, I connected with Jim Hall (FreeDOS founder and lead developer) and asked him a few questions. Here are his answers.
It’s FOSS: How did FreeDOS project get started? What was the inspiration behind it?
Jim Hall: I’d been a DOS user for many years. When I was growing up, we were fortunate to have a PC at home. That was where I first learned to use DOS. And not incidentally, I taught myself how to write programs in DOS, and created several personal utilities that extended the DOS command line and made it more useful to me.
Fast forward to the early 1990s, when I was an undergraduate physics student at the University of Wisconsin-River Falls. I considered myself a DOS power-user by that time. I loved using DOS for everything. I had discovered some shareware programs that made my life easier as a student: the As Easy As spreadsheet, the Telix terminal program, and the Galaxy Write word processor. I did all of my work in DOS. Sure, the campus had a PC computer lab with Microsoft Windows, but that was Windows 3.1. And if you remember Windows 3.1 at the time, it wasn’t great. I avoided Windows.
I’d also discovered Linux while at college. My first distribution was Softlanding Linux System (SLS) which I dual-booted on my computer with DOS. Linux did all the work of the “big Unix” systems in our campus computer lab, but there weren’t a lot of Linux applications yet. No word processor, no spreadsheet. And I needed those to do my work as a student. So I spent most of my time in DOS.
In 1994, I started to see a lot of articles claiming that Microsoft planned to finally “do away” with DOS with the next version of Windows. I wasn’t happy about that. I thought, “If Windows 3.2 or 4.0 is anything like Windows 3.1, I don’t want anything to do with it.”
Since I’d used Linux, it occurred to me that if developers could come together to create a free Unix system, surely we could do the same with a free DOS. After all, DOS is a much simpler operating system. I made an announcement in the comp.os.msdos.apps online discussion group, via Usenet, that I wanted to create a free version of DOS. People thought that was a good idea, so I did it.
It’s FOSS: Why would someone want to install FreeDOS?
Jim Hall: We posted a survey several years ago, and asked people why they use FreeDOS. We find there are three or four reasons people install FreeDOS today:
1. To play classic DOS games
Just because a game is old doesn’t mean it stopped being fun! There are a lot of great classic DOS games to play, even though the graphical resolution and polygon count doesn’t compare to modern games. For example, I still boot FreeDOS to play Commander Keen, or DOOM, or Dark Forces, or several other classic games. Sure, you can run these in something like DOSBox, but I like the experience of running these games in an actual DOS system. And FreeDOS makes it very easy to run games.
We also include several open source games in the FreeDOS 1.2 distribution. This was a conscious decision for the FreeDOS 1.2 release; we did not include games in previous official FreeDOS distributions. But since so many people use FreeDOS to play DOS games, we thought it was important to include some games of our own. We include games from different genres, so there should be something for everyone.
2. To run legacy DOS applications
People need to run legacy DOS applications from time to time, even today. And with FreeDOS, you can do that. I’ll sometimes boot FreeDOS just to run AsEasyAs, my favorite shareware spreadsheet program.
Others may run legacy DOS applications because they need to recover some old data, or maybe they need to run a report from a legacy business application. For example, I used to work at a university. One day, one of the faculty brought in some floppy disks. They had some old research data on the disks, but the data was in a proprietary file format from an old DOS program. Modern programs couldn’t read the files. So we installed FreeDOS on a spare PC, found the DOS program on a website somewhere, and used that to read and export the data into CSV files. That’s one real-world case where being able to run legacy DOS applications comes in handy.
Another example is ‘Game of Thrones’ author George R. R. Martin boots DOS to run the WordStar word processor, which he uses to write all of his books. And McLaren’s Special Operations workshop uses an old laptop running DOS to run diagnostics on the McLaren F1 car. I don’t know if either of these run FreeDOS specifically, but it’s interesting to see DOS systems still in use today.
3. To develop embedded systems
Most embedded systems have now moved to modern platforms like Linux, but some developers still support and update embedded systems that run on DOS. And FreeDOS can make it easy to run these embedded systems.
Years ago, a developer contacted me to say he had created a pinball machine that ran an embedded FreeDOS to track score and update the table’s back display. I thought this was a great application! I don’t know how he did it, but my guess is every bumper or target registered as a key on a keyboard bus, which was read by a DOS program. That was probably my favorite example of FreeDOS in an embedded system.
4. To update the BIOS on your computer
When you need to update the BIOS on your computer, manufacturers may provide a DOS application. Using DOS means the operating system has complete access to hardware, and another process won’t clobber the BIOS update program. So when folks need to update their computer’s BIOS, we often see them booting FreeDOS to run the update program.
It’s FOSS: What’s your background? What is your day to day job?
Jim Hall: My background is actually physics. That’s my undergraduate degree.
I also have a Master’s degree in Scientific and Technical Communication. My Master’s capstone topic was “Usability Themes in Open Source Software,” under Dr. Ann Duin.
At work, I’m a chief information officer in local government.
It’s FOSS: How did the project get its mascot?
Jim Hall: For a long time, FreeDOS didn’t have a mascot. I’d kind of wanted one. After all, GNU had the gnu, BSD had the daemon, and Linux had the penguin. I thought FreeDOS should have a mascot, too.
I didn’t know what mascot we should have, though. I liked lemurs at the time, so I’m sure I suggested that. I also thought a seal would make for a nice pairing with the Linux penguin; I imagined Tux and the FreeDOS seal sitting next to each other, enjoying a day on the ice. But someone had already created a SEAL graphical user interface for FreeDOS, and that had the obvious mascot.
So we didn’t have a mascot for a long time.
Eventually, a user submitted a fish for the FreeDOS logo; he said the fish represented freedom. I posted his fish logo as an “alternative” image, but didn’t push for a mascot.
A few years later, Bas Snabilie contacted me. Bas had created a new fish mascot for us. The new mascot was cartoony and really cute. I instantly liked him. The new FreeDOS fish didn’t have a name yet; that came later. We eventually named him Blinky because of his big eye.
It’s FOSS: The project has been around for 23 years. Why do you think it has had such staying power?
Jim Hall: I think one reason FreeDOS remains so popular is that we continue to evolve. We’ve made a decision as a project to keep FreeDOS as a “DOS” operating system, but that doesn’t mean FreeDOS needs to remain static. We try to keep FreeDOS fresh and modern – or as fresh and modern as DOS will allow. Our FreeDOS distribution comes packed with applications and other goodies. We have a network stack, and a web browser. We have games. We have compilers, assemblers, and other development tools.
All of that attracts a lot of folks who are interested in “retro computing” without having to abandon some of the modern conveniences.
We don’t imagine that FreeDOS will ever become a dominant desktop platform to topple Linux, Windows, or Mac, but it’s nice to have a modern DOS that people like to use.
It’s FOSS: In the past 23 years, have you ever gotten a reaction from Microsoft for keeping DOS alive?
Jim Hall: That would be cool, but no one has ever reached out to us officially.
It’s FOSS: You originally created the FreeDOS project because you heard that Microsoft was going to discontinue DOS. In some respects, DOS is still with us through the command line. Do you think there will ever be a time when the command line is fully removed from Windows?
Jim Hall: That’s hard to say. I don’t use Windows, except at work. From my perspective, it seems for the “general user,” Microsoft wants everything to be done via a graphical user interface. But for “power users,” they still provide a set of command line tools to uncover advanced functionality or to allow scripting and automation.
The tradeoffs between the command line and a graphical user interface are power, flexibility, and user-friendliness. The command line is good for some things, but a graphical user interface is better for some other things.
It’s FOSS: A couple of years ago, the Raspberry Pi appeared on the scene and got many people interested in basic computing and Internet of Things. Have you ever thought of porting FreeDOS to ARM to take advantage of the new interest?
Jim Hall: That question comes up a lot. Can we run FreeDOS on the ARM?
Technically, you could easily recompile most of the FreeDOS utilities for ARM. But FreeDOS kernel, like any DOS, is highly dependant on the Intel architecture. It also requires a BIOS. It would not be an easy task to get FreeDOS to run on the ARM. It’s not really something that interests us.
It’s FOSS: I was playing around with FreeDOS the other day and discovered that it has its own package manager (fdimples). Is that a new addition?
Jim Hall: The FreeDOS Installer (FDI) – My Package List Editor Software (FDIMPLES) is new in FreeDOS 1.2.
Some background on the new installer:
When we were planning the FreeDOS 1.2 distribution, Jerome Shidel contributed a new installer. The previous installer hadn’t really changed since I first wrote it for the FreeDOS Beta 1 distribution, long ago. We’d added a full screen mode and some other tidbits, but it was essentially the same installer.
Jerome offered to update the installer, and the FreeDOS Installer (FDI) in the new FreeDOS 1.2 distribution is a complete re-write. It’s based on a set of DOS batch powertools, called V8, which provide the different components for a “visual” interface. The new installer is just one smart DOS batch file. Impressive!
To help manage the programs you’ve installed as part of the FreeDOS 1.2 distribution, and to make it easier to install other extra components from FreeDOS 1.2, Jerome also created FDIMPLES. It does a great job to install and remove packages on your FreeDOS system. Jerome did an outstanding job here.
It’s FOSS: I also noticed that FreeDOS has 3 graphical user interfaces. Which is your favorite?
Jim Hall: Yes, we have OpenGEM, oZone, and SEAL. They each provide some neat features, but I think OpenGEM is my favorite. It’s plain to look at, but it’s very mature.
It’s FOSS: You originally released FreeDOS as public domain software, but later relicensed it as GPL. Why?
Jim Hall: When I first released my DOS programs, I didn’t understand the difference between “Free software” and “Public domain.” Many of the programs that we found on FTP sites were distributed in the public domain. So FreeDOS was actually named “PD-DOS” when we first launched the project in 1994.
But we soon realized that using a license such as the GNU General Public License was a much better idea. We didn’t want others to “steal” our work and re-release it as proprietary programs without the source code. If we released our programs under the public domain, someone could do that. So we looked to the GNU General Public License, and most of our programs were released under the GNU GPL after that. As a result, we quickly changed our name to “Free-DOS.” Much later, we dropped the hyphen and have been “FreeDOS” ever since.
It’s FOSS: FreeDOS is used by a number of big companies, such as Dell and HP. Do any of these companies contribute to the project, either with code or financially?
Jim Hall: No, none of these companies contribute to FreeDOS in any way, that I know of. It would be awesome if they did!
It’s FOSS: If someone wanted to contribute to the FreeDOS project, how would they go about doing it?
Jim Hall: Most of our discussion happens on the freedos-devel email list. Just go to our website and click on the “Email Lists” link in the orange navigation bar.
We welcome anyone who wants to contribute to FreeDOS! And we occasionally do see new people join the email list and contribute new things to FreeDOS.
It’s FOSS: What are you planning for the next release of FreeDOS?
Jim Hall: We released the FreeDOS 1.2 distribution in December 2016, so almost a year ago. We’ve definitely slowed down in our release cycles – FreeDOS isn’t chasing a moving target anymore, and we are already feature complete with the original MS-DOS, except for some compatibility with Windows 3.1.
We recently discussed the next version on the FreeDOS email list. What should the next version of FreeDOS look like? Should we make major changes, and release the next version as “FreeDOS 2.0”? Or do we want to make only incremental changes, and release the next version as “FreeDOS 1.3”?
Ultimately, we realized that FreeDOS must remain “DOS” so making major changes to FreeDOS doesn’t make sense. The next version wil be “FreeDOS 1.3”.
That’s not to say that we won’t make changes in FreeDOS 1.3. After all, we made some significant and visible changes when we went from FreeDOS 1.1 to FreeDOS 1.2. For example, FreeDOS 1.2 has a completely new install program which is much easier to use and greatly simplifies the install process. So “FreeDOS 1.3” could include some larger changes – but at its core, FreeDOS will remain the same.
However, we don’t have a target date for that release. As I said, FreeDOS isn’t chasing a moving target. We don’t need to be in a hurry.
I would like to thank Jim for taking the time to reply to my many questions. For more information about the history of FreeDOS, check out the ebook “23 Years of FreeDOS”.
Have you ever played around with FreeDOS? What is your favorite use of FreeDOS?
If you found this article interesting, please take a minute to share it on social media.