Skip to content
Home

Commodore BASIC: the built-in BASIC interpreter of Commodore 8‑bit computers

Commodore BASIC is the ROM-based dialect of Microsoft BASIC used across Commodore's 8-bit home computers from the PET through the C128. It powered hobbyist programming, games, and system I/O in the 1970s–1980s.

Overview

Commodore BASIC is the name commonly given to the family of BASIC interpreters that ran in read-only memory on Commodore's 8-bit personal computers. First appearing with the PET in 1977, these interpreters provided a program-editing environment and a line-numbered, interpreted dialect of BASIC so users could write, save and run programs without any additional software. The language core traces to Microsoft BASIC adapted to run on the MOS Technology 6502-family CPUs used by Commodore machines.

Image gallery

1 Image

Characteristics and structure

Commodore BASIC implementations shared a compact, ROM-resident interpreter that offered the familiar BASIC statements (LET, IF, GOTO, FOR/NEXT, INPUT, PRINT, and others) plus built-in numeric routines. Program entry used numbered lines and an integrated command prompt; editing and simple file I/O were handled by ROM routines. Because the interpreter aimed to be small and fast, many platform-specific features such as graphics, color, sound and disk operations were not exposed as high-level BASIC statements. Programmers commonly resorted to PEEK/POKE memory access, machine-code subroutines, or vendor utilities to exercise hardware capabilities.

History and licensing

Commodore obtained its BASIC from Microsoft and adapted it for the 6502-family processors used in its machines. The arrangement is notable in computing lore because founder Jack Tramiel negotiated a one-time license fee rather than a per-unit royalty; this agreement allowed Commodore to ship BASIC in ROM across many models. The interpreter that shipped in Commodore machines therefore combined Microsoft-origin floating-point and parsing code with Commodore-specific I/O hooks and editor routines to integrate with its hardware.

Typical uses and examples

On home systems such as the PET, VIC-20 and Commodore 64, BASIC was the primary user interface on boot: users typed programs to learn programming, to create utilities, and to write games. Many commercial and hobbyist titles began as BASIC listings shared in magazines or entered by hand. BASIC also served as a convenient way to load machine-code programs and to call operating system routines for cassette, disk and keyboard handling.

Distinguishing features and legacy

  • Compact ROM interpreter tied to 6502-family hardware.
  • Line-numbered, interpreted programming model with modest built-ins for I/O and math.
  • Frequent use of PEEK/POKE and machine-code patching for advanced graphics and sound.

Commodore BASIC helped democratize personal computing by providing immediate program development on inexpensive home machines. Its design reflects the constraints and priorities of the era: limited memory, cost-sensitive ROM, and close coupling to hardware. For background on the manufacturer and its product line, see Commodore International and its family of 8-bit home computers. The interpreter core was based on Microsoft code for the 6502 family, licensed from Microsoft. Anecdotes about the licensing negotiation and one-time fee are often cited in histories of early microcomputer business dealings (see).

Further reading

Technical references and contemporary magazines document program examples, memory maps and techniques used to extend Commodore BASIC's capabilities. Hobbyists and preservation projects continue to study and emulate these interpreters, both for historical interest and to keep vintage software working on modern platforms.

Related articles

Author

AlegsaOnline.com Commodore BASIC: the built-in BASIC interpreter of Commodore 8‑bit computers

URL: https://en.alegsaonline.com/art/21985

Share

Sources