Lunduke
News • Science & Tech
Quick and Dirty: The story of 86-DOS & MS-DOS
The hardware and nerdy details that led to the first release of MS-DOS.
January 19, 2024
post photo preview

MS-DOS is one of the most successful operating systems of all time — absolutely dominating the computer industry for years.

Most of us have heard the tales of how MS-DOS came into existence: How Microsoft purchased it from another company, and how Microsoft licensed it to IBM.

But what are the nerdy details? What is the background? What hardware inspired the development of that MS-DOS precursor… and what did those machines actually look like?

Let’s take a few moments to dive a little deeper into the history of how MS-DOS truly came into existence. To tell this story, we’ll need to go back to the mid 1970s…

1974 - The Altair 8800 & the S-100 BUS

Way back in 1974, the legendary Altair 8800 computer was being designed. And, as part of the system, the S-100 computer bus was designed.

The Altair 8800
 

Fun Factoids: The Altair 8800 was based on an Intel 8080 CPU clocking in at a whopping 2 MHz and sold, as a kit, starting at $439. That base model came packed with 1024 bytes of RAM. Yeah. You read that right. 1k. In order to run the new “Altair BASIC” — which was the first product of Microsoft — you first needed to upgrade to 4k of RAM… which would run another $264.

That S-100 bus — which allowed a number of peripheral cards (memory, drive controllers, etc.) to be inserted into, and used by, the computer — became the first expansion bus standardized across the computer industry.

In fact, usage of the S-100 became incredibly common among a huge number of homebrew computers built far and wide — being the defacto bus type until the IBM PC hit the scene in 1981.

Many of these computer types (using a variety of processors, including the 8080 and Z80) received ports of the CP/M operating system, developed by Gary Kildall’s Digital Research. CP/M was everywhere back then.

1979 - Seattle Computer Product’s S-100 8086 kit

Seattle Computer Products (SCP) (which, as the name would suggest, was based near Seattle, WA) produced a number of S-100 related products — including memory cards such as the 64k RAM board shown below:

Photo courtesy s100computers.com
 

Seattle Computer Products then expanded to produce boards and kits to build S-100 bus based computers using the Intel 8086 CPU (which had just been released by Intel).

SCP’s 8086 S-100 card. This is a later variant (1980 or 1981) of the original 1979 version.
 

There was just one teensy-tiny problem… there was no available operating system to ship with these S-100 based 8086 systems.

Initially these SCP S-100 8086 computers shipped with no full-fledged operating system at all.

But, instead, they worked with another local company — Microsoft — to bundle a version of their BASIC language. The result was known as “BASIC-86” and it was, essentially, a BASIC interpreter and editor, that booted from disk on the new SCP 8086 systems.

This wasn’t the only product that the two companies worked together on. Microsoft had also hired SCP to design their “Z-80 Softcard” for the Apple II platform.

 

This relationship — between Seattle Computer Products and Microsoft — would become critical to the entire computer industry.

Sales of the SCP S-100 8086 boards struggled due to the lack of operating system. Turns out most people want an OS to go with their computer. Who knew?

To remedy this problem, SCP encouraged Gary Kildall to port his wildly popular CP/M operating system to 8086 board (which Kildall had already been working towards anyway). Unfortunately the CP/M port was not shipping fast enough to meet the needs of SCP.

They needed an Operating System. And fast.

1980 - Quick and Dirty DOS

Seattle Computer Products did the only logical thing… they began building their own Operating System.

In April of 1980, Tim Paterson began working on exactly that. Armed with the manuals for CP/M, he began building his own “CP/M-like” operating system — from scratch — in assembly for their 8086 platform.

This effort was called “Quick and Dirty Disk Operating System”… or “QDOS” for short.

QDOS was incredibly similar to CP/M — as the design was done based on the CP/M manuals — and a key goal was to allow easy porting of CP/M software to QDOS. That said, it did differ in some noteworthy ways:

  • CP/M cached file system information, which could cause data loss if an update was not manually performed before a user removed a disk. QDOS changed this by doing disk updates on every write to the drive. This resulted in QDOS disk operations being slower than CP/M… but also protected against data loss.

  • Instead of CP/M’s file system, Tim used the FAT system that Microsoft created for the standalone BASIC-86 that SCP had already been shipping with their S-100 8086 machies.

Fun Factoid: The FAT (File Allocation Table) file system was developed by Marc McDonald — the first full time employee of Microsoft — and first used as the file system for “Microsoft Standalone Disk BASIC-80” (a bootable floppy for 8080 CPU’s that contained a BASIC interpreter). That was later ported to 8086 and was bundled with Seattle Computer Products 8086 systems.

QDOS required the SCP S-100 8086 systems, naturally, with a specific floppy drive controller: the Cromemco 4FDC, as pictured below.

Photo courtesy s100computers.com
 

By July of 1980, QDOS was functional — with roughly half of the outlined feature set. Then, by August, the famous EDLIN command was added.

Factoid time! The EDLIN program, a simple line editor, is the most enduring portion of this original version of QDOS. Lasting until this day, in various forms and ports, and being the primary text editor for MS-DOS up until the early 1990s. It was inspired by the ED commands of both CP/M and UNIX.

During the summer of 1980, the name QDOS was dropped (as “Quick and Dirty” isn’t the best product name) in favor of the, rather on-the-nose, “86-DOS”. A DOS. On the 8086 platform.

Bellow are a few screenshots of 86-DOS from the 1.0 version, which didn’t ship until 1981 (but still gives a good view of what it looked like back then):

COMMAND.COM and EDLIN
 
A DIR of an 86-DOS system

And, for the sake of posterity, here is the first part of the 86-DOS user manual for version 0.3. This is the very first published description — ever — of the OS that would later become MS-DOS.

At this point, Seattle Computer Products could begin bundling their S-100 8086 systems with the, now functional, 86-DOS.

Below you can see an advertisement of exactly that. A complete computer with an 8086 @ 8 MHz, 128k of RAM, the disk controller mentioned above… and shipping with both 86-DOS and Microsoft’s 86-BASIC. For a mere $3,349.

Ad for the SCP S-100 in the November, 1981 issue of Kilobaud Microcomputing magazine.
 

1981 - The Microsoft Agreement

Remember how Microsoft and Seattle Computer Products had worked together a few times already? Well, they were about to make an agreement that would change all of computing for decades to come.

Starting in November/December of 1980, Microsoft licensed a version of 86-DOS (version 0.3 to be exact) from SCP. This was a non-exclusive deal, meaning SCP could still sell 86-DOS and license to other OEMs.

Amazingly enough, a copy of one of that license — dated January 6th, 1981 — is now available so we can know the exact terms of the deal:

Document copy, courtesy Archive.org
 

That’s when things really took off. At an almost lightning speed.

Just a few short months later — in May — Tim Paterson left SCP and started working directly for Microsoft. His job: to port 86-DOS to the new IBM PC, which had an 8088 processor.

Then, in July of 1981 (just two months later), Microsoft purchased 86-DOS — in entirety — for an additional $50,000 (over the $25,000 MS had previously paid for a non-exclusive license). It was now Microsoft’s to do with as they please… and the original developer now worked for them.

That very next month, in August, Microsoft officially licensed MS-DOS to IBM… who then bundled it with their new IBM Personal Computer (the famous model 5150)… renamed “PC-DOS”.

Something wild to think about: Consider the timeline here.

  • The IBM 5150 PC was announced on August 12th, 1981.

  • The deal between Microsoft and IBM — for MS-DOS, renamed to PC-DOS — was finalized… that same month.

  • Microsoft didn’t actually own MS-DOS… until a few weeks before that.

  • … and Microsoft didn’t even have the developer (Tim Paterson) working for them until two months before that.

That’s right. One of the most important business deals in computer history… came together in a matter of just a few short months… with only days to spare.

Epilogue

There is oh-so-much more to this story. Too much to tell in one sitting.

  • MS-DOS would go on to absolutely dominate the computer industry and set the course of Microsoft for decades to come.

  • That version of CP/M that Seattle Computer Products wanted (before they gave up waiting and built QDOS)? It eventually shipped in November of 1981. CP/M was this close to being shipped with the first IBM PCs. You can mark that moment as the point when CP/M lost its position of market dominance.

  • The relationship with IBM and Microsoft would be a wild and rocky one — involving PC-DOS, OS/2 and many other products over the years.

  • Tim Paterson would end up working at Microsoft, multiple times, on several versions of DOS as well as Visual BASIC.

Fun personal anecdote: As a young man in the 1990s, I started working at Microsoft. One day, it occurred to me: “I wonder if Tim Paterson still works here?”

 

So I looked him up and, turns out, he did. In a building just around the corner from the one I was working in. So I did what any presumptuous, nerdy 19 year old would do… I sent him an email. One where I sounded like a giddy fanboy. Because that’s what I was.

 

Tim was gracious and kind. Taking time out of his schedule to chat with a fan of his work. While we only spoke on a few occasions, those moments meant a great deal to this young nerd.

community logo
Join the Lunduke Community
To read more articles like this, sign up and join my community today
6
What else you may like…
Videos
Podcasts
Posts
Articles
Google Tells Courts How Google Should Be Punished (and Tried to Hide it)

Released Friday before Christmas -- the ideal time to hide any announcement -- in response to losing an antitrust suit, Google proposes no real changes to their company or search business. Unsurprisingly, Mozilla (who likes Google's money) agrees.

00:27:44
December 19, 2024
ChatGPT Can Not Say "Bryan Lunduke"

Move over David Mayer, Lunduke joins the list of names which OpenAl will not display. Here's how this was accomplished.

00:22:23
December 19, 2024
Mozilla Executive Pay Doubles as Loss of 80% of Revenue Looms

"Mozilla has shifted much of its work toward Al" as funds directed towards African "Digital Justice", "Queer Youth Inclusion", & "Digital Activism for Young Feminists".

00:25:04
November 22, 2023
The futility of Ad-Blockers

Ads are filling the entirety of the Web -- websites, podcasts, YouTube videos, etc. -- at an increasing rate. Prices for those ad placements are plummeting. Consumers are desperate to use ad-blockers to make the web palatable. Google (and others) are desperate to break and block ad-blockers. All of which results in... more ads and lower pay for creators.

It's a fascinatingly annoying cycle. And there's only one viable way out of it.

Looking for the Podcast RSS feed or other links? Check here:
https://lunduke.locals.com/post/4619051/lunduke-journal-link-central-tm

Give the gift of The Lunduke Journal:
https://lunduke.locals.com/post/4898317/give-the-gift-of-the-lunduke-journal

The futility of Ad-Blockers
November 21, 2023
openSUSE says "No Lunduke allowed!"

Those in power with openSUSE make it clear they will not allow me anywhere near anything related to the openSUSE project. Ever. For any reason.

Well, that settles that, then! Guess I won't be contributing to openSUSE! 🤣

Looking for the Podcast RSS feed or other links?
https://lunduke.locals.com/post/4619051/lunduke-journal-link-central-tm

Give the gift of The Lunduke Journal:
https://lunduke.locals.com/post/4898317/give-the-gift-of-the-lunduke-journal

openSUSE says "No Lunduke allowed!"
September 13, 2023
"Andreas Kling creator of Serenity OS & Ladybird Web Browser" - Lunduke’s Big Tech Show - September 13th, 2023 - Ep 044

This episode is free for all to enjoy and share.

Be sure to subscribe here at Lunduke.Locals.com to get all shows & articles (including interviews with other amazing nerds).

"Andreas Kling creator of Serenity OS & Ladybird Web Browser" - Lunduke’s Big Tech Show - September 13th, 2023 - Ep 044

A selection of screenshots of people trying to get ChatGPT to say “Bryan Lunduke”.

Not what I was hoping for this afternoon, but still nice to get some classic Mac time in. Grabbed a game from Macintosh Garden; Starship Titanic. I’ve never played it, but I remember being really curious about it as a kid.

Moved it over to the Mac via sneakernet. It’s been decompressing for over 30 minutes… just realized I forgot the onboard USB is 1.1 and I didn’t transfer the files to the HDD before running StuffIt on it. Whoopsie 😅. I really love old systems.

mmmmmMMM! some juicy Be bits....

a bit of the important character of #BeOS - namely, Tracker and Deskbar - that managed to get officially released prior to Be, Inc. being consumed.

Go ahead. Grab a Lifetime Subscription. Treat yourself. (Bitcoin option available.)

Lunduke Journal Lifetime Subscriptions are available through December 26th.

Grab one for yourself.  Grab one for that special nerd in your life.  Support the last bastion of truly independent Tech Journalism.

Everybody wins.

The Famous Lifetime Subscription via Locals (+ Gift Option)

The "World Famous Lunduke Journal Lifetime Subscription" is exactly what it sounds like. Pay once and get full access to The Lunduke Journal (with all the perks of subscription on Locals). For life.

Plus: They make a great, nerdy gift.

New Lifetime Subscriptions are available, for $200, from now through December 26th. Then this option goes "back into the vault".

Here's how to grab one of these coveted bad boys for yourself:

  1. Go to Lunduke.Locals.com/support.

  2. Select "Give Once".

  3. Enter "200" into the amount field.

  4. After checking out, Lunduke will toss you an email once your account is set to full lifetime status. (This usually happens within a few hours.)

Want to purchase a Lunduke Journal Lifetime Subscription as a gift for someone else?  Here's how:

  1. Go to Lunduke.Locals.com/support.

  2. Select "Give Once".

  3. Enter "200" into the amount field.

  4. Send an email to "bryan at Lunduke.com" with the subject "Lifetime Gift Subscription".  Include the email address and / or Locals user name (if they have one) of the person you would like to gift the subscription to.
  5. Lunduke will email you to confirm details.

The Famous Lifetime Subscription (with Bitcoin)

You can also obtain a Lifetime Subscription via Bitcoin.

  • Make sure you have a Lunduke.Locals.com account (a free account works just fine).

  • Send $200 worth of Bitcoin (or more) to the following address:

bc1qyjakve8fywm8pz2v99v57yhjj0vzr2vjze6fcq

  • Email "bryan at lunduke.com" with the following information: What time you made the transaction, how much was sent (in Bitcoin), and the email address you use (or plan to use) on Locals.com.

Nice and easy.

-Lunduke

Read full Article
December 20, 2024
post photo preview
Funny Programming Pictures Part LXVII
More funny, nerdy pictures than you can [idiom for large quantity understandable by humans]

There are XXXIX pictures in part LXVII of "Funny Programming Pictures".

IX out of X people reading that sentence just googled "Roman Numeral Converter".

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Read full Article
December 18, 2024
The real "Year of The Linux Desktop"...
Read full Article
See More
Available on mobile and TV devices
google store google store app store app store
google store google store app tv store app tv store amazon store amazon store roku store roku store
Powered by Locals