Google Answers Logo
View Question
Q: What language was MS-DOS Written in? ( Answered,   0 Comments )
Subject: What language was MS-DOS Written in?
Category: Computers > Operating Systems
Asked by: trent44-ga
List Price: $11.00
Posted: 01 May 2003 03:40 PDT
Expires: 31 May 2003 03:40 PDT
Question ID: 197874
Question says it all !
Subject: Re: What language was MS-DOS Written in?
Answered By: easterangel-ga on 01 May 2003 04:44 PDT
Hi! Thanks for another interesting question.

The website has a very interesting history of MS-DOS. Let us
first examine its origins before we get into the language used to
write it.

"In 1980, IBM first approached Bill Gates and Microsoft, to discuss
the state of home computers and Microsoft products. Gates gave IBM a
few ideas on what would make a great home computer, among them to have
Basic written into the ROM chip."

"As for an operating system (OS) for the new computers, since
Microsoft had never written an operating system before, Gates had
suggested that IBM investigate an OS called CP/M (Control Program for
Microcomputers), written by Gary Kildall of Digital Research."

But IBM did not come into terms with Kindall and the former went back
again to Microsoft offering Bill Gates a contract for an operating

"The "Microsoft Disk Operating System" or MS-DOS was based on QDOS,
the "Quick and Dirty Operating System" written by Tim Paterson of
Seattle Computer Products, for their prototype Intel 8086 based

"QDOS was based on Gary Kildall's CP/M, Paterson had bought a CP/M
manual and used it as the basis to write his operating system in six

"Microsoft bought the rights to QDOS for $50,000, keeping the IBM deal
a secret from Seattle Computer Products."

"The History of the MS-DOS Operating Systems - Microsoft - Tim
Paterson - Gary Kildall"

So in piecing the story let us first make a step by step guide to the

1. First there was the CP/M operating system by Kindall.
2. Then came QDOS written by Tim Peterson of Seattle Computer
Products. The OS was based and almost the same as CP/M.
3. Mircrosoft bought QDOS and renamed it MS-DOS.

So in determining what language MS-DOS was written let us first
examine CP/M.

According to this article, CP/M was written in the popular assembly
language, FORTRAN. The story goes this way.

"In 1973, when Gary attended the presentation of the new Intel 8080
CPU, his dream appeared much nearer to reality. He was so enthusiastic
about the 8080, that he offered to the Intel managers to build a
compiler for PL/1 (= Programming Language Number 1)."

"There was only a little problem: Gary didn't own a computer running
on an 8080. He only had access to a Digital Equipment PDP-10.
Therefore Gary coded his PL/M compiler in FORTRAN on the DEC PDP. When
the compiler was ready, Gary still needed an 8080 computer for
testing. He even succeeded in persuading the company Shugart to give
him a floppy drive as a gift. Since the cables, the power supply and
the controller were missing, Gary was unable to use it."

"As the donated floppy was worthless for him, Gary decided to simulate
the 8080 on the PDP computer. From this the first version of CP/M
resulted - so to speak as a 'workaround'..."

"CP/M Story"

Since CP/M was written in FORTRAN and QDOS was based on CP/M, does it
mean that QDOS and MS-DOS were written in FORTRAN? According to our
next article, written by Tim Patterson himself, the assembly language
used by Seattle Computer Products wasn't FORTRAN but was built
in-house since it was the only thing available to them at that time.

"The last design requirement was that MS-DOS be written in assembly
language. While this characteristic does help meet the need for speed
and efficiency, the reason for including it is much more basic. The
only 8086 software-development tools available to Seattle Computer at
that time were an assembler that ran on the Z80 under CP/M and a
monitor/debugger that fit into a 2K-byte EPROM (erasable programmable
read-only memory). Both of these tools had been developed in house."

"An Inside Look at MS-DOS"

Search terms used:          
"MS-DOS" history
I hope these links would help you in your research. Before rating this
answer, please ask for a clarification if you have a question or if
you would need further information.
Thanks for visiting us.               
Google Answers Researcher

Clarification of Answer by easterangel-ga on 04 May 2003 07:20 PDT
Hi again!

I would like to make a correction that FORTRAN is not an assembly
language but was high level language already. My fellow researcher
(hedgie-ga) reminded me bout this. He (hedgie-ga) also said that at
the time Gary Kildall of Digital Research was already working as a
consultant at Intel and wrote CP/M in Intel Assembly and called it as
DOS Disk Operating System using 8" floppy.

There are no comments at this time.

Important Disclaimer: Answers and comments provided on Google Answers are general information, and are not intended to substitute for informed professional medical, psychiatric, psychological, tax, legal, investment, accounting, or other professional advice. Google does not endorse, and expressly disclaims liability for any product, manufacturer, distributor, service or service provider mentioned or any opinion expressed in answers or comments. Please read carefully the Google Answers Terms of Service.

If you feel that you have found inappropriate content, please let us know by emailing us at with the question ID listed above. Thank you.
Search Google Answers for
Google Answers  

Google Home - Answers FAQ - Terms of Service - Privacy Policy