by EvanAnderson
3 subcomments
- There's the "WAIT 6502,X" Easter egg[0]!
Lines 6530 - 6539 are the "MICROSOFT!" that gets printed.
Line 4914 is the code to check the address passed to WAIT and, if correct, print the "MICROSOFT!".
It really is inconspicuous. A source licensee definitely wouldn't find it by quickly perusing.
[0] https://www.pagetable.com/?p=43
- I love how the initial commit is "48 years ago."
by thought_alarm
1 subcomments
- I'm very surprised it's organized as just a single 162 kB source document instead of being divided into smaller modules to make the code easier to work with, speed up build times, etc.
Were PDP-10 text editors of the day able to easily work with such large documents? And how long would it typically take to assemble all of that code in one go?
- I really appreciate that they bothered to set an artificial timestamp for these git commits, roughly 30 years before Git itself existed. The thing is, the other files do, too, and the .gitignore is full of hilariously anachronistic references.
- This is great. I've been around since the BASIC days and I always found awesome that most older personal computers had a programming language available within seconds of turning the computer on!
I did a lot of hobby programming in BASIC. But I wonder how many commercial applications were written with it. Did small or big businesses write their own BASIC programs for internal needs?
- I'm really hoping that this will perhaps lead to other BASIC implementations being open sourced as well.
I've written a fully functional emulator for my first love, the Philips P2000T [1], but never released it because I couldn't find a legal way to distribute it. Most software for this machine requires the BASIC ROM, and even reverse engineering it might not be entirely legal.
If anyone knows where to address my requests to Microsoft, I'd be very happy to hear that.
[1] https://en.wikipedia.org/wiki/Philips_P2000
- Is this actually new or just a rerelease/relicense? I assumed they always released the source code for Microsoft Basic but maybe not. At least they did for the 6809 version https://colorcomputerarchive.com/repo/Documents/Books/Unrave...
by giancarlostoro
2 subcomments
- I'm trying for Visual Basic 6 to show up on GitHub someday.
- that Readme smells of LLMs and elderberries
by codingwagie
0 subcomment
- Love the comments:
"7/27/78 FIXED BUG WHERE FOR VARIABLE AT BYTE FF MATCHED RETURN SEARCHING
FOR GOSUB ENTRY ON STACK IN FNDFOR CALL BY CHANGING STA FORPNT
TO STA FORPNT+1. THIS IS A SERIOUS BUG IN ALL VERSIONS."
Not far off from a comment I might make these days
https://github.com/microsoft/BASIC-M6502/blob/main/m6502.asm...
by AbraKdabra
2 subcomments
- The "48 years ago" detail for the commit date is genius.
by breadwinner
7 subcomments
- I don't see any credit being given to Digital Equipment Corporation (DEC) upon whose work this is based [1] [2] [3].
The quotes below only talk about OS source code, but they found language interpreter source code as well, see register story.
> "So, for a few years that is where I spent my time. I'd skip out on athletics and go down to this computer center. We were moving ahead very rapidly: BASIC, FORTRAN, LISP, PDP-10 machine language, digging out the operating system listings from the trash and studying those. Really not just banging away to find bugs like monkeys[laughs], but actually studying the code to see what was wrong." [4]
> "While his parents were concerned with his slipping grades, there was no slowing him down. He and Bill would go “dumpster diving” in C-Cubed’s garbage to find discarded printouts with source code for the machine’s operating system"
[1] https://en.wikipedia.org/wiki/BASIC-PLUS#Comparison_to_MS_BA...
[2] https://everybasic.info/doku.php/basics/decbasic#influence_f...
[4] https://americanhistory.si.edu/comphist/gates.htm
[3] https://www.theregister.com/2000/06/29/bill_gates_roots/
[5] https://paulallen.com/Futurist/Microsoft.aspx
- This is cool, my Dad has an old OSI (Ohio Scientific) computer circa 1978 that likely used this or similar version of BASIC. He fired it up a couple of years ago and it booted to the welcoming Micro-Soft message (I think it had a hyphen like that).
- I cut my teeth on that language, and still keep a Commodore PET around for old times sake.
- I believe there is also some connection between this and the Apple II. It shipped with "Applesoft BASIC", which was provided by Microsoft and was a dialect of MS Basic for the 6502, so I'm guessing that there has to be at least a bit of overlap here.
by ksherlock
1 subcomments
- While the bullshit generator might think it's "Compatible with period assemblers for 6502 development", that's a weird-ass cross assembler. For my money, a commented disassembly like https://6502disassembly.com/a2-rom/Applesoft.html using a more standard assembler is easier to read. It's interesting to compare the two though.
by desmondmonster
2 subcomments
- What editor did they use to write this code? I think this predated vi, and folks were probably using older tools they were familiar with. ed? How much of the source code could they see at once? Was there such thing as a "full screen editor"? If anyone can illuminate the development environment/workflow from the late 1970s I'd love to hear about it.
- Looks like the comments were sanitized but they missed some:
> CHKVAL: BIT VALTYP ;WILL NOT F UP "VALTYP".
by FrankyHollywood
0 subcomment
- For more background on the development read Idea Man from Microsoft co-founder Paul Allen, a really interesting read (at least the first half of the book, later chapters are describing how he spends his money being a billionaire)
https://en.wikipedia.org/wiki/Idea_Man
- I wrote a replica of the Macintosh in my game using Lua and Classic BASIC on my homemade engine. You can check it here:
http://reprobate.site/?stage=pearintosh
- The connoisseur's MS Basic was the version for the 6809 processor.
[Repping the Dragon 32 still]
- First assembly language I learned was 6502 for the Apple II. Brings back some memories (...once I scrolled way way way down to actual 6502 code!).
by DrillShopper
1 subcomments
- I cannot recommend enough Ben Eater's 6502 computer build on YouTube[1] if you want to play with a 6502 computer from the ground up. It is meant to be accessible to the ambitious amateur. It is roughly Apple 1 compatible, and he has videos on how to add new commands in Microsoft BASIC as well as how to modify Microsoft BASIC to support the computer.
Seeing him git clone Microsoft BASIC and make the changes atop it was definitely a weird but awesome moment.[2]
[1] https://youtube.com/playlist?list=PLowKtXNTBypFbtuVMUVXNR0z1...
[2] https://youtu.be/XlbPnihCM0E
by mikesabbagh
0 subcomment
- I had such a good time on my Commodore 64
by JKCalhoun
1 subcomments
- Happy to see it works for the KIM-1.
by qingcharles
0 subcomment
- Anyone figured out the build process yet? I only know TASM/MASM.
- That recent "purchase of Commodore" by some Youtuber... it doesn't really include the distribution rights of the C64 ROM containing (a newer version of) this 6502 Basic, right?
- ` LDWDI WORDS ;MORE BULLSHIT.`
- > SECURITY.md
Never change, bureaucracy :)
by DrNosferatu
1 subcomments
- Now release the Z80 port!
by ChrisArchitect
1 subcomments
- What's the timeline of BASICs here? I thought GW-Basic was the MS one of my youth after Altair?
- I think, it's the first time I saw "48 years ago" in the most recent change column on Github.
by DonHopkins
0 subcomment
- https://github.com/microsoft/BASIC-M6502/blob/main/m6502.asm...
RETURN: BNE GORTS ;NO TERMINATOR=BLOW HIM UP.
- Blog post: https://opensource.microsoft.com/blog/2025/09/03/microsoft-o...
by LeoPanthera
4 subcomments
- That readme is obviously AI generated. I’m happy for anything this historical being open sourced, but I now wonder what the AI has done to the code itself. What a shame.