Microsoft Open‑Sources the Earliest 86‑DOS 1.0 Code – A Historic Look
To mark the 45th anniversary of DOS, Microsoft has open‑sourced the original 86‑DOS 1.00 kernel, early PC‑DOS snapshots, classic utilities like CHKDSK, and Tim Paterson’s handwritten notes, providing researchers and educators with a rare, fully documented view of the OS that became the foundation of MS‑DOS.
Release of 86‑DOS 1.00 source code
On the 45th anniversary of DOS, Microsoft published the earliest discovered DOS source code, 86‑DOS 1.00, together with documentation and handwritten programmer notes.
Historical background
In 1980 Microsoft obtained a contract to deliver an operating system for the IBM PC. To meet the deadline, Bill Gates purchased the full rights to 86‑DOS from Seattle Computer Products and its author Tim Paterson for about $75 000. The purchased code became the basis of MS‑DOS.
Early 86‑DOS ran only from 160 KB floppy disks and had no hard‑disk support; it later formed the core of MS‑DOS, which dominated the PC market through the 1980s and early 1990s. Before this release the oldest legally available DOS versions were MS‑DOS 1.25 and MS‑DOS 2.0.
Contents of the source package
86‑DOS 1.00 kernel
Early development snapshots of the PC‑DOS 1.00 kernel
Classic utilities such as CHKDSK
Tim Paterson’s private handwritten notes accompany the code and record three dimensions of the project:
Timeline of code refactoring and changes
Exact completion dates for new features
System errors and technical defects encountered during development
Transcription and verification
The “DOS reverse‑engineering group” led by Yufeng Gao and Rich Cini transcribed the printed listings and scanned them. Modern OCR tools struggled with the low‑quality 1980s printouts, making the process labor‑intensive.
Repository and build support
The repository is hosted at https://github.com/DOS-History/Paterson-Listings/tree/main. It preserves the original assembly files, link scripts, and device‑driver implementations in the same directory layout used by Seattle Computer Products in 1980.
Microsoft supplies modern build tools and a cross‑assembler that allow the code to be compiled on contemporary systems. Detailed documentation describes the build process, dependencies, and required parameters.
Researchers can compile the code while preserving the original 8086 assembly syntax and calling conventions. The release adds debug symbols and source comments that were absent from the commercial binaries, providing insight into the developers’ intent.
Revision history excerpt
; 86‑DOS High‑performance operating system for the 8086 version 1.00 04/28/81
; by Tim Paterson
; >> EVERY change must noted below!! <<
; 0.34 12/29/80 General release, updating all past customers
; 0.42 02/25/81 32‑byte directory entries added
; 0.56 03/23/81 Variable record and sector sizes
; 0.60 03/27/81 Ctrl‑C exit changes, including register save on user stack
; 0.74 04/15/81 Recognize I/O devices with file names
; 0.75 04/17/81 Improve and correct buffer handling
; 0.76 04/23/81 Correct directory size when not 2^N entries
; 0.80 04/27/81 Add console input without echo, Functions 7 & 8
; 1.00 04/28/81 Renumber for general releaseSigned-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
21CTO
21CTO (21CTO.com) offers developers community, training, and services, making it your go‑to learning and service platform.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
