| ▲ | Microsoft open-sources "the earliest DOS source code discovered to date"(arstechnica.com) |
| 238 points by DamnInteresting 8 hours ago | 61 comments |
| https://opensource.microsoft.com/blog/2026/04/28/continuing-... |
|
| ▲ | jmward01 6 hours ago | parent | next [-] |
| It is rare that I say this but, thanks MS! Arguably just as, if not more, important is the BASIC that they wrote. That was what they actually wanted to do. DOS just got them the contract with IBM. For decades MS was really a developer tools company with a side biz of writing operating systems and other misc software. They also open sourced that BASIC code too [1]. [1] https://opensource.microsoft.com/blog/2025/09/03/microsoft-o... |
| |
| ▲ | ramon156 an hour ago | parent | next [-] | | I dont think I've ever seen a commit that says "49 years ago". Damn. | | | |
| ▲ | steve1977 an hour ago | parent | prev [-] | | I remember when I realized I had been using Microsoft all along through my Commodore 64. |
|
|
| ▲ | gnabgib 8 hours ago | parent | prev | next [-] |
| Discussion, on the source, at the time (79 points, 24 days ago, 19 comments) https://news.ycombinator.com/item?id=47957494 Or on the GitHub clone (162 points, 15 comments) https://news.ycombinator.com/item?id=47946813 |
|
| ▲ | locusofself 7 hours ago | parent | prev | next [-] |
| wow, they had to OCR it back in from paper printouts > This source code is old enough that it hadn’t been stored digitally. “A dedicated team of historians and preservationists led by Yufeng Gao and Rich Cini,” calling itself the “DOS Disassembly Group,” painstakingly transcribed and scanned in code from paper printouts provided by Paterson. This process was made even more difficult because modern OCR software struggled with the quality of the decades-old printout. |
| |
| ▲ | FarmerPotato 6 hours ago | parent | next [-] | | I'd like to hear more about what works in OCR of dot-matrix fonts. I've been able to OCR letter-quality printer output to 97% (mostly Os and Xs problems). But it seems that machine-learning text-recognition is also now biased to reject computer code because it doesn't look like human language. | |
| ▲ | WalterBright 2 hours ago | parent | prev | next [-] | | I've recovered some ancient software I wrote via scanning in listings I found among my dad's papers. | |
| ▲ | SoftTalker 7 hours ago | parent | prev [-] | | Yet another case where text printed on paper outlived any digital storage. | | |
| ▲ | jshier 6 hours ago | parent | next [-] | | Seems like it was never digitally stored in the first place, and the printed text was barely readable due to age. Not really a big win for paper. | | |
| ▲ | SoftTalker 6 hours ago | parent | next [-] | | Well it had to have been on disk or tape at some point. It wasn't all typed in by hand every time they needed to build a new version. | | | |
| ▲ | 7bit 12 minutes ago | parent | prev | next [-] | | One has to be pretty ignorant and dismissive to claim that this is not "a big win for paper". First of all, that comment is weirdly out of place. The quality and longevity of paper is not the topic. Secondly, there are fragments of paper with writing as old as 2,000 years. Thirdly, paper you look at and see the writing. With digital documents, you need the technology to read the medium and then you need to know how the information was encoded onto the medium, before you even arrive at the same level with paper, where you can start to decide the actual writing. Paper has brought us where we are today, and given us what we know about the past. Don't be so ignorant and dismissive. | |
| ▲ | onion2k 2 hours ago | parent | prev | next [-] | | Early versions of some things, MS Basic being one example I think, were baked into ROM. One of the best innovations that Paul Allen came up with was adding software hooks to the code so bugs that were found later could still be patched. | |
| ▲ | zargon 6 hours ago | parent | prev | next [-] | | The idea that it never existed digitally is obviously untrue. Likely poor wording in the author's part. They probably meant something like, so old that a printout is all that survived (which sounds vaguely like not being digital to someone in an era so far removed from a time when programs were/could realistically be printed.) | | |
| ▲ | WalterBright 2 hours ago | parent | next [-] | | Having printouts were necessary when: 1. you were using a DECwriter dot matrix printer as a terminal 2. using an ASR-33 teletype as a terminal 3. using punch cards or paper tape 4. using a glass tty that could only display 24 lines 5. when you did not have a remote terminal, and wanted to spread your code out on a table and debug it | | | |
| ▲ | fc417fc802 4 hours ago | parent | prev [-] | | > a time when programs were/could realistically be printed Really depends on the program. Source code is often quite manageable. Even artifacts aren't always as large as you might expect. Busybox on my system weighs in at 1.9 MiB or alternatively 928 KiB with zstd maxed out. But I don't really see a point to printing any of it. A situation that might require the printouts is likely to largely preclude the continued existence of modern electronics, the ability to replace batteries, or even a connection to a reliable electrical grid. | | |
| ▲ | zargon 4 hours ago | parent [-] | | Yeah, that's why I tried to include both categories. Even for programs that are small enough to be printed, we just don't do it any more. I could have worded that part better myself. |
|
| |
| ▲ | irishcoffee 4 hours ago | parent | prev [-] | | How did they print it then, I wonder? | | |
| ▲ | bryanrasmussen 3 hours ago | parent [-] | | They had some old German guy with a big beard, and two interns, running some sort of big contraption that looked like a medieval torture instrument, and the interns would run and put letters in a row and then the old guy move a massive letter and in the end out came a bit of paper with source code on it. | | |
|
| |
| ▲ | petcat 6 hours ago | parent | prev [-] | | > struggled with the quality of the decades-old printout. barely It sounds like this printout has deteriorated badly and was barely readable. |
|
|
|
| ▲ | dang 8 hours ago | parent | prev | next [-] |
| Recent and related: Microsoft open sources DOS 1.00 on 45th anniversary - https://news.ycombinator.com/item?id=47957494 - April 2026 (19 comments) |
|
| ▲ | hackerqwe 10 minutes ago | parent | prev | next [-] |
| More code that copilot can be trained on. |
|
| ▲ | userbinator 7 hours ago | parent | prev | next [-] |
| I wonder how long it'll be before they release the source for the earliest Windows versions. The fact that they still have the source for this very old DOS at least gives hope that they also do for old Windows. |
| |
| ▲ | GaryBluto 5 hours ago | parent | next [-] | | The day they would make Windows 2000 codebase open source (or source available) would be the day I could die happy (although I'd probably be long dead anyways by the time there's a glimmerof chance of it happening). What a beautiful, smooth-running operating system it was. | | | |
| ▲ | WalterBright an hour ago | parent | prev | next [-] | | It shouldn't be hard to disassemble it. | |
| ▲ | protocolture 4 hours ago | parent | prev | next [-] | | I imagine its not far off. I get the impression they are almost done with windows as a platform. | |
| ▲ | teamsolid 7 hours ago | parent | prev | next [-] | | I am sure that there is a lot good material to take inspiration and learning even from the early Windows 3.11. | | | |
| ▲ | throwaway27448 6 hours ago | parent | prev [-] | | They waited a couple decades too long for this to be of interest. |
|
|
| ▲ | teamsolid 7 hours ago | parent | prev | next [-] |
| It is wonderful how early years of modern computing was brilliant. We treated machines as they really are: machines. Performance, creativity, science..., all possible to make a 386 machine work. Nowadays is all about libraries, virtualization, [bad] code over [bad] code over [bad] code..., I dont like it. |
| |
| ▲ | dhosek 6 hours ago | parent | next [-] | | I sometimes think that my mental model of a computer is still an Apple ][+ with 48K of RAM leads to my writing better code. | | |
| ▲ | WalterBright an hour ago | parent | next [-] | | While I did a few 10 line programs in BASIC in high school on punch cards, when things really started was a freshman class on semiconductors. The class started with diodes and quantum mechanics, then onto transistors, then flip flops, then registers, then ALUs. Then it was on to designing/building a digital clock (which never worked right), and later designing/building/programming single board computers (6802 chip). It was fun knowing everything about a computer. That's long gone! | |
| ▲ | stevesimmons 3 hours ago | parent | prev [-] | | And mine is a Commodore Vic-20 circa 1981, with 3583 bytes of free RAM. Programmed in 6502 assembler. Can't get much closer to the CPU than that. |
| |
| ▲ | aenis 3 hours ago | parent | prev [-] | | For a very long while now, we had programmers who never understood any low level concepts at all. They have started with js or python, and never looked 'down'. There are no limits to monstrosities they will consider normal. Linus Torvalds, a few months ago, said something to this effect when discussing AI coding tools. That his (also, mine) generation was lucky to have started with low level stuff and managed to retain the understanding of the whole stack - and kids these days don't get that. Good luck acquiring this level of feel for computers, algorithms, data structures today, when a kid's first experience with coding will be a seemingly genius chatbot. | | |
| ▲ | charcircuit 28 minutes ago | parent [-] | | >and managed to retain the understanding of the whole stack No one understands the whole stack. There is too much specialized information. |
|
|
|
| ▲ | theanonymousone an hour ago | parent | prev | next [-] |
| I'm wondering whether ReactOS can exploit Claude et. al. to their fullest and "recreate" Windows 2000/95. I may donate some tokens for that cause. |
| |
| ▲ | leobuskin an hour ago | parent | next [-] | | I've used Claude to fix/reconstruct & build leaked Win2k3 on Linux with original toolchain via Wine. This approach included full gdi sources reconstruction. I just don't know what to do with this, it's kinda difficult to "wash" on this scale | |
| ▲ | CursedSilicon an hour ago | parent | prev [-] | | That sounds like a terrifying legal minefield that they would not want to tread | | |
|
|
| ▲ | okandship 29 minutes ago | parent | prev | next [-] |
| readable plain text plus boring metadata still ages better than most clever archival systems |
|
| ▲ | gnarlouse 2 hours ago | parent | prev | next [-] |
| How about Microsoft fixes npm, github, and vscode |
|
| ▲ | imoverclocked 7 hours ago | parent | prev | next [-] |
| Time to find vulnerabilities! I remember in the naughts, coming across a dos machine that was quite out of time… even for the university basement it was living in next to a pile of lead brick. Its only job was to run an instrument via an home-built ISA card and write data out to 5.25” floppies. What uses would this code have in 2026? |
| |
| ▲ | yjftsjthsd-h 3 hours ago | parent | next [-] | | It's a single user OS that runs everything in ring zero by design. I'm not sure, definitionally, that it can have security vulnerabilities. I... guess maybe code execution on exposure to an untrusted floppy disk filesystem? | |
| ▲ | FarmerPotato 6 hours ago | parent | prev [-] | | To see what decisions they made.
Like any historical document. Aim to understand the people of the time. |
|
|
| ▲ | froyooh 7 hours ago | parent | prev | next [-] |
| Back when it was all written by hand and optimized well. |
|
| ▲ | dooosss 6 hours ago | parent | prev | next [-] |
| Too little, too late. |
|
| ▲ | signa11 7 hours ago | parent | prev [-] |
| in the words of mr. mitch-hedburg “here, you throw this away“ |
| |