NHacker Next
  • new
  • past
  • show
  • ask
  • show
  • jobs
  • submit
Microsoft open-sources "the earliest DOS source code discovered to date" (arstechnica.com)
jmward01 7 hours ago [-]
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 2 hours ago [-]
I dont think I've ever seen a commit that says "49 years ago". Damn.
steve1977 2 hours ago [-]
I remember when I realized I had been using Microsoft all along through my Commodore 64.
vee-kay 3 hours ago [-]
[dead]
nananana9 57 minutes ago [-]
I cannot describe to you how jealous I am of the fact that back then writing a few thousand lines of assembly was what it took to launch a successful software company.
greenbit 17 minutes ago [-]
And for such simple processors and systems no less! No descriptor tables to deal with, no memory management to configure. These days it takes a little processor inside the main processor, just to get things started. Those were golden times.
yokoprime 29 minutes ago [-]
To be fair, i think you needed a cutthroat businessman leading the company. Which i guess is more or less the same today
embedding-shape 16 minutes ago [-]
Replace Assembly with TypeScript/Rust/Go/whatever and as long as the idea is good and useful, same thing applies today.
avadodin 29 minutes ago [-]
More than a few people would rather die in poverty than put in the effort today even if you offered to time-machine them back with their finished product.
gnabgib 9 hours ago [-]
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 8 hours ago [-]
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 7 hours ago [-]
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.

bob778 3 minutes ago [-]
ABBYY has a specific module for dot matrix printouts so I’m surprised it was a struggle for them but every document is different
embedding-shape 14 minutes ago [-]
Boring reply perhaps, but I've had wild success with adding even a tiny LLM afterwards to do "fixups" over OCRd text, works great for the typical O/0 issues and similar, just pass it the scrambled OCRd text together with the text around it, and even dumb and tiny 7b models running on CPU do a pretty fine job.
WalterBright 3 hours ago [-]
I've recovered some ancient software I wrote via scanning in listings I found among my dad's papers.
SoftTalker 8 hours ago [-]
Yet another case where text printed on paper outlived any digital storage.
jshier 8 hours ago [-]
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 8 hours ago [-]
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.
debesyla 4 hours ago [-]
unless they used punch cards
Sharlin 1 hours ago [-]
Punch cards are still a form of digital storage, mind.
wongarsu 4 minutes ago [-]
Also a form of storing things on paper
WalterBright 3 hours ago [-]
I threw out all my punch cards. Wish I'd kept at least a listing!
andsoitis 4 hours ago [-]
> unless they used punch cards

For MS-DOS?

WalterBright 3 hours ago [-]
Not likely. Punch cards disappeared around the end of 1976.
Anonyneko 36 minutes ago [-]
We still used them in the university as late as in 2010...

...as writing paper.

zargon 7 hours ago [-]
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 3 hours ago [-]
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

tankenmate 3 hours ago [-]
Brings back memories of desk checking
fc417fc802 5 hours ago [-]
> 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 5 hours ago [-]
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.
onion2k 3 hours ago [-]
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.
7bit 1 hours ago [-]
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.

irishcoffee 5 hours ago [-]
How did they print it then, I wonder?
bryanrasmussen 5 hours ago [-]
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.
eipi10_hn 1 hours ago [-]
Where can I buy this printer?
wheybags 37 minutes ago [-]
Humbrechthof, Mainz, Germany ofc.

(https://en.wikipedia.org/wiki/Humbrechthof)

petcat 7 hours ago [-]
> struggled with the quality of the decades-old printout.

barely

It sounds like this printout has deteriorated badly and was barely readable.

2 hours ago [-]
Sharlin 1 hours ago [-]
If it was your standard issue cheap dot-matrix printout, it may not been particularly legible even back then.
danborn26 22 minutes ago [-]
Fascinating piece of computing history. Preserving early DOS source code gives a lot of context to the structural choices that stuck around in x86 architecture for decades.
dang 9 hours ago [-]
Recent and related:

Microsoft open sources DOS 1.00 on 45th anniversary - https://news.ycombinator.com/item?id=47957494 - April 2026 (19 comments)

userbinator 9 hours ago [-]
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 6 hours ago [-]
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.
NitpickLawyer 4 hours ago [-]
Wasn't there a 2000 source leak a while ago? I remember some exploits coming out after the leak.
toyg 2 hours ago [-]
Yes but it could not be legally used by anything.
avadodin 16 minutes ago [-]
OP said source available was acceptable. not even asking for compiler access which is also widely available.

Windows has always been more than modular enough for any repurposing and there were licenses that were not tied to specific hardware so you could use them even today.

Which is to say no one is stopping you from building a COPILOT.VBX for VisualBasic 3.0.

optymizer 6 hours ago [-]
Agreed. It's still my favorite Windows version.
londons_explore 6 hours ago [-]
There is a mostly complete leak of it...
WalterBright 3 hours ago [-]
It shouldn't be hard to disassemble it.
protocolture 5 hours ago [-]
I imagine its not far off. I get the impression they are almost done with windows as a platform.
teamsolid 8 hours ago [-]
I am sure that there is a lot good material to take inspiration and learning even from the early Windows 3.11.
mycall 8 hours ago [-]
Do a deep dive into how OS/360 formalized to having DOS.
SoftTalker 8 hours ago [-]
/s ?
AlecSchueler 5 hours ago [-]
Pretty sure it's a bot or simple karma farming operation.
throwaway27448 7 hours ago [-]
They waited a couple decades too long for this to be of interest.
teamsolid 8 hours ago [-]
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 7 hours ago [-]
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 3 hours ago [-]
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 4 hours ago [-]
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 4 hours ago [-]
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 2 hours ago [-]
>and managed to retain the understanding of the whole stack

No one understands the whole stack. There is too much specialized information.

Sharlin 1 hours ago [-]
Even assembly is a high-level language relative to what’s actually going on inside a modern CPU.
okandship 2 hours ago [-]
readable plain text plus boring metadata still ages better than most clever archival systems
xandrius 13 minutes ago [-]
In this case a paper printout.
theanonymousone 3 hours ago [-]
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 2 hours ago [-]
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 3 hours ago [-]
That sounds like a terrifying legal minefield that they would not want to tread
xandrius 12 minutes ago [-]
Slap a fair use on it and call it a day.
theanonymousone 2 hours ago [-]
Is it not safe to assume Window source code is not present in the LLM training data?
leni536 1 hours ago [-]
But surely anything the LLM outputs is clear of licensing requirements /s

Or would Microsoft like to argue otherwise in court?

imoverclocked 8 hours ago [-]
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 4 hours ago [-]
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 7 hours ago [-]
To see what decisions they made. Like any historical document. Aim to understand the people of the time.
3 hours ago [-]
gnarlouse 3 hours ago [-]
How about Microsoft fixes npm, github, and vscode
hackerqwe 1 hours ago [-]
More code that copilot can be trained on.
3 hours ago [-]
8 hours ago [-]
8 hours ago [-]
froyooh 8 hours ago [-]
Back when it was all written by hand and optimized well.
dooosss 7 hours ago [-]
Too little, too late.
patrickndaye919 18 minutes ago [-]
[dead]
embirdating 21 minutes ago [-]
[dead]
xuzhenpeng 7 hours ago [-]
[flagged]
Tanayk07 5 hours ago [-]
[flagged]
signa11 8 hours ago [-]
in the words of mr. mitch-hedburg “here, you throw this away“
TedDoesntTalk 6 hours ago [-]
He could have sold those printouts instead of giving them away.
Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact
Rendered at 10:48:02 GMT+0000 (Coordinated Universal Time) with Vercel.