Microsoft and IBM recently made headlines in the tech world by open-sourcing the source code of MS-DOS 4.00, a version of the popular computer operating system that was known for its bugginess and complicated development history rather than its utility. This move follows Microsoft’s previous release of MS-DOS versions 1.25 and 2.0 in collaboration with the Computer History Museum in 2014. All of these open-source versions of DOS are available under the MIT License, allowing developers to freely explore and build upon the code.
Originally, MS-DOS 4.00 was intended to introduce multitasking capabilities, allowing software to run in the background. However, this multitasking version of DOS, sometimes referred to as “MT-DOS” or “Multitasking MS-DOS,” was only released through a few European PC OEMs and never as a standalone retail product. Unfortunately, Microsoft’s Open Source Programs Office was unable to locate the full source code for MT-DOS. Instead, the code that Microsoft and IBM have released pertains to a different version of DOS 4.00 developed primarily by IBM. This version aimed to enhance the existing non-multitasking iteration of DOS that ran on IBM PCs and PC clones at the time.
It’s worth noting that Microsoft ultimately abandoned the idea of a multitasking DOS in subsequent releases. Instead, multitasking capabilities would be incorporated into graphical operating systems like Windows and OS/2. MS-DOS versions 5.x and 6.x continued to follow the traditional one-app-at-a-time model of earlier releases. While Microsoft has only released some documentation and binary files for MT-DOS, they remain open to updating the release if more is discovered. Credit is given to English researcher Connor “Starfrost” Hyde for unearthing this source code as part of his ongoing exploration of MT-DOS on his website, where he has shared screenshots of a 1984-era build.
The publicly released version of MS-DOS 4.00 received more attention for its high memory usage rather than its new features. Compared to the approximately 56KB of RAM used by MS-DOS 3.31, the 4.00 release required as much as 92KB. The subsequent 4.01 release reduced this number to around 86KB, while MS-DOS 5.0 and 6.0 maxed out at 72 or 73KB. Even IBM’s PC DOS 2000 only needed approximately 64KB. In today’s world of abundant RAM and virtual memory options, these figures may seem trivial. However, during a time when RAM was expensive and systems were limited to a maximum of 640KB, such a significant increase in system requirements was a major concern. Consequently, enthusiasts in the retro-computing community often recommend using MS-DOS 3.31 for its lower memory usage or later versions for their expanded feature sets, effectively skipping over MS-DOS 4.00.
Over the years, Microsoft has made other legacy code available to the public through open-source initiatives. In addition to the aforementioned MS-DOS versions, Microsoft has released Word for Windows 1.1a, GW-BASIC from 1983, and the original Windows File Manager. While most of these releases have remained unchanged, the Windows File Manager has received active maintenance over time. Initially adapted to run natively on modern 64-bit and Arm PCs with Windows 10 and 11, it has received updates with new fixes and features as recently as March 2024.
The release of MS-DOS 4.00’s source code is not the only treasure uncovered by DOS historians this year. In January, one of the earliest known versions of 86-DOS, the software that Microsoft would later acquire and transform into the operating system for the original IBM PC, was discovered and uploaded to the Internet Archive. Subsequently, an early version of the abandoned Microsoft-developed edition of OS/2 was also unearthed in March.
In conclusion, the open-sourcing of MS-DOS 4.00 by Microsoft and IBM provides developers and retro-computing enthusiasts with an opportunity to dissect and explore the code behind this infamous version of the operating system. While it may not boast the multitasking capabilities that were initially planned, it remains an important piece of computing history. With the continuous efforts of researchers and the open-source community, more undiscovered gems like 86-DOS and early versions of OS/2 may surface, shedding further light on the evolution of computer operating systems.
Source link