Après les versions 1.25 et 2.0, le code source de MS-DOS v4.0 vient d’être publié en ligne sous licence MIT par Microsoft, en collaboration avec IBM. Et ce n’est pas n’importe quelle version de MS-DOS 4. Explications.
En mars 2014, Microsoft livrait le code source de deux systèmes d’exploitation, MS-DOS 1.25 et 2.0, au Computer History Museum, puis les publiait à des fins de référence sur Github. Ce même compte hébergera désormais une version particulière de MS-DOS 4.00 sous licence MIT.
Cette découverte, on la doit à un chercheur anglais, Connor « Starfrost » Hyden, un collectionneur de logiciels. Parmi les disquettes qu’il possédait se trouvaient des binaires bêta non publiés de DOS 4.0, qui lui ont été envoyés alors qu’il travaillait encore chez Lotus.
Ce qui est assez fascinant, c’est l’histoire sinueuse des versions 4.0 de DOS : Microsoft s’est en effet associé à IBM pour certaines parties du code, mais a également créé une branche de DOS appelée Multitasking DOS, qui n’a pas connu une large diffusion.

Pour la petite histoire, Starfrost a choisi de contacter l’OSPO de Microsoft pour envisager la possibilité de publier la source de DOS 4, car il travaille sur la documentation de la relation entre DOS 4, MT-DOS et ce qui deviendra finalement OS/2. « Certaines versions ultérieures de ces binaires Multitasking DOS peuvent être trouvées sur internet, mais ces nouveaux binaires bêta semblent être beaucoup plus anciens, non publiés, et incluent également la source ibmbio.com », explique Jeff Wilcox, responsable de l’Open Source Programs Office, sur le blog de l’éditeur.
Scott Hanselman, VP Developer Community, a pu compiler des images de ces disques originaux et a soigneusement numérisé les documents imprimés originaux. S’il n’a pas été possible de mettre la main sur le code source complet de MT-DOS, MS DOS 4.00 est là et se trouve désormais sur Github, accompagné de binaires bêta supplémentaires, de PDF de la documentation et des images de disque.
Si la découverte vous intéresse, sachez qu’il vous faudra une machine IBM PC XT d’origine, un Pentium plus récent ou bien utiliser les émulateurs PCem et 86box open source. Rendez-vous sur Github.

