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?
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?
Re: FreeDOS (Score:1, Funny)
Why would it? The goal is to create a good OS.
Re:FreeDOS (Score:5, Funny)
Re: (Score:3)
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.
Re: (Score:2)
The difference is that FreeDOS actually works.
ReactOS works within its defined sphere, and the main difference there is the defined sphere. FreeDOS is able to achieve better stability because no one else is modifying APIs in its domain.
ReactOS, however, has always been on a moving target - instead of getting a complete stable Win95 API set then moving to Win98/98SE/ME/2k/XP/Vista/7/8/8.1/10, they change the target whenever Microsoft makes a new release. Thus they're always behind and will never be able to achieve a complete stable product.
Re: (Score:2)
That's exactly what I expect from the name "React[to the changes in the target you're trying to track]OS".
Which is no denigration of the system - I've not actually got round to dropping a spare HDD into a machine to try it - but simply tells me that they know and accept that they're going to always be playing catch-up.
Re: (Score:2)
That's exactly what I expect from the name "React[to the changes in the target you're trying to track]OS".
Which is no denigration of the system - I've not actually got round to dropping a spare HDD into a machine to try it - but simply tells me that they know and accept that they're going to always be playing catch-up.
Yes, they've done a fine job; but by constantly changing it keeps from being able to make a more complete and capable system that can run more software and be more compatible in the end.
Memories... (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
Re: (Score:3)
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.
Re: (Score:2)
Convincing work to buy the Microsoft "bible" and slowly working my way through the interrupt listings......
Re: (Score:3)
I believe we used a book written by Peter Norton to that end. I don't remember what it was called, unfortunately.
Re: (Score:2)
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.
Re: (Score:3)
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'
Re: (Score:2)
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.
Peter Norton Book (Score:2)
Re: (Score:2)
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.
Re: (Score:1)
Digger by Windmill Software :-)
@ 12 MHz was OK, @ 16 MHz (Turbo) it was quite hardcore.
Re: Memories... (Score:1)
Did you mean 10Base2? That needed the 50 ohm terminator.
Re: (Score:3)
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!
Re: (Score:2)
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.
debug.exe
Re: (Score:2)
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.
Re: (Score:2)
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.
Re: (Score:2)
Re: Memories... (Score:2)
IIRC HD (high density) came out later, only on 3.5" floppies. SD and DD were available for both 5 1/4" and 8" sizes.
Re: (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.
Re: (Score:2)
I don't think that's quite right, but my memory is very hazy now.
5 1/4" started at 160KB (on PCs), then went to 180KB by fitting an extra sector in each track.
Then they doubled to 360KB, but I don't remember if it was because of DS (double-sided) or DD (double-density). Were DSDD 720KB?
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. These were called HD, I seem to recall (I know that contradicts what I said above).
3 1/2" driv
Re: (Score:2)
PS, reading the thread again, I realize I've said you're not quite right, but then wound up just confirming what you wrote.
In my defense, I did say my memory was very hazy these days -- I clearly can't even remember what the post I'm responding to said!
Re: (Score:1)
Single Sided Single Density floppies only held 80K. Everything scales up from that, mostly.
I have an Intel Development System in the storeroom that uses 8" floppy disks. It runs the Intel operating system called ISIS.
Yeah.
Re: (Score:2)
Re: (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 da
Re: (Score:2)
Gosh that goes back to times best forgotten.
I put two disk drives on my Apple ][+, both could handle SSDD, but I had to cut notches so I could flip them and use the back side of the disks. The notch cutter was a simple thing like a stapler that cost way too much for what it was, but when a box of ten SSDD Elephant brand disks cost $30, it was worth the price.
Things have changed mostly for the better. (Trump is probably a temporary aberration)
Re: (Score:2)
Amateurs. There was always the kid who would use his "calibrated elbow" instead of a torque wrench, then wonder why his hot rod's engine blew up the first time he shifted from first to second gear.
Dos Memories (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
Re: (Score:2)
using debug.exe to write primitive apps
writing TSR apps
tasm
masm
Turboc++
Re: (Score:3)
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
DOS was Awesome (Score:1)
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.
Interact with Windows with only a mouse??? (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?
Re: (Score:3)
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
Re: (Score:2)
I believe DOSSHELL was actually a version of Windows internally - 1.0 or so. Windows/386 didn't actually come about until 2.something which was able to run in "enhanced" mode that let yo
Re: (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.
Re: (Score:2)
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
Nostalgia one uppmanship (Score:3)
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".
Re: (Score:2)
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.
Re: (Score:2)
Re: (Score:3)
--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.)
My Thanks To The FreeDOS Team (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!!
Re: (Score:3)
Re:Isn't MS-DOS free anyway now? (Score:4, 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.
Re: (Score:2)
Re: (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.
DosBox vs FreeDOS (Score:3)
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 complicat
Re: (Score:2)
Corporate copyrights last 95 years. If they become aware of you and see a chance for money, lawyers will harass/threaten/sue you right up to the 95th year.
Re: (Score:2)
BIOS updates when you only have Linux (Score:2, Interesting)
Re: (Score:2)
"run legacy business software"
It's been more than 20 years. What software would that be?
The most common example that comes up is when someone discovers old data that they'd like, or that they need, and today's programs don't read them. For example, Microsoft Excel doesn't read WKS files anymore.
I used to work in higher ed, and we had a researcher who uncovered some floppy disks with some old research data. They just had to get at the data in there. I recall it was a niche program, not a spreadsheet or word processing file, and nothing would read the data. So we installed FreeDOS on a machine,
Re: (Score:2)
Re: (Score:2)
Fond memories? (Score:5, Informative)
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.
Re: (Score:1)
Re: (Score:2)
Yeah sorry I meant "black hat, assholes, bad people hackers" not "hackers" in general.
It has been a life saver (Score:5, Insightful)
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.
Re: (Score:2)
Re: (Score:3)
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)
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.
Re: (Score:2)
(I somewhat regret not keeping a copy of the DRDOS source from when it was freely available.)
I still have my Caldera OpenDOS ver. 7.01 CD that I picked up at their booth at a yuuuge computer event back in 1997 (I think it was called Computex). It has a crack in the outside edge of it, which I only just discovered when I dug it out, but I was able to rip an ISO of it as there's only about 40MB of data on the disc. There were a handful of projects that tried making something of the code, but I don't think they went very far.
http://www.resoo.org/docs/dos/... [resoo.org]
DOS & Doom (Score:5, Interesting)
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..
But does it.. (Score:2)
23 years? meh (Score:2)
[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.
Low-level format (Score:1)
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.
Re: (Score:3)