Microsoft open sourced MS-DOS 4.0 on GitHub: problem with UTF-8 and timestamps
Microsoft published the source code for the 1986 MS-DOS 4 operating system on GitHub, but there were problems with some critical files being converted to UTF-8 and missing time metadata.
MS-DOS 4 code
Introduction
In April, Microsoft released the source code of its legendary operating system on the open GitHub resource MS-DOS version 4, which was created in 1986. Although this is not the first release of DOS code, this release encountered some serious problems that disrupted the operation of certain important components.
Publishing problems
Well-known developer and blogger Michal Nekasek from OS/2 Museum in In his article "How Not to Open Historical Source Code" he noted that during the conversion to UTF-8 and due to git's inability to preserve file timestamps, many critical parts of the code were corrupted. Michal praised the fact that the source code was open, but criticized the mistakes made, saying: "Please don't distort historical source code by stuffing it into (stupid) git."
Main problems
The most serious problem was converting source files to UTF-8. Older systems cannot handle this format and are unlikely to be upgraded to do so. Additionally, the 512 byte line length limit in MASM MS-DOS 4 resulted in many lines exceeding this limit after conversion to UTF-8, becoming unreadable.
The level of file corruption varies, but the OS/2 Museum publication notes that the core system files are perfectly identical to the original version 4.00, which fixed several bugs. This version was not widely available, being distributed only to computer manufacturers.
Developer Clarification
In the comments to the original post, one of the developers of the MS-DOS 4 release, Connor Hyde (Starfrost), acknowledged the problem and explained the legal reasons why which timestamps were not included. The discussion between Michal and Starfrost continued in emails. Despite Michal’s critical tone, it is noted that the current situation is not the fault of the independent developer Starfrost, and the reasons lie in Microsoft’s corporate policy.
Outlook
It is likely that these problems will be resolved in the near future so that MS-DOS 4 can work as before. However, this version of DOS was not popular due to its excessive RAM consumption of 92 KB for that time. Interestingly, competing DR-DOS skipped versions 4.0-4.99 entirely, moving straight from 3.41 to 5.0.
Glossary
- Microsoft is the largest software company, creator of the Windows operating systems and the MS Office office suite.
- MS-DOS is a family of operating systems for IBM PC-compatible computers developed by Microsoft.
- GitHub is a web service for hosting IT projects and their joint development.
- UTF-8 is a universal character encoding format that supports almost all existing writing systems.
- OS/2 Museum - a website and blog dedicated to the history of the OS/2 operating system.
Links
Answers to questions
Why was the 1986 Microsoft MS-DOS 4 code published on GitHub?
What problems did you encounter publishing MS-DOS 4 code on GitHub?
What did the famous developer Michal Nekasek criticize in connection with the publication of the MS-DOS 4 code?
Which MS-DOS 4 files were most corrupted when published to GitHub?
How do you plan to solve problems with publishing MS-DOS 4 code?
Hashtags
Save a link to this article
Discussion of the topic – Microsoft open sourced MS-DOS 4.0 on GitHub: problem with UTF-8 and timestamps
Microsoft published the code for the 1986 MS-DOS 4.0 operating system on GitHub, but it turned out to be broken due to problems with UTF-8 and timestamps, as noted by developer Michal Nekasek.
Latest comments
8 comments
Write a comment
Your email address will not be published. Required fields are checked *
Иван
It's interesting that Microsoft decided to publish the code for MS-DOS 4. It reminded me of the good old days when computers weren't that powerful. 🤓
Анна
Yes, there were times! I remember how happy we were when we received a new version of DOS. But converting to UTF-8 broke part of the code. It's a pity that the original timestamps were not preserved. 😕
Пётр
I agree, converting to UTF-8 was a mistake. Old systems cannot work with this encoding. It's good that the developers acknowledged the problem and will probably fix it soon. 💻
Ольга
Not surprisingly, DR-DOS decided to skip version 4.0-4.99 due to the high memory requirements of MS-DOS 4. 92 KB of RAM was a huge amount at the time! 🤯
Григорий
Eh, young people... 😒 Nowadays, we were happy with any new version of DOS, regardless of memory requirements. These technology trends are just ridiculous nonsense. The main thing is the stability and performance of the system.
Анна
Gregory, don't be such a grumbler! 😆 Progress is inevitable, and we must keep up with the times. Remember how happy we were when we received new versions of DOS with improvements and bug fixes?
Пётр
Yes, Anna is right. New technologies are good, but historical heritage must also be respected. The release of the MS-DOS 4 source code is a great step to preserve the history of computer technology. 👍
Эмма
I think publishing source code is a great way for young developers to learn the history and evolution of operating systems. Perhaps this will inspire them to create new innovative solutions in the future! 🚀