Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?
Open Source Operating Systems

23 Years Of The Open Source 'FreeDOS' Project (linuxjournal.com) 123

Jim Hall is celebrating the 23rd birthday of the FreeDOS Project, calling it "a major milestone for any free software or open-source software project," and remembering how it all started. An anonymous reader quotes Linux Journal: If you remember Windows 3.1 at the time, it was a pretty rough environment. I didn't like that you could interact with Windows only via a mouse; there was no command line. I preferred working at the command line. So I was understandably distressed in 1994 when I read via various tech magazines that Microsoft planned to eliminate MS-DOS with the next version of Windows. I decided that if the next evolution of Windows was going to be anything like Windows 3.1, I wanted nothing to do with it... I decided to create my own version of DOS. And on June 29, 1994, I posted an announcement to a discussion group... Our "PD-DOS" project (for "Public Domain DOS") quickly grew into FreeDOS. And 23 years later, FreeDOS is still going strong! Today, many people around the world install FreeDOS to play classic DOS games, run legacy business software or develop embedded systems...

FreeDOS has become a modern DOS, due to the large number of developers that continue to work on it. You can download the FreeDOS 1.2 distribution and immediately start coding in C, Assembly, Pascal, BASIC or a number of other software development languages. The standard FreeDOS editor is quite nice, or you can select from more than 15 different editors, all included in the distribution. You can browse websites with the Dillo graphical web browser, or do it "old school" via the Lynx text-mode web browser. And for those who just want to play some great DOS games, you can try adventure games like Nethack or Beyond the Titanic, arcade games like Wing and Paku Paku, flight simulators, card games and a bunch of other genres of DOS games.

On his "Open Source Software and Usability" blog, Jim says he's been involved with open source software "since before anyone coined the term 'open source'," and first installed Linux on his home PC in 1993. Over on the project's blog, he's also sharing appreciative stories from FreeDOS users and from people involved with maintaining it (including memories of early 1980s computers like the Sinclair ZX80, the Atari 800XL and the Coleco Adam). Any Slashdot readers have their own fond memories to share?
This discussion has been archived. No new comments can be posted.

23 Years Of The Open Source 'FreeDOS' Project

Comments Filter:
  • Memories... (Score:5, Interesting)

    by Anonymous Coward on Sunday July 02, 2017 @09:57PM (#54732537)


    8.3 character filenames
    CON, COM, LPT "files"

    EMM386.EXE and HIMEM.SYS, trying to get the "right" mix of EMS, XMS and Conventional memory for games.

    Using dos "edit" or qbasic.exe for editing and running basic programs.

    QuickBasic 4.5

    Dos "Extenders" and 32-bit "flat" mode.

    SMARTDRV.EXE to cache my drives.

    "VESA" bios "extensions"...

    setting the "BLASTER" environment variable "A220 I5 D1 T1"

    Using the crappy "dblspace" program.. nothing but a fancy wrapper for pkzip

    pkzip. lha, arj, unarj...


    chkdsk, fdisk, and good old "format c:"

    master, slave, 40 vs 80 pin IDE cables.

    HD vs SD floppy disks.

    ZIP drives, parallel ports, "real" serial ports, RS-232 electrical signalling levels

    null modem cables

    IPX/SPX network drives

    10BaseT, CoAX networking, with terminators.


    Mouse Drivers, different ones for every mouse protocol out there.

    MS-DOS "Executive"

    And now, with a Raspberry Pi, or any "crap" PC that I find, I can run anything, with out worrying about memory limits, XMS, EMS, Conventional memory, extenders, IRQ's DMAs, Ports,

    I do miss some things:

    -5 second reboots
    -no firmware updates for everything
    -bare-metal programming
    -Knowing all the hardware in my PC, no EFI, or Hidden Intel-ME firmware

    • Ah, yes, back to the heady days of extended versus expanded memory.

      Also finding math bugs in the coprocessor commands in Microsoft Macro Assembler... and being told "thank you for the report, we'll make sure those are fixed in the next version which you'll have to buy for $149.99" (or whatever the full retail price was at the time).

      Yes, I remember well when I started to fall out of love with Microsoft.

      • by dwywit ( 1109409 )

        Convincing work to buy the Microsoft "bible" and slowly working my way through the interrupt listings......

        • I believe we used a book written by Peter Norton to that end. I don't remember what it was called, unfortunately.

          • Programmer's guide to the IBM PC?
            Here in Germany a different book was popular for all that. PC Intern - a really thick book, one could kill someone with it.

            • by X3J11 ( 791922 )

              I still have my copy of the 6th edition of PC Intern in English (with many translation errors throughout the text, particularly in the latter parts discussing Windows). It was a great book, with some of the most in-depth coverage of many aspects of the PC, though the Win section seems like they rushed a bit to get that in.

              I haven't been able to part with my old DOS-era books. Ralf Brown's Interrupt List, a couple books on DOS extenders, Schulman's Undocumented DOS, and the once highly respected Programmer'

            • Programmer's guide to the IBM PC?

              Yes! As soon as I saw the cover, I knew that was the book. Thanks!

              This little discussion is turning into a fun little trip down memory lane.

          • I imagine there were many under his name, but the one on the shelf behind me (covered in dust, I just moved it now to see it, though it's been stationary for 15+ years) is called "The New Peter Norton Programmer's Guide To The IBM PC & PS/2", second edition, dated 1988.
            • The one I was thinking of (which dunkelfalke identified above) was likely the direct precursor to your book, from before when the PS/2 was a thing.

              Man, things have changed. Sometimes I forget how much.

    • by murdocj ( 543661 )

      Hooking up 4 floppy disks so I could actually edit, compile link and run w/o having to manually swap disks. I had a whole megabyte online!

    • by guruevi ( 827432 )

      How about a TCP stack and Caldera DR-Webspider to get online and look at pr0n.
      STS and the many other clones of Norton Commander
      Customized config.sys and autoexec.bat menu's for various games and software you wanted to run
      Being able to exit Windows
      Replacing the MS-DOS in Windows 95-ME with DR-DOS just to get it stable.

    • Good list.

      About the only major thing I'd add to it is: manually programming memory overlay management; organizing code so chunks of it could be discarded and overlaid with other chunks. And then VROOMM came along and made life so much easier.

      Speaking of which, I guess I'd also add Borland Turbo Pascal and Turbo C++, and TurboVision for UIs. Great stuff, actually.

      • by caseih ( 160668 )

        And Turbo Vision lives on in Unix as tvision (GPL) [sf.net] or an older BSD fork [sigala.it] for C and C++, or Free Vision [freepascal.org] for FreePascal. Not sure if any of these projects has been actively developed for some years. But they are fairly mature projects.

        Several IDEs have been built using these tools that look like Turbo C++ used to. Kind of neat, and still looks good and is useful on modern Unix systems today.

    • by Zemran ( 3101 )
      Anything that is not real time systems that is. DOS is great for real time systems and I have never understood why ATMs etc. run on Windows, the worst possible option. It is a long time since I have needed it but when I was programming control systems for machinery DOS was the best. Everything else is multi threaded and goes off to do something else just because it wants to. If you programme a DOS based system, the very things that everyone else sees as a weakness are its strength. It only does what yo
  • by Anonymous Coward on Sunday July 02, 2017 @10:00PM (#54732547)

    Ralph Brown's Interrupt List..

    Trying assembly language programming...

    Calling interrupt 0x13h when I wanted 0x10h ,learning the difference between "set cursor position" and "format track" the hard way..

    Learning about backups

    • by mnmn ( 145599 )
      copy con <file>
      using debug.exe to write primitive apps
      writing TSR apps
    • by MobyDisk ( 75490 )

      I have a similar story where I mixed up int 0x13h function 02 and 03. I ran my program, which was to scan all the sectors on the drive. I was a kid, so I couldn't afford a second hard drive to test it with. I was testing it with the drive I wrote the program on of course. I ran it. It took longer than I thought. I said "hmm, that's weird" and hit ctrl+c. Then I tried some commands and they didn't work. Then a "dir" didn't work. Then I had this horrible sinking feeling that I will never forget. Tha

  • by Anonymous Coward

    DOS was awesome!

    -No product activation
    -No telemetry
    -no copy protection
    -no registry
    -no DRM [ Digital Restrictions Management ]

    FreeDOS should backport telemetry, DRM. copy protection, registries, and DRM.

  • My memory must be faulty.
    I distinctly remember being able to ALT-TAB between Program Manager and other windows. I also remember while in Program Manager being able open a DOS window from an icon. But why would I when I just wanted to run Word Perfect 5.1 and didn't need Program Manager running to do that?

    Don't forget that MS-DOS wasn't the only player out there. Remember IBM-DOS and DR-DOS?

    • I ran Windows 2.1 for a fairly significant amount of time before I could afford a mouse. Mice at the time were in excess of $100 each.

    • I distinctly remember being able to ALT-TAB between Program Manager and other windows. I also remember while in Program Manager being able open a DOS window from an icon. But why would I when I just wanted to run Word Perfect 5.1 and didn't need Program Manager running to do that?

      You're correct on all points. Windows used a typical shim method, a small .com executable which loaded the .exe. When you dropped to DOS mode, the .com stayed in memory and relaunched the .exe when you were done. This system actually persisted all the way through to Windows 98, Windows ME being the first version of Windows (not Windows NT) to have no DOS mode... and the last version of Windows not based on NT. Even it had a command shell, though. My windows experience ends at 7, but as far as I know, Window

  • by spaceman375 ( 780812 ) on Sunday July 02, 2017 @10:26PM (#54732621)

    How about 4DOS? Can I run pollyshell under freedos? Pollyshell was an implementation of unix commands under DOS. 4DOS was a command shell replacement that was smaller, faster, and had more features than MS-DOS. I loved the comandline history and editor that we take for granted today but was so freaking cool "in the day".

    • by caseih ( 160668 )

      There's a good chance that 4DOS would run, and maybe even Pollyshell. The FreeDOS kernel is fairly compatible with MS-DOS. You could download it into a VM and give it a try. I'm sure you can downlaod 4DOS or Pollyshell from some archive somewhere.

    • Hell, 4DOS was worth it for the colored directory listings and tab completion alone.
    • by Wolfrider ( 856 )

      --As a fellow NDOS/4DOS appreciator -- If you're not already aware, check out jpsoft.com - TCC/LE is the successor to 4DOS, is free and also has a 64-bit version of CMD for "modern" Windows (I believe XP and up.)

  • by Anonymous Coward on Sunday July 02, 2017 @11:08PM (#54732693)

    Now and then a customer needs something that only runs in DOS but have had their old Pentium III box die on them. FreeDOS will almost always run their application on newer hardware. It’s been a lifesaver!!

    • by gfxguy ( 98788 )
      Agreed. My father is still in business doing accounting (he's 87); been using computers for accounting work for his one man operation since before the IBM PC. He's constantly complaining about the forced upgrades the software he uses requires. Every year it's a new version to account for new rules and forms, and he needs to keep his accounting records for a long time (more than the 7 years generally recommended to the general public). He's one of the old farts that still holds GUI interfaces in disdain
  • Free DOS has been a savior when you need a BIOS update and the vendor only gives an image loaded with some DOS executable.
  • Fond memories? (Score:5, Informative)

    by DontBeAMoran ( 4843879 ) on Monday July 03, 2017 @01:04AM (#54732907)

    Any Slashdot readers have their own fond memories to share?

    I remember when computers and the Internet was filled with real computer users, i.e. nerds. Those were good times.

    And then companies, marketing, data mining, governments and hackers arrived and ruined it.

  • by niks42 ( 768188 ) on Monday July 03, 2017 @05:50AM (#54733491)
    Well, it has saved the life of an old bit of kit from HP for me. I have an HP16500A logic analyser, that accepts analog acquisition cards as well. I bought one, only to find that the boot diskette for the machine didn't have the right code for the analog card. The code is all available online for download ..

    Of course, they are not regular diskettes - they run 77 tracks, not 80. A DOS utility called LIFUTIL is used to write diskettes in the correct format. Only runs on DOS or Windows up to Win95 - no WINE I am afraid. My Win95 machine has finally bitten the dust, so I had to boot Linux on an older machine with a diskette drive, hook it onto the network, create a DOS partition, install FreeDOS on it, push the files to write onto the diskette into the DOS partition, boot FreeDOS, run LIFUTIL to write the diskettes and try them out on the HP.

    I had to have a little lie down when it all worked first time. I have to say, that being able to run a DOS program that writes diskettes in some unnatural format is a great test of compatibility, and I was delighted to find FreeDOS; needless to say I will retain a GRUB Boot record for it, just in case for the future.
  • Even now it's not as compatible as MSDOS 6.22. Try running an old memory manager like QEMM386 or 386MAX. It would sometimes crash.

    • by Jim Hall ( 2985 )

      Even now it's not as compatible as MSDOS 6.22. Try running an old memory manager like QEMM386 or 386MAX. It would sometimes crash.

      I would say those are exceptions, and for a reason. Memory managers like QEMM rely on the MS-DOS internal structures, not exclusively API, and the underlying internal structure in FreeDOS is different.

      Applications work fine though. Some people have even installed and run Windows on FreeDOS.

  • PLIP (Score:4, Interesting)

    by Neon Spiral Injector ( 21234 ) on Monday July 03, 2017 @08:13AM (#54733953)

    The first time I networked two of my own computers together it was from FreeDOS to Linux. It had to have been around 1997. I couldn't afford network cards, so I got a null-parallel cable, and connected them using PLIP (Parallel Line Internet Protocol) (like SLIP, but a byte at a time instead of a bit). The Linux machine then acted as a gateway connecting to the Internet using a modem and PPP. I was impressed that I had a TCP/IP stack in DOS.

    PLIP was pretty quick at copying files between the two machines, much faster than my Internet connection.

  • DOS & Doom (Score:5, Interesting)

    by kackle ( 910159 ) on Monday July 03, 2017 @10:24AM (#54734723)
    Back in the mid-1990s, I bought my first PC. My friend (who lived across the country then) and I discovered "Doom" and the joy of death-matching each other directly over dial-up modems (at about $10 an hour of long-distance phone charges, if I recall).

    We used to share new maps with via floppy disk through the postal mail. Being a programmer, I studied DOS and wrote a computer "cold" that infected his PC (via DOS batch files) when he installed one of the maps I sent so that it would lock up his computer on his birthday, displaying a "Happy birthday!" message.

    Weeks later, he calls me at three in the morning demanding I restore his computer to functionality. I told him to take that map disk and run the fixer tool that I put on there. He had already missed placed it in his sloppy apartment.. .. So we had to manually restore the files one by one over the phone per my instructions. Idiot.
  • have systemd?
  • [23 years] ... a major milestone for any free software or open-source software project

    gcc, 1987, ~30 years old
    X11, 1987, ~29 years old.
    GNU HURD, 1990, ~27 years old (and lol)
    Linux (kernel) 1991, ~26 years old
    386BSD -> NetBSD and FreeBSD, 1992, 1993; ~25 years old

    But 23 years is a nice accomplishment.

  • Seems like a waste of neurons that I still remember entering G=C800:5 from DEBUG to run the low-level format utility on the hard drive controller ROM.

If graphics hackers are so smart, why can't they get the bugs out of fresh paint?