The FreeDOS Project has had several logos. Do you know them all?
Our first logo was created by then-webmaster M. "Hannibal" Toal, when he created our first website in November 1996. Until then, we didn't have a website, only an ftp site on Ibiblio, then called SunSITE. Hannibal created the logo using Windows Paint, so it's no surprise that it uses simple colors and standard Windows fonts: Impact and Times New Roman.
Several years later, we decided the original "oval logo" was starting to look dated. Several FreeDOS users attempted new logos for us, but we liked Ben Rouner's logo best. His logo was a sleek, modern spin that was better suited to the banner on a website. We adopted this "blue stamped logo" in August or September 2001, accompanied by a website redesign with blue highlight colors and a white background.
This logo remained popular for several years. It was around this time that some started to wonder if FreeDOS should adopt an official mascot. After all, Linux had the penguin, BSD had the daemon, so maybe FreeDOS should have a mascot too. One user had created a kind of FreeDOS mascot as a kind of blue ball thing with the oval logo printed on it, but that was never made official. I thought we might adopt a seal for our official mascot. I imagined the Linux penguin sitting next to the FreeDOS seal. But one contributor suggested a fish, and another user created a simple web logo in the outline of a fish, suggesting the fish was a symbol of freedom.
Then digital artist Bas Snabilie wrote to me with his take on a FreeDOS fish. His fish was adorable, and more cartoony than the other mascot suggestions. Bas also created a version of the FreeDOS fish that incorporated new logo text, including an alternate "boxed wordmark logo" that replaced the "O" in FreeDOS with the new FreeDOS fish. We adopted this new FreeDOS mascot, and the new logo, in February or March 2004.
In case you're curious, the FreeDOS fish didn't have a name for quite a while. We later dubbed him "Blinky" because of his googly eye. The name stuck.
Later, Rikard Lang slightly modified the FreeDOS fish that turned Blinky purple, with a shiny spot on his head. While this "glossy fish logo" was never used on the FreeDOS website and thus never became an official logo, we have adopted it for use on certain social media sites.
We've continued to incorporate the FreeDOS fish in the FreeDOS logo. On January 1, 2010, we refreshed the FreeDOS website with a new look, including a slightly updated logo. The new "white wordmark logo" used the same FreeDOS fish from our boxed wordmark logo, with the text in white with a black drop-shadow.
We think the FreeDOS logo looks pretty neat. I admit I sometimes consider updating the logo, but I just can't think of a better arrangement than the FreeDOS fish incorporated into our wordmark. It seems Blinky the FreeDOS fish has become inseparable from our logo. Maybe that will change someday, but not soon.
Over time, the only updates we've made have been to convert the FreeDOS logos to scalable vector graphics, or SVG. The original oval logo was GIF, the stamped logo was Photoshop converted to PNG, the FreeDOS fish logo was JPG, and the white wordmark logo was PNG. While these raster images work well to represent an image, we have made them smaller and more scalable by adapting them to vector graphics. Many thanks to FreeDOS developer Mateusz Viste for converting many of our logos to SVG.
If you want to see the gallery of the FreeDOS fish mascot and official FreeDOS logos in SVG format, visit our FreeDOS Images page.
FreeDOS as banner ads
When the Web was young, it was common for projects like ours to create and share images that you could use on your own personal websites, to help advertise and raise awareness. For the FreeDOS Project, the idea of a "banner ad" started when a user sent us his web banner image, and we shared it on the website for anyone who wanted to use it:
To support the concept of shareable FreeDOS banner ads, I created several more banner images, in different styles, that people could download and use for themselves. I originally created in GIMP, in GIF format, then later converted to JPG. But JPG is lossy, so eventually I recreated these banner ad images in PNG format:
The idea of FreeDOS "banner ads" caught on, and others created their own to share. We collected them on our website. The first contributions used the FreeDOS "oval logo" created by our first webmaster, M. "Hannibal" Toal:
Not every FreeDOS banner image used the FreeDOS logo. Some created their own variation on the logo, or just used simple text with a neat font, like these:
Others were less direct with the "FreeDOS" name. It wasn't always very clear that these were FreeDOS banner ads, but they worked well:
We tried to stick with a standard banner ad size, about 486×60, to make it easier to incorporate these images on your own websites. But a few contributors used different sizes, with a slightly taller, more rectangular banner ad:
In August or September 2001, Ben Rouner created a new "blue stamped logo" for the FreeDOS Project. At the same time, Ben contributed two banner ad images:
Not all banner ads were graphics files, like the above. One creative designer created a Flash animation that looped through two images, with a green "wavefront" emanating from the FreeDOS logo to reveal the FreeDOS website address and the tagline "Microsoft DOS Killer." We captured this Flash animation as two images, suitable for FreeDOS banner ads:
Around this time, we started to wonder if FreeDOS should adopt a mascot. If Linux had Tux the Penguin, and BSD Unix had Beastie the Daemon, should FreeDOS have a mascot? And if so, what should it be? I wanted a seal, which I thought would look cute next to Tux (a seal and a penguin, get it?) Then Mike Green submitted a FreeDOS logo in the shape of a fish. He stated the fish was a symbol of freedom. He contributed three banner ads that used his proposed fish logo:
The fish idea was neat, and it sort of caught on. But it wasn't until digital artist Bas Snabilie created his own cartoony version of a FreeDOS fish. His fish was adorable, and we soon adopted this new FreeDOS mascot, and the new logo, in February or March 2004. We named him "Blinky" because of his one googly eye. You can see Blinky as part of our FreeDOS wordmark, on our website and at the top of this blog.
Unfortunately, we don't seem to have any FreeDOS banner ad images that use Blinky. By 2003 or 2004, the whole "banner ad" thing had pretty much run its course. No one wanted to have banner ads on web pages anymore. So we archived the FreeDOS banner ad images, never to be used again.
FreeDOS blog challenge
You may have noticed that I've started to write about interesting moments in FreeDOS history, starting with a brief history of the FreeDOS logo and then a history of FreeDOS as banner ads. Check back over the next few weeks for more. I'm also planning a similar article about a visual history of FreeDOS button icons, and various contributed images.
I'm writing about FreeDOS history because later this month, FreeDOS will turn twenty three years old.
You probably know the history already: like many others, I was a big fan of DOS in the 1980s and early 1990s. So I was a little upset when Microsoft announced in 1994 that Windows would replace DOS. If you remember Windows 3.1, this was a not a great prospect. So I took to the comp.os.msdos.apps group on USENET to discuss creating our own version of DOS. Others liked the idea, so on June 29, 1994, I announced what would become the FreeDOS Project.
And since June will mark twenty three years of FreeDOS, I would like to do something special: I'd like to see everyone write about how they first started using FreeDOS.
So I'm announcing the FreeDOS blog challenge! If you use FreeDOS, for anything, please write about it! Maybe you use FreeDOS to play classic DOS games. Or maybe you boot FreeDOS for the classic DOS experience. Or you might be one of the many people who have contributed to FreeDOS programs in some way. Or you could have used FreeDOS to rescue an old system.
However you use FreeDOS, I'm asking you to write a blog post about it. Post an article on your own blog by June 28. Email me or drop a comment here to let me know where to find your blog article, and I'll include it in a special blog post on June 29.
If you don't have your own blog, that's okay! I would be happy to post it for you as a "guest post." You can email me your article as either plain text or OpenDocument Text (such as LibreOffice or OpenOffice format).
Don't worry about length. Maybe your story is short—that's okay! If you have a lot to say about FreeDOS, that's great too! If you're looking for a word-count target, maybe shoot for 600–800 words. But longer is okay too. (For reference, my story about the origins of FreeDOS is 645 words.)
I ask that you contribute your story under the Creative Commons Attribution 4.0 license (CC-BY). This can be a simple statement (at the end) that says "This blog post is shared under the Creative Commons Attribution 4.0 International license (CC BY 4.0)."
Little FreeDOS buttons
I recently shared a brief history of the FreeDOS logo, and a look back at some FreeDOS banner ads. I'd like to continue that with a few of our FreeDOS web buttons. I don't have the original dates for all of these, but I will do the best I can to put them in order.
On many free and open source software project websites, you might see a "hosted by" web button, linking back to the hosting service that provided the free or discounted website hosting. The FreeDOS Project website is independently hosted, but we have some components hosted on SourceForge, so we have a small "SourceForge" button in our website's footer.
But once upon a time, it was also a popular idea to put a project "button" on a website, to show support for your favorite open source software project. And we used to have quite a few of these for FreeDOS.
As you might guess, our first "FreeDOS buttons" were fairly simple. Contributed by different members of the FreeDOS community, you could put these web buttons on your website so people could more easily discover FreeDOS. They differed in design and size. There really wasn't a standard size for web buttons, so people used whatever seemed reasonable:
I liked the "Powered by FreeDOS" button, even though the website wasn't really run on a DOS web server. (Although, did you know there really is a web server that runs on FreeDOS? There's SIOUX, but before that was FISH - the FreeDOS Internet Services Host.) At the time, it was common to see "Powered by" buttons on websites, such as "Powered by Linux" or "Powered by RedHat." Devoted fans of the Emacs and Vi editors also used "Powered by Emacs" and "Powered by Vi" web buttons.
So I liked "Powered by FreeDOS" because it showed equal fandom for FreeDOS. I've since lost the name of the person who contributed that web button—so if you're reading this, know that your "Powered by FreeDOS" button was probably my favorite!
Inspired by the above, I created a new FreeDOS web button that people could use to link to the latest FreeDOS release. We also used these on the FreeDOS website to link to the current FreeDOS distribution. I released this in two sizes:
The idea of web buttons sort of caught on, although slowly. People sent in a few other web buttons, including one inspired by MacOSX. My best estimate is these images were contributed around 2001:
In August or September 2001, Ben Rouner created a new "blue stamped logo" for the FreeDOS Project. At the same time, Ben contributed two FreeDOS web button images:
In late 2003 and early 2004, we discussed the idea of adopting a mascot for the FreeDOS Project. The fish mascot became popular, probably because it would pair well with Linux's penguin mascot. In February or March 2004, we adopted the new FreeDOS fish mascot, later dubbed "Blinky" because of his googly eye. People responded with new web buttons that used the new mascot:
Around this time, I decided to update the FreeDOS website to use the new mascot, complete with a new logo. I also updated our button images that linked to our online store, where you could buy t-shirts, mugs, and other cool stuff with the FreeDOS logo. (We've since moved the FreeDOS Store to Zazzle.) The updated buttons used the new mascot:
But that was kind of the end of our web buttons. We eventually updated the website design, and did away with these web buttons. Our new website uses icons to link to social media, our online store, and our blog. Most of these new icons are vector graphics, which are smaller and faster to load. And our links to download FreeDOS have been replaced by an easy-to-find text link on the website, pointing you to Download FreeDOS 1.2.
As a result, the FreeDOS web buttons have fallen into disuse. They remain an interesting part of our FreeDOS history.
Write your FreeDOS story!
This year, FreeDOS will turn 23 years old on June 29. There's nothing special about "23," but I thought it would great to celebrate this year's anniversary by having a bunch of us share stories about why we use FreeDOS. So last week, I started a FreeDOS Blog Challenge, asking you to write your FreeDOS story.
Basically, I'm asking you to write a blog post about FreeDOS. You can write your story from different perspectives, such as: How did you discover FreeDOS? What do you use FreeDOS for? How do you contribute to FreeDOS? In short, answer the question: "Why FreeDOS?" You can make your blog post as long or short as you like.
If you have a blog or a website, post your story by June 28, and let me know where to find it. I'll link to everyone's stories on June 29 for our anniversary.
If you don't have a blog, you can email me your story (jhall@freedos…) and I'll put it up as a "guest post" on the FreeDOS blog.
I'll certainly plan to make an archive copy of everything on the FreeDOS website. And if we get enough contributions, I would like to collect them into a free ebook.
Guest post: How I started with FreeDOS
Longtime FreeDOS contributor Fritz Mueller responded to this month's Blog Challenge and sent his FreeDOS story. Fritz doesn't have a blog of his own, so I have shared it below with his permission as a guest post:
In the year 1999, computer parts were rather expensive, so we had computer flea markets in my and in other neighboring cities. So it was on a Sunday that I drove to a city about 50 miles away. One of the traders was selling CDs with the "FreeDOS OS" on it. As the price was only a few German Deutsche Marks, I bought a copy. Later, I learned that FreeDOS was free software.
At home, I tested FreeDOS and noticed that there was only a bootdisk on it, but most other necessary programs were on it.
I googled for FreeDOS and found the website and downloaded extra tools. Well, it was not as stable as MS-DOS, but it worked fine on many systems and as it was much smaller than MS-DOS. I could run the OS and the backup tool I used at that time from one disk. This made work much easier!
At work, I developed a Windows98 DOS Boot CD with a lot of programs on it which could be started by a simple batch menu. I used this to run different backup tools, virus checkers, hard drive wipeout tools etc.
As parts of this software were not open source or freeware, I developed a bootable FreeDOS CD with 135 free games on it. This worked well, but you had to save game results on a diskette so that you could continue the game later. The CD is still available on my website, but since the introduction of SATA and more modern BIOSes, it is out of date. But with the correct settings, it should still work.
Later, I tried to run the same games in virtual machines, but this was never finished. Maybe some day in the future. A first beta is also available on my website, but a lot of batch files are waiting for changes.
What I find really interesting is Luca's mention of a fax system he set up using FreeDOS, which ran for six years without problems before they finally stopped using it. That's cool! Thanks Luca!
All FreeDOS distributions
They say that for any open source software project to get traction at the beginning, it needs to release early and release often. And that's just what we did when we started the FreeDOS Project.
You probably know the backstory: throughout the 1980s and early 1990s, I considered myself a "power user" of MS-DOS. I liked the flexibility of the command line. I had a bunch of applications that helped me do my work. And I'd even written some of my own utilities to expand the MS-DOS command line. So I was upset to hear in early 1994 that Microsoft would soon end support for MS-DOS; the next release of Windows would do away with the venerable DOS. So I decided to write my own DOS.
I announced the project on June 29, 1994. Others soon joined the effort, and we formed the FreeDOS Project.
Our first goal was to identify the functionality of MS-DOS that we wanted to replicate. Once we had a list of commands and features, we began searching for free software and public domain tools to fill those needs. We found several, including a neat replacement for PRINT called SPOOL, which operated in the background to print to the line printer when the computer was less busy. For those commands where we couldn't find existing tools, we wrote our own. Tim Norman was one of our first contributors, and started work on a free replacement for the COMMAND shell, later dubbed FreeCOM.
Once we had a core set of utilities, we released our first FreeDOS Alpha Distribution on September 16, 1994.
We didn't have a kernel yet, so "FreeDOS" at this point was still incomplete; you needed a copy of MS-DOS to use as the kernel. But the Alpha release got the attention of other DOS developers, who soon contributed new features and new commands. I don't have an exact date for our next Alpha, but looking at our email list archives at MARC.info suggests we released our FreeDOS Alpha 2 Distribution in very late 1994. I'll assume December 1994.
From there, we attempted regular releases of the FreeDOS Alpha. We released the FreeDOS Alpha 3 Distribution shortly after, in January 1995. A few months later, we made the FreeDOS Alpha 4 Distribution. From a FAQ posted to Usenet, and an archived FreeDOS announcement, I can place the Alpha 4 to after May 20 1995 and before June 18 1995. I'll assume June 1995.
Our next two Alpha releases took a while to get out the door. We were starting to grow as a community, and things were stabilizing. A little over a year later, we released the FreeDOS Alpha 5 Distribution on August 10, 1996. And more than a year after that, we made the FreeDOS Alpha 6 Distribution in November 1996.
All through the Alpha releases, we were missing something: there was no "installer" for FreeDOS. To update an existing FreeDOS system, you had to manually transfer the new kernel to the system using SYS, then unzip the entire Alpha package to your computer. To install FreeDOS Alpha on an empty computer required a few more steps:
Boot the computer using a floppy, with the new kernel.
Create a FreeDOS partition using the FDISK program.
Add a DOS filesystem using FORMAT.
Make the system bootable with FreeDOS using SYS.
Extract the entire Alpha bundle to your new C: drive using UNZIP.
That last step required several floppies, if you used floppies, as the FreeDOS distribution was now larger than a single 1.44MB floppy disk.
We needed to make FreeDOS easier to install, which meant we needed an automated install program. So I spent a few weekends writing one.
Our first installer wasn't very pretty. It simply automated the setup steps via a Batch file, then ran the install program to let you select what "packages" and "package sets" you wanted to install on your system. It didn't use console menus, just scrolled text from the bottom of the screen. But it worked. And with this, we had the start of a new FreeDOS distribution.
The new installer deserved a new version scheme. We were still far from "1.0," but with the new installer, we moved from "Alpha" to "Beta."
We created the "codenames" for the Beta releases because we thought it was an interesting "beta-ish" thing to do. I think a number of us were using Red Hat Linux, which also used codenames (like Red Hat Linux 4.96 "Mustang" or Red Hat Linux 5 "Hurricane") and we wanted to mimic what they were doing. Mostly it was just fun. Red Hat Linux connected the codename to the previous codename in some way ("Mustang" was a car and a WW2 fighter plane, "Hurricane" was a WW2 fighter plane and a mixed drink, and so on) but we just assigned a codename from whatever seemed relevant at the time.
I released the FreeDOS Beta 1 "Orlando" Distribution on April 24, 1998, just before I would fly to visit my brother in Orlando, Florida. I thought it would be cool to name the distribution based on that trip. I think I literally uploaded the new release then finished packing so we could fly down the next morning.
A few months later, we released the FreeDOS Beta 2 "Marvin" Distribution on October 28, 1998. The name comes from the old MicroVAX system that we used at the University of Wisconsin River Falls, when I was a physics student and created the FreeDOS Project. Sometime in October 1998, I returned to campus as part of an alumni event, and learned that the university had finally decommissioned the last of the old computing system. It had been a venerable system, so I named the Beta 2 release after the system I used so fondly as an undergraduate student.
We fell into a semi-regular update cycle, and released the FreeDOS Beta 3 "Ventura" Distribution a few months later, on April 22, 1999. I live in Minnesota, and we had elected former WWE wrestler Jesse Ventura as our governor the previous Fall, and he assumed office that January. By April, he'd probably done something really dumb, and I probably thought it was funny to use his name as the Beta 3 codename. Ah, for the days when an elected official would only do something really dumb every few months.
Around this time, someone started a discussion on the email list about the FreeDOS Project adopting a mascot. Linux had the penguin, BSD had the daemon, and GNU had the gnu. I thought a mascot would be cool, but I don't think I pushed the idea of adopting an official FreeDOS mascot because I didn't want to get distracted by the noise that would create. As a compromise for myself, I named the next Beta release the FreeDOS Beta 4 "Lemur" Distribution on December 29, 1999 as a way of "adopting" a mascot when we really didn't have one. I always thought lemurs looked cool, although I've never given them Twinkies or grape soda.
I also thought a seal would be a cool mascot. I imagined a seal paired with the Linux penguin. But there was already a desktop system for FreeDOS called SEAL, and that provided the obvious name challenge. FreeDOS eventually adopted a cartoony fish as our mascot. You can read more about Blinky the FreeDOS fish in the Brief history of the FreeDOS logo.
After a bit of a lag, we released the FreeDOS Beta 5 "Lara" Distribution on August 11, 2000. I played a lot of Tomb Raider on the Playstation in the late 1990s. I think the "Lara" codename came about because I was really looking forward to the upcoming Tomb Raider Chronicles game (later released in November 2000). They advertised this as the last Tomb Raider game in the series, so I probably memorialized it in the Beta 5 codename. The title character in Tomb Raider is Lara Croft.
The next Beta release also marks a sad time for me. Our beloved cat Midnight died in March 2001, during the run-up to the next release. I named the next Beta after him, as the FreeDOS Beta 6 "Midnite" Distribution on March 30, 2001. I changed the name slightly so I didn't get sad every time I looked at the codename.
Around this time, I got a big promotion at the office. I worked for the University of Minnesota, part of the Enterprise Operations and Infrastructure team in the Office of Information Technology. I didn't have as much free time to assemble the FreeDOS distributions, so I passed the distribution maintainer role to someone else. We released the FreeDOS Beta 7 "Spears" Distribution on September 8, 2001. I'm not completely sure about the origin of the name. I think this had something to do with Britney Spears. Her self-titled album Britney would be released in November 2001, and in September 2001 we would have heard a ton of her music on the radio to advertise the upcoming album. So we probably had that on our minds when we picked the codename.
Jeremy Davis posted the next version of FreeDOS, releasing the FreeDOS Beta 8 ("Nikita") Distribution on April 7, 2002, and the FreeDOS Beta 8 H1 ("hot release 1") Distribution a few months later on September 15, 2002. I'm not sure where the "Nikita" name came from.
We changed distribution maintainers again for the next version. Bernd Blaauw didn't think we were ready yet for a Beta 9 version, so the next release was instead a release candidate. Bernd released the FreeDOS Beta 9 "Methusalem" RC1 Distribution on July 19, 2003. I suspect the codename came about because the Bible says Methusalem lived the longest at 969 years old, and Bernd might have been making a joke at how long DOS had been around.
After the Beta 9 RC1, we decided the codenames thing had run its course, so we stopped giving cute names to releases. The FreeDOS Beta 9 RC2 Distribution on September 1, 2003 was the first since the FreeDOS Alpha releases not to have a codename.
We sort of crawled our way towards the inevitable "1.0" by increments. I think everyone pretty much realized that the "1.0" release would be a big deal, and we wanted that version to be as perfect as we could make it. We weren't satisfied with broken functionality, so each new distribution was a tiny step forward. We walked our way through the Beta 9 release candidates in several stages: the FreeDOS Beta 9 RC3 Distribution (September 28, 2003), the FreeDOS Beta 9 RC4 Distribution (February 5, 2004), and the FreeDOS Beta 9 RC5 Distribution (April 20, 2004)
With five release candidates, we felt ready to finally release the FreeDOS Beta 9 Distribution on September 28, 2005. Although we made some "service release" updates to the Beta 9 soon after: the FreeDOS Beta 9 SR1 Distribution on November 30, 2004 and the FreeDOS Beta 9 SR2 Distribution a year later on November 30, 2005.
Yes, we'd taken about three years to go through the Beta 9 cycle. That's a long release, but we wanted to take our time before the official "1.0" release. And the following year, we finally felt FreeDOS was ready! We released the FreeDOS 1.0 Distribution on September 3, 2006.
The "1.0" release was a big deal. Every software project considers the "1.0" release to be a major milestone. It's when you decide everything is stable, ready for prime-time. And certainly everyone noticed! If you check our FreeDOS History page, you'll notice a lot of news coverage around the "1.0" release.
But after we had "1.0," what to do next? We'd mostly achieved parity with MS-DOS. You could run pretty much any DOS program on FreeDOS, except some versions of Windows. And MS-DOS compatibility wasn't a moving target. So many of us didn't feel much need to create an update to the FreeDOS distribution for some years.
It would be almost six years before the next version of FreeDOS. We posted the FreeDOS 1.1 Distribution on January 2, 2012. Technically, the release was ready on December 31, 2011 but that's New Year's Day, and we didn't want to make a major release on a holiday. So we waited a day before I released it on the website. But because we had transitioned our FreeDOS News system to use GMT time, not local time, the news item was stamped with a January 2, 2012 date. Ah well.
A few years later, and we'd started to collect enough updates to the FreeDOS core system that we decided to make a new FreeDOS release. But I wanted "1.2" to be more than a simple package update. I decided that our install program was very outdated. We'd continued to make updates to it since the Beta 1 distribution in 1998. I thought we should re-write the installer to reduce the number of steps to install FreeDOS. Jerome Shidel volunteered to write the new installer, based on a set of Batch script power tools. Jerome's "V8" tools created a whole new install process, basically one smart Batch program.
Jerome made many "pre-release" FreeDOS distributions, ending with a series of two official release candidates before a final "1.2" version.
This time, we decided to follow a holiday release cycle. Jerome released the FreeDOS 1.2 RC1 Distribution on October 31, 2016 (Halloween) and the FreeDOS 1.2 RC2 Distribution on November 24, 2016 (US Thanksgiving).
After much testing, and to much press coverage, we finally released the FreeDOS 1.2 Distribution on December 25, 2016 (Christmas).
And that brings us to today! What's next? We haven't had an official discussion yet, but a few of us are starting to think about the next version. We aren't sure if the next release will be called "1.3" or "2.0."
But we do know the next version will remain 16-bit, with the focus on a single-user command-line environment, just like classic DOS. FreeDOS can't be "DOS" if we change that. The next version will continue to run on old PCs (XT, '286, '386, etc) but will support new hardware with expanded driver support, where possible. However, direct support for UEFI systems may be tricky (or impossible).
If you're interested in contributing to FreeDOS 1.3 or 2.0, whatever we end up calling it, please join the conversation on the FreeDOS email list.
Guest post: Becoming a FreeDOS developer
Imre Leber was part of the FreeDOS Project for a long time. Imre shared this great story about getting started in FreeDOS and the contributions made over the years. I have included it below (with permission) as a guest post for this month's FreeDOS Blog Challenge. Thanks, Imre!
I started programming when I was fourteen years old. At the time, my family had just bought an entry level computer, an 80386SX-25 with 2MB of memory and a 40MB hard disk drive. Money was tight, so I was unable to upgrade until I was nineteen years old, so I just kept myself busy with the computer as it was. At the time, it ran DR-DOS. Now you should know that at the time computers were more for the tech savvy people. You couldn't do much with it, so apart from playing a few simple games like Wolfenstein 3D, if you had a computer you had it to know the ins and outs of it.
I think it was simplicity of the MS-DOS system that allowed me to be so knowledgeable about it. You could really understand its shortcomings and think of ways to improve on the basic concept. At the time, there was also a lot of information available about ways in which people had tried to extend the life of the system, lots and lots of small tricks that seemed very clever at the time.
So I got interested in finding some of my own clever tricks. The most clever of which would be building multitasking into the system. I thought about how cool it would be to have the source code to the system so you could really play with it. Then one day, I was at university studying computer science at the time, I stumbled upon a little thing called FreeDOS which intrigued me obviously.
I looked at the source code and discovered it had something they called the kernel and some other programs. As I was just starting out programming in C, I had been programming in QuickBasic 4.5 mainly, I skipped the kernel, but did manage to make some important changes to the diskcopy program. I decided to send it to the person listed who asked me to continue development on it. That is how I became a maintainer on the FreeDOS Project.
I played a lot with the code for diskcopy. I hacked in a lot of features which made the program very powerful, on par with some of the shareware offerings that existed prior. As the code became bloated, I started to look into some of the programs that didn't exist yet in FreeDOS and decided that I was going to implement defrag. Now, I had no idea how one would even write a defragmentation program, so I started out implementing the functionality that I did know how to implement which was the user interface. Which is why for a long time the program was known as an empty shell that didn't much do anything.
As a student of computer science, I also tried to do everything very structured, so I built a library to manipulate the FAT file system, which I called the FAT Transformation Engine. With this, I did eventually complete defrag and implemented chkdsk, but it all had taken so much time that people had gotten tired of me always promising things.
Then there were also the odd projects that seemed to need work like move, that I also on occasion worked on.
After some years working on FreeDOS, life had put too much strain on me to continue working on it. See, work for FreeDOS programmers wasn't exactly blooming, not to say there wasn't any work at all. I don't really regret working on FreeDOS for this, because it's a testament to how careless my childhood had been. Prior to graduating from university, I had never even thought about what I would do after school. This forced me to go back to school after, and because of that I simply dropped of the mailing list until so much time had passed I forgot about FreeDOS altogether.
Then I implemented a program called emulare which was an emulator for the Arduino micro-controller, which is when I really moved away from FreeDOS to do other things.
I loved my time being part of the FreeDOS Project. It was an amazing time. The term "open source" had just been coined and being part of it, through FreeDOS, made me feel like I was part of something bigger then myself. For years, it felt like we were going to revolutionize the world, like we were building something that would enable people to get out of poverty, to enable people to work on things they were passionate about and not depend on day to day earnings to survive.
We were also the last generation to create open source out of thin air; before us there was nothing. We still had to create everything ourselves. We had no compiler, no libraries, nothing but a willingness to succeed. After us there came a new generation of open source projects with more commercial and less ideological ideas. Haiku started in 2001 and was a clear departure from our way of thinking about what open source should be.
Guest post: Contributing to FreeDOS Help
Longtime FreeDOS contributor Fritz Mueller responded to this month's Blog Challenge and sent his FreeDOS story. Fritz doesn't have a blog of his own, so I have shared it below with his permission as a guest post. This is part two, following from his earlier guest post about how he got started with FreeDOS:
(In part one, Fritz described buying a FreeDOS CD at a computer flea market, and later developing a bootable FreeDOS CD with 135 free games on it.)
While working on the FreeDOS games CD, I noticed different bugs and reported them to Eric Auer, the maintainer of several FreeDOS tools. I do not remember how it happened exactly, but one day I had the idea to translate the "Help" documentation to German. I thought I could do this within a few months, but it turned out I needed about four years for this job (of course with some interruptions).
I started with translation. Then I noticed that some of the "Help" texts, which are a part of the different files from each package, by different programmers, were out of date, options were added or removed or in the meantime programs of other programmer were in use. The "Help" files looked different, the links did not work, etc. Simply spoken, it was almost impossible to rely on the last version of the "Help" files.
So first of all, I tried to find the latest version of each tool, ran program /? to get the correct syntax and options, then started to correct the English version of the "Help" documentation. But the English information was wrong too, so I had to read the English manuals and to add them in the English translations for the "Help" files. As English is not my mother tongue, some bugs may have come in; I beg your pardon for this. Next, I added relative hyperlinks to other "Help" documents and checked that they were correct (in later versions, I found some Windows tools which helped me a lot, such as multi-replace, a tool to test all links, a tool to test if the HTML source code is correct, etc). Additionally, I had to look for line breaks after 80 characters in the HTML code so that the DOS browser showed the text correctly.
After that, I was able to start with the German translation. FreeDOS Help 1.0.6 had more than 100 English HTML sites with a lot of expressions from the "Readme.txt" files that I had never heard before, as I am no programmer, only a trained user.
But eventually, the last translation was done and I could publish FreeDOS Help 1.0.6.
As version 1.0.6 was still a little buggy, I did an update to 1.0.7. This must have been in Spring 2008.
Also in 2008, I made a trip to the United States and met Jim Hall in Minneapolis, Minnesota. This meeting encouraged me to finish this job.
I added the article "networking in FreeDOS" in the Help documents. It was from a German journalist, written in English, and I got his permission to add it in the Help files. As time went by, I had other things going on, and one day I got email from somebody on the FreeDOS team, saying they planned to release version 0.9 or 1.0. Now I had to hurry up. With the help of another German speaker, we got it. Of course, like always, with some minor bugs inside. Additional I made an Internet version which has more internal links than the DOS version, as the built-in Help browser does not need them. Adding them was a hard job, as the German and the English DOS versions each have about 320 HTML files, so all together more than 640 HTML files. And all links had to be checked that they were correct, without the Windows tool I would still work on it.
And eventually FreeDOS Help 1.0.7a was out. Even today, I have no idea why some people still use older versions of Help. You should not find a broken link or malformed HTML code or an line breaking text in Help 1.0.7a.
I just checked the DOS file download site and noticed that version 1.0.7 with Spanish translations is out. I had a closer look at the Spanish HTML files and noticed that the translator seems to have given up after about 40% of the translation. I can understand why; it's a lot of work for one person. It would be fantastic if this job could be finished.
Guest post: FreeDOS and OpenGEM
Shane Martin Coughlan shared his story about how he discovered FreeDOS, and found his first contribution to open source software through OpenGEM. You can read Shane's story "Where it all started" on Medium.
I loved reading the history of OpenGEM and how it grew up. For a while in FreeDOS history, I wasn't sure that FreeDOS should include a graphical user interface (GUI) because I was concerned that would distract from other work. But OpenGEM is pretty awesome, and as longtime FreeDOSers know, we included OpenGEM in our software list as part of the official FreeDOS 1.0 distribution.
From the article:
OpenGEM grew to become the most popular GEM distribution and had six major revisions, eventually becoming an official FreeDOS package for that project’s 1.0 release cycle. I was tremendously honoured to have become part of a community that had given me so much, and to play a small part in making computing more accessible to other people. The FreeDOS and FreeGEM communities were where I discovered and understood the potential of Open Source.
Marti's story really begins when he started using PC emulators to run older, classic operating systems like MSX2 and Commodore-Amiga. From there, Marti found FreeDOS.
I love that Marti uses FreeDOS to run lots of great DOS software like dBASE and WordPerfect. But Marti adds, "That doesn't mean that FreeDOS is old school only, to the contrary. It's a modern OS with support for multimedia an networking, including DHCP. Such in contrast to MS-DOS."
Using FreeDOS to play classic DOS games
All this month, we're sharing stories from users who have discovered FreeDOS, and how they use it. While today's story wasn't intentionally posted as part of the FreeDOS Blog Challenge, I thought the video was really interesting and shows one reason many people use FreeDOS today: to play classic DOS games.
Nickalysis on YouTube posted a video in April about his goal to set up a DOS gaming machine on a used netbook. Of course, he used FreeDOS.
Owain uses his FreeDOS laptop to write interesting Fortran programs, and has a photo of Conway's Game of Life, and a snippet of code from a program to calculate Pi. And as someone who used to write a lot of programs in F77 (my first compiled language) it was great to see Owain's samples.
In reading Owain's story, I especially loved his description of how modern we've made the latest version of FreeDOS (I credit the many folks who helped assemble the FreeDOS 1.2 distribution):
Well it’s mostly a machine for doing some hobby programming in Fortran. It is ideal for the task as it’s extremely portable, but also because it’s stress and distraction free: I don’t have twitter in prodding me in the background. No e-mail or youtube videos to distract. I don’t really have to worry about security or updates as it’s not connected to any networks. Instead I can focus on writing code. … Perhaps the biggest surprise is how modern and easy to use the system is for software development. The workflow for coding on the machine is different from what I do on Linux only in that I don’t have git available. Even though I’m using compilers from the 90s, a user interface from the 80s and Vim. Both FreeDOS’s shell and 4DOS have tab completion (although it works differently from bash). If you really need them, Unix-style tools are available. Watcom’s wmake is a fairly adequate implementation of make. As a result I’ve tackled my first largish F77 project (I’ve always used F90 + whatever add-ons the compiler I’m using has) pretty successfully
Pat's FreeDOS story
Longtime FreeDOSers may recognize the name Pat Villani. For our newer members, Pasquale "Pat" Villani created the FreeDOS kernel, the core of the FreeDOS operating system. Sadly, Pat passed away in August 2011.
Pat and I were good friends. Although we never met in person, we chatted on the phone several times, and lots and lots of email conversations, half the time about FreeDOS and half about just anything. And since Pat isn't here to share his FreeDOS story, I thought I could attempt to retell his story as best I can.
To start, I'll quote Pat's own words from his Open Source Depot website, where he shared the history of his DOS kernel experiment, which later became the FreeDOS kernel.
DOS-C started in 1988 as an experiment in writing device drivers in C for Microsoft's MS-DOS. Both block and character device drivers were written, along with special C data structures to match the MS-DOS request packet. It was then recognized that using the same techniques, an operating system could be written that would take advantage of the C language features and would require much less time to develop than the traditional assembly language techniques. Although UNIX had proven this earlier, it was not tried with a traditional PC operating system.
At this time, a minimal operating system using the device drivers written earlier along with a new 8086 interrupt API was developed. It was called XDOS and proved to be a functional operating system. This new operating system was used to develop booting techniques and a C library SDK was developed for it.
XDOS enhancements were started in 1989 and MS-DOS was chosen as the new API. A more advanced architecture was also developed. This included the use of an IPL (intermediate program loader) to set up the operating environment prior to loading the operating system itself and reentrant system calls facilitating real-time applications. This version, know as NSS-DOS, was completed and demonstrated in 1991. As a result of these demonstrations, NSS was approached to supply source license for this operating system by a major defense contractor. The only new requirement - it had to run on 68K processors.
This presented a new challenge. Due to the MS-DOS model used for the API, NSS-DOS relied heavily on a segmented architecture. To meet this challenge, a major redesign of NSS-DOS was undertaken. New proprietary techniques were developed that allowed the same source to be compiled on a variety of hosts and with a wide range of compilers. This new version, DOS/NT, was the result of this new project. The kernel was redesigned as a micro kernel along with logical separation of the file system, memory and task managers. A new DOS API was designed along with a new DOS SDK to guarantee portability. Additionally, all processor unique code was separated from the core functions. The result is the highly portable operating system that DOS/NT represents.
After a number of successful commercial applications, DOS/NT became part of both dosemu and FreeDOS.
I'll pick it up from there, to fill in some details on how Pat's kernel became the FreeDOS kernel.
Pat wanted to contribute his kernel to an open source software project that would find it useful. I think it was late 1994 that Pat emailed the DOSEMU folks, asking if they were interested in his DOS-compatible kernel. I mentioned Pat's story briefly in a 1998 interview with Interface magazine. The DOSEMU team thought Pat's kernel was really interesting, but they also mentioned that a "Free-DOS Project" (at the time, our name still had the hyphen) had recently been started, and that project needed a kernel. The DOSEMU developers helped Pat get in touch with me.
Pat had created a DOS-like kernel that was feature-complete with earlier versions of MS-DOS, like MS-DOS 4 or 3.3. And Pat had licensed his kernel under the GNU General Public License, which meant we could include it in FreeDOS!
We immediately adopted Pat's kernel as the new FreeDOS kernel. Over time, other developers contributed to the FreeDOS kernel, including Aitor Santamaria, Arkady Belousov, Bernd Blaauwm Brian Reifsnyder, Charles Dye, Eduardo Casino, Eric Auer, Geraldo Netto, Jason Hood, Luchezar Georgiev, Ron Cemer, ror4, Steffen Kaiser, Tom Ehlert, and others. Some volunteered as kernel maintainers, including Jeremy Davis, Bart Oldeman, Jim Tabor, John Price. Among these many names, I'd like to give special kudos to Jim Tabor, who forklifted our kernel to support network redirection. Without this feature, FreeDOS would not have network and CD-ROM support.
In another week, on June 29, FreeDOS will turn 23 years old. That's pretty good for a 16-bit DOS operating system in 2017. And there's still more to do with FreeDOS.
For this year's anniversary, I thought it would be great to have people everywhere tell their story about FreeDOS. How did you discover FreeDOS? Why do you use FreeDOS? How do you run FreeDOS? What programs do you run on FreeDOS?
So earlier this month, I started a FreeDOS Blog Challenge. I'm asking you to write a blog post about your FreeDOS story. Post an article on your own blog by June 28. That's only a week away!
If you have your own blog or website, post your story on your blog, and email me to let me know where to find your article. I'll include it in a special blog post on June 29.
If you don't have your own blog, that's okay! I would be happy to post it for you as a "guest post" here.
One more thing: Please contribute your story under the Creative Commons Attribution 4.0 license (CC-BY). You can do this very simply, such as including a statement at the end along the lines of "This blog post is shared under the Creative Commons Attribution 4.0 International license (CC BY)."
How to write your FreeDOS story
We have one week to go before the 23rd anniversary of FreeDOS! It's not that "23" is a significant number, but this year we decided to ask people to tell their FreeDOS story as part of a month-long FreeDOS Blog Challenge. How do you use FreeDOS? How did you get started with FreeDOS? Why did you first run FreeDOS?
We've posted stories from several folks who shared how they used FreeDOS or contributed to FreeDOS. Please add your voice to the mix!
Maybe you want to submit something, but you're unsure if it would be interesting?
I guarantee that we will find it interesting! I love to see how people are using FreeDOS. People use FreeDOS in any number of ways. We find most people use FreeDOS to play classic DOS games, or to run legacy software, or to do embedded development. If you've used FreeDOS to do any of these things, that's a FreeDOS story we want to hear!
Or maybe you've used FreeDOS to do something else. For example, you might have needed to update the BIOS on your computer, and needed to boot from DOS, so you turned to FreeDOS. That's a FreeDOS story we want to hear!
The bottom line is people use FreeDOS for different things. It doesn't matter how you use FreeDOS, we want to hear your story! Everything is interesting to us. Other FreeDOS users will read your story and think "hey, I can try that too" and FreeDOS developers will appreciate knowing that you found FreeDOS useful.
Maybe you want to write something, but you're not a developer so you think you shouldn't?
We want to hear from everyone! It's not just about developers, or people who contribute to FreeDOS.
For example, did you install FreeDOS so you could load an old DOS program to retrieve some data? I used to work in higher education, and one of our faculty once asked if we could read some research data from an old data file he created long ago. The data file was from an old DOS program, so we installed FreeDOS on a spare PC, found a copy of the original DOS program, and used it to read the data and export it into a text file. That's an interesting story!
Or maybe you used FreeDOS to explore some classic DOS programs, and bask in the fond glow of nostalgia. I used to use a shareware spreadsheet program called AsEasyAs when I was an undergraduate student, and every few years I have an irresistible urge to install AsEasyAs and run some data. If you do something similar, tell us your story!
Or maybe you wanted to set up an old PC to run classic DOS games, and you needed to install a version of DOS, and discovered FreeDOS that way. That's a great story, and we want to hear it!
But how do you write a story?
If you don't often write for a blog, then writing your FreeDOS story might seem a little daunting. But really, it's easy!
I recommend you write your story as though you were emailing your story to a good friend. If it helps, write a draft in your email program, so you can convince yourself you're emailing someone about using FreeDOS. (And if you like, you can actually send that email message to me, at jhall@freedos… and I'll use it as a guest post.)
Start by describing what you wanted to do. "I wanted to set up a gaming computer to play DOS games." Or "I wanted to compare what it's like to write using a modern spreadsheet, compared to a classic DOS program like Lotus 1-2-3." Or "I found an old file that my dad had written in a DOS word processor, but I needed the original DOS program to read it."
Maybe that was your first introduction to FreeDOS. How did you discover FreeDOS? "I googled for 'free DOS' and found the FreeDOS website." Or "A friend recommended that I use FreeDOS to do it."
Did you install FreeDOS? What was that like?
Finally, talk about what it was like to use FreeDOS, especially if this was your first time. "I thought the installer was really easy to use." Or "It was a blast to use the DOS command line again." Or "I had a hard time remembering what the commands did, but the HELP program reminded me what everything did."
That's your FreeDOS story! It doesn't have to be very long. Don't worry about length. Maybe your story is short—that's okay. If you have a lot to say about FreeDOS, that's great too. If you're looking for a word-count target, maybe shoot for 600–800 words. That might seem like a lot, but when you tell your FreeDOS story as though you were describing it to a friend, you'll find 600 words goes by very quickly. So don't let the word-count get in the way of your story. Just tell us your story, and we'll be happy to use it.
If you have your own blog or website, post your story on your blog, and email me to let me know where to find your article. If you don't have your own blog, I would be happy to post it for you as a "guest post" here. I'll even do light editing for you and take care of formatting.
Guest post: Discovering FreeDOS
User "N2KMaster" contributed his story about discovering FreeDOS, and how FreeDOS inspired him to turn his programming hobby into a GUI project.
I grew up with DOS. Remember a good many days freezing my butt off waiting for the wood stove to heat up the room the old Tandy 1000 EX was in, in order to play the latest shareware diskettes Mom had gotten in the mail. It wasn't until I starting poking around with GW-BASIC that I really "got" what a computer is all about. And since all my friends had NES and I had Tandy, I had to improvise and started making my own games. That was like thirty years ago.
I knew of FreeDOS. I just never tore the hood off it and looked at it until a friend of mine gave me a pile of computer "garbage." In that pile was a retro ‘486 laptop:
It wasn't much, but that was the point. I wanted a dinosaur.
It was ancient, but then again so am I and thought, "Okay great, retro DOS machine!" However, with a busted diskette and CD-ROM drive, DOS wasn't going to be an option here. No USB, no network, "yup … this is gonna suck … hey … there's that FreeDOS thing."
I was able to install FreeDOS to the hard drive using a laptop ATA-USB converter. I booted the computer, saw the installer, and was like "Whoa! This is a little more advanced than what I was expecting."
And the giggle point with that is the hard drive is actually out of a PowerPC Apple laptop that refused to work for me.
I got it all installed and then said, "Well, I'm not much for gaming, so for a majority of the time it will be just sitting there. So how do I make it so I wanna use this thing all the time?" That's where something special started.
Two years picking at QBasic and FreeDOS just to find that "sweet spot" for developing. I finally had that "something special" and began using it to build a GUI based desktop. And unlike Windows and the other guys, I wanted it to look different.
Now that GUI desktop is over two years old and still being developed thanks to FreeDOS still being a thing. Proves DOS is still cool, still has value. And as a kid who grew up during the whole "PC versus Mac" era in its prime. There was a lot of code and software that just simply vanished because Windows became the standard and made everyone lazy. They no longer wanted to know how it worked, just make it work. And that's a shame because the developing from that era was some of the best in its day and it was an art form as well back then.
This blog post is shared under the Creative Commons Attribution 4.0 International license (CC BY).
Guest post: First contributions to FreeDOS
Gregory Pietsch shares his story about how he contributed first contributed to FreeDOS:
I stumbled across FreeDOS around 1998 or so. At the time, I was familiar with MS-DOS, having used it since 1985 or so, and thought, "Okay, this group wants to build a GPL'ed clone of MS-DOS, it shouldn't be too hard." I decided to contribute a couple of programs. One of them, named "Code", is an encoder/decoder for uuencode/uudecode/xxencode/xxdecode. I thought it was useful.
A few years later, I got more ambitious. I wanted to get something in the Base distro with my name on it. I noticed that base was missing a version of Edlin, the line editor from the early days of MS-DOS. I figured, who cares if nobody uses this program anymore, that's my ticket into Base. Of course, I had to write it along different lines than the original. The original was in tight Assembler, so I wrote mine in C. After several false starts and a week of programming, I finally had something that was usable, and sent it in as FreeDOS Edlin 1.0.
Since then, I have debugged FreeDOS Edlin when I've needed to and attempted to add internationalization to it with varying degrees of success. I also made it easy to take apart. A programmer could use the back end of Edlin as the back end of Edit or reuse the string and array handling bits if they wanted to.
Also, every time I upgraded Edlin, the new version came with a note written by me from the perspective of a TASS editorialist proclaiming that Edlin was the linchpin holding FreeDOS together. It was the least I could do.
By the way, the development environment I use for this and other programs nowadays is Cygwin. That's why FreeDOS Edlin is successfully autoconf'ed. I figure, is there an easier way to make a distribution than "make dist"?
Guest post: Joining FreeDOS
Erwin Waterlander shares this story about first starting with FreeDOS:
I have good memories of DOS. In the end of the Eighties and the first half of the Nineties, I used it mainly for playing games and text processing. Around 1996, I started my programming hobby on MS-DOS. Like many, I didn't like that MS-DOS was going to be deprecated. I used MS-DOS until about 1999 when I started using Windows 98SE.
Via Usenet, I learned about the FreeDOS Project, probably around 1997. For several years, I was on the FreeDOS mailing list. It was nice to see there was a large community of DOS enthusiasts. This kept me supporting the DOS platform.
I contributed my wcd program ("Wherever Change Directory") to the FreeDOS utilities since 1998. Later, after 2009, I added dos2unix to the FreeDOS Project. The community gave me lots of useful feedback.
I ran FreeDOS 1.0 in QEMU, and now I run FreeDOS 1.2 in VirtualBox. I have to admit that after 1999, I did most of my programming for DOS in a Command Prompt on 32-bit Windows, because that worked for me. And I have used DOSBox for gaming. I use FreeDOS nowadays only for porting my programs. I will keep on supporting FreeDOS as long as I can.
A collection of FreeDOS images
I'm going through some interesting moments in FreeDOS history, and I found a series of web images that highlight the popularity of FreeDOS. Here are a few interesting image collections:
Web award "stickers"
Looking back at the FreeDOS History timeline, you can see that 2000 and 2001 was when FreeDOS finally got noticed. Our FreeDOS Beta 5 "Lara" distribution, released August 2000, was very popular, and was distributed via CD in several computer magazines. Beta 5 raised our profile. In late January, Open Source Land Magazine recognized us as a "Link of the Week," also with an accompanying interview and article about FreeDOS Beta 5.
Then in March 2001, we released the FreeDOS Beta 6 "Midnite" distribution. This version was also very popular, and I think earned FreeDOS recognition from a web magazine with this "New Cyber Tech" award. I don't have the exact date of this web award, but it was probably early-2001. I have a vague recollection that we received this award before the FreeDOS Beta 4 "Lemur" distribution, released April 2001.
In January 2012, we released the FreeDOS 1.1 distribution. This was our first major release in almost six years (DOS doesn't need to change that much) and was immediately popular. Many websites offered a copy of the latest FreeDOS. DO Download recognized FreeDOS 1.1 with a web "sticker" indicating it was safe to download.
Also in 2012, Download Atlas was another website that offered a copy of the FreeDOS 1.1 distribution. They similarly awarded FreeDOS as the "Editor's Choice," with several options on web sticker.
I don't have the date for this one, but I think it was also for the FreeDOS 1.1 distribution, so around 2012. Download Route offered a copy of the FreeDOS distribution, and shared with us a suitable web sticker.
I'm not sure exactly when they started, but sometime around 2004 or 2005, a small group of developers forked a copy of FreeDOS in an attempt to forklift it to support 32-bit features. "FreeDOS-32" was an unofficial but recognized development effort. Unfortunately, it proved to be too ambitious; development on FreeDOS-32 stalled by 2010 and developers seem to have dropped out entirely after 2011.
An interesting note to FreeDOS-32 is their Sloth mascot. You see, we'd been discussing adopting a mascot for the FreeDOS Project. Linux had Tux the Penguin, BSD Unix had Beastie the Daemon, so why shouldn't FreeDOS have a mascot? I argued that we should adopt a seal, but there was already a SEAL Desktop with the obvious choice of mascot. Eventually, a user contributed a fish mascot, and that seemed to capture attention. Then Bas Snabilie sent in a very cartoony fish mascot that we loved, and officially adopted as our mascot in February or March 2004.
So when Salvo and the other developers forked FreeDOS-32 in 2004 or 2005, they decided to create their own mascot, too. They picked a sloth (name?) probably because they expected development to be slow. Here he is, in a fetching cap and t-shirt:
FreeDOS Web Ring
Do you remember "Web Rings"? These were a popular way for similar sites to associate themselves with each other. The idea of a "Web Ring" was that every website partnered in the ring, and used a web image to advertise the ring. Each website was issued a unique ID within the ring, and used "Next" and "Previous" links to navigate via the ring host to other websites in the ring.
FreeDOS was part of such a "Web Ring", and used this 3-D image:
Guest post: FreeDOS and Linux
Joel Graff writes about growing up with DOS, and later running FreeDOS under a virtual machine in Linux.
I grew up on DOS. My first computer was an IBM PS/2 Model 30 (actually, it was a VIC-20, but we’ll not mention that here). At that time, it came with a low-density 3.5-inch floppy drive, a 10MB hard disk, MCGA, 256-color graphics (which eventually spelled the end for EGA), and a 24-pin dot matrix.
All for the modest price of $3,495.
It was expensive, but it was a valuable addition to our family, and it drew me into the world of computing. I had gotten a taste of gaming and BASIC programming with the VIC-20, but the PS/2, pre-loaded with DOS 3.31, introduced me to a system with configurable hardware and a fully functional operating system. It was an entirely different, and far more powerful experience than the old VIC-20.
I quickly grew to love DOS, and it wasn’t long before I mastered nearly every facet of it. Then I was coding mouse hardware support in GW-BASIC, thanks to my buddy who shared a book on DOS hardware programming with me. Really, it was that direct, low-level access to the system and it’s hardware that kept me coming back.
DOS wasn’t a complex environment. It was quick, clean, and simple. But then, the computing environment it had to manage was small and limited. There was no Internet, no cloud and no mobile platforms. “Scalability” wasn’t a word, and even if it was, DOS wasn’t going to have anything to do with it. And it’s that lack of complexity that afforded it the ability to master a hardware domain which, in retrospect, it accomplished with remarkable simplicity and efficiency. It wasn’t a bad way to be. My entire digital life could be contained on a single, 720KB floppy disk.
As time moved on, my interests changed. Life, in general, had much to do with it, but I can honestly say that Windows replacing DOS as the preferred gaming platform gave me little reason to pursue my gaming interests. Being a developer didn’t really hold much appeal either as Windows, with its arcane API dominated by Hungarian-notated commands, appeared to be the only commercial future for software developers.
So I did something else with my life. But I never gave up entirely on computing.
These days, I’m a Linux and FOSS nerd. I abandoned Windows when I saw the Windows 8 ship sailing and I haven’t looked back. It’s been a challenging, but great experience. Still even Linux, for all it’s terminal-level coolness, just doesn’t compare to the experience of working at a DOS command prompt. And while I didn’t have any real need for my DOS skills, those old DOS games seemed to always go with me, wherever I went, just waiting for something to happen.
Preserving those games had always been in the back of my mind; I knew I needed to do something about it. I had toyed with DOSBox in the past, but using it didn’t really encourage me to dust off the floppies. Then I discovered FreeDOS and it got me to take a second look.
I downloaded the FreeDOS ISO and built a virtual machine with it. QEMU made quick, easy work of that. Booting it for the first time was a blast! I discovered I had somewhat missed the C:\> prompt with it’s patient, blinking cursor. A few minutes later, and I had surprised myself with just how much I remembered, and with how faithfully FreeDOS preserves the DOS computing experience. Because of that, I had little difficulty working out the unique features of FreeDOS and taking advantage of some of the goodies (like Ethernet support) that, while not part of the original DOS experience, have been implemented in a way that’s really appropriate to it.
So I finally dusted off my old caddy and got a floppy drive for $15. Mounting the virtual machine image under Linux to copy data files in was simple. A couple weeks later, and I’ve copied most of my old disks from that dusty old caddy. Unfortunately, several were unrecoverable, which I expected, but enough had survived to preserve most of my gaming library.
Reliving my old gaming days has been a great experience. I don’t really need FreeDOS to do it. I can dig up some original DOS floppies somewhere and make it happen or I can use DOSBox. They’re both good options. But FreeDOS gives me a true, open source DOS environment to use, which beats both proprietary DOS and an emulator, in my mind.
The real advantage, though, is in the virtual machine.
Using a virtual machine means I can contain my entire library in a single file. This makes it easy my entire DOS library easily portable to different machines and platforms and even easier to preserve. That I can preserve a snapshot of my entire DOS life is just really awesome.
The best part, though, is that the FreeDOS project is alive and well. Because it’s a genuinely useful operating system that’s great for low-resource applications, people care about it. And that means it’s going to stick around for a while. Now if I could just do something about those old Commodore floppies.
Guest post: Translating for FreeDOS
Nicolae Crefelean shared this FreeDOS story with us via Facebook, with permission to make it available as a guest post. Thanks, Nicolae!
I discovered FreeDOS about 15 years ago, when I still worked with MS-DOS quite frequently as a sysadmin, so I was amazed to find out about this project. There was still plenty of work to do, but even then it still did a lot of things, there was a lot of software that worked with it, and that was great.
I was so excited about it that I kept telling my colleagues (for a while) what else was new—considering back then the development was very active. But that wasn't enough to compensate for my enthusiasm. So I thought I should translate the FreeDOS Manifesto to Romanian, so others can read a little bit about the project, get curious, share the word, maybe support it, and so on.
That's all I did for this project, but it still felt like I did something important. And as tiny as my FreeDOS contribution was, it was my first contribution to an open source project and it lit up a spark in me. Since then I contributed to many other OSS projects with translations, code, management, tech support, donations, etc. It's been a blast so far! I'll keep at it, as I love doing it. FreeDOS was my first stepping stone to contributing to free software, and that makes it very special for me.
Thanks for keeping the ball rolling, guys! And it's a great initiative to have so much information out in the open.
In reviewing some interesting history of the FreeDOS Project, I've highlighted our FreeDOS logo and mascot, contributed banner ads, contributed web buttons, and some web award "sticker" images. I also discovered a small stash of alternative images contributed by our community. I don't know the dates for these, but I'll do my best to put them into some kind of order:
Alternative FreeDOS logos
We had our "oval logo" from the beginning, then our "blue stamped logo" starting around 2001, and variations on our "FreeDOS fish logo" since about 2004. Sometimes, people contributed images as a suggestion for a new FreeDOS logo, or just as a fun alternative logo that they used on their own website.
First is this interesting image that a user emailed me, called "Windows95 Waste." This must have been around 1996 or 1997, as I know it was well after Windows95 but long before Windows98. And Larry Ewing created Tux the Penguin in 1996. So there's a short window for this image to have been created. It was probably the first alternative image anyone sent us.
I don't remember who created this image, but I do recall that this person wanted to have the Linux mascot and the FreeDOS mascot sharing a friendly drink at a table while copies of Windows were crushed behind them. We didn't have a FreeDOS mascot at the time (we adopted Blinky the FreeDOS Fish much later in 2004) so he used a blue ball with some eyes and the FreeDOS "oval logo" stamped where the mouth would be. I always thought of this mascot as related to the green ball guy from The Hitchhiker's Guide to the Galaxy.
One user contributed this image, as a possible logo for the FreeDOS Project, called the "pixels logo."
Another user sent us this simple image that I quite liked, showing a DOS prompt and the name "FreeDOS."
One contributor created this beautiful logo with a kind of lens flare effect, and the tag line "Born to be free."
Another user sent us this interesting modern logo. It was simple and fresh, but ultimately not what we were looking for.
Others also like to create images for their website that advertised FreeDOS, like this "Powered by" image. This is larger than a standard web button image, although you could also think of it as a web button.
Another user sent us a very nice round logo, as a suggested new logo for the FreeDOS Project.
I think this next one was originally contributed as an animated GIF image, with awesome flames that flickered from the FreeDOS wordmark. It reminded me of the old DOOM game. But around 1996 or 1997, a bunch of free software websites started an effort to replace all GIF images with PNG, to avoid patent and licensing issues inherent in GIF. I did the same with the FreeDOS website images, so converted this animated GIF to a static image.
Around 2000, I started discussing a new logo for the FreeDOS Project. We'd already had the FreeDOS "oval logo" since the beginning, but maybe it was time to update the logo. One user suggested this alternative logo, using colors and interlocking "DOS" to emulate the MS-DOS logo. I though it was a little close to MS-DOS, so we didn't use it. Instead, we adopted the "blue stamped logo" in 2001.
A few years later, some folks asked if we should have a FreeDOS mascot. After all, Linux had the penguin, BSD Unix had the daemon, and GNU had the gnu. What mascot should FreeDOS have? I thought a seal would be neat, but we already had the SEAL desktop environment, and there was an obvious name conflict. One user contributed a new FreeDOS logo with a fish outline, claiming the fish represented freedom.
I didn't know about the fish logo, but others liked it. User Mike Green sent us this version of a FreeDOS logo that used a different fish icon, although it wasn't really a "mascot" yet. Eventually, we would adopt Bas Snabilie's cartoony fish drawing as the FreeDOS fish mascot, who we later named Blinky. But Mike's fish came first, so deserves a mention here. He provided several versions of his fish logo.
CD jewel case images
In late 2001, after we adopted the "blue stamped logo," one user contributed an image that you could print out and put in a CD jewel case, for your FreeDOS distribution. I think a few online CD distributors used this as their FreeDOS CD cover.
In 2004, someone updated the CD cover image with one that used the new FreeDOS fish mascot, Blinky. One version included a tagline "Cool and fresh" and the other was plain.
An evolution of the FreeDOS website
Formed in 1994, the FreeDOS Project has been around a long time. We actually predate much of the World Wide Web. Back in 1994, the whole "Web" thing was a pretty new idea. So it didn't occur to us to create a website until a few years later.
Our first website was created by M. "Hannibal" Toal, who stepped in as project coordinator when I was unavailable for a year or so. I'm not sure exactly when we set up our first website, but I think it was around November 6, 1996. The Internet Archive doesn't go back that far for www.freedos.org, but a snapshot from June 1998 still has the same look: white text on a black background, with the original "oval logo."
I returned to FreeDOS after a short absence, and Hannibal handed "webmaster" duties to me. Unfortunately, I didn't know much about how to edit a website. I pretty much left the site as-is until I had learned enough HTML to be dangerous.
Starting sometime late 1998, I began working on an update to the FreeDOS website. I wanted the new website to be easier to read. More websites were using a black-on-white color scheme, which I found easier on the eyes. After some months working on a new design, I put live the updated website on January 1, 1999. A snapshot from January 1999 shows the updated style: black text on a white background, with a FreeDOS banner ad, and the original "oval logo." This was a very simple web design, built using a single large table. The World Wide Web didn't have nifty formatting like stylesheets, so most websites created their design using a table layout like the one we used.
Later that year, I updated the design slightly, using a blue title bar and yellow navigation bar. Copying other technology websites like Slashdot, I added a "poll" feature to the sidebar, although this was meant more for fun than information gathering. I'm not sure exactly when this new design went live, but the Internet Archive grabbed a screenshot from October 1999. Many of the news items from that snapshot talk about cleanup on the website, in late September. Based on that, I'll assume this web design went live around mid- to late September 1999.
I worked in higher ed at this time, as part of a web development team. I managed the production team. Sometime in late 1999 or 2000, our web developers put live a new web portal. I quite liked the design they used, and I mimicked it on the FreeDOS website. This was a minor tweak in the FreeDOS website design, using a series of stripes behind the "FreeDOS Project" wordmark. Technically, I don't consider that a new FreeDOS logo, just a graphical decoration around the logo. I'm not sure when the "striped" web update went live, but you can see a snapshot of the design from May 2000.
I made a small adjustment again in May 2000, adding a mint-green background to the titles of each news item. I'm sure I felt inspired by other websites like Slashdot, which used a green color scheme, although I'm a bit confused when I look at this design now. Green didn't really fit with the dark blue banner.
In early 2001, I again decided to update the FreeDOS website. The green backgrounds needed to go. Instead, I chose a unified blue-and-gray color scheme, with black-on-white text. The Internet Archive captured a screenshot in March 2001, but I think I updated the website sometime in mid-February 2001.
Several months later, our original "oval logo" was starting to look dated. Several FreeDOS users attempted new logos for us, but we liked Ben Rouner's logo best. His logo was a sleek, modern spin that was better suited to the banner on a website. We adopted this "blue stamped logo" in August or September 2001, accompanied by a website redesign with blue highlight colors and a white background. The new logo first appears in an Internet Archive snapshot from September 2001.
That website design stuck around for a few years, with only a few minor color tweaks in the design. We didn't update the web design until we decided to change the FreeDOS logo.
On the FreeDOS email list, someone restarted a discussion about FreeDOS adopting a mascot. After all, the Free Software Foundation had the gnu, Linux had the penguin, and BSD Unix had the daemon-in-sneakers. Shouldn't we have a mascot, too?
And I admit, I'd kind of wanted a mascot for the FreeDOS Project for some time. Back in 1999, I thought a lemur would look neat. I always liked lemurs. But after a while, I thought FreeDOS should have a mascot that "paired well" with the Linux penguin. FreeDOS was a free operating system like Linux, so I thought it natural that someone might create a composite image that combined the Linux and FreeDOS mascots, maybe sitting next to each other. I thought a seal would be a great idea; imagine a seal and a penguin hanging out together. But we already had a SEAL graphical desktop package, and the name conflict seemed pretty obvious.
Someone else submitted a new FreeDOS logo that used a fish icon, claiming that the fish represented freedom. For some reason, the fish caught on. And soon, Bas Snabilie contributed a cartoony FreeDOS fish mascot and matching logo. Bas's fish mascot was cute, for a fish, so we adopted him as our mascot. We later named him Blinky because of his googly eye.
In February or March 2004, I created a new web design that used the new FreeDOS "boxed wordmark logo" with the FreeDOS fish. The Internet Archive first captured the new design in March 2004.
Overall, people liked the new design. We made a few tweaks here and there, such as moving the "blue swirls" decorative banner from the top of the page to just under the logo, but the new design stayed up for a long time. More significantly, we rebuilt the FreeDOS website using "divs" and stylesheets, following a growing trend. This date is easier to pin down: it happened on Sunday, February 6, 2005. The Internet Archive picked up the change the next day, on February 7, 2005.
In late July or early August 2006, we again modified the FreeDOS website. The new design used a "flattened" appearance that had become popular on other websites at the time. The snapshot from August 2006 also shows the first blue background for the FreeDOS logo.
We finally released the FreeDOS 1.0 distribution on September 3, 2006. At the same time, we also incorporated a "What is FreeDOS" section on the front page of the website, including a brief description of the three ways most people use FreeDOS: to run classic DOS games, to run legacy software, to do embedded development. You can see the snapshot captured by the Internet Archive on September 5, 2006.
Sometime in April 2007, I changed the website yet again, to put a blue "gradient background" behind the FreeDOS logo, with a dark blue gradient as a sort of page title bar. You can see the updated design from May 2007.
I'm not able to track changes to the website very well after this. I didn't keep a web history of my own, and the Internet Archive didn't capture the stylesheets we used after 2008. However, I can see that sometime in November 2008 or very early December 2008, we updated the website again. The snapshot from December 2008 shows a new design, but without the stylesheet, I don't know what changes we made.
I do know that in late 2009, I decided to ask for help in the FreeDOS website design. I posted a plea around October 2009, and several months later I found myself in contact with a web designer named "nodethirtythree." This person volunteered to contribute a design from their website catalog, and on January 1, 2010, we refreshed the FreeDOS website with the new look. This update included a new "white wordmark logo," with the same FreeDOS fish from our boxed wordmark logo, and wordmark in white with a black drop-shadow. You can see the screenshot grabbed in January 2010.
As you can see, this website was really meant for wide screens. If you have a low display resolution, the link "tabs" or "buttons" partially cover the FreeDOS logo.
We've used variations on this design ever since. While the HTML code may have changed "under the hood," the outward appearance has remained mostly intact. The link "buttons" from the banner changed, but the blue striped background remained as part of our new web "brand."
In Spring 2012, I entered a program to earn a Master's degree. My very first class was Information Design, and I realized the FreeDOS website made an excellent case study of how to arrange information on a website to attract a particular audience. The semester ran from January 2012 until around May 2012, and in the final months of class, we each worked on a final project. Mine was an examination of the FreeDOS website, including a new arrangement of information to better suit FreeDOS users.
On June 3, 2012, I put live the new website. You can see it in the Internet Archive snapshot from June 14, 2012. The new design included a FreeDOS screenshot, updated sub-pages with improved cross-linking to information, and "quick answer" links to help new visitors learn about FreeDOS.
On December 25, 2016, we released the FreeDOS 1.2 distribution. To mark the occasion, we updated the website, providing a cleaner look and new fonts. The Internet Archive first captured the new design on December 26, 2016. This new design also added separate descriptions with brief descriptions of how people use FreeDOS, which hadn't really changed since 2006: "Classic games," "Legacy software," and "Embedded systems."
This new website design is the same one we use today. This version is based around HTML5, and uses a clean presentation that incorporates more screenshots on the front page. A major change in the new website is the shift towards SVG for the images, such as the FreeDOS logo and the icons. While we've used a responsive web design for years, using SVG allows for cleaner scaling of images on different displays.
I'm not planning further changes to the website. But then again, I think I've said that after every major website update. Based on past experience, we'll likely make tweaks and small iterations to the website design, but no major changes for a few years. Enjoy!
Guest post: Favorite OS
Sparky4 has been using FreeDOS for ten years, and shares this story about getting started and installing FreeDOS on a variety of hardware:
Here is my take on FreeDOS. I discovered FreeDOS in mid- to late-2007 when I got a computer technician "Starter Pack." It was a broken Gateway 2000 PC from 1997, with an Intel 80686 Pentium-II CPU, a Knoppix Linux CD, and a FreeDOS 1.0 "Full" CD. FreeDOS 1.0 was latest release.
I installed FreeDOS on my main computer, but I did not know enough at the time to boot into FreeDOS. Over time, I started using it more on a Packard Bell computer, which I got for free. I used MS-DOS too, but I grew to love FreeDOS much more than MS-DOS.
Today, I still use FreeDOS. In fact, I wrote this article using FreeDOS, with FreeDOS Edit 0.9a. I know this editor is bulky on the XT, but it runs fine here.
I use this cute and awesome operating system on all of my computers. Even my newest computer has it, although I wish it had a FreeDOS-compatible network card and sound card. I happen to own an original IBM PC XT Model 5160 and a ‘286 computer generic PC clone. They both run FreeDOS.
They are also extremely fancy, with VGA graphics, Sound Blaster, massive hard drives (readable with an XT-IDE universal BIOS), and networking. I got this for a reason … That reason being Higanbana Project code-named Project 16. It is a new game for these computers. This game would require the VGA and OPL2 for maximum "radness" so I'm testing the game on those computers.
Guest post: My experience with FreeDOS
Nick Gilbert shared his FreeDOS story via his blog, describing how he found FreeDOS and used it to set up a DOS gaming system.
Catharinus van der Werf shared this story via Facebook about using FreeDOS 1.2 to replace MS-DOS to run system backups. Posted here with permission:
In fact, I grew up with MS-DOS. Used it since 1988, when I bought my first computer, a Commodore PC-I without a hard disk drive and with two 5.25-inch floppy disk drives. The first thing I did on that computer was build an application in Dynamo, a program that was used at the Wageningen University. I soon discovered DEFRAG, which sped up the execution of programs. In my work, I created software programs, so it was important not to lose that. That's why I used PCTools Backup, to backup the complete partition to a series of fifteen 3.5-inch floppy disks.
My next computer was a Pentium that ran Windows 3.1. Because I did not know what to do with that, I replaced it with MS-DOS. I continued making backups on that computer with PCTools.
When I started using Windows 95, I got inspired. But because the computers and partitions grew bigger every day, backing up on floppy disks became a time-consuming problem. So since then I use Norton Ghost to backup the working partition to another partition on the same computer. And that is how I work still at the present time: I have created a muli-boot system that contains Windows 10 and FreeDOS. When I boot to FreeDOS, I start Ghost and make a backup with it. And backing up with FreeDOS works excellent.
And when FreeDOS 1.2 arrived in December 2016, I immediately threw away all my MS-DOS floppy stuff. FreeDOS 1.2 was the first DOS version that could easily be downloaded, installed on a USB fob drive (MS-DOS does not provide such a wonderful attribute) and after that installed on a FAT32-drive. So since then my computers do not longer have MS-DOS on it, but only the wonderful working FreeDOS.
-Catharinus van der Werf
Guest post: My FreeDOS journey
Longtime FreeDOS contributor Rugxulo tells his history with computers, and how he came to use FreeDOS. As you'll see, Rugxulo has worked on a lot of different projects, including an unofficial FreeDOS distribution.
In 1994, I got my first ‘486SX-25 with 4MB RAM running MS-DOS 6.0 and Windows 3.1. Obviously it was very under-powered compared to now. But it still had a lot of good, irreplaceable software, mostly games like King's Quest 6, which utilized VGA, CD-ROM, SoundBlaster 16, and mouse to great effect.
For a few years I was calling lots of BBSes via dial-up, but most software was shareware (or worse, nagware; remember NoNags?). It was very frustrating. Eventually I decided to learn programming just to avoid all the b.s. Luckily, even back then, there were some good open source development tools like NASM and DJGPP. I also found my favorite editor, TDE, which unfortunately was hacked/ripped off by some opportunist trying to grab money from suckers. Later I found the original version (public domain with sources). Gotta love greed (not).
In 1998, I was tired of the slow ‘486, so I got a used Pentium 166Mhz with 32MB RAM running Windows 95. I never did write much fancy software, but one wimpy NASM-assembled util (public domain) was uploaded to Simtel. I was only superficially aware of FreeDOS and DR-DOS, and they definitely inspired me (as did quasi-open projects like MAME), but didn't know the details and didn't try them (yet). Eventually Windows 95 hosed itself, so I gave up for a while.
In 2002, I got a Pentium 4, 2.52Ghz with 512MB RAM, running Windows XP. While NTVDM had some bugs and wasn't perfect (esp. for graphics and sound, e.g. old games), at least things like DJGPP were able to workaround most of the issues. But for those years I was still focused more on learning assembly. And I resurrected the old Pentium but chose DR-DOS 7.03 instead of FreeDOS. (Not exactly sure why, and I didn't fully understand the short-lived OpenDOS fork. Eventually I dual-booted both DR-DOS and FreeDOS on one computer.) DR-DOS was very good, but it had many hard-coded limits, plus most of its tools and drivers were limited. I ended up replacing half the utils and drivers with freeware (or free software). Several years later, FreeDOS did everything I wanted, so I weaned myself off DR-DOS. (How far we've come from FreeDOS Beta 8, which I still have on physical floppies! Can you believe that was before OpenWatcom even existed?)
In 2004, I manually (but sloppily) converted PSR Invaders from TASM to NASM. Later in 2005, I learned sed (stream editor), which I found immensely useful. With that simple scripting, I was able to convert some of my own code "on the fly" between various assemblers (for comparison, since I disliked being stuck to one tool).
Around 2006 I got more active in online forums, mostly about DOS programming. So I read and posted a lot to FASM, BTTR, FBC, and DJGPP. Since I was still using my old computers, I was interested in the various x86 CPU families (and CPUID). I also made a lot of floppies, including a single-floppy DJGPP install, as well as an unofficial FreeDOS mini-distribution (three disks) called RUFFIDEA. I made a simple Geocities website that hosted it with lots of links to other "new" stuff. (Eventually I migrated to Google Pages, which became Google Sites.) So I was heavily invested in keeping track of all the "new" DOS software developments. Since I was still using floppies and old machines, I was also interested in compression, hence my work on Paq8o8z (CPUID, FTW!).
But my 2007-era 32-bit Windows Vista laptop (Turion64x2, 1.7Ghz, 1GB RAM) was worse than Windows XP regarding NTVDM (silly DPMI limit). And it had many other issues. In fact, by 2010 it (and most of my other old hardware) had failed. I don't want to say I gave up on assembly, but I certainly lost some interest in that (and compression, floppies, etc).
By 2011, I was using a new Lenovo Core i5, 3.2Ghz, 6GB RAM (Nehalem Westmere). Again, Windows hosed itself. It was probably a blessing in disguise, because now I was triple-booting FreeDOS, Lucid Puppy Linux, and Windows 7 (64-bit). Plus, that machine has VT-X (EPT) and "unrestricted guest mode", which is dozens of times faster than my (2009-ish) Dell laptop (Pentium Dual Core, 2.2Ghz, 4GB RAM) running Windows 7 (also 64-bit, ugh).
Around this time I also started learning Pascal and derivatives. Truly, portable code is just easier to adapt to new architectures and OSes. (Don't think AMD64 will live forever!) FPC 3.0.2 even has an "i8086-msdos" target nowadays, so it's better than ever. (Heck, FPC supports inline assembly.)
By this time I also started using bootable USBs, thanks to great tools like RUFUS. And of course I went back to floppies (almost!) by making a minimal virtual image (MetaDOS) for networking under VMs with FreeDOS. Sure, I had bought a USB floppy drive years ago, but I don't need it these days. So it's easy to install, deploy, upgrade old (and new!) machines with FreeDOS. We've come a long way, baby!
Happy 23rd birthday to FreeDOS!
Throughout the 1980s and into the 1990s, I was a big DOS user. I used DOS for everything: writing papers for class, doing lab analysis, dialing into the campus computer lab. I loved the DOS command line. I considered myself something of a DOS "power user" at the time, and I even wrote my own utilities to expand the MS-DOS command line.
So I was a bit irritated in 1994 when Microsoft announced, by way of doing interviews with tech magazines of the time, that MS-DOS would soon go away. The next version of Windows, they said, would do away with MS-DOS. The world was moving to Windows. At the time, "Microsoft Windows" meant Windows 3.1, which was not that great.
I certainly didn't want to be forced to use Windows, not if version 3.2 or 4.0 looked anything like Windows 3.1. I believed I could be more efficient by typing at the command line, not by clicking around with a mouse.
So I decided to do something about that. We could create our own version of DOS, something that worked with programs meant for MS-DOS, but our DOS would be free for everyone to use. Other developers had done the same with Linux, I reasoned, so surely we could do it with DOS.
Twenty-three years ago today, on June 29 1994, I announced to an Internet discussion group what would become the FreeDOS Project:
A few months ago, I posted articles relating to starting a public domain version of DOS. The general support for this at the time was strong, and many people agreed with the statement, "start writing!" So, I have...
Announcing the first effort to produce a PD-DOS. I have written up a "manifest" describing the goals of such a project and an outline of the work, as well as a "task list" that shows exactly what needs to be written. I'll post those here, and let discussion follow.
If you are thinking about developing, or have ideas or suggestions for PD-DOS, I would appreciate direct email to me. If you just want to discuss the merits or morals of writing a PD-DOS, I'll leave that to the net. I'll check in from time to time to see how the discussion is going, and maybe contribute a little to what promises to be a very polarized debate! :->
I am excited about PD-DOS, and I am hoping I can get a group started!
That announcement of "PD-DOS" or "Public Domain DOS" later grew into the FreeDOS Project that you know today. And today, FreeDOS is now 23 years old!
While there's nothing really special about "23 years old," I thought we should mark our anniversary by sharing some interesting moments in FreeDOS history. All this month, I've asked others to share their own stories about how they got started with FreeDOS, or how they joined FreeDOS, or how they contributed to FreeDOS, as part of the FreeDOS Blog Challenge. And I was impressed and humbled to see so many people respond to that challenge.
I'd like to highlight the FreeDOS stories folks have shared with us:
Thanks to everyone who contributed their FreeDOS story! If you would like to share your story about how you use FreeDOS, please send it to Jim (jhall@freedos…) and we'll include it as a follow-up guest post.
Since we've received so many "FreeDOS story" contributions, I plan to collect them into a free ebook, which we'll make available via the FreeDOS website. We are still collecting FreeDOS stories for the ebook! If you would like to add your story to the ebook, send us an essay by Tuesday, July 18.
While everyone has been writing and sharing their memories of FreeDOS, I have been going through the archives to share some interesting highlights from FreeDOS history. Here's a rundown of the history we've uncovered for you:
I hope you enjoyed our memories of FreeDOS as we celebrate the 23rd "birthday" of the FreeDOS Project. For more information, feel free to download our FreeDOS "press kit" (.zip) which announced the FreeDOS 1.2 distribution. Or visit the FreeDOS Wiki. The official home of the FreeDOS website is www.freedos.org.
Guest post: Building the FreeDOS installer
Jerome Shidel created our new FreeDOS Installer, which first appeared in the FreeDOS 1.2 distribution. Jerome shared his FreeDOS story:
My FreeDOS story began many years ago in the pre DOS days. An early version of MS-DOS may have been around. But, it definitely was not a thing yet. It brings back fond memories.
At age 9, laying on the living room floor and hoarding the television. The Sinclair ZX80 powered up and its manual open. Teaching myself to program its 1 kilobyte of RAM with that terrible membrane keyboard. It wasn’t long until my father got me the enormous 16Kb RAM add-on module. That was a lot to fill back in those days. Especially when you bumped the ZX80, it would reset that extra memory module.
Next came that incredible Atari 800XL and the Coleco Adam home computers, before my father got a Laser XT and we moved into the reign of the 8086 CPU and MS-DOS. I spent many wonderful winter days sitting up in the attic with a space heater blowing under the desk, waiting for the keyboard to warm up enough for the computer to boot without errors.
After several years, Windows 3.1x became popular. But, I only had limited use for it at the time. I still spent most of my time wearing out keyboards programming odds and ends in DOS.
In 1995, Microsoft broke my heart with Windows 95. It looked so new and cool. I was so excited to give try it on my almost new $5000 notebook. That would be pricey now, imagine that in 1995 dollars. I went over all the requirements. Everything specification was met or far exceeded what it needed. I was ready to rock Windows 95. Or, so I thought.
Part of the way through installation, the notebook all of a sudden went to just a black screen. The install trashed my video BIOS firmware. According to the manufacturer, I would have to send it in and have some chips replaced. Not the patient sort, through a lot of trial and error, I was able to just re-flash the BIOS and get it working again. But, it would never support Windows 95.
At that point, I started to look around the internet for alternates to Microsoft products. I messed around with Slackware Linux and other DOS systems (like PC-DOS).
Even though I eventually grew to accept what happened in the Windows 95 debacle, I never did truly forgive them. I can really hold a grudge. Not even now.
So, I have been aware of FreeDOS since its early days in the late 1990s. But, I really did not use it much back in those days. FreeDOS was still in its early alpha stages. Plus, there were several other DOS distributions and Linux platforms that I had favored at the time. However, I did install some of those early versions and played around with them a little. It found it interesting, that unlike many of the commercial versions of DOS, FreeDOS was not stagnant. It was slowly progressing. I figured that I needed to keep an eye on that crazy FreeDOS project.
Fast forward nearly 20 years…
Generally speaking, I'm not much into any of the social media stuff on the web. So it was kind of unusual that back around March of 2015, I was wasting time on Facebook.
I was looking around at Facebook pages and groups for some of my interests. OpenSUSE, bash, Delphi, Pascal, assembly, FreeDOS… I though to myself:
“Huh?” “What?” “There is a FreeDOS page on Facebook?” “Wow!” “Neat.”
I was quite surprised to find out that there were still several very active DOS communities around the world. It was pretty weird in a cool way. I figured I should do something nice for them.
So, I perused some of the programs that I wrote back in the early 1990s and decided to make some of the stuff Open Source. Most notably was "Program Manager v7.2" a multi-menu program and game launcher. PGM's most recent update was way back in 1992. Yet, it was well received by the FreeDOS community. I decided to do more.
That led me to doing a complete rewrite of PGM using more modern concepts and techniques. I went a little (ok, a lot) overboard. Theme-able, multi-language, custom fonts, screen savers and etc. Like FreeDOS, The Program Manager Eternity (PGME) was reborn to live forever.
During the development of PGME, it was brought to my attention that Jim Hall was looking to create a brand new installer for FreeDOS. Something that looked more modern, easier to install and was powered by batch files. Something that could use some "simple" command line utilities to install FreeDOS.
Hmm, a set of tiny non-memory resident utilities that can interact with each other to create a text mode UI for batch files. All the logic for the batch program to reside in the batch. Use no memory. Yet provide batch files with enough functionality to build a flexible and simple installer. It sounded interesting. Sure why not.
So, I volunteered to create some GPL tools that could do the job. There were a few naysayers that thought it could not be done or just wouldn’t work. But, most were excited that a new FreeDOS release might be coming soon.
Well as you know, one thing tends to lead to another. As the foremost expert on the usage of V8 Power Tools, a set of batch tools I wrote, I volunteered to create the new installer and work began on FDI, the FreeDOS Installer. There were many enhancements and additions to V8PT during the development of FDI. It was a long and slow process jumping back and forth between them as new needs arose. But, the work progressed.
There was a lot of back and forth with Jim during the development of FDI. Lots of design, workflow and other decisions. Plus, coordinating all of the additional languages supplied by the community, the new installer was quite a lot of work.
Many thanks to the FreeDOS community for all their help during the development of FreeDOS 1.2. There are a wonderful community with many great people. Without their efforts, this release would not exist.
Then of course there is FDIMPLES. Originally, I created it specifically just to provide detailed package selection for the Advanced Mode of FDI. Its only purpose, modify the package list used during installation. But, as go so many plans, it didn't stay there. It was just to cool for installing and removing packages. I have big plans FDIMPLES.
Nowadays, there are several other areas that keep me busy with the FreeDOS project. But, that would be a tale for another day.