How FreeDOS Delivers Free and Open Source DOS-Compatible Operating System for the Modern Age

Summary: Back in the days, MS-DOS was the king of the computer operating systems before Windows came around. At the time, many programs, games, and embedded systems were made for MS-DOS operating system. Fast forward to today, MS-DOS has become an obsolete OS. But, due to many programs and games that were released for it, many people still needed to use this OS just to run their old software and games. This is where FreeDOS comes around. It provides the open-source version of MS-DOS that is capable of running various programs and games that were released for the MS-DOS operating system.

Whether you are still playing old classic DOS games or using old business programs that were only released on the MS-DOS operating system, it would be difficult for you to use such old and legacy software on the modern computers. Most of those programs won’t have compatibility with the modern Windows OS of today, which is Windows 10. This is why finding another way to make these old programs to run in the modern Windows operating system is preferable.

FreeDOS is an open-source program that is quickly becoming the MS-DOS of today’s modern age. Although it was started in 1994, many people didn’t know about this program until recently. When modern computers no longer support MS-DOS, the replacement of this old OS is needed to run various old and legacy software on the modern computers. FreeDOS becomes the first choice because it offers full compatibility for all MS-DOS programs and games, which make it easier for anyone to have access to their legacy programs and games without having to buy old hardware or do some tweaking.

The usage of FreeDOS is pretty simple and straightforward. You just need to install it on your current PC with the various installation options that are provided on the official website (http://www.freedos.org/). It is recommended to install FreeDOS on a virtual machine environment as to avoid it from disrupting your current Windows installation. To learn more about FreeDOS and what it can do, we have interviewed Jim Hall, Founder and Project Coordinator of The FreeDOS Project.

The Differences and Similarities Between FreeDOS and MS-DOS or DOS Family of Operating Systems

Jim Hall is the Founder and Project Coordinator of The FreeDOS Project

Since the creation of FreeDOS in 1994, the vision of Jim Hall was to create the open source version of the MS-DOS operating system. Thus, it is designed to be very similar with the MS-DOS operating system when it comes to features and functionality. The biggest difference is that FreeDOS is free and open source. It means that it is free to use, and the users can even see the source code and make changes to it, whereas MS-DOS is a commercial product with a proprietary license.

Not only designed to be similar to MS-DOS in function and features, it is also designed to be completely compatible with any MS-DOS programs and games. So, you can run your old programs and games using FreeDOS on the modern computer without much tweaking, and you would see the similar performance as if it was run under the original MS-DOS operating system. Also, Jim added other extra features not available in the original MS-DOS operating system, such as developer tools, archiving tools, networking, and more. Jim Hall explained about the differences and similarities between FreeDOS and MS-DOS in detail,

“I started FreeDOS in 1994 because I wanted to have a free / open source version of MS-DOS, so I could continue to run my favorite DOS programs and games. So, from the beginning, FreeDOS was designed to be very similar to MS-DOS.

For example, like any DOS, FreeDOS is 16-bit and runs one program at a time (it’s not multitasking). Like classic DOS, FreeDOS still requires an Intel CPU and a BIOS. And because of all that, pretty much any program or application or game that runs on MS-DOS will run on FreeDOS.

We have a component of FreeDOS called “Base” that reproduces the functionality of the original MS-DOS. You’ll find programs like APPEND and ATTRIB and DEBUG and all of your classic DOS commands there.

But we’ve also expanded FreeDOS to be much more than MS-DOS. We include lots of programs and functionality that didn’t exist in the original MS-DOS. FreeDOS includes archive tools (like Zip, cabextract, tar, and 7-Zip), developer tools (compilers, assemblers, and other programming languages like perl), editors, networking, and games.

We included a ton of extra utilities in FreeDOS 1.2. For example, people who use Linux will find FreeDOS 1.2 very familiar, with several Linux-like commands.

But the biggest difference is that FreeDOS is open source software. Anyone can download our source code to see how it works or make changes.

(About a year ago, Microsoft released the MS-DOS 1.25 and 2.0 source code on GitHub, which is a big deal. But these are very old versions of MS-DOS. As far as I know, Microsoft has not released the source code to MS-DOS 6.22, the last version when MS-DOS was a standalone product.)”

The Notable Usages and Applications of FreeDOS

As an open source operating system mimicking MS-DOS, FreeDOS is mainly used by people to run old MS-DOS games and software. Since some software that were available on MS-DOS might no longer run properly under the modern Windows OS, FreeDOS is being used to revive the old legacy software so that they can run on the modern PC.

Moreover, FreeDOS can be used to run the embedded systems that were originally designed for MS-DOS as well. As such, people can also create an embedded system using FreeDOS operating system. There are many usages of FreeDOS that many people find useful in today’s modern age, despite of its seemingly old and simple OS. Someone has even built a pinball machine using FreeDOS as its embedded operating system. Jim explained to us about the notable usages and applications of FreeDOS,

“I’ve seen people use FreeDOS in some pretty neat applications over the years.

I think the coolest was someone built a pinball machine using FreeDOS as the embedded operating system, to track score and run the board. I don’t know exactly how they used FreeDOS to do this, but I imagine you could do it by having all the targets, bumpers, or whatever generate keyboard events, and then you run a program on FreeDOS to read the keyboard. So maybe the drop targets generated A,S,D,F and the bumpers generated QWER.”

The Developer Community Around the FreeDOS Project

FreeDOS is an operating system that undergoes continuous development since the project was started in 1994. In the early 2000s, the developers for this operating system were numerous, but the number of people working on this project has been decreasing ever since. However, FreeDOS still has the core developers that work on this operating system on a regular basis. The founder, Jim Hall, communicates with these core developers regularly via the developer-only mailing list.

Aside from maintaining the regular communication with the developers, Jim also communicates regularly with the users of the FreeDOS operating system via the user mailing list. This way, it is easier for him to stay connected with both the developers and the users of this OS. Jim Hall explained to us about the development community around the FreeDOS project,

“I think we have a very welcoming developer community. I’ll admit the developer community is smaller now than we were in the early 2000’s, but we have a core group of developers who continue to work on FreeDOS.

We communicate mostly through an email list. The developers are on the freedos-devel list, but we also look for user discussion and questions on the freedos-user email list. Email lists have worked well for us, and I find it’s a good way to stay connected.”

The Typical Applications of FreeDOS Operating System

The FreeDOS operating system is mainly used for three purposes. First, it is used to play old DOS games that are no longer compatible with the modern PC. Second, it is used to run the old programs that can no longer be installed on a modern PC, especially if someone needs to extract the data from such old programs. And third, it is used to run embedded systems, which were common back in the days. In the past, many embedded systems used DOS as its main OS, whereas today, most embedded systems run Linux OS.

Another additional use for the FreeDOS operating system is that it can help people update the firmware for their computer BIOS, since most firmware updates are run on the MS-DOS operating system. However, it can only be used for older PC hardware that still uses MS-DOS for their BIOS, as modern PCs of today usually use the newer UEFI technology. Jim Hall explained to us in detail about the typical applications of the FreeDOS operating system,

“We ran a survey a few years ago to learn how people used FreeDOS, and most people used FreeDOS to do three things:

(1) Play classic DOS games.

A lot of the old DOS games are really fun to play! And truly fun games have a long shelf life. (Just because a game is old doesn’t mean it’s not fun to play!)

I sometimes like to play the classic Doom game. And last year, I bought a copy of the TIE Fighter DOS game so I could play it again. It’s very low resolution compared to more modern games, but TIE Fighter is probably my favorite DOS game.

(2) Run legacy programs.

I get email about this every few months. For example, a company suddenly needed to access the data from an old DOS application from the 1990s. Someone in the company’s IT department installed FreeDOS on a spare PC, installed the old DOS application, and exported the data.

That example is very similar to something I experienced first-hand. I served as campus CIO in higher ed for 5+ years. A faculty member came to us and asked if we could read some research data from some old floppies. The data on the floppies were written by an old program, and the researcher couldn’t read the data using other programs like Excel. We installed FreeDOS on one of our spare PCs, found a copy of the original DOS program, and ran that on FreeDOS. We were able to read the old floppies and write the data into text files that the researcher could use.

(3) Develop embedded systems.

We don’t see very many DOS embedded systems these days. I think most newer embedded systems are now running Linux. But sometimes we find someone who has DOS-based embedded systems, and FreeDOS can run on that too.

I think you could add a fourth example here: installing BIOS updates on your computer. The BIOS is the core of many PCs and is actually what the computer uses to boot an operating system like Windows. Some PC makers release the BIOS firmware updates in the form of a DOS program. But you need to run DOS to update the BIOS, so people use FreeDOS for that.

But these days, newer computers aren’t running BIOS, but UEFI, which doesn’t require a DOS program to install firmware updates.”

Bolitaire Game in FreeDOS

The Evolution of FreeDOS Throughout the Years

FreeDOS was started as a project that attempted to create a kind of clone to MS-DOS at the time. At the time, it was named the PD-DOS, which stands for Public Domain DOS, but Jim quickly renamed it to Free-DOS before the hyphen was finally removed. After gathering the developers to work on this project via the initial announcement on June 29, 1994, this operating system is slowly evolving into a better version of MS-DOS. It has features that MS-DOS doesn’t have, and it is always open for improvements.

Over the time, the developers for this project added various types of features and utilities to make FreeDOS even more useful and relevant to today’s modern computing needs. This is how this open source operating system is evolving throughout the years. Jim Hall explained about how FreeDOS has evolved after the initial announcement for this project in 1994,

“I first announced the project that would become FreeDOS in 1994.

I originally named the project “PD-DOS” for “Public Domain DOS” but we quickly renamed the project to “Free-DOS” when we realized we wanted to use the GNU General Public License, which was Free software, not Public Domain software. We later dropped the hyphen for “FreeDOS.”

Originally, I wanted FreeDOS to be a clone or workalike to the original MS-DOS. I didn’t have very lofty goals. I just wanted to have a free, open source version of DOS that we could call our own.

But as I and others started to build FreeDOS, we quickly started to create something that was even better than MS-DOS. The original MS-DOS had a feature called PRINT that managed your printing, usually to a dot-matrix printer. I looked around for an open source replacement for that and discovered an even more powerful utility. SPOOL was like PRINT, but better. Until then, when you printed something, you had to wait until the whole document finished printing before you could print something else. But SPOOL would run in the background, almost like multitasking. You could print something with SPOOL, and immediately get back to work. So now we had a feature in FreeDOS that was even better than MS-DOS.

After that, I started to think about how FreeDOS could be a better DOS than MS-DOS. That’s why we started to include such a variety of utilities, to make the FreeDOS command line more useful.

And from the start, we’ve included compilers and assemblers. This is an important part of an open source software project like FreeDOS. It’s much easier for people to contribute to FreeDOS if we include tools they can use to write new programs, add new features, or fix bugs.”

The Future Plans for FreeDOS Operating System

FreeDOS has been undergoing constant development throughout the years, and the future of this open-source OS is bright. In the near future, the developers of this project will release the version 1.3 of FreeDOS, providing various types of improvements that still follow the core concepts of this operating system. The focus for this update is the compatibility with the DOS programs. More support will be added to both old and new hardware to make it run better.

Foxcalc calculator

Also, the developers are working on the new DOS kernel for FreeDOS, which is still under development. When the new kernel is completed and finally integrated with the current source code, the FreeDOS 2.0 will be released. This new kernel will allow the addition of new features, such as 64-bit support, support for more drivers, multitasking capability, and much more. Concluding our interview, Jim Hall shared with us about his plans for the future of FreeDOS,

“We are already planning the next release of FreeDOS. It’s been delayed, but we’re still working on it.

We decided the next version of FreeDOS wouldn’t make any dramatic changes, so the next version is FreeDOS 1.3 instead of FreeDOS 2.0.

FreeDOS 1.3 retains the core assumptions that make FreeDOS a classic DOS:

Compatibility is key.

FreeDOS 1.3 will remain 16-bit.

FreeDOS 1.3 will retain focus on a single-user command-line environment.

FreeDOS 1.3 will continue to run on old PCs (XT, ‘286, ‘386, etc.) but will support new hardware with expanded driver support, where possible.

The “Base” package group will contain everything that replicates the functionality from MS-DOS.

As we plan FreeDOS 1.3, we are looking closely at the packages that we include. We have rearranged some packages into other groups, such as a separate group that has all the Linux-like programs.

We are also keeping an eye to what a future FreeDOS 2.0 might look like. For example, a group of enterprising developers are working on a new DOS kernel. This new kernel has some big goals such as 64-bit support, multitasking, and a more modern internal architecture. But writing a DOS kernel is not easy – and especially a DOS kernel like they are planning. So, it will be a while before we see a working version of this kernel. But when they get it working, that’s probably when we’ll make a FreeDOS 2.0.

Jim Hall

[email protected]

Founder, and Project Coordinator (equivalent to Executive Director)

The FreeDOS Project