[OFFER] Microsoft Multitasking MS-DOS 4.00 1984 Beta and Microsoft MS-DOS 4.0 Source Code

Microsoft Employee Scott Hanselman with the help Former Microsoft Employee Ray Ozzie release the Microsoft Multitasking MS-DOS 1984 Beta and MS-DOS 4.00 Source Code









Source:
https://cloudblogs.microsoft.com/opensource/2024/04/25/open-sourcing-ms-dos-4-0/
https://www.hanselman.com/blog/open-sourcing-dos-4
https://starfrost.net/blog/001-mdos4-part-1/index.html

Download Link:
https://github.com/microsoft/MS-DOS


Comments

  • Just to be clear, is the source code from regular MS-DOS 4.0 or the Multitasking ms-dos 4.0?
  • Just got the news story in my feed this AM.
    One commenter noted:

    "unwiredben says:
    April 26, 2024 at 7:02 am
    Scott Hanselman gives more background on this release at his blog over at https://www.hanselman.com/blog/open-sourcing-dos-4. This isn’t the MS-DOS 4 that was released, but an earlier version that also includes a version of Multitasking DOS (MT-DOS).

    https://hackaday.com/2024/04/26/microsoft-updates-ms-dos-github-repo-to-4-0/

    A damper comment worth noting:

    Joshua says:
    April 26, 2024 at 6:34 am
    “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.
  • Ok, so the disk images are a pre-release of "Multitasking MS-DOS 4.00" from 1984, and the source code release is of regular MS-DOS 4.0 from 1988.
  • Wasn't looking for it, but there is stuff already on archive.org. Expect to see competent binaries soon...

    This is a dos 6.22 vmdk with the 4.0 sources converted to usable ASCII
    https://archive.org/details/dos4-vmdk

    And this is actual MT DOS 4.00
    https://archive.org/details/mdos4-1986-11-17

    Personally, would look forward to a 32bit DOS compatible CLI OS that could be built on, but then, wishes are horses so...
  • @SomeGuy Source Code is from MS-DOS 4.00
  • Already on archive org, I've seen source code - including UTF-8 converted back to ASCII - and 2 different compiled uploads, including booter disks.

    Very satisfying to see the interest.

    https://www.tomshardware.com/software/operating-systems/museum-criticizes-microsoft-for-mutilated-ms-dos-4-open-source-release-posting-on-stupid-git-blamed-for-the-buggy-blunder

    "As called out by noted developer and operator of blog OS/2 Museum Michal Necasek in How Not To Release Historic Source Code, git failing to preserve timestamps and converting files to UTF-8 pretty much breaks everything. Necasek praised the release of the code but criticized the bugs introduced in the process, saying, "But please please don’t mutilate historic source code by shoving it into (stupid) git."

    Of the two issues, source files being converted to UTF-8 may be more severe. This is because the old tools characteristic of those operating systems can't actually parse UTF-8 and likely can't be updated to do so, either. The byte line length limit of MS-DOS 4's MASM was 512 bytes, and the UTF-8 conversion brings specific files above that limit, making them unreadable.

    The severity of the file errors varies, but the OS/2 Museum post notes that core system files are a perfect match for the original disk image files. However, the source code also seems to correspond to 4.01, a "quiet" update to 4.00 that fixed a few bugs. It wasn't directly available but it did ship to PC OEMs."
  • Incidentally, if anyone wants to see how bad DOS 4.0 (not related to Multiasking MS-DOS 4.0) was, the release you want to look at is IBM PC-DOS 4.00

    IBM's was the very first release, and has issues recognizing some hard drive partitions, or even getting booted.
  • Just to clarify the version confusion - the source code is of MS-DOS 4.00 from October 1988, which was based on PC DOS 4.01, not on PC DOS 4.00 from June 1988. Microsoft later went on to release their own 4.01 in December 1988, followed by 4.01a in 1989.
  • Update: Microsoft MS-DOS 4.00 Source Code has been Compile from looking at Videos on YouTube. I was looking at the videos there seen to be no DOSSHELL in the MS-DOS 4.00 Source Code. There is Edlin and Select in the Source Code no DOSSHELL. Judging at the videos on YouTube on the MS-DOS 4.00 Source Code compile time take 25-30 minutes to Compile a full MS-DOS 4.00 Build. They made a MS-DOS 4.00 Boot Disks of the MS-DOS 4.00 Source Code.


    If you want to know how to compile MS-DOS 4.00 Source Code these are videos I watch on YouTube.







  • Think I may have already mentioned, but within 24 hours of public posts on it's release, there were several uploads to archive.org of both compiled code, how to compile, and/or booter disks. Repairs to code to convert from ASCII unicode, etc.

    As it stands, just doing that is an exercise it knob fiddling. Going to take a real code head (or an alliance of) to use the code as a launch point for a multi-tasking OS that retro freaks can take advantage of.
Sign In or Register to comment.