MS-DOS has been Open-Sourced! We Build and Run it!
Microsoft has released the code to MS-DOS 4.00 on GitHub; Dave takes you a tour of the code, builds it, and runs it on original hardware. For my book on life on the Spectrum: https://amzn.to/4bj29zo
For Clarity on the timeline:
– Microsoft licensed (non-exclusively) 86-DOS in Dec 1980 for $25,000
– Paterson left SCP in April 1981 and worked for Microsoft from May 1981 to April 1982.
– 86-DOS was purchased outright by Microsoft and renamed to MS-DOS on 27 July 1981 for $50,000
– In March 1982, MarkZ became the dev mgr for MS-DOS 2
The Code:
https://github.com/microsoft/MS-DOS
Remember that the code is open-sourced, but trademark law still applies!
Any requests to contact me on Telegram, etc, are scams…
Follow me on Facebook at http://fb.com/davepl for daily shenanigans!
Follow me on Twitter at @davepl1968
by Dave’s Garage
linux foundation
Next week on Daves Garage: Windows95 has been open sourced! We Build and Run it….
I'm guessing the files were loaded into dosbox for compilation by first downloading on the host mac. The mac has different line endings from dos or windows and when pulling or cloning from github, I believe git will by default translate the line endings to be appropriate for the client's os. First step with line endings and git is to ensure the configuration in git is correct. It's also entirely possible whoever uploaded the code had the settings incorrect on their system. To tell for sure what the case is, would need to download a zip from github instead of cloning. The zipped version should preserve the line endings of the files stored on the repository.
okay but when's the 4k port with raytracing
In 20 years we will get Windows 95, cant wait
4:10, MS-DOS 4.00 – Yeah, I know, 3rd comment! My first PC, referenced in my earlier comment, came with MS-DOS 4.01. Well, no, actually, it came with MS-DOS 3.3, because the builder goofed, and I had to obtain MS-DOS 4.01 from him, reformat my (then seemingly capacious) 90MB hard drive with a single partition – because MS-DOS 3.3 only supported up to 32MB partitions – from the boot diskette, and then install MS-DOS 4.01. I had actually asked for "DOS 4" at the time, but had been told that MS-DOS 4.0 was too buggy for production use and had been replaced by MS-DOS 4.01, so that's what I got. This is the first I've ever heard about MS-DOS 4.00 being a special multitasking version! If I had known about that back in 1989, I'd have gone out of my way to try to get it. I was really hoping you'd demonstrate multitasking with it. Maybe in a future video?
11:59, "It seems that Internet lore holds that you can't or shouldn't write a 360k floppy in a 1.2 meg drive…" – I see something didn't translate completely to the "Internet lore". You most certainly could use 360k floppies in 1.2 meg diskette drives. I never encountered a situation in which this wouldn't work. The real issue was formatting the 360k floppies in a 1.2 meg drive, and even then, it depended on where you intended to use your intended 360k floppies. If the only diskette drives you had were 1.2MB ones, and you were just using up an old stash of 360kB diskettes, then you can format, write and read them all day long in your 1.2MB drive, and the drive(s), diskettes and data would be no worse for the wear. The problem was if you were preparing 360kB diskettes specifically for use with 360kB drives. In that case, you needed to format them in a 360kB diskette drive, because if you did that in a 1.2MB drive, they might not read reliably in a 360kB drive. I seem to recall that once they were formatted, writing data to them with a 1.2MB drive wouldn't cause any problems, although I probably never did that because once I already had the diskette in the 360kB drive, it made sense to just leave it there and copy whatever I needed to it. The information above came from hard experience, not "Internet lore" or other hearsay. I never bothered to ask why; it was enough for me to know that the issue existed and how to avoid it. At the first two companies where I worked, there were a plethora of computers, mostly what we would now call "IBM PC/AT Class", equipped with any of 360kB 5-1/4", 1.2MB 5-1/4", 720kB 3.5" and 1.44MB 3.5" diskette drives, depending on the make and model of the computer. I often had to prepare diskettes for use on other computers, or even to be sent out in the mail, so I learned, the hard way, to prepare them on the appropriate drive. If I didn't know ahead of time what kind of drive a 5-1/4" diskette would be used with, I prepared it in 360kB drive to ensure that there'd be no problems with it. When I bought my first home PC back in 1989, I had it equipped with a 1.44MB 3.5" diskette drive for primary, internal use and a 360kB 5-1/4" diskette drive for preparing diskettes for others. (That second drive saw little use!)
11:07 "Cryoflux", "Grease Weasel" – I just about burst out laughing at these names, and then had to wonder where they came from! A little research showed me that they're actually spelled "KryoFlux" and "Greaseweazle", but other than that, I didn't find any good answers. I'm an IT consultant, and about once a year, I'm someone calls and asks if I can get files from diskettes. My answer has long been "no", because I only have two computers that are capable of reading and writing diskettes of any kind, and neither of them work. But it looks like the Greaseweazle isn't too expensive, so I might just look into getting one.
That wasn't just your dog snoring! Seriously, this is great stuff, Dave. I loved MS-DOS 4.x when it was the latest and greatest sliced bread. I continued to use MS-DOS through version 6.22 for which I still have an unopened, shrink-wrapped box with the 5.25-in floppies. One of these days I'll pick up a vintage PC clone at a garage sale and give that old horse another ride.
I read that title has we build and "ruin" it 😂
Did microsoft really had nmake back then or something equivalent ? As far as I know microsoft for many years insisted using their cl.exe and visual studio. But back then did they used any open source tools to compile and make ?
Just finished writing my own assembly program, part of which can output an integer to the screen (including appropriate commas, or not, as desired). Could have used C but decided I needed a challenge…
DOS was best.
Ah, good times. I remember it was both the best and the worst version of MS-DOS i've used until V 5.0. Mostly because my 8088 had only 256 kb of RAM.
That penalty jar sounds illegal. Employer can't force you to cough up money for saying their product's name wrong, what the heck?
Big deal. It was freeware DOS that Bill re-packaged and sold to IBM as his own. He was a sleazeball from the getgo.
Why should anyone care for the MS-DOS sources when we have an Open Source Linux?! At that time period Microsoft delayed the evolution of operating systems for ~10 years. MS-DOS was seriously outdated when it was released, Windows was even at the time never a good operating system.
Did you make Dangerous Dave 😊 or was their your involvement in this. Msdos is so nostalgic for me. I have seen the rise of windows and the whole graphics changes. I remember playing games in Msdos and how everything evolved over time. Those where the days when we enjoyed a lot of simpler things and never took anything for granted.
I wish if my grandpa is as smart as u r and can tech me some assembly
Or tell me some old tech jokes 😅
Haven't played with a 360k floppy in awhile, but I do have an IBM convertible with 2 of the full height's in it… also have greaseweasel, but no Kryoflux.. will look into that!
Hi Dave, I would love a more deep dive on the ms-dos os from your perspective! Compared to windows, I think it would be instructive to budding computer science students…..and well some of us old farts in the industry that weren't programmers. Great content, always love your work and your way of telling a story! Cheers from Toronto!
omg I remember building xbios for that 8086 card from scp back in early 80's
Hi Dave, what are the code comments on each line such as ;AN001;
Perhaps the programmer responsible?
You can write 360k discs on 1.2m dives but reading on 360k drives can be a problem. I used to copy floppies for our uni, and it was worthwhile using only 360k drives for 360k disks, and yes it was a pain.
Hmm you need DOS to compile DOS, it reminds me of the chicken and the egg 😀
Everything about Microsoft is hateful unreliable slow useless.
This takes me back to the days when I made a local book shop order me a copy of "Dissecting DOS". They where far outside their depth, but manged to get it thanks to me having the ISBN… that was in the mid-90s
I have fond memories of finding out where the game launch file was. I can't remember if they used .exe files in MS-DOS; it's been too long. But I do remember hopping from folder to folder using the keyboard, since it wasn't like Windows 3.1. It was before the OS had a real UI, or you could call it a UI but only barely by today's standards.
Anyway, I grew up with MS-DOS and then Windows 95. I never had Windows 3.1 or NT, and all the others between 95 and MS-DOS. I did try NT later in life, about 20 years ago, when someone I knew had an old PC with it on. He even gave me the install disk, which I still think I have somewhere.
Later, my dad got his PC dual-booted with Windows 98 and MS-DOS, and my mom got a Windows 98+ PC when that OS came out. So I've been on Windows since the beginning of time.
Excellent 👌🏻 voice acting! 😅
What, the Internet was wrong?
Say it ain't so!
This is great. Now I can play with QBasic again.😀Pity the 40 GB HD of my 80286 is defective. Oh, the memories!
I was a beta tester for MS, When they released Dos 6.0 without waiting for the beta test results, and, as it wiped out all my work, I quit working for them. Microsoft Management because way too stupid to work for.
SPACE CADET GUY? got a youtube EHHHHH
I LIKE GREEEN..! Mom i broket the compooter
End of line should be the letter a. We don't need the letter a because it's redundant.
My favorite flavor of DOS was 3.31, which I believe was released specifically for Compaq machines. It's been so long I can't remember exactly why it was my favorite, but it had the benefits of 4.0 without the issues. I also liked how compact it was.
MP/M for cpu z80 ,brand name was zeus4 is my first os,which was multi user version of cp/m.
Ms-dos may be inspired from that legacy I think.
Hoping they make Windows NT open source 🙁
The small history lesson there at the beginning was pretty cool.
That is why we needed, had worked on, cloned (at first), and then exceeded MSDOS to use FREEDOS in 1996 and thereafter.
It started out as DOS-C with Pat Villani, Jim Hall as the head, and other contributions (me and many other folks) since then along with the many different and new features including a USB stack for all kinds of devices, bluetooth, and more.
How does MSDOS 4.x stack up with all of the new bells and whistles considering all of the advancements since then?