On Wednesday, Microsoft shared the complete source code for Microsoft BASIC for 6502 Version 1.1. This 1978 interpreter played a key role in early personal computers, such as the Commodore PET, VIC-20, and Apple II. The code, totaling 6,955 lines, has been made available on GitHub under an MIT license, allowing anyone to use or modify it.
Bill Gates reminisced about this project, noting his collaboration with Rick Weiland. He remarked that he introduced the “WAIT” command, which hints at the hands-on creativity that shaped BASIC.
For many in the late 1970s and early 1980s, BASIC was their introduction to programming. Simple commands like “10 PRINT ‘HELLO'” allowed users to create text loops, giving them a taste of direct computer control. The interpreter transformed these easy-to-understand commands into machine-level instructions.
Notably, the MOS 6502 processor, which powered these early PCs, was groundbreaking for its affordability. While similar chips were priced at about $200, the 6502 was available for approximately $25. Chuck Peddle designed it to make computing more accessible, and it later powered popular gaming consoles like the Atari 2600 and the NES.
In 1977, Commodore struck a deal with Microsoft to license BASIC for only $25,000. They secured the rights to include the software in countless machines, a decision that, in hindsight, could have netted Microsoft much more had they opted for a per-unit fee. Commodore ended up selling millions of computers with BASIC embedded, showcasing the software’s impact on the PC market.
The version released now includes vital bug fixes that Commodore’s John Feagans worked on in tandem with Gates. These updates improved memory management, making the software more robust.
This release echoes current trends where companies are increasingly open-sourcing their legacy software. It highlights how past innovations continue to shape the tech landscape today, providing valuable insights for both developers and enthusiasts alike.
For more details on the impact of BASIC and the evolution of programming languages, you can check this IEEE article.

