Microsoft releases the earliest DOS source code ever discovered as open source

Alfonso Maruccia

Posts: 2,533   +935
Staff
Editor's take: Microsoft continues to tightly control the release of some of its most important pieces of legacy software. While enthusiasts and programmers are eager to see newer versions of MS-DOS made available, Redmond remains focused on preserving early DOS releases, which offer limited value for future development efforts.

Microsoft has officially released another significant piece of DOS history. The "Paterson Listings" include the earliest known source code related to the DOS platform ever discovered, the company explained, providing scanned listings and several transcribed portions that have been converted into compilable source code.

Tim Paterson's DOS listings continue the "tradition" Microsoft began a few years ago, when the company released MS-DOS 1.25 and 2.11 as open-source code. More recently, in 2024, Redmond shared the source code and floppy disk images for MS-DOS 4.0, although that release was somewhat marred by execution issues.

The new open-source repository includes code for the 86-DOS 1.00 kernel, development snapshots of the PC-DOS 1.00 kernel, and core utilities such as CHKDSK. The repository also includes assembler listings, as well as materials that can be used to build a working copy of the assembler itself.

Microsoft explained that "this work offers rare insight into how MS-DOS/PC-DOS came to be, and how operating system development was done at the time, not as it was later reconstructed."

Paterson is the computer programmer who created 86-DOS, an early operating system for the Intel 8086 microprocessor designed to emulate the application programming interface of Gary Kildall's CP/M. Microsoft acquired 86-DOS, using the foundational technology to build its own command-line operating system. The code shared on GitHub eventually became MS-DOS, which IBM sold as PC-DOS alongside its personal computer systems.

Microsoft highlights that the newly preserved listings include both source code and handwritten notes preserved by Paterson himself. Together, the code and scanned documents trace a timeline of development, showing feature implementation, coding errors, and subsequent bug fixes. Thanks to Paterson's involvement, the material will soon become "living" artifacts at the Interim Computer Museum.

According to Microsoft OSPO Director Stacey Haffner and Microsoft/GitHub VP Scott Hanselman, this kind of software archaeology requires significant effort, including legal vetting, archival work, and technical validation. It also involves a team of specialists dedicated to computer history and digital preservation.

This may also help explain why Microsoft has not released any "modern" versions of MS-DOS, such as MS-DOS 5.0 or 6.22. Several developers are now working to resurrect or emulate early PC operating systems and their alternatives, while the FreeDOS team would likely benefit from access to Redmond's "official" codebase to improve compatibility and reliability with classic DOS applications and games.

Permalink to story:

 
There's some more insightful history in the article "Computer Invention Landmarks and Their Inventors"
https://daviddilworth.com/it/computer-landmarks-and-their-pioneers/

"Some highly informed people, including the late Gary Kildall, believed that QDOS / PC-DOS was “reverse engineered” (or disassembled/decompiled) from CP/M-86, because of its virtually identical internal structure and processes - that goes far beyond just copying Kildall’s API.

"Of course that would mean Gates/Paterson didn’t even invent DOS. Paterson claims 'To this day, I have never seen any CP/M code.'"

"However is this intentionally vague? Because Paterson is well aware that “code” can mean two things, source code or machine code, one of which makes his claim false. Paterson admits extreme familiarity with CP/M’s internal working mechanisms, and while he may never have seen any “Source code” – he clearly has worked with CP/M’s “machine code.”

"Similarly, I had never seen any of Digital Research‘s Concurrent CP/M source code, but that did not prevent me from diagnosing and solving a problem with its hard disk routines.
 
The oldest version of Dos I've ever used was version 2.11.

That was on a Tandy 1000 HX and it booted it from an eeprom. No HDD or Floppy disk required.
 
That’s actually a really interesting release. It’s great to see Microsoft preserving early OS history like DOS because it gives developers and researchers real insight into how operating systems were built in the early days. Open sourcing these older versions also helps in education and historical understanding, even if they are not directly useful for modern systems.
 
Back