Slashdot Mirror


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

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?

29 of 123 comments (clear)

  1. Memories... by Anonymous Coward · · Score: 5, Interesting

    C:\DOS
    C:\DOS\RUN
    RUNDOS.RUN

    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...

    zmodem...

    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.

    DesQview

    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

    1. Re:Memories... by 93+Escort+Wagon · · Score: 2

      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.

      --
      #DeleteChrome
    2. Re: Memories... by Bing+Tsher+E · · Score: 3, Informative

      HD 5-1/4" floppies were 1.2M in capacity.

      DD 3.5" floppies were 720K in capacity.

      Both existed, and during a period of time, both were common.

    3. Re:Memories... by 93+Escort+Wagon · · Score: 2

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

      --
      #DeleteChrome
    4. Re:Memories... by murdocj · · Score: 2

      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!

    5. Re:Memories... by X3J11 · · Score: 2

      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's Guide to the EGA, VGA and SuperVGA by Ferraro (just checked Amazon, apparently that last one goes for almost $300.00 CDN for a used copy!). While they're not really relevant any more, I still enjoy reading them.

      I've often wondered if anyone in the FreeDOS dev community would be interested in them, were I to offer to donate them. Then again, most of the information they contained can be found on the Internet now.

    6. Re: Memories... by Bing+Tsher+E · · Score: 2

      When the PC/AT came out, they had 1.2MB drives that purportedly could read and write the above formats too, but they often didn't.

      The 1.2MB 5-1/4" HD floppy drives could read the older DSDD 360K floppies. They could also write to them. But because they were 80 track drives, and the 360K floppies were 40 track disks, they only wrote to half of the track width on the 40 track diskettes. If there was already data on sectors that had been written using a 40 track drive, the narrow data written by the 80 track drive didn't remagnetize the whole wide track. Trying to read the disk again on a 40 track drive would end up with corrupted data sectors. This could even be a problem when reading the 40 track disks on a different 80 track drive, because slight head misalignment on the second 80 track drive would pick up the 'off track' magnetic flux.

      It is a very unreliable process, and obviously very easy to corrupt the DSDD diskette. IBM didn't really intend it as a downgradable process. You were supposed to get your PC-AT and not look back, I guess.

      The only way to reliably write to a 40 track (360K) disk in a HD floppy drive if you want to read it in a 40 track drive is to start with a brand new never-formatted DSDD diskette in the HD drive, format it in that drive, and then read it in the 40 track drive. (this could prove necessary if you want to get data onto a machine with only the DSDD drive from a machine with only the HD drive. The alternative to starting with a 'new' diskette is to thoroughly degauss a DSDD diskette before formatting it in the HD drive. But this isn't that easy to accomplish, because it has to be very flat and cleanly degaussed.

      That should be enough arcana that nobody will care about for tonight.

  2. Dos Memories by Anonymous Coward · · Score: 5, Funny

    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

    1. Re:Dos Memories by MobyDisk · · Score: 2

      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. That slow 3 second dawning as to what just happened... my... entire... hard drive... my hands and arms became numb.

      Learning about backups indeed!

  3. Interact with Windows with only a mouse??? by weeboo0104 · · Score: 2

    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?

    --
    It is easier to build strong children than to repair broken men. -Frederick Douglass
    1. Re:Interact with Windows with only a mouse??? by Bing+Tsher+E · · Score: 2

      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.

  4. Nostalgia one uppmanship by spaceman375 · · Score: 2

    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".

    --
    On the one hand you take life too seriously, and on the other, you do not take playful existence seriously enough. Seth
    1. Re:Nostalgia one uppmanship by Wolfrider · · Score: 2

      --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.)

      --
      .
      == WolfriderV6 == I'm willing to admit that *I just might* be wrong... Are you??
  5. Re:FreeDOS by Anonymous Coward · · Score: 5, Funny

    I tried Linux DOS but bash, their version of command.com, isn't very good.

  6. My Thanks To The FreeDOS Team by Anonymous Coward · · Score: 5, Informative

    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!!

    1. Re:My Thanks To The FreeDOS Team by gfxguy · · Score: 2

      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, as he was able to boot up so quickly and just get to work, and then, without even exiting the software, just hit the power switch to turn it off at the end of the day. From his limited perspective on the matter, he doesn't understand the benefits of what Windows bought to PC users, like not requiring a different printer driver for every application instead of just one for Windows - his tax software is largely similar to what it was 30 years ago - a bunch of fill in the blank prompts, for the most part. They didn't need to upgrade anything, or now, for some reason, require Windows 10. Still, now he can have some backwards compatibility if ever needs to go back that far without needing another computer and without losing the benefits of a modern OS.

      --
      Stupid sexy Flanders.
  7. BIOS updates when you only have Linux by snkmoorthy · · Score: 2, Interesting

    Free DOS has been a savior when you need a BIOS update and the vendor only gives an image loaded with some DOS executable.

  8. Re:Isn't MS-DOS free anyway now? by MightyMartian · · Score: 3, Interesting

    If you were writing software that you wanted to distribute DOS with, such as games to be run on emulators, you can say do so with FreeDOS, whereas distributing with a version of MS-DOS could still get you in hot water. I've seen it running on embedded equipment for that very reason.

    --
    The world's burning. Moped Jesus spotted on I50. Details at 11.
  9. Re:Windows 3.0+ ALT-TAB by Gadget_Guy · · Score: 2

    That was under MS Windows 3.0, 3.1, 3.11 and higher, where you would start multiple MS-DOS shell

    The summary (and grandparent poster) was talking about Windows, not DOS. Weeboo0104 was actually right; you can control Windows 3.x entirely without a mouse with a few obvious exceptions like the paint program. But you could use the keyboard to operate the menus, move windows, click buttons etc. Each version of Windows since then has removed keyboard control until we have patheticness of Windows 10. Actually, that's a bit unfair because I think they improved things slightly between Windows 8.1 to 10.

    Original MS-DOS 5.0 to 6.23 didn't have any ALT-TAB without Windows 3.x installed.

    MS-DOS 4.00 to 6.22 did have the ability to ALT-TAB between programs using DOSSHELL.EXE. It was more limited that doing it in Windows in that all the programs had to share conventional memory (in the 640KB area). Here is a video showing how this works. Once you launch the programs from DOSSHELL, you can ALT-TAB between them.

    I hope this helps you for your choice of the next operating system to use!

  10. Re:Isn't MS-DOS free anyway now? by Bing+Tsher+E · · Score: 2

    It might not be common now, but BIOS update packages of the past commonly would boot up a copy of FreeDOS, usually off a floppy diskette, in order to perform the BIOS update. Because the BIOS update was low level and needed to be run on a small independent software platform. This was common in the era of Windows NT and derivatives like W2K and XP.

  11. Fond memories? by DontBeAMoran · · Score: 4, Informative

    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.

    --
    #DeleteFacebook
  12. Re:FreeDOS by tehcyder · · Score: 2

    I tried Linux DOS but bash, their version of command.com, isn't very good.

    There seem to be a lot of humourless mods today. That's comedy gold.

    --
    To have a right to do a thing is not at all the same as to be right in doing it
  13. It has been a life saver by niks42 · · Score: 4, Insightful

    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.

  14. DosBox vs FreeDOS by DrYak · · Score: 2

    Most companies like GoG use DosBox for the purpose of distributing DOS based games with however.

    DOSBox is an *emulator* (like VirtualBox and VMWare).
    It provide some minimalist subset of DOS (like the above mentionned provide their own BIOS and/or EFI implementation).
    But that's far from a full MS-DOS compatible environment. If you need anything DOSBOX's bare minimum (which is essentially just a minimalistic shell) you need FreeDOS (e.g.: MORE command)

    For games that don't immediately take over the hardware and control it with BIOS calls and straight IO ports banging (i.e.: anything that uses a complicated .BAT launcher), you'll need extra parts and Free DOS is a nice source for you to get them.

    (So DOSBox should be compared to FreeDOS, but instead to FreeDOS' kernel and a few critical .SYS)

    --
    "Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
  15. Re:I've got a fond memory to share by Big+Hairy+Ian · · Score: 2

    The summary is going on about W3.1 not having a command line? WTF I remember W3 & W3.1 both having an MS-DOS Prompt option

    --

    Build a Man a Fire, and He'll Be Warm for a Day. Set a Man on Fire, and He'll Be Warm for the Rest of His Life.

  16. Still sucks by valnar · · Score: 2

    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.

    1. Re:Still sucks by Jim+Hall · · Score: 2

      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.

  17. PLIP by Neon+Spiral+Injector · · Score: 3, Interesting

    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.

  18. DOS & Doom by kackle · · Score: 4, Interesting

    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.