Microsoft has open-sourced one other little bit of computing historical past this week: The firm teamed up with IBM to release the supply code of 1988’s MS-DOS 4.00, a model higher recognized for its unpopularity, bugginess, and convoluted improvement historical past than its utility as a pc working system.
The MS-DOS 4.00 code is on the market on Microsoft’s MS-DOS GitHub web page together with variations 1.25 and a couple of.0, which Microsoft open-sourced in cooperation with the Computer History Museum again in 2014. All open-source variations of DOS have been launched beneath the MIT License.
Initially, MS-DOS 4.00 was slated to incorporate new multitasking options that permit software program to run within the background. This release of DOS, additionally typically referred to as “MT-DOS” or “Mutitasking MS-DOS” to differentiate it from different releases, was solely launched by means of a number of European PC OEMs and by no means as a standalone retail product.
The supply code Microsoft launched this week is not for that multitasking model of DOS 4.00, and Microsoft’s Open Source Programs Office was “unable to search out the complete supply code” for MT-DOS when it went to look. Rather, Microsoft and IBM have launched the supply code for a very separate model of DOS 4.00, primarily developed by IBM so as to add extra options to the prevailing non-multitasking model of DOS that ran on most IBM PCs and PC clones of the day.
Microsoft by no means returned to its multitasking DOS thought in subsequent releases. Multitasking would change into the purview of graphical working methods like Windows and OS/2, whereas MS-DOS variations 5.x and 6.x continued with the outdated one-app-at-a-time mannequin of earlier releases.
Microsoft has launched some documentation and binary information for MT-DOS and “could replace this release if extra is found.” The firm credit English researcher Connor “Starfrost” Hyde for shaking all of this supply code free as a part of an ongoing examination of MT-DOS that he’s documenting on his web site. Hyde has posted many screenshots of a 1984-era construct of MT-DOS, together with of the “session supervisor” that it used to trace and change between working functions.
The publicly launched model of MS-DOS 4.00 is understood much less for its new options than for its excessive reminiscence utilization; the 4.00 release might devour as a lot as 92KB of RAM, method up from the roughly 56KB utilized by MS-DOS 3.31, and the 4.01 release diminished this to about 86KB. The later MS-DOS 5.0 and 6.0 releases maxed out at 72 or 73KB, and even IBM’s PC DOS 2000 solely wished round 64KB.
These RAM numbers can be rounding errors on any trendy laptop, however within the days when RAM was expensive, methods maxed out at 640KB, and digital reminiscence wasn’t a factor, such an enormous bounce in system necessities was an enormous deal. Today’s retro-computing lovers nonetheless are likely to skip over MS-DOS 4.00, recommending both 3.31 for its decrease reminiscence utilization or later variations for his or her expanded characteristic units.
Microsoft has open-sourced another legacy code through the years, together with these older MS-DOS variations, Word for Windows 1.1a, 1983-era GW-BASIC, and the unique Windows File Manager. While most of those have been launched of their authentic types with none updates or adjustments, the Windows File Manager is definitely actively maintained. It was initially simply modified sufficient to run natively on trendy 64-bit and Arm PCs working Windows 10 and 11, however it’s been up to date with new fixes and options as just lately as March 2024.
The release of the MS-DOS 4.0 code is not the one new factor that DOS historians have gotten their fingers on this yr. One of the earliest recognized variations of 86-DOS, the software program that Microsoft would purchase and switch into the working system for the unique IBM PC, was found and uploaded to the Internet Archive in January. An early model of the deserted Microsoft-developed model of OS/2 was additionally unearthed in March.