BASIC Extension
   HOME

TheInfoList



OR:

BASIC toolkits (aka BASIC extensions) were a common type of program for 1980s 8-bit home computers. Generally third-party extensions, they added additional features to a computer's built-in
BASIC BASIC (Beginners' All-purpose Symbolic Instruction Code) is a family of general-purpose, high-level programming languages designed for ease of use. The original version was created by John G. Kemeny and Thomas E. Kurtz at Dartmouth College ...
interpreter. __NOTOC__


Technical concept

Toolkits ran as extensions to the BASIC interpreter supplied with the machine. At the time, such interpreters almost always came programmed into the
ROM Rom, or ROM may refer to: Biomechanics and medicine * Risk of mortality, a medical classification to estimate the likelihood of death for a patient * Rupture of membranes, a term used during pregnancy to describe a rupture of the amniotic sac * R ...
of the computer, making it impossible to modify or
patch Patch or Patches may refer to: Arts, entertainment and media * Patch Johnson, a fictional character from ''Days of Our Lives'' * Patch (''My Little Pony''), a toy * "Patches" (Dickey Lee song), 1962 * "Patches" (Chairmen of the Board song) ...
the
code In communications and information processing, code is a system of rules to convert information—such as a letter, word, sound, image, or gesture—into another form, sometimes shortened or secret, for communication through a communication ...
. It was also extremely rare for manufacturers to offer upgrades or bugfixes except as part of new models of machine. As the original language was held in immutable
ROM Rom, or ROM may refer to: Biomechanics and medicine * Risk of mortality, a medical classification to estimate the likelihood of death for a patient * Rupture of membranes, a term used during pregnancy to describe a rupture of the amniotic sac * R ...
, it generally was difficult for a toolkit to directly extend the language, except by adding new keywords to perform functions not implemented by the original interpreter.


Functionality

Typical toolkit functionality included editing extensions, such as commands to renumber a program, perform block line deletions and so on, facilities to make
structured programming Structured programming is a programming paradigm aimed at improving the clarity, quality, and development time of a computer program by making extensive use of the structured control flow constructs of selection ( if/then/else) and repetition ( ...
possible, and additional keywords to perform new functions. In the case of the latter, these new functions often allowed the programmer to easily access the computer's
graphics Graphics () are visual images or designs on some surface, such as a wall, canvas, screen, paper, or stone, to inform, illustrate, or entertain. In contemporary usage, it includes a pictorial representation of data, as in design and manufacture ...
,
sound In physics, sound is a vibration that propagates as an acoustic wave, through a transmission medium such as a gas, liquid or solid. In human physiology and psychology, sound is the ''reception'' of such waves and their ''perception'' by the ...
and other hardware which was often partially or completely unsupported in the early BASICs. This would have otherwise been achieved by arcane usage of ''
PEEK and POKE In computing, PEEK and POKE are commands used in some high-level programming languages for accessing the contents of a specific memory cell referenced by its memory address. PEEK gets the byte located at the specified memory address. POKE sets ...
'' commands and
machine language In computer programming, machine code is any low-level programming language, consisting of machine language instructions, which are used to control a computer's central processing unit (CPU). Each instruction causes the CPU to perform a very ...
routines.


Notable examples

* Beta BASIC (
ZX Spectrum The ZX Spectrum () is an 8-bit computing, 8-bit home computer that was developed by Sinclair Research. It was released in the United Kingdom on 23 April 1982, and became Britain's best-selling microcomputer. Referred to during development as t ...
) – Extension to
Sinclair BASIC Sinclair BASIC is a dialect of the programming language BASIC used in the 8-bit home computers from Sinclair Research and Timex Sinclair. The Sinclair BASIC interpreter was made by Nine Tiles Networks Ltd. History Sinclair BASIC was orig ...
; started out as a simple toolkit but grew into a full interpreter * Lightning BASIC (
Amstrad PCW The Amstrad PCW series is a range of personal computers produced by British company Amstrad from 1985 to 1998, and also sold under licence in Europe as the "Joyce" by the German electronics company Schneider in the early years of the series' life. ...
) – Extension to
Mallard BASIC Mallard BASIC is a BASIC interpreter for CP/M produced by Locomotive Software and supplied with the Amstrad PCW range of small business computers, the ZX Spectrum +3 version of CP/M#CP/M Plus, CP/M Plus, and the Acorn Computers, Acorn BBC Micro's Z ...
with many new facilities (see the Mallard BASIC article for details) *
Simons' BASIC Simons' BASIC is an BASIC extension, extension to Commodore BASIC, BASIC 2.0 for the Commodore 64 home computer. Written by British people, British programmer David Simons in 1983, who was 16 years old at the time, it was distributed by Commodore I ...
(
Commodore 64 The Commodore 64, also known as the C64, is an 8-bit home computer introduced in January 1982 by Commodore International (first shown at the Consumer Electronics Show, January 7–10, 1982, in Las Vegas). It has been listed in the Guinness ...
) – Extension to BASIC 2.0 with 114 extra commands; programmed by a 16-year-old boy and marketed by CBM * Super Expander ( CBM VIC-20) – A combined
RAM Ram, ram, or RAM may refer to: Animals * A male sheep * Ram cichlid, a freshwater tropical fish People * Ram (given name) * Ram (surname) * Ram (director) (Ramsubramaniam), an Indian Tamil film director * RAM (musician) (born 1974), Dutch * ...
-expansion (3
kibibyte The byte is a unit of digital information that most commonly consists of eight bits. Historically, the byte was the number of bits used to encode a single character of text in a computer and for this reason it is the smallest addressable unit ...
s) and BASIC extension
cartridge Cartridge may refer to: Objects * Cartridge (firearms), a type of modern ammunition * ROM cartridge, a removable component in an electronic device * Cartridge (respirator), a type of filter used in respirators Other uses * Cartridge (surname), a ...


See also

* List of BASIC dialects#BASIC extensions * List of computers with on-board BASIC {{DEFAULTSORT:Basic Extension BASIC programming language