jmward01 1 day 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...

  • vee-kay 1 day ago

    What's interesting is that Microsoft BASIC itself was derived from BASIC-PLUS which itself was derived from Dartmouth BASIC (which evolved into a structured programming language called SBASIC (Structured BASIC). But the popularity of Microsoft BASIC, actually halted the standardisation of SBASIC as an ANSI standard.

    https://en.wikipedia.org/wiki/Microsoft_BASIC

    The Altair BASIC interpreter was developed by Microsoft founders Paul Allen and Bill Gates using a self-written Intel 8080 emulator running on a PDP-10 minicomputer.[1] The MS dialect is patterned on Digital Equipment Corporation's BASIC-PLUS on the PDP-10, which Gates had used in high school.

    https://en.wikipedia.org/wiki/Dartmouth_BASIC

    Dartmouth BASIC is the original version of the BASIC programming language. It was designed by two professors at Dartmouth College, John G. Kemeny and Thomas E. Kurtz. With the underlying Dartmouth Time-Sharing System (DTSS), it offered an interactive programming environment to all undergraduates as well as the larger university community.

    Dartmouth also introduced a dramatically updated version known as Structured BASIC (or SBASIC) in 1975, which added various structured programming concepts. SBASIC formed the basis of the American National Standards Institute (ANSI) "Standard BASIC" efforts in the early 1980s.

    In contrast to the Dartmouth compilers, most other BASICs were written as interpreters. This decision allowed them to run in the limited main memory of early microcomputers. Microsoft's Altair BASIC is one example: it was designed to run in only 4 KB of memory (interestingly, it was delivered on paper tape).

    Kemeny became involved in an effort to produce an ANSI standard BASIC in an attempt to bring together the many small variations of the language that had developed through the late 1960s and early 1970s. This effort initially focused on a system known as Minimal BASIC that was similar to earliest versions of Dartmouth BASIC, while later work was aimed at a Full BASIC that was essentially SBASIC with various extensions.

    But by the late 1980s, tens of millions of home computers were running some variant of the MS BASIC interpreter. It had become the de facto standard for BASIC, which eventually led to the abandonment of the ANSI SBASIC efforts.

    Kemeny and Kurtz, however, decided to continue their efforts to introduce the concepts from SBASIC and the ANSI Standard BASIC efforts. This became True BASIC.

    https://en.wikipedia.org/wiki/True_BASIC

    There are versions of the True BASIC compiler for MS-DOS, Microsoft Windows, and Classic Mac OS. At one time, versions for TRS-80 Color Computer, Amiga and Atari ST computers were offered, as well as a UNIX command-line compiler.

    After several years of inactivity, as of February 2026, the TrueBASIC website is officially closed.

    • BobbyTables2 1 day ago

      Ah, the good ol’ “Embrace, Extend, … Extinguish”

    • dboreham 1 day ago

      Nit: the pdp-10 is generally considered a mainframe not a minicomputer.

      • verst 34 minutes ago

        They had a working PDP-10 at the Living Computers Museum (since shut down by Paul Allen's estate). Definitely a mainframe. That thing takes up an entire room.

  • ramon156 1 day ago

    I dont think I've ever seen a commit that says "49 years ago". Damn.

  • steve1977 1 day ago

    I remember when I realized I had been using Microsoft all along through my Commodore 64.

    • jimt1234 23 hours ago

      The Commodore 64 got me started in computers, back when I was in grade school. Countless late nights programming in BASIC. All this time I never knew BASIC was licensed from Microsoft. Thanks!

      "Commodore licensed BASIC from Microsoft in 1977 on a 'pay once, no royalties' basis after Jack Tramiel turned down Bill Gates' offer of a $3 per unit fee, stating, 'I'm already married,' and would pay no more than $25,000 for a perpetual license."

      https://en.wikipedia.org/wiki/Commodore_BASIC

      • gerdesj 19 hours ago

        I still have my C64 (it only needed some capacitors replacing a few years back) from about 1984ish but for me it was just a games machine although I did type in an awful lot of machine code from books later on.

        I still remember the ADSR (attack, decay, sustain, release) thing and low pass, high pass and band pass for sound and have some unlikely memories about graphics primitives too for a middle aged bloke!

        My original Quickshot II still works. You might bear in mind Daley Thompson's Decathlon was popular in the UK back in the day and it was designed to destroy joysticks.

        My C64 now has a USB interface ...

nananana9 1 day 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.

  • avadodin 1 day 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.

  • yokoprime 1 day ago

    To be fair, i think you needed a cutthroat businessman leading the company. Which i guess is more or less the same today

    • justsomehnguy 1 day ago

      This too but early MS to their employs was closer to a hipster SV vibe coding in a coffee shop a decade ago.

    • themafia 23 hours ago

      > a cutthroat businessman leading the company

      I'm sure his family connections aided him significantly.

  • greenbit 1 day 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.

  • embedding-shape 1 day ago

    Replace Assembly with TypeScript/Rust/Go/whatever and as long as the idea is good and useful, same thing applies today.

    • risyachka 1 day ago

      Except the competition was essentially non existent and no one would copy your product with llm in a day

      • uluyol 1 day ago

        What makes you think there was no competition?

      • embedding-shape 1 day ago

        The "competition" never been just a different codebase, that's one of the smallest pieces you'd have to actually build if you want to build a product people actually want to buy and use. The magic is basically all around it, multiplied by the code, but you really must have every else down pretty tight before the codebase even start mattering. But once it does matter, it matters a lot, hence the difficult balancing.

  • curiousObject 1 day ago

    >writing a few thousand lines of assembly was what it took to launch a successful software company.

    Yes, but that assembly was not DOS, and it wasn’t easy.

    Microsoft purchased the DOS code, they didn’t write it. Of course, they did develop and modify DOS. But that was a clever (and lucky) business deal, not a technological accomplishment.

    The real beginning of Microsoft was earlier, with Allen, Gates and Davidoff writing the Altair BASIC interpreter. That was a serious achievement.

    They had never seen the computer they were writing that assembly code for. They did not even own any computers. It took them 8 weeks on a university computer they were not supposed to be using for that

    “Altair agreed to meet them to possibly buy a BASIC interpreter… Gates and Allen had neither a BASIC interpreter nor even an Altair system on which to develop and test one. However, Allen had written an Intel 8008 emulator that ran on a PDP-10 time-sharing computer. Allen adapted this emulator based on the Altair programmer guide, and they developed and tested the interpreter on Harvard's PDP-10.

    The finished interpreter, including its own I/O system and line editor, fit in only four kilobytes of memory, leaving plenty of room for the interpreted program. In preparation for the demo, they stored the finished interpreter on a punched tape that the Altair could read, and Paul Allen flew to Albuquerque to meet with Altair…

    While on final approach into the Albuquerque airport, Allen realized that they had forgotten to write a bootloader to read the tape into memory. Writing in 8080 machine language, Allen finished the program before the plane landed. Only when they loaded the program onto an Altair and saw a prompt asking for the system's memory size did Gates and Allen know that their interpreter worked on the Altair hardware.”

    https://en.wikipedia.org/wiki/Altair_BASIC

    • BobbyTables2 1 day ago

      Imagine if the University had sued for their share of the IP and that was created using their resources…

      It’s funny because I thought Jobs/Wozinak got their initial funding from selling phreaking boxes. And more recently, Anthropic engaged in criminal copyright violations with only a slap on the wrist.

      Feels like a common theme of every “great” company having its origins from a “boost” resulting from criminal activity. (After all, that’s where the money is!)

      Just imagine the criminal penalties possible for pirating and selling one copy of a movie or making one long distance phone call with phreaking.

      • dboreham 1 day ago

        See also Airbnb and Uber.

      • areweai 1 day ago

        In the case of Microsoft, I'm not seeing it.

        Being born into a 1% household and understanding the asymmetric upside that having the money and the time to speculate is far more significant than the civil and criminal legal violations on the way.

        The most common way to go from one-percenter rich to .001% rich is to already have enough wealthy people generating capital in your personal network that you can raise capital on sweetheart terms to buy the labor of people who don't.

        Then you sell it at a massive premium and repeat.

        I think it's empirically dubious to identify the UW mainframes as the secret sauce instead of "being able to ask your mom for a meeting with the chairman of IBM followed by asking her for 80,000 dollars ASAP."

        If the original creators of DOS were born into a wealthy family and on a first name basis with the chairman of IBM, do you think they would've sold it to Gates?

        Trying to attribute the tech business "founding crime" feels like displacement for what is perfectly legal and accepted cultural practice.

        • lostlogin 23 hours ago

          We need a better system. We tried communism and that was shit, so this is the least bad system we have.

          • areweai 21 hours ago

            Because things are the way they are, things will not stay the way they are.

          • r14c 20 hours ago

            We didn't try communism as far as I know. We hunted it down and murdered it in its cradle if I'm reading the CIA declassified archives correctly.

            • 3240957042358 17 hours ago

              Communists having killed of 100 to 140 million people is sufficient reason to hunt them down.

              But unfortunately there are still plenty of useful idiots, the same kind that propped up Mao, Pol Pot and Stalin.

              • r14c 16 hours ago

                We kill people all the time, what's the difference? Isn't it a sovereign nation's prerogative to do whatever they want? That said, it is our prerogative to be nosy and violently mess with other people's affairs too so..

              • lostlogin 16 hours ago

                > Communists having killed of 100 to 140 million people is sufficient reason to hunt them down.

                How many have democracies killed?

                It’s not like-for-like but how do we compare?

                • r14c 15 hours ago

                  I would read that meta study. Especially if they verify and compare methods.

            • Scroll_Swe 2 hours ago

              Why is every HN thread glazing communism now?

              Are people that broken nowadays?

              boo hoo I dont have the new iphone the moment it release.

              Bish I was on PS1 until 2004.

              Ask East Germans, Poland, Lithuania, Lativa, Estonia etc if communism or capitalism is better. I'll wait. :)

          • bluecheese452 20 hours ago

            The Russian empire tried communism. It was better than what they had before or since.

            The Chinese tried communism. It worked far better for them than what they had before.

            • cyberax 14 hours ago

              > The Russian empire tried communism. It was better than what they had before or since.

              No, it was not better. Quite objectively.

            • rfrey 13 hours ago

              In the opinion of the champaign socialists in the West. In the opinion of people who lived under that regime... Not so much.

            • ThrowawayR2 11 hours ago

              The Iron Curtain was a real thing, as was the Berlin Wall. Successful social and economic systems do not need to execute their own citizens for attempting to escape.

          • 999900000999 18 hours ago

            Automation makes full employment detrimental if not outright impossible.

            Say before tractors it took 100 men to farm enough for 1000 people.

            With tractors 20 men can farm for 1000.

            With automation 1 man can farm for 1000 if not significantly more.

            Open Source Robo Communism is the way to go imo. Sure a handful of engineers have to maintain the robots, and build new ones. And a few jobs will remain human only.

            But we could easily get to 80% of the population being free to make art and dance

          • JJOKOCHAA 5 hours ago

            It would be difficult for us as humans to get a better system. we are too chaotic

        • azinman2 21 hours ago

          I think you overstate the power of money. Of course it helps. But it’s far from everything. Just look at the number of rich kid fuckups or CEOs with poor backgrounds. It’s just one component that smooths risk and occasionally provides a starter network, but it’s not everything.

          • p_j_w 20 hours ago

            >CEOs with poor backgrounds.

            What's the percentage here?

          • areweai 18 hours ago

            Well of course. To be a CEO from a poor background, you need to work your ass off making wealthy friends early.

            That's why going to an elite school is such a lifeline for people from bottom quartile backgrounds. Getting the opportunity socialize with people born at the top and be treated as a peer in an institutional environment is invaluable. That alone is worth the price of admission.

            It doesn't have to be your parents, but it has to be someone with money who already knows you, trusts you, and feels like you identify with them and their interests.

            Of course, you could also work your way up slowly and prove your mettle through decades of dedicated service to your employer. But I'm not sure how you'd be able to build that long track record of likability and trust to be able to raise millions based on work history when that entire history is a 3 month internship.

            One can't even blame the VCs. If you're investing in things that are often partially fraudulent by design...

            ...do you want the getaway driver for the pump-and-dump to be a family friend you've known a long time, or a stranger that might not be a good "culture fit" for what the valuation game often becomes?

            • watwut 11 hours ago

              > One can't even blame the VCs. If you're investing in things that are often partially fraudulent by design...

              I mean, we can blame them from systematically investing in things fraudulent by design.

          • watwut 11 hours ago

            > Just look at the number of rich kid fuckups or

            I mean, rich kid fuckup still end up pretty good, unless they are full on addicts who committed robbery. And even then they get much better and qualified defense layer - ending with much lower punishment. But normally, they get a pretty good job through parents network and somehow muddle through.

            > CEOs with poor backgrounds.

            Statistically, upward mobility is low these days, people stay where they are born. So, I think that statistically there are not that many of those.

          • stuaxo 9 hours ago

            Having money doesn't mean you will do anything, but not having it can stop you doing all sorts of things.

        • derangedHorse 6 hours ago

          > followed by asking her for 80,000 dollars ASAP

          What real life example is this from?

      • stuaxo 9 hours ago

        Superhans: "The secret ingredient is crime."

  • Andrex 21 hours ago

    My take-away is kind of the opposite. You literally have to be the right person in the right place at the right time.

  • Scroll_Swe 2 hours ago

    I find younger zoomers say this a lot and even to me in my 30s "oh you had it so easy!" because they think the knowledge today, we would have had back then. This is false.

    Loser today, you would have been a loser back then too.

locusofself 1 day 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.

  • SoftTalker 1 day ago

    Yet another case where text printed on paper outlived any digital storage.

    • jshier 1 day 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 1 day 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 1 day ago

          unless they used punch cards

          • andsoitis 1 day ago

            > unless they used punch cards

            For MS-DOS?

            • WalterBright 1 day ago

              Not likely. Punch cards disappeared around the end of 1976.

              • Anonyneko 1 day ago

                We still used them in the university as late as in 2010...

                ...as writing paper.

              • MomsAVoxell 1 day ago

                We still learned how to use them in the 80’s high school computer classes, mostly because we had a balance of CP/M plus card-reader/early DOS machines, eventually .. in the labs. Rich kid schools had Apples though, and some of them also had card readers for BASIC ..

                • greenbit 1 day ago

                  "[..] card readers for BASIC"

                  Finally, a sensible use case for BASIC's "READ" and "DATA" commands. Learning BASIC as a kid on a micro, it always struck me as an odd way to get input into a program. Sure, with INPUT, you'd have to hand enter your input every time, but baking into the program meant that you'd have to edit your program any time you wanted to change anything.

                  But with a card reader, you could "cut the deck". Keep the program cards, and then just stack on whatever set of data cards you wanted.

                  From this vantage point, in the 21st century with our flying cars and what not, it seems really quirky that back then, even your data could be a tangible thing.

                  • MomsAVoxell 1 day ago

                    Indeed, we still pay homage to the era with terms such as the stack, pushing and popping, and all kinds of things .. i remember we had fun inserting random infinite loops in other students cards on occasion until we all realized we could just have marked “finished” stacks with an X across the spine, and also to ease sorting, and so on .. i would mark certain sub-routines with different color markers on the spine too, just to see a budget for how much computing time i expected to be billed for, and so on and on .. lots of valuable hands on came from the card-based computing, its a lost art ..

              • greenbit 1 day ago

                I remember seeing stacks of cards being carried into/out of the university "computing center" in the mid 1980s, on more than a couple of occasions. Though in retrospect, these were probably just old programs that had been in various professors offices since the mid 70s, being taken to get read into some disk in the mainframe.

              • fortran77 1 day ago

                My college used them for PL/I and IBM Assembly language programming classes until 1982. Cards were used well into the mid-80s.

              • SoftTalker 1 day ago

                My firt job out of college in the early 1990s was at an equipment manufacturer who was still using them. They had a big chart on the wall titled "punch-card elimination" and a line trending down, but it wasn't at zero yet.

                My work there was all new code and didn't involve any of that, however.

              • BubbleRings 16 hours ago

                I learned COBOL in college at UNC-W on punch cards in 1980.

          • WalterBright 1 day ago

            I threw out all my punch cards. Wish I'd kept at least a listing!

            • genxy 1 day ago

              I find punch cards being used in old engineering books I buy from the 60s.

              Maybe write them again?

          • Sharlin 1 day ago

            Punch cards are still a form of digital storage, mind.

            • wongarsu 1 day ago

              Also a form of storing things on paper

              • accrual 1 day ago

                Reminds me of an old fortune cookie message or meme, something like "digital data is made from analog parts".

      • zargon 1 day 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.)

        • fc417fc802 1 day 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 1 day 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.

        • WalterBright 1 day 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 1 day ago

            Brings back memories of desk checking

      • irishcoffee 1 day ago

        How did they print it then, I wonder?

        • bryanrasmussen 1 day 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.

      • onion2k 1 day 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 day 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.

    • petcat 1 day ago

      > struggled with the quality of the decades-old printout.

      barely

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

      • Sharlin 1 day ago

        If it was your standard issue cheap dot-matrix printout, it may not been particularly legible even back then.

        • justsomehnguy 1 day ago

          Even if the printer itself was fine it doesn't imply the ribbon was wet enough.

  • FarmerPotato 1 day 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.

    • embedding-shape 1 day 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.

    • bob778 1 day 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

    • ndiddy 1 day ago

      There's a writeup here from one of the people on the team about the work it took to go from the listings to source code. http://cini.classiccmp.org/recoveryblog.htm

      > With less-than-satisfactory OCR output, I resorted to a process I used many years ago when converting scans made of old Commodore ROM dumps printed on a Commodore 1515 dot-matrix printer. The process relies on the ASCII OCR output having the same repetitive errors. "B" and "8", "S" and "5" are good examples, as are "l" and "1", and "O" and "0". There are many other similar single-character errors and, when working with x86 code, there are similar errors with instructions like "MOV". This process naturally works better if the output file is monolithic rather than single-page OCR conversions because you can do substitutions across the entire converted printout and not 75 separate files.

      > The next formatting hassle was the spacing. This required repetitive substitutions of a descending numbers of spaces to tabs (i.e., replace 8 spaces with a tab, 7, 6, etc.). Then if you want to return it to fixed spaces (which is likely how the original printer printed it -- spaces and not vertical tabs), you can. For pure re-creation work, spaces produce absolute column formatting while tabs can move around depending on the program displaying the file.

      > Once you run thought the 15 or so common global substitutions and tab conversion, it's a lot easier to work with the file to fix formatting and perform other cleanup. This is then followed by a line-by-line comparison against the original printouts. Overall I'd say the conversion output quality with this method is very good.

      • FarmerPotato 1 day ago

        Hmm, doesn't say anything about what OCR tools they used.

        I've got a 4" stack of wide-carriage COBOL. I guess it's two revisions of the same system so I only need to scan the newer half. Its probably from a TI Omni 810.

        On the other hand, I've got 100 pages of code printed in compressed font by someone wanting to make sure that 80+ char lines fit within margins. So a lot of words just don't come out at all. A frequent error is "A" becomes "H", "O" becomes "U" because the top dots aren't "attached".

        And columns of line numbers starting with 0001, or hex? The most confounding thing is OCR that thinks 00 is a sideways 8, and that dominates the uniform block, so it tries to interpret the whole column as sideways text. In another situation, it interprets two stacked lines (each starting with 0) as one line starting with 8 and it just goes off the rails.

        So I've been working with automatic skew correction, then clipping it into rows, in order to get each line of text isolated from the surrounding context. When I do that, I get better results, but it is not great either.

        I'm considering going all-in on training a new recognizer on snippets. For that, I'll be constructing "The Set of All As" and so on.

      • accrual 1 day ago

        Pretty interesting. I wonder if a whitelist against certain columns in the output could help, e.g. this column can only contain valid x86 instructions (e.g. MOV is allowed, M0V is not), this column can only contain hexadecimal (1 is allowed but never "l"), etc. Probably more work than it's worth given the final line-by-line comparison that happens anyway.

  • WalterBright 1 day ago

    I've recovered some ancient software I wrote via scanning in listings I found among my dad's papers.

userbinator 1 day 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.

  • teamsolid 1 day ago

    I am sure that there is a lot good material to take inspiration and learning even from the early Windows 3.11.

    • mycall 1 day ago

      Do a deep dive into how OS/360 formalized to having DOS.

  • throwaway27448 1 day ago

    They waited a couple decades too long for this to be of interest.

  • GaryBluto 1 day 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.

    • optymizer 1 day ago

      Agreed. It's still my favorite Windows version.

    • NitpickLawyer 1 day ago

      Wasn't there a 2000 source leak a while ago? I remember some exploits coming out after the leak.

      • toyg 1 day ago

        Yes but it could not be legally used by anything.

        • avadodin 1 day 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.

    • greenbit 1 day ago

      Except for "the hive". Remember the hive? Sort of an alternate registry, in addition to the actual registry. Granted, it was pretty invisible, until it got corrupted.

      I had a win2k machine that was my daily (at home) that was fine until idk about 2006, at which point something happened (muons?) and it would go into some kind of panic state just after bringing up the desktop. Hive corruption. I tried on and off for a couple of years to repair it, no luck. It wasn't just about the files on the HD, it was easy enough to transplant the drive and read/write anything, it was that I really liked the way I had the environment configured. Sure, it was all kind of moot, but it became a kind of personal windmill to resurrect this old thing. In the end, I booted an XP CD in it, and selected 'upgrade', and voila, it was Duncan Idaho, back from the dead.

      Anyway.. loved win2k, but not a fan of the hive.

    • ndiddy 1 day ago

      They will never release the code for anything that new because at that point, there's tons of licensed third-party code and the codebase is so large that going through everything to verify ownership would not be feasible. The code to NT 4 and XP have been leaked though.

    • ThrowawayB7 21 hours ago

      And what would you do with the Windows 2000 source? It's 32 bit x86 code and the driver model for Windows has changed significantly since those days so it wouldn't run on modern x86-64 hardware anyway. Maybe it would run in a VM but I wouldn't care to bet on it.

      • userbinator 20 hours ago

        Port it to 64-bit, obviously; the NT kernel has already been ported to a few non-x86 architectures.

        • spijdar 16 hours ago

          Making Windows NT 64-bit is very different from porting it to a 64-bit CPU. Case in point, the NT 4 (and Win2K) releases for the Alpha CPU were technically 64-bit (so far as the CPU lacked a "32-bit mode") but were functionally 32-bit, with all pointers truncated to 32-bits.

          Further case in point -- the AXP64 port (64-bit Alpha) of NT didn't have the ability to run 32-bit Alpha software. If you want that, you have to develop WoW64. So in this hypothetical "port Win2k to 64-bit processors", you would need to create WoW64 from scratch. Alternatively, rebuild a lot of software which is old enough to run on Win2k but also aware of 64-bits.

          Or take the AXP approach and literally treat AMD64 as a strange 32-bit CPU, not unlike the x32 port for Linux. At that point you have no binary ABI compatibility with any Windows port, and will need a custom compiler port, and compile all executables from scratch.

          • unleaded 8 hours ago

            thank god the 2003 source leaked too!

    • fredoralive 3 hours ago

      I suspect Windows 2000 (and NT based stuff in general) is too near to modern Windows to be (officially) released. DOS is long dead, but modern Windows still uses the NT kernel and Win32 and so on, and they probably don't want to give an official peek behind the curtain, even if it's an over a quarter century old version.

  • protocolture 1 day ago

    I imagine its not far off. I get the impression they are almost done with windows as a platform.

  • WalterBright 1 day ago

    It shouldn't be hard to disassemble it.

acomjean 1 day ago

Interesting story of how MS got into the operating system business. IBM wanted the CPM operating system, but Digital Research wouldn’t sign ibms NDA… really a pivot point in computing history.

From “Triumph of the Nerds” tv transcript:

https://www.pbs.org/nerds/part2.html

Jack Sams (IBM) was looking for a package from Microsoft containing both the BASIC computer language and an Operating System. But IBM hadn't done their homework.

Steve Ballmer: They thought we had an operating system. Because we had this Soft Card product that had CPM on it, they thought we could licence them CPM for this new personal computer they told us they wanted to do, and we said well, no, we're not in that business.

Jack Sams (IBM); When we discovered we didn't have - he didn't have the rights to do that and that it was not...he said but I think it's ready, I think that Gary's got it ready to go. So I said well, there's no time like the present, call up Gary.

Steve Ballmer: And so Bill right there with them in the room called Gary Kildall at Digital Research and said Gary, I'm sending some guys down…. Treat them right, they're important guys.

  • bragr 1 day ago

    Eh, basically all facts in this story are disputed by all sides. Aside from general gist that there was some meeting that didn't go well.

    • chuckadams 1 day ago

      Whether Kildall actually blew IBM off at that meeting or not, what was definitely the case was that CP/M didn't have a 16-bit version ready to meet IBM's schedule, and that's what ultimately took them out of the running.

      • acomjean 20 hours ago

        If you watch the documentary it’s an interview with the people who were there. There might be some discrepancy but I think the IBM guys were being honest about how it went down. The doc is on the Internet archive and worth a watch.

        You get the idea that it wasn’t some brilliant business strategy by Microsoft, the deal for the operating system wasn’t that good for them initially.

        From the transcript: https://www.pbs.org/nerds/part2.html

        Jack Sams (IBM):

        Gary had some other plans and so he said well, Dorothy will see you. So we went down the three of us...

        Gordon Eubanks Former Head of Language Division, Digital Research: IBM showed up with an IBM non-disclosure and Dorothy made what I...a decision which I think it's easy in retrospect to say was dumb.

        Jack Sams: We popped out our letter that said please don't tell anybody we're here, and we don't want to hear anything confidential. And she read it and said and I can't sign this.

        Gordon Eubanks: She did what her job was, she got the lawyer to look at the nondisclosure. The lawyer, Gerry Davis who's still in Monterey threw up on this non-disclosure. It was uncomfortable for IBM, they weren't used to waiting. And it was unfortunate situation - here you are in a tiny Victorian House, its overrun with people, chaotic.

        Jack Sams: So we spent the whole day in Pacific Grove debating with them and with our attorneys and her attorneys and everybody else about whether or not she could even talk to us about talking to us, and we left.

        ………. Bill Gates: Digital research didn't seize that, and we knew it was essential, if somebody didn't do it, the project was going to fall apart.

        Steve Ballmer: We just got carried away and said look, we can't afford to lose the language business. That was the initial thought - we can't afford to have IBM not go forward. This is the most exciting thing that's going to happen in PCs.

        Bill Gates: And we were already out on a limb, because we had licensed them not only Basic, but Fortran, Cobol Assembler er, typing tutor and Venture. And basically every - every product the company had we had committed to do for IBM in a very short time frame.

teamsolid 1 day 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 1 day 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.

    • stevesimmons 1 day 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.

    • WalterBright 1 day 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!

  • aenis 1 day 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 1 day 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 day ago

        Even assembly is a high-level language relative to what’s actually going on inside a modern CPU.

        • aenis 1 hour ago

          Ya sure, but diminishing returns there. Programmers these days lack the most basic abstractions - and don't understand how interrupts work and what is the main difference between parallelism and concurrency, or how to calculate the memory or computational cost of a given algorithm, because - chances are - they never implemented any algorithm to begin with. I'd say this is a bigger problem than not being able to brag about having implemented complex silicon :-)

      • aenis 2 hours ago

        I mean, depends on what one means by 'understands'. Here is my definition of having understanding of a full stack:

        I am nearly 50, started with computers when I was 7. I did sort of everything -from wiring individual transistors together into custom logic circuits, assembly on various platforms, drivers and other kernel level stuff on dos and then windows, low level networking, higher level monolithic systems design, infrastructure management, various storage systems, various compute implementations, obnoxious types of software defined networks, security stacks - from hardware based attestation through identity/role management in multi-cloud environments, higher level distributed systems and finally i am a cto for a large-ish company and do a lot of enterprise architecture.

        I also dabble in hobby programming on various things, building custom firmwares for chinese electronics, building frontends and backends for side projects, I have built a js framework or two just to understand state and rendering stuff, and of course now i am dabbling with local LLMs, because thats the new thing that can be learned.

        I am sure there are lots of people with similar experiences in my age bracket (I am 48) - who had a lot of exposure to all levels in the stack. Sure, I was never particularly good with anything I mentioned, but thanks to a mix of diverse work experiences and absolute, uncompromising love of learning new computer things, I think I do have a fairly good understanding of what happens in computer systems, big and small. Now, could I design, say, a modern ELB properly, no, but I do understand the networking stuff enough to at least outline the design and key elements of the system without asking a friendly LLM. No such luck for kids these days, I am afraid - they will be actively shielded from having to learn stuff the hard way.

  • goodpoint 1 day ago

    DOS and brilliant in the same sentence...

miohtama 10 hours ago

At this stage, was Microsoft already a well-established company if they had money and resources to contract and then license the 86-DOS?

  • fredoralive 4 hours ago

    Yes, Microsoft had established themselves as supplier of BASIC interpreters to most of the US microcomputer manufacturers. There initial contact with IBM was to provide a version of Microsoft BASIC for the new computer.

imoverclocked 1 day 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?

  • FarmerPotato 1 day ago

    To see what decisions they made. Like any historical document. Aim to understand the people of the time.

  • yjftsjthsd-h 1 day 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?

    • aflag 12 hours ago

      Even then, what would that accomplish in most systems? That same disk would most likely be the only permanent storage available to the system when it's inserted. Maybe if you've got two drives and have two floppies inserted at the same time?

      • imoverclocked 10 hours ago

        DOS systems often had hard drives. Also, floppy virus propagation is possible (aka: Sneakernet.)

        It was a different era entirely; Writing a TSR was a right of passage. Sometimes just getting something to work without having any other motive was enough to do it.

        A clever and small TSR might keep a copy of itself in memory and not require two floppies in the case of no hard drive. In comparison to today’s standards, it’s amazing what we did with 640k (or less!) of ram.

        • aflag 10 hours ago

          My friends and I didn't have hard drives. But maybe we were just poor. But fair, you could infect another disk if you just switched disks. No need to have both connected at the same time.

  • greenbit 1 day ago

    Look closely, you'll notice there's no network interface. The only vulnerability in a system like that is physical access by malicious individuals.

    About the worst mal-ware it can have is a boot sector that installs a "terminate, stay resident" (TSR) that copies itself onto any floppy that gets inserted.

danborn26 1 day 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.

9dev 1 day ago

At some point, we'll probably have a new field in history for digital archeology, and I'm really envious for those future historians! They'll be getting to sleuth around old datasets, trying to reconstruct the history of computing, understand long-forgotten file formats to preserve data, use statistical methods to analyse binary backups, and trace for specific documentation versions to crack old encryption formats...

  • giobox 1 day ago

    This field already is alive and well in the gaming community. Games companies are notorious for not spending money on keeping their old code around, which is why it's been at the forefront of digital archaeology efforts a lot of the time to preserve the industry's history.

    I'd also throw the wayback when machine and the internet archive into this bucket.

  • EvanAnderson 1 day ago

    The term "programmer-archaeologist" was coined by the author Vernor Vinge in his 1999 "A Deepness in the Sky"[0] (a pretty great read and definitely recommended) and the field is arguably a real thing now[1].

    [0] https://en.wikipedia.org/wiki/A_Deepness_in_the_Sky

    [1] https://en.wikipedia.org/wiki/Software_archaeology

    • 9dev 21 hours ago

      Thank you for the recommendation! I'm definitely aware of many initiatives into that direction, but I'm still curious when it'll invariably arrive as a real discipline not in computer science, but humanities.

OrangeMusic 9 hours ago

Wait this is from April 30th. Pretty sure this was posted on HN then.

danborn26 1 day ago

Looking through the source is a great reminder of how constrained early computing was. It's amazing how much of this architecture still influences modern systems.

gxd 1 day ago

THANK YOU!

Can we now have all the Infocom games owned by Activision (which is yours) now? Pretty please? I know the source is available, but we'd like them with a MIT license (including the manuals, artwork etc).

PS: a couple of them could be harder, like Shogun, but it's okay to skip these.

okandship 1 day ago

readable plain text plus boring metadata still ages better than most clever archival systems

  • xandrius 1 day ago

    In this case a paper printout.

rvnx 1 day ago

I’m sure this is better software than Windows Millenium Edition

theanonymousone 1 day 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.

  • CursedSilicon 1 day ago

    That sounds like a terrifying legal minefield that they would not want to tread

    • leni536 1 day ago

      But surely anything the LLM outputs is clear of licensing requirements /s

      Or would Microsoft like to argue otherwise in court?

    • xandrius 1 day ago

      Slap a fair use on it and call it a day.

      • greenbit 1 day ago

        What's that phrase, "derivative work" or something?

      • rvnx 1 day ago

        > Anthropic offers a formal copyright indemnification policy for its enterprise customers using the Claude API. The policy protects businesses from copyright infringement claims arising from authorized use of Claude or its generated outputs

        So just claim it is Claude

  • leobuskin 1 day 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

    • hulitu 5 hours ago

      Run it as your daily driver and trust your data to it. /s

hackerqwe 1 day ago

More code that copilot can be trained on.

KellyCriterion 20 hours ago

haha, rise your hand if you are getting old when reading this :-D

gnarlouse 1 day ago

How about Microsoft fixes npm, github, and vscode

froyooh 1 day ago

Back when it was all written by hand and optimized well.

dooosss 1 day ago

Too little, too late.

signa11 1 day ago

in the words of mr. mitch-hedburg “here, you throw this away“

  • TedDoesntTalk 1 day ago

    He could have sold those printouts instead of giving them away.