back to article Microsoft dusts off ancient MS-DOS 4.0 code for release on GitHub

In partnership with IBM, Microsoft has released the source code for MS-DOS 4.0, more than 35 years since the operating system made a muted appearance ahead of Windows 3.x. MS-DOS 4.0 is a relic from when IBM and Microsoft were in the throes of their joint OS/2 adventure. It was notable for its support of FAT16 hard disk …

  1. Version 1.0 Silver badge
    Thumb Up

    Nice to hear

    It's worth documenting the environment that led to MS-DOS being created, originally just a local "new operating system" based on the public discussions about CP/M which we were all discussing as 8080 code but didn't know about the original PLM Gary Kildall code, all we were doing then was reading the binary version and translating it into assembly code. We were all wrong, it was never written in assembler code, it was PLM ... but I still have my old printed Z80 version code (LOL) - reviewing the original code was very helpful.

    Sharing the original code from years ago is a good environment ... reading it and using it will be highly educational!!!! It would be nice to see the early Windows source code versions too.

    1. Mage Silver badge

      Re: Early Windows source code versions

      Which family?

      Win 1.x 2.x 286 386 and 3.0 (all pretty pointless, the 3.1 was first usable).

      Or real Windows:a NT 3.1, NT 3.5 and NT 3.51?

      1. katrinab Silver badge

        Re: Early Windows source code versions

        Both families, and all of the versions including the “useless” ones. They are a part of history that needs to be preserved.

        1. jake Silver badge
          Pint

          Re: Early Windows source code versions

          I don't know if it NEEDS to be preserved, but it certainly ought to be!

        2. ITMA Silver badge
          Devil

          Re: Early Windows source code versions

          I submit that Windows 8 definitely does NOT need to be "preserverd."

          It needs to be locked in a strong box, taken deep into some words and buried where nobody will find it. And we will never speak of it again.

          1. 43300 Silver badge

            Re: Early Windows source code versions

            Windows 8 is an excellent example of how to design a UI for multiple form factors - and make an exceptionally bad job of it! It should definitely be preserved as a warning to OS designers of the future.

            1. DJO Silver badge

              Re: Early Windows source code versions

              And W11 is a perfect example of what happens if you take everything you've learnt about user interaction and the way real people use computers and then with supreme arrogance throw it all away in favour of a new paradigm that nobody asked for and nobody wants.

            2. neverending

              Re: Early Windows source code versions

              I liked 8.1.1.

            3. Phil Kingston

              Re: Early Windows source code versions

              Unpopular opinion but 8 was excellent. But users couldn't adapt to the idea that Desktop was an app.

            4. david1024

              Re: Early Windows source code versions

              Windows 8 U/I was too complicated, the u/i had 2 main modes and 2 submodes each. 4 all together!

              Dosshell was first included in dos 4. MC had been available for years before, but having multiple user interfaces included out of the box was something win8 and dos4 had in common. And they both lived short, tortured lives too... To be replaced by more polished versions: Win10 and the venerable dos5 respectively.

          2. This post has been deleted by its author

          3. Anonymous Coward
            Anonymous Coward

            Re: Early Windows source code versions

            We effectively still have it - a few boxes running Server 2012.

      2. IvyKing

        Re: Early Windows source code versions

        You are confusing Windblows and DOS. The 4.0 release was for MS-DOS which would be about the same time frame as Windows 2-something. I had not need for DOS 4.0 having installed Compaq DOS 3.31 on my machine. Made sure that AUTOEXEC,BAT had a line to set the prompt to use ":" as Tim Paterson intended as opposed to Kildahl's ">". I wold have liked to have been able to fix one incompatibility of PC hardware with the DOS time function as the intent was that it would report to the nearest 0.01 second as implemented by the SCP CPU support board.

        I was quite intrigued by the experimental multi-tasking extensions to DOS, after seeing references to a "future" multi-user version of DOS alluded to in the 86-DOS user's manual.

        1. William Higinbotham

          Re: Early Windows source code versions

          I not quite this old, but was not aware of multi-tasking of DOS 4. Our organization pretty much jumped from 3.1 to 5 that I remember. I was experimenting with OS/2 and multiple IBM DOS windows around the 90s. That was really fun:-)

          1. mikecoppicegreen

            Re: Early Windows source code versions

            Me too - definitely stepped over DOS 4 from 3.x to 5.

      3. Charlie Clark Silver badge

        Re: Early Windows source code versions

        The early versions of Windows had mainly commercial points: stop people jumping to things like GEM. MS-DOS was a a turd and Microsoft knew it, but this is when embrace, extend and extinguish started. Users were getting interested in GUIs, then came better memory management and on the fly file compression, and networking was on the horizon. IIRC Microsoft released new versions of MS-DOS to compete with and break such extensions.

  2. Throatwarbler Mangrove Silver badge
    Trollface

    Micros~1

    <insert spittle-flecked anti-Microsoft rant here>

    1. karlkarl Silver badge

      Re: Micros~1

      Agreed!

      <shovels pancake into mouth>

    2. aerogems Silver badge
      Coffee/keyboard

      Re: Micros~1

      As John Oliver rightly put it on his show last week

      The scientific method isn't

      1. Hypothesis

      2. Horsewhip anyone who doesn't agree with you

      3. Conclusion

      You're thinking of religion.

    3. jake Silver badge

      Re: Micros~1

      All y'all know how little I think of Redmond and its antics throughout the decades ... but preserving the mess ought to be a priority.

      Those who forget history ...

      1. Roland6 Silver badge

        Re: Micros~1

        > but preserving the mess ought to be a priority

        A cousin, widely know as an “Eccentric British conceptual artist”, had an exhibition of his life’s work a few years back, his observation was that the curator had done a really good job as they had pulled out clear lines of evolution, whereas he, living through it just remembers the chaos.

        So yes preserve the mess, as the long view will enable us to see the evolutionary steps.

        1. John Brown (no body) Silver badge
          Thumb Up

          Re: Micros~1

          “Eccentric British conceptual artist”

          Eccentric and Conceptual. One of those terms is redundant :-)

    4. 43300 Silver badge

      Re: Micros~1

      "<insert spittle-flecked anti-Microsoft rant here>"

      And add, "Just Use Linux" with an anecdote on how you've installed Mint on your great-aunt's 15 year old computer and she manages with it fine.

  3. Mage Silver badge

    Dos Versions that were significant or useful

    2.11 (first usable one with sub directories? I forget.

    3.3

    6.22 The last standalone and as good as DR Dos, but more compatible for WFWG 3.11

    1. david 12 Silver badge

      Re: Dos Versions that were significant or useful

      2.11 (first usable one with sub directories? I forget.

      I don't remember either, but I know that 2.11 was the version available for OEM versions -- 2.10 was only available as MS-DOS or PC-DOS

      So 2.11 was the version that came with many clones and compatibles.

      1. John Brown (no body) Silver badge

        Re: Dos Versions that were significant or useful

        Yeah, Our first Apricot F1's came with MS-DOS 2.11 as did our later Tandy 1000A's. The one real IBM computer we had around the time came with 2.1. ISTR that you couldn't even buy MS-DOS before about 3.3, it only being available as PC-DOS or supplied as MS-DOS with a PC.

        A quick Google tells me 2.0 was the the first with subdirectories.

    2. Inventor of the Marmite Laser Silver badge

      Re: Dos Versions that were significant or useful

      Ah. DOS 6.2.

      I recall an amusing time installing DOS 6.22. It was an early foray into homebrew PC building and I had been fortuitous enough to "acquire" a set of install floppies. It was my first foray into 6.22. I think I jumped there from 3.something, but the intervening years have clouded the memory.

      Anyway, the installation proceeded and my naive little self marvelled at 6.22's increased automation over its predecessors: repeated bursts of "You've got This, so I'll set That up for you" - you know the kind of thing.

      It all went swimmingly well, with the machine guiding it's own install.

      Until the end that is, when all was done and dusted and I went to switch off for the final time. I toggled the big rocker switch on the front panel (remember that setup?). Absolutely nothing happened. Lights stayed lit and fans stayed fanning and humming stayed humming.

      Had the automation gone too far and the machine become sentient? Nope. The main switch had just chosen that. precise. session. to weld it's contacts closed.

      Talk about timing though.

      1. David 132 Silver badge

        Re: Dos Versions that were significant or useful

        :)

        Actually, I thought your punchline was going to be that you'd inadvertently reformatted & installed it on a different nearby PC, not the one that happened to be physically located in front of you.

        Been there, done that. KVMs and/or long keyboard cables are not to be trusted.

        1. jake Silver badge
          Pint

          Re: Dos Versions that were significant or useful

          Have I got stories ... most are not me at the keyboard, though some are :-)

      2. jake Silver badge
        Pint

        Re: Dos Versions that were significant or useful

        Nice!

        It's Friday ... this round's on me.

      3. Sandtitz Silver badge

        Re: Dos Versions that were significant or useful

        "I toggled the big rocker switch on the front panel (remember that setup?)."

        Uh, that's a later model with someone other than a hardware engineering team designing things. Was it a PS/2?

        My first PC had the big red rocker switch on the right rear corner of the chassis so you actually had to stand up and reach to turn the thing on or off. Well, at least you couldn't just poke the power button inadvertently back then.

        1. The commentard formerly known as Mister_C Silver badge

          Re: Dos Versions that were significant or useful

          Those big solid metal boxen also didn't have a reset button in exactly the wrong spot on the front of the case either.

        2. Missing Semicolon Silver badge

          Re: Dos Versions that were significant or useful

          When I had to finally discard an old PC power supply, I retained the power switch. One day, it will be attached to the right rear of something, to fulfil it's primary purpose with a "clunk" again.

      4. Mage Silver badge

        Re: Dos Versions that were significant or useful

        Install?

        Don't you just stick a floppy in and boot?

        Making the HDD boot is by typing

        format c: /s

        Which will also erase it.

        Fancy config.sys and autoeexec.bat and other bits are just copied.

        Now, MS Xenix, or Cromemco Cromix or GEM or Windows needed installing.

        1. Fruit and Nutcase Silver badge
          Alert

          Re: Dos Versions that were significant or useful

          IIRC, "SYS" command is what format /s would call for transferring the required boot files, and could be run separately to restore boot function by using another medium with the required files...

          Boot off floppy, then SYS C:

        2. John Brown (no body) Silver badge

          Re: Dos Versions that were significant or useful

          "Don't you just stick a floppy in and boot?"

          Yes, and it auto boots the SETUP programme which then looks at the HDD, formats the partition (if you didn't already have one, you need to exit SETUP and manually do that with FDISK). It also creates a default CONFIG.SYS and AUTOEXEC.BAT with the localisation settings you chose from the menu. Then it extracts and copies all the DOS tools etc from the 3 install disks in turn, putting pretty much everything in C:/DOS, including setting up HIMEM.SYS, SMARTDRV.SYS and using LOADHIGH in CONFIG.SYS from drivers if highmem is available. IIRC, the installer disks were 1.7MB too, so had a "driver" that could read those disks (extra sectors per track, created by using a smaller inter-sector gap when formatting them) and the files on the install disks were compressed into a one big file too, I think. Sorry, it's a decade or two since I last did this and my memory may have a few bit flips :-)

      5. Fred Dibnah
        Terminator

        Re: Dos Versions that were significant or useful

        That was The Answer.

        https://rowrrbazzle.blogspot.com/2016/06/answer-by-fredric-brown-full-short.html

      6. Luiz Abdala
        Trollface

        Re: Dos Versions that were significant or useful

        BP interrupt triggered.

        As in, Brown Pants.

        I had plenty of those myself, gotta admit. Including a machine that kept a single green dot lit on the center of the CRT to discharge capacitors, only possible explanation I could ever think of.

        Yanked off the mains cable, the dot was there.

    3. jake Silver badge

      Re: Dos Versions that were significant or useful

      3.1 ... the first version with networking hooks enabled.

      3.26 ... little known outside industrial circles. MS provided the source so folks could modify it to run equipment.

      5.0 ... the best version of DOS built by Microsoft, proving that dot zero releases CAN be OK, if the manufacturer bothers thinking about it.

      And don't forget the cousins, 4DOS and derivatives.

      1. David 132 Silver badge
        Thumb Up

        Re: Dos Versions that were significant or useful

        I have very fond memories of 4DOS. The first x86 command interpreter I used that had command history and tab completion like grown-up systems. Thanks for giving me a nostalgic smile.

        1. hittitezombie

          Re: Dos Versions that were significant or useful

          4OS2 was fantastic.

    4. hittitezombie

      Re: Dos Versions that were significant or useful

      3.1 and 3.2 were definitely useful, and were used by this particular PFY in his middle-school years...

    5. ITMA Silver badge
      Devil

      Re: Dos Versions that were significant or useful

      The absence of DOS 4.x from that list is signifcant.

      If I recall it had "issues", starting with using significantly more memory.

      I wonder if there is something in the fact that 2 x 4 = (Windows) 8?

  4. aerogems Silver badge

    Not that they will, but it'd be cool if MS started releasing the source code to a lot of their older stuff. Like say everything up to Windows Me, and put it under a GPL compatible license. Something along the lines of if you swipe some bit of code for use elsewhere, that's fine, but you have to contribute those changes back under the original license, and naturally MS gets a perpetual royalty free license to use any contributed changes.

    1. TheMaskedMan Silver badge

      "Like say everything up to Windows Me, and put it under a GPL compatible license."

      That would be great, but absolutely not in Microsoft's interests. I imagine that an army of tinkering enthusiasts would descend upon the code, scattering bug fixes and updates as they went.

      I don't suppose it would be long before Windows 98 was fairly safely useable for lightweight tasks, while still being able to run on amazingly feeble hardware without sending a byte of telemetry back to the Mother$hip - everything Micros~1 has spent the last 25 years or so trying to avoid, in fact. Plus, the fact that it had a clean useable interface would make current windows look bad in comparison.

      Shame, though. I, for one, would love to see that happen.

      1. David 132 Silver badge

        In the case of Windows ME, it’d be difficult for Microsoft to distribute the source, because it - along with all remaining physical media and documentation, and anyone from Marketing who worked on it - is encased in concrete, in lead barrels, under yet more concrete, somewhere deep in Yucca Mountain.

        1. John Brown (no body) Silver badge
          Thumb Up

          Is that above or below the strata containing the Atari ET games cartridges?

      2. Korev Silver badge
        Childcatcher

        It'd be interesting to see how MS screwed up Windows 98SE to turn it to ME, maybe as a lesson to students on not what to do

        1. David 132 Silver badge

          Obligatory XKCD!

      3. hittitezombie

        MIT license they used is extremely liberal and more flexible than the GPL one.

      4. Ken Hagan Gold badge

        No version of Windows based on DOS could ever be made usable.

      5. Michael Strorm Silver badge

        Obligatory "not sure if serious", but rose-tinted specs aside and regardless of any entirely valid criticisms of modern versions of Windows, there's no way it would make sense to waste time rewriting Windows 98 to "modern" standards.

        The reason Windows 98 was "lightweight" and could run on hardware that was "feeble" by modern standards was that there wasn't a lot there... including many of the protections and features you'd expect from a "safely usable" modern OS. The DOS-based underpinnings were essentially derived from mid-70s technology designed for incredibly simply early 8-bit microcomputers (i.e. CP/M) and were already verging on unfit for purpose by the late 90s.

        There's no magic lightweight version of Windows in there just waiting to be buffed up and modernised without a rewrite so major that it wouldn't make more sense just to start from scratch.

        That's what MS did- and why they did it- when they started work on Windows NT in the first place. Even at the time of Windows 98 they were already moving towards ditching those DOS-based versions of Windows in favour of NT-based ones (which finally happened with the launch of XP).

        Even if you think you could write something much more efficient than Windows 11, you wouldn't waste time trying to use 98 as its basis.

        1. TheMaskedMan Silver badge

          "there's no way it would make sense to waste time rewriting Windows 98..."

          Commercially, I'm sure you're right. But enthusiasts, hobbyists and general tinkerers don't think like that. They do it because they can, because they want to see if they can and for fun.

          It doesn't really make sense for folks to be refurbishing ZX81s, either, but there are plenty of folks doing just that on YouTube. And, I gather, a healthy retro market for Win98 era gaming kit, too.

          I'm sure something interesting would come of it, but it's never going to happen.

          1. Michael Strorm Silver badge

            I've no doubt people *would* have fun tinkering with it, but the point was that such tinkering wouldn't- as you suggested- result in anything that was "safely" usable or the remotest threat to competing with anything MS produce today unless the whole thing was effectively rewritten.

            Windows 98's DOS underpinnings are like a small shack made from sheets of corrugated iron and a few planks of wood to hold them together- there's very little there.

            People might have fun restoring or working on that shack if it had any historical or other significance, but if your aim was simply to- say- build a modern house that was a less overblown alternative to a McMansion, you still wouldn't bother keeping that shack or trying to incorporate it into the new design- it'd be more hassle than it was worth. You'd start from scratch.

          2. doublelayer Silver badge

            I'm sure someone would do something, but less sure that whatever they did would be useful. Refurbishing hardware that's fifteen years older has a lower cost to result because they generally want it to boot up the same environment that it came with. They may have to emulate some hardware to do that, but the interfaces aren't complex, and they're not trying to bolt too much on. For a modernized Windows 98 to work, they'd have to do a lot more, such as getting it to boot natively on modern hardware, to interact with modern peripherals, and to run the software needed to perform modern tasks. None of those things are straightforward in comparison to getting an old computer with most of its old parts to run the software it came with.

        2. TheMajectic

          Someone ported. Net 2 recently to 95

          I think hobbyists have a lMattKCot of interest in doing this. But yes it doesn't make sense, for this someone() that did the. NET back porting did it just for fun

    2. xanadu42

      Considering that there have been many reports over the last few years of "decades old" bugs in Windows it is highly unlikely M$ would release ANY source code for ANY version of Windows...

      Based on the reports it is easy to assume that even the latest versions of Windows are using code written way back in the 1980's and 1990's

      1. aerogems Silver badge

        They are, though since XP all the DOS era code has been done away with except maybe in an isolated subsystem. It's the price you pay for maintaining API and ABI compatibility over a period of decades. It's also why I think it'd be interesting if MS just created a brand new greenfield OS. Maybe keep API compatibility, but only things like DirectX and .NET, the Win32 API and ABI would go to silicon heaven to live with the calculators. Then, free from the shackles of backwards compatibility, they could take decades of lessons learned and changes in the direction of the market, roll it all into this new OS, and create something far better than Windows in terms of security, performance, and features. Fuck, for all I care, they could do like Google did with Linux, or Apple with FreeBSD, and just build a new GUI on top of an existing OS.

  5. lockt-in

    Well this is funny, why v4? actually I don't care. It made me remember what Microsoft did to DR-DOS:

    And funny because if they open source Windows 3.1 you can bet it won't be the version that has code that intentionally includes multiple sabotages for when running on DR-DOS, https://www.theregister.com/1999/11/05/how_ms_played_the_incompatibility/

    Microsoft being evil.

  6. Grogan Silver badge

    Perfect for someone that wants to re-invent the flat tire :-)

  7. CowHorseFrog Silver badge

    Just finished reading the microsoft article... what a bunch of aresholes, why didnt they mention the names and alk about the people who wrote dos 4 and are still at microsoft ? Are they not human or are only people with manufactured bullshit titles worthy of a mention ?

    Hitler gave people in the camps numbers to dehumanize them, microsoft doesnt even give the people who wrote the code a number or name.

    1. keithpeter Silver badge
      Joke

      "why didn[']t they mention the names and [t]alk about the people who wrote dos 4 and are still at microsoft"

      Witness protection scheme?

      Seriously: I'm guessing this work was done before the widespread use of source code management so attributing credit (blame?) might be difficult

      1. CowHorseFrog Silver badge

        The article clearly mentions a bit abiout programmers who worked on the code, theonly fact it misses is mentioning their names.

        1. CowHorseFrog Silver badge

          wow so many brainded down voters, and none have the balls to tell me why its wrong to include the names of people who actually did the work, but its ok to mention an executive along wiht their self contrived loooong title.

    2. Anonymous Coward
      1. jake Silver badge

        I don't think what Mike wrote in 1990 means what you think it means. For your education, here it is in it's entirety: "As an online discussion grows longer, the probability of a comparison involving Nazis or Hitler approaches 1.".

        Godwin himself further wrote "its purpose has always been rhetorical and pedagogical: I wanted folks who glibly compared someone else to Hitler to think a bit harder about the Holocaust."

        Nowhere does it suggest never mentioning Hitler or Nazis. On the contrary, in fact. All it suggests is that you think before posting.

        Whether or not the OP was thinking is another discussion entirely ...

        1. CowHorseFrog Silver badge

          Learn to read what i wrote, i never said the microsoft article mentions hitler. Im merely mentjing the article goes out of its way to list executives with long titles and skips on purpose to name the programmers who did the actual work.

          GOod too see American media has brainwashed you into beleving people with fake titles and no actual practical skills also known as management are your superiors.

          1. Michael Strorm Silver badge

            > Learn to read what i wrote, i never said the microsoft article mentions hitler

            Learn to read what *Jake* wrote, he was referring to Godwin's Law, not the article.

            > GOod too see American media has brainwashed you into beleving people with fake titles and no actual practical skills also known as management are your superiors.

            Pretty sure that Jake didn't imply any of that, he mentioned Hitler- and as a consequence, Godwin's Law- because *you* brought the former up in the first place. Completely unprompted, for the sake of a cheap, ludicrously overblown and inept comparison.

            But whatever gives you a chance to feel self-righteous, you illiterate, Nazi-trivialising halfwit.

            1. CowHorseFrog Silver badge

              Like i said, your so busy mention Godwins law, and yet you forget the dehumanizing of the programmers ....

              Like i mentioned before good too see American media brainwashing has struck another person (yourself). Praise, give long labels to do nothing executives and fail to name the REAL people who did REAL work.

              1. Michael Strorm Silver badge

                "Learn to read" again. Jake ( not myself) brought up Godwin- quite legitimately- because *you* compared MS's lack of programmer credit to Hitler's treatment of concentration camp victims.

                Now you're doubling down on that, you're the only one to blame for it having completely eclipsed any otherwise legitimate point you had about the programmers.

                But, like you, I repeat myself, so I'll just say, again, whatever helps you feel self-righteous, you Nazi-trivialising halfwit.

                1. jake Silver badge

                  I wasn't the one who brought up Mike's often misused observation, an AC[0] did (in post 4852874).

                  I merely attempted to get both parties to think about what they were babbling about. Apparently I failed.

                  [0] Don't ask me which AC; they all look alike to me.

                  1. Michael Strorm Silver badge

                    Good point and my mistake- sorry about that.

        2. CowHorseFrog Silver badge

          So why arent the programmers named, but the executives are ? Why the double standard ?

          1. Michael Strorm Silver badge

            Seriously? Let it go. You fatally torpedoed and distracted from any otherwise legitimate or sensible point you might have been making when you suggested- off-the-cuff!- that MS's lack of programmer credit was worse than Hitler's dehumanisation of concentration camp victims.

            FFS.

            1. CowHorseFrog Silver badge

              How about you actually refute my claim ?

              Is what im saying untrue ?

              Why cant they puyt the effort to name the programmers ?

              Why are they doing that ?

              1. Michael Strorm Silver badge

                Sad thing is I don't actually disagree with that original point in principle.

                It's just that it's trivial compared to your Nazi-trivialising banality, which completely distracted from it.

                And you still don't get that.

            2. CowHorseFrog Silver badge

              These sort of media stunts are to attract goodwill and executives always wish to praise themselves as the source of everything good and more. THey love to take the credit for everything. This is yet another example, where the executives want all the glory even if its small, they cant even show some real fairness and give credit to the real heroes who did the real work.

              These are like i mentioned previously the same tactics of the prisons and more. They dont name people they give them numbers to dehumanise them. How many times did we hear Steve Balaner or some other executive in the news about a release compared to names of actual programmers or testers or technical writers ?

              These articles are written in a certain way for a reason, amazing how you cant see the reasoning behind the choises.

              1. jake Silver badge

                How many names would have to be named? It would make the article unreadable with today's kitchensinkware.

                And besides, nobody really cares. It's corporate bloatware anyway. Blame the Marketing department, not the poor coders who have to produce the tripe they have demanded.

                If you want to know who coded something, stick to FOSS.

          2. jake Silver badge

            "So why arent the programmers named, but the executives are ?"

            Has it occurred to you that back in the day, DOS was so small that the "executive" might have been the only programmer working on that particular aspect of the DOS software suite? Consider that I wrote my own command.com replacement (a bash clone ... how original) for DOS 2.x. It only took a couple weeks of evenings and weekends. Updating it for DOS 3.0 took about a weekend. I was in the middle of updating it for IBM's execrable DOS 4.00 when I discovered 4DOS and dropped the project. Later, my daughter discovered it in the archives, and we updated it together for MS-DOS 5.0, even though there were better alternatives available.

            "Why the double standard ?"

            Why is it called "Caesar's invasion of Britannia"? Why didn't the historians name each and every member of the troops? Were Genghis Khan and Atilla one-man armies?

  8. Bebu Silver badge
    Windows

    The pdf scanned doco is interesting

    The system interfaces, memory and process handling documented for a compatible real mode 8086 and protected mode 80286 applications documented by fairly cluey MS engineers does clarify the bind they were in at the time. The 8086 was going to a be the norm for a long while after the 286/AT was shipping in numbers while the 386 was three or four years into the future.

    It does explain the barmy Win 2.0 & 3.0 memory management in real mode and to some extent why OS/2 was dropped (required a 286.)

    I remember seeing in a Computer shop a PC running Dos 4 (when 3.x was normal) that was multitasking - the shopkeeper claimed it was a special asia-only oem version. Subsequently I assumed it was actually a rebadged Wendin DOS or someones DOS clone based on the Wendin Operating System Toolkit (OST.) The main impediment to multitasking DOS was that the BIOS wasn't reentrant. The Wendin software reimplemented the console (int 0x10?) bios routines and wrapped the disk int 0x13? calls with mutexes. The rest of their OST provided a collection what looked like VMS system services.

    Wendin went to insane lengths to get around crappy hardware, firmware and software.

    I guess it might have been a customised version of MP/M-86 but I supposed it was actually an awol copy of MS MT-DOS 4.0.

    If only IBM had built their PC with a M68000 MPU, VME bus and a rentrant bios (a Sun 1 :) where would we be today?

    Even if they went with a NS32016 all the nastiness of base("segment"), 16 bit offsets and the grotesque menagerie of far, near, huge pointers and compact, small, medium, large memory models could have been avoided. Still with 16 bit segment offsets the 286 wasn't a whole lot better.

    The bog brained insanity of the past should make us wary of the potentially equally insane nonsense of the present (AI favourite but spoilt for choice.)

    1. jake Silver badge

      Re: The pdf scanned doco is interesting

      "I remember seeing in a Computer shop a PC running Dos 4 (when 3.x was normal) that was multitasking - the shopkeeper claimed it was a special asia-only oem version."

      There were two different versions of DOS 4.X ... The first one, released in mid 1986 (my copy says May), was based on MS-DOS 2.x, but with multitasking built in. It was mostly a European release, but I saw it here in the US in a few places. Only a few OEMs shipped product with it installed (including ICL!), and I don't believe it was ever sold as a stand-alone product. It was widely ignored, with most folks gravitating to 1985's DOS 3.

      The second 4.x was the widely mocked IBM PC-DOS 4.00, released in July of '88, and the Microsoft bug fix release, MS-DOS 4.01, released in April of '89.

      Note that all versions of DOS from 2.0 (October '83) on came with the PRINT command. Background printing is technically a form of multitasking. See also so-called TSRs, and IBM's TopView from '85.

      1. chololennon
        Happy

        Re: The pdf scanned doco is interesting

        > See also so-called TSRs, and IBM's TopView from '85.

        Fond memories :-D

        In the late 80s and early 90s I wrote a bunch of TSRs in Turbo C and Turbo Pascal with some pieces of assembler. Those programs were for my dad's business, which used to have a "picturesque" PC XT with DOS 3.3, hard drive of 30 Mb, double diskette drive (5 1/4), the usual (and wasted) 1024 Kb of RAM, and of course, a red turbo button :-P

        Two of the most important programs were a keyboard mapper in order to easily write Spanish characters (like ñ, á, etc) with a US keyboard (at that time, at least in my country, that was the only available layout). The other program was more complex, a business calculator (GUI for payments, interest rates, etc). My dad was really happy with those "home made productivity tools".

  9. navarac Silver badge

    DOS

    They might have chosen a better version. MS-DOS v4 was bloody awful. Perhaps they are afraid people will dump Windows 11 for Dos LOL

    1. aerogems Silver badge

      Re: DOS

      A lot of it probably has to do with what they actually still have the source code for. Things like CVS/SVN and Git didn't exist back when most of these were being made and the master copies may have been lost decades ago, or the physical media has degraded to being unusable.

      1. IvyKing

        Re: DOS

        Circa 1997, Microsoft's response to a subpoena for the MS-DOS source code was that they lost the source files. IIRC, the subpoena was from one of the anti-trust suits that MS was facing at the time, and makes me wonder if the files were intentionally deleted.

        1. aerogems Silver badge

          Re: DOS

          Not likely. Storage wasn't dirt cheap then like now, so if they weren't selling or supporting a particular product any longer, there probably wasn't a lot of emphasis placed on retaining the source code. Everyone loves to leap to the shadowy cabal of robed individuals making decisions in clandestine meetings, but almost without exception, the reality is considerably more banal. If they were intentionally deleted, it's probably because someone needed space on a server and couldn't get the budget approved to add more capacity, not because they were trying to avoid being responsive to a subpoena.

      2. jake Silver badge

        Re: DOS

        "Things like CVS/SVN and Git didn't exist "

        SCCS was first written at Bell Labs in 1972 (in SNOBOL, on an S/370 running OS/360 MVT). It was included with PDP-11 UNIX by 1974 (now in C. Duh!). It was first "publicly" available (with System III and System V) by 1977.

        1. Bebu Silver badge
          Windows

          Re: DOS

          《SCCS was first written at Bell Labs in 1972 (in SNOBOL, on an S/370 running OS/360 MVT). 》

          Never knew that. Explains a bit. :)

          First year CS mid '70s featured SNOBOL IV seemed really odd at the time - all I remember SYSPIT and SYSPOT ;)

          The few times I encountered SCCS weren't to make fond memories.

          Personally I mostly used RCS for simple version control from msdos onwards. (Was fairly easy to port to msdos3.2 with the Datalight C compiler.) Mortern Kern Systems also had a sccs clone at the time but expen$ive I think.

          1. jake Silver badge

            Re: DOS

            I remember Mortice Kern Systems RCS, but I don't remember them having a version of SCCS. Perhaps it was included with MKS ToolKit? I used that quite a bit in the second half of the '80s, as it made MS-DOS almost tolerable (kinda like Cygwin later on). I was doing most of my actual coding and other real work on BSD at the time, and so would have been using SCCS on that side of things and might have missed the MKS offering.

            1. This is my handle

              Re: DOS

              As I recall, SCCS filenames were not DOS friendly (back in the day: they did not conform to 8.3). RCS filenames weren't quite DOS conventional, but at least you could create them. Hello.c,v is an odd but legal filename in DOS and always has been, if I am not mistaken. s.Hello.c was not.

    2. Michael Strorm Silver badge

      Re: DOS

      > They might have chosen a better version

      AmigaDOS?

  10. bikernutz

    I had a different experience of early dos and even 95 than most users.

    Not really running on a 68000 CPU unless you count by software - PC Task. Dos 4.0 ran surprisingly well on my expanded and accelerated Amiga, but slow compared to even my KCS board.

    I had both a KCS PC board and a GVP 286 PC board fitted to my Amiga. I was given an earlier version of MS-Dos on original disks but it wouldn't install on my HDD for either PC board.

    So I bit the bullet and bought MS-Dos 6.0 which I could only find on 1.44MB floppies and at that point in time hadn't fitted a suitable drive in my Amiga. I wrote to Microsoft and asked if they could possibly supply me with my DOS on 720K floppies. They did so, free of charge.

    DOS installed and worked perfectly for both boards.

    I bought Windows 286 at a computer fair - it installed on both but drat!, it was in German only? So I bought Windows 3.0 and 3.1. Windows 3.0 ran fine on the KCS board in VGA colour - interlaced. Windows 3.1 on the GVP, 286 board in monochrome EGA mode.

    I couldn't get < Dos 6.0 working correctly for either PC board.

    Others in the comments infer that Dos 6.22 was OK but 6.0 not. I never had any issues only with 4.x and 5.0.

    Once I bought my own 486 PC I spent endless hours trying to get OS2/Warp installed (I bought it with Dos 6.0 and Windows 3.11) OS2 during install lost access to the CD drive so I had to create dozens of floppy disks to install the 2 CD's worth of OS and extras. Not long after I gave up on OS2/Warp and bought and installed Windows 95. Which for me was stable and worked really well. Although others I knew hated it.

    I even used the intersvr and interlnk programs from dos 6.0 to copy and install Windows 95 on to the management teams computer at work they had also bought the CD but had no way to install it on their PC. They had no CD drive and no high density 3/12 floppy drive on the office computer. I made up a parallel lead to do so from the documents in the dos help files.

    PC World told me they didn't exist even after showing them the help files on their screens.

    For me the DOS help files were clear and well documented. Memmaker was fairly useless as it was easier and more stable to optimise the memory manually. Other than that buying my Dos disks was certainly value for money.

    I try and avoid Microsoft products nowadays, but all those years ago I found them helpful to my requests and both of their unpopular OSes worked great for me. Win 98 first edition and Me were the ones I would of liked to have avoided if I could go back in time. YMMV as people would say.

    1. This is my handle
      Joke

      Re: I had a different experience of early dos and even 95 than most users.

      I have fond memories of the Robert X. Cringely headline: "DOS 6, users 0".

    2. John Brown (no body) Silver badge

      Re: I had a different experience of early dos and even 95 than most users.

      "PC World told me they didn't exist even after showing them the help files on their screens."

      They did exist, but PCWorld likely didn't stock them. They'd have preferred to sell you a retail boxed copy of LapLink, which originated the cable that Interlnk later used so you could then have either used Laplink or InterLnk :-)

      The Laplink cable was dual headed, working on either serial or parallel and IIRC also hade instructions on a way to copy Laplink from one PC to another using the serial connection when the remote computer didn't have Laplink on it, some magic I forget now with the COPY command with con: and com: devices and probably the MODE command.

      1. bikernutz

        Re: I had a different experience of early dos and even 95 than most users.

        Yes, they were just after a sale at PC World. But denying something exists when a customer can show you it does just proves they can't be trusted.

        Although only over serial interface Twin Express an Amiga DOS utility that also had an MS-DOS .exe worked brilliantly too. Not only could you copy files to the remote computer from either to the other. Or 'pull' them from the remote side but the Amiga supported long file names. Even if the MS-DOS at the other end could only access them with the file~1 etc. format it made it possible to transfer files the Win95 could access.

        Yes I have used Laplink, and still have it. I also tried PCAnywhere. But Interlnk/Intersvr as a freebie in DOS was adequate and mapped drive letters automatically - Non IT Manager safe!

        For my sins I still have a working version of Ability Office for DOS. Ballistic-ally fast and a pleasure to use in a dosbox session, pulled from my old Amiga hard drive.

        Why?

        Just because and nostalgia of days when everything wasn't bloated in size.

  11. Binraider Silver badge

    While I have zero nostalgia for dos 4, 3 and 6 were truly epoch defining. It also pleases me to see the folks and MS and IBM able to cooperate to preserve history.

    I bash the two often enough so credit where it's due for things like this

  12. Bebu Silver badge
    Windows

    The ascii sources committed to git were converted to utf8 :)

    Apparently, as reported on Toms Hardware, the source code files were converted from ascii to utf8 which the supplied tools (nmake, C compiler [v3?rebadged Lattice?], nasm, link, lib?...) don't grok. Nasm apparently also has a 512 char limit on lines which the utf8 bom marker trip?

    How many enthusiasts are going to rebuild mt-dos? I have to wonder. Looks like it could be self hosted which was more than early Windows development which was basically a msdos hosted windows cross development environment.

    I am grateful that this stuff is resurfacing, (like Churchill cod :), to remind me just how ghastly it all was.

    1. Neil Barnes Silver badge

      Re: The ascii sources committed to git were converted to utf8 :)

      Oh stunning... I have been led to believe, poor deluded fool that I am, that (a) ASCII values 0x00 to 0x7f map directly onto UTF-8, and (b) that a BOM marker is unnecessary and indeed deprecated in such a circumstance. So an ASCII file with no characters greater than 0x7f is ipso facto a valid UTF-8 file... so why did they change it?

  13. PhilipN Silver badge

    PC-DOS 7.00

    FWIW since nobody’s mentioned it and obsolescent memory cells tell me there was one.

    1. PhilipN Silver badge

      Re: PC-DOS 7.00

      Apologies for the P.S. and extending the tangent but this represents the final chapter with instructive guidance:

      https://liam-on-linux.livejournal.com/59703.html?

  14. Jamesit

    Is this MS-DOS 4.0 or the bug fixed 4.01? I can't remember what the bugs were.

    1. Spazturtle Silver badge

      This is the version of 4.01 that still reported itself as being 4.00

  15. BPontius

    Ancient!

    This stuff is ancient 8/16 bit code useless on modern systems, even within a VM it is all but useless to do anything with. Leave it in the past!

    1. doublelayer Silver badge

      Re: Ancient!

      They're not suggesting that you install it on your work machine, you know. It's there to look at, run for nostalgia's sake, or if you somehow have a use for it. Otherwise, you are free to ignore it.

      1. werdsmith Silver badge

        Re: Ancient!

        I would like to install it on a 512k or 640k VM and load up some Novell Netware drivers into HIMEM in the config.sys.

        Then I will REM out the Netware drivers so my game can fit in the available memory.

        That's nostalgia.

  16. Anonymous Coward
    Anonymous Coward

    PC-DOS engineer here. PC-DOS 3.x was full of test and set code, and everything else necessary to capture, manage and process network packets (NETBIOS) and file and print sharing (SMB) in real-time.

    If that's what anyone means when they say "multi-tasking", then the PC-DOS 3.x series was the first multitasking DOS.

    However, if by multi-tasking mean "program swapping", that was a different OS, and none of you know what IBM was really doing at the time, nor the reasons for the decisions we made. It's not frustrating, but the focus on what MS was doing isn't well placed. They weren't the hardware designers, and from first hand (bitter) experience, their command and understanding of hardware was absolutely not what you would imagine. Seriously.

  17. Luiz Abdala
    Windows

    I just hope that DOSBOX can learn from it.

    I've had problems with vintage games, and I hope all parties involved can learn something from that source code.

    No, I don't know a lick of how DOSBOX and the original DOS works, I just know that source codes tend to make the life of everybody easier.

    I had one particular game - Strike Commander - that refused to work unless it was on bare metal, no DOSBOX setup could fake 600kb of free memory for that game, no matter what I did.

    Guess I should wait for DOS 6.22 source to come live, eventually?

POST COMMENT House rules

Not a member of The Register? Create a new account here.

  • Enter your comment

  • Add an icon

Anonymous cowards cannot choose their icon

Other stories you might like