source code for GW-BASIC on GitHub

Microsoft has uploaded the code for GW-BASIC to GitHub for historical reference and educational purposes.

GW-BASIC is a BASIC interpreter, written entirely in assembly language. 

According to Rich Turner, senior program manager of Windows Console & Command-Line at Microsoft, in the year this source code was created (1983), Bjarne Stroustrup was creating the first version of C++, ARPANET had just standardized TCP/IP, MS-DOS 2.0 was released, and Apple launched the first commercially available computer that had a GUI, the Apple Lisa. “We hope you enjoy exploring this fascinating snapshot of what software development looked like during the glorious, exciting, heady days of the ’70s and early ’80s at the dawn of ‘the personal computer,’” Turner said. 

RELATED CONTENT: Windows Terminal 1.0 available

Turner added that Microsoft’s BASIC implementations can be traced back to Bill Gates and Paul Allen’s implementation of the first product for Microsoft, a BASIC interpreter for the Altair 8800. 

Microsoft’s BASIC was ported to many processors in the late 70s and 80s, such as the 8088, 6502, 6809, Z80, and others. What is being released now are the 8088 assembly language sources from February 10, 1983. Microsoft has stated that they will not be releasing the code for implementations for processors other than the 808x series. 

This isn’t the first time Microsoft released source code from its early days. In 2018, for example, the company put the source code for MS-DOS on GitHub (they had previously donated the code to the Computer History Museum in 2014).

The source code for GW-BASIC can be viewed here. Because the code is being open sourced for historical and educational reasons, Microsoft will not accept any pull requests for modifying the code.