Commodore Fans Rejoice: Microsoft Sets 6502 BASIC Free Under a Permissive Open Source License

6502 BASIC V1.1, as shipped by Commodore as PET BASIC V2, is now available under the MIT license.

Gareth Halfacree
3 days agoRetro Tech

Microsoft has announced the release of one of its core product offerings under a permissive open source license — though it's not one of its newest: 6502 BASIC, a programming language developed for the MOS 6502 processor in 1976.

"Microsoft BASIC began in 1975 as the company's very first product: a BASIC interpreter for the Intel 8080, written by Bill Gates and Paul Allen for the Altair 8800," Microsoft's Scott Hanselman explains, referring to a deal to write a version of the Beginner's All-Purpose Symbolic Instruction Code (BASIC) language for MITS' iconic microcomputer. "That codebase was soon adapted to run on other eight-bit CPUs, including the MOS 6502, Motorola 6800, and 6809."

The MOS 6502 is perhaps best known as the chip powering the Commodore family of eight-bit microcomputers, including the best-selling Commodore 64 — and it was the 6502 port of Microsoft BASIC that powered the machines, albeit rebranded as Commodore BASIC. Famously, Commodore founder Jack Tramiel got one over on Microsoft co-founder Bill Gates on the deal, paying only a single fixed fee for the rights to use the software — something Gates would attempt to walk back upon seeing how well the Commodore 64 sold, from which he never saw a penny.

While Microsoft's 6502 BASIC has been preserved before, the company's new release goes two steps further than previous efforts. First, it's based on Version 1.1 of the code — simultaneously older than previously-available copies while also including a patch to the garbage collector designed to fix a bug spotted by Commodore and then shipped as PET BASIC V2. Second, it's officially released under the permissive MIT license — allowing for redistribution, modification, and even sale, should anyone still be willing to pay money for a BASIC interpreter for the 6502.

"Over the years, dedicated preservationists have reconstructed build environments and verified that the historical source can still produce byte-exact ROMs," Hanselman says. "Notably, Michael Steil documented and rebuilt the original BASIC process for multiple targets. He has ported the code to assemblers like cc65, making it possible to build and run on modern systems.

"This open source release builds on that work, now with a clear, modern license. It follows Microsoft’s earlier release of GW-BASIC, which descended from the same lineage and shipped in the original IBM PC’s ROM. That code evolved into QBASIC, and later Visual Basic, which remains a supported language for Windows application development to this day."

The new-old release comes five months after Gates published the original Microsoft BASIC source code, as originally supplied for the Altair 8800 — written with Allen and Monte Davidoff on a DEC PDP-10 at Harvard University prior to Gates and Allen dropping out to found Microsoft, and finished on an Altair given to the pair personally by MITS founder Ed Roberts. Rather than a simple scan of an original printout, though, this release is provided as an ASM file hosted, naturally enough, on Microsoft's GitHub platform.

Microsoft BASIC for the 6502 is now available on GitHub, complete with the company's earliest "Micro-Soft" hyphenated branding, under the permissive MIT license, with pre-configured targets for the STM, Apple II, Commodore PET, Ohio Scientific (OSI), MOS KIM-1, and PDP-10 simulation of the 6502.

Gareth Halfacree
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles