Microsoft Updates MS-DOS GitHub Repo To 4.0

We’re not 100% sure which phase of Microsoft’s “Embrace, Extend, and Extinguish” gameplan this represents, but just yesterday the Redmond software giant decided to grace us with the source code for MS-DOS v4.0.

To be clear, the GitHub repository itself has been around for several years, and previously contained the source and binaries for MS-DOS v1.25 and v2.0 under the MIT license. This latest update adds the source code for v4.0 (no binaries this time), which originally hit the market back in 1988. We can’t help but notice that DOS v3.0 didn’t get invited to the party — perhaps it was decided that it wasn’t historically significant enough to include.

That said, readers with sufficiently gray beards may recall that DOS 4.0 wasn’t particularly well received back in the day. It was the sort of thing where you either stuck with something in the 3.x line if you had older hardware, or waited it out and jumped to the greatly improved v5 when it was released. Modern equivalents would probably be the response to Windows Vista, Windows 8, and maybe even Windows 11. Hey, at least Microsoft keeps some things consistent.

It’s interesting that they would preserve what’s arguably the least popular version of MS-DOS in this way, but then again there’s something to be said for having a historical record on what not to do for future generations. If you’re waiting to take a look at what was under the hood in the final MS-DOS 6.22 release, sit tight. At this rate we should be seeing it sometime in the 2030s.

30 thoughts on “Microsoft Updates MS-DOS GitHub Repo To 4.0

        1. I think that’s probably the most practical benefit to having access to this. If there are any compatibility issues in any of the more modern, open source DOSs they can find the solution now.

          1. I couldn’t reply to the other nested comment but thank you for mentioning ArcaOS.
            I saw a blurb when it was about to be released and in the haze of internet and years since, I could not for the life of me recall the name lol. Thank you :) Saturday now has a fun project.

      1. We did a demo booth a while back for a school with some classic OSes and machines and it was pretty funny to watch. A lot of them commented how they wished Windows was as simple to get around on and find things as on 3.11 but they found the hokey terminology on the Mac and the shared window experience to be less than ideal ie frustrating. They inevitably closed whatever they were doing trying to get to something else. Anyhoo, it was fun to watch and hear their opinions about the systems. But yeah total rose colored glasses on some of those things lol.

      2. To be fair, System 7, released 1991, didn’t do so bad in comparison to Windows 3.0 or 3.0 MME.

        It’s multi-tasking was humble, but System 7 could be used for daily work just fine. As good as an Atari ST, I’d dare to say.
        It also had built-in networking and not the typical memory limitations of MS-DOS (I know of 32-Bit Clean/Not clean).

        While an advanced user was able to easily configure XMS, EMS and load programs into UMA and XMS, not all DOS users were so technically inclined.

        A bit later in it’s life, System 7 also contributed to the then-young multimedia era. Kodak Photo-CD, Video CD, QuickTime, TrueType fonts were a thing back then.

        The legendary game “Myst” had used QuickTime VR technology, which also was available to Windows 3.1.

        Browsing online services like CompuServe, AOL or later on, the internet, was possible with System 7.

        Especially web browser support was something that System 7 did better than Windows 3.1x.
        On Windows 3.1, web browsers did tend to crash the system and vuce versa.

        Then there was the trumpet socket story, because normal Windows 3.1 had no TCP-IP network stack. IE 5 shipped with its own dialer because of it, even. (Yes, WfW 3.11 had TCP-IP/32, but it was optional and far from stable/complete).

        All in all, System 7 appeared more like a real OS than Windows 3.x.
        It was very customizable, too.

        Complex programs like early emulators had been ported to System 7, as well.
        Windows 3.1 had some ports, too, but they had to fight certain issues (wave out and GDI were async, WinG wasn’t easy to program, Windows message queue, some required Win32s).
        Ports to Linux or OS/2 had been more popular at the time, even.

        That being said, I do like Windows 3.1x, really. I have fond memories of it.
        But I wouldn’t say it was more capable than System 7. That would have been BeOS or OS/2,at the time. Or Solaris, HP-UX.. ;)

        1. I never said windows 3.x was more capable than system 7

          Microsoft also didn’t present it as it’s flagship for just a out darn near a decade either

          Just from your example 7 runs on my 1986 Mac SE with 7.01 and on the first couple gens of pictures machines

          That’s 2 completely different architectures covering almost 15 years of random ass Apple weirdness where almost every class of machine is its unique snowflake all glued into one os with billion plug-ins and patches to keep the illusion

    1. Nightmare!

      Escape the virtualized 68K!
      Just when you think ur out, you fall into the network stack or filesystem.
      Back to square one.
      But you know once out of the 68K slum, you own the entire PPC memory space. Can find your porn.

  1. “We can’t help but notice that DOS v3.0 didn’t get invited to the party — perhaps it was decided that it wasn’t historically significant enough to include.”

    Personally, I have another explanation. It’s one of the good releases, simply.
    MS-DOS 4 is “bad” like the other versions Microsoft had given out.
    The good ones were 2.11, 3.x (mainly 3.20 and 3.30), MS-DOS 5.0a, MS-DOS 6 (mainly 6.20 which was being removed quickly).

    While MS-DOS 4 wasn’t as bad as press may have made it (IFS was cool), it had two noticeable flaws.
    – Higher memory consumption
    – The new kernal structures were incompatible with v3, which broke all kinds of utilities back then.
    MS-DOS 5 then went back to use v3 compatible structures again.

    But by that time the harm had already been done, many popular applications had been patched for v4 compatibility.
    – Which in turn caused trouble with modern DOSes and DOS 4 aware applications (those that didn’t know of DOS 5 yet).

    Because, they assumed that DOS 4 and all subsequent versions would use new structures. Which wasn’t the case.
    So DOS 3 aware and DOS 5 aware applications are those which would cause the least trouble.

    But that’s just my point of view, of course.

    The popular MS-DOS 5 was the result of DR-DOS 5, by the way.
    Things like UMB and HMA support were being introduced by Digital Research first.
    DR DOS also identifies itself as an older DOS, for compatibility reasons.

    1. Thanks a lot for clarification! 😎
      Personally, I knew about it before, but I didn’t expect this MS-DOS 4 here to be related to the mythical Multi-Tasking DOS.
      Btw, there are some nice blog posts/articles at about DOS.

  2. This prompted me to have a short peek at FreeDOS again.
    It’s apparently still being actively developed to support more modern hardware. It has support for USB (can also boot from it) Networking and other stuff.

    Also, I have not updated BIOS-es (UEFI) for quite a long time now (10+ years?) but when I last did this, I put an image (made by the MoBo manufacturer) on an USB stick and booted from it. That image used FreeDOS to pull on it’s laces and get the hardware flashed. I’m not sure if they still do it this way. I think some have built this functionality directly into the UEFI boot configuration.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.