BASIC extension
Encyclopedia
BASIC toolkits—not to be confused with widget toolkits
Toolkit
A toolkit is an assembly of tools; set of basic building units for graphical user interfaces.Things called toolkits include:* Abstract Window Toolkit* Accessibility Toolkit* Adventure Game Toolkit* B-Toolkit* Battlefield Mod Development Toolkit...

—were a common type of program for 1980s 8-bit home computer
Home computer
Home computers were a class of microcomputers entering the market in 1977, and becoming increasingly common during the 1980s. They were marketed to consumers as affordable and accessible computers that, for the first time, were intended for the use of a single nontechnical user...

s. Generally third-party extensions, they added additional features to a computer's built-in BASIC interpreter
Interpreter (computing)
In computer science, an interpreter normally means a computer program that executes, i.e. performs, instructions written in a programming language...

.

Technical concept

Toolkits ran as terminate and stay resident
Terminate and Stay Resident
Terminate and Stay Resident is a computer system call in DOS computer operating systems that returns control to the system as if the program has quit, but keeps the program in memory...

 extensions to the BASIC interpreter supplied with the machine. At the time, such interpreters almost always came programmed into the ROM
Read-only memory
Read-only memory is a class of storage medium used in computers and other electronic devices. Data stored in ROM cannot be modified, or can be modified only slowly or with difficulty, so it is mainly used to distribute firmware .In its strictest sense, ROM refers only...

 of the computer, making it impossible to modify or patch
Patch (computing)
A patch is a piece of software designed to fix problems with, or update a computer program or its supporting data. This includes fixing security vulnerabilities and other bugs, and improving the usability or performance...

 the code. 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
Read-only memory
Read-only memory is a class of storage medium used in computers and other electronic devices. Data stored in ROM cannot be modified, or can be modified only slowly or with difficulty, so it is mainly used to distribute firmware .In its strictest sense, ROM refers only...

, 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
Structured programming is a programming paradigm aimed on improving the clarity, quality, and development time of a computer program by making extensive use of subroutines, block structures and for and while loops - in contrast to using simple tests and jumps such as the goto statement which could...

 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
Computer graphics
Computer graphics are graphics created using computers and, more generally, the representation and manipulation of image data by a computer with help from specialized software and hardware....

, sound 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
PEEK and POKE
In computing, PEEK is a BASIC programming language extension used for reading the contents of a memory cell at a specified address. The corresponding command to set the contents of a memory cell is POKE.-Statement syntax:...

commands and machine language routine
Routine
Routine may refer to:*Subroutine in computer science*Choreographed routine, orchestrated dance involving several performers*Comedy routine, comedic act or part of an act*Visual routine, visual cognitive means of extracting information from a scene...

s.

Notable examples

  • Beta BASIC
    Beta BASIC
    Beta BASIC was a BASIC interpreter for the Sinclair Research ZX Spectrum microcomputer, written by Dr Andy Wright and sold by his one-man software house BetaSoft...

     (ZX Spectrum
    ZX Spectrum
    The ZX Spectrum is an 8-bit personal home computer released in the United Kingdom in 1982 by Sinclair Research Ltd...

    ) – Extension to Sinclair BASIC
    Sinclair BASIC
    Sinclair BASIC is a dialect of the BASIC programming language used in the 8-bit home computers from Sinclair Research and Timex Sinclair...

    ; started out as a simple toolkit but grew into a full interpreter
  • Lightning BASIC (Amstrad PCW
    Amstrad PCW
    The Amstrad PCW series was 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. When it was launched, the cost of a PCW system was...

    ) – Extension to Mallard BASIC
    Mallard BASIC
    Mallard BASIC is a BASIC interpreter for CP/M written by Locomotive Software and supplied with the Amstrad PCW range of small business computers, the ZX Spectrum +3 version of CP/M Plus, and the Acorn BBC Micro Z80 second Processor....

     with many new facilities (see the Mallard BASIC article for details)
  • Simons' BASIC
    Simons' BASIC
    Simons' BASIC was an extension to BASIC 2.0 for the Commodore 64 home computer. Written by 16-year-old British programmer David Simons in 1983, it was distributed by Commodore in cartridge format.-Features:...

     (Commodore 64
    Commodore 64
    The Commodore 64 is an 8-bit home computer introduced by Commodore International in January 1982.Volume production started in the spring of 1982, with machines being released on to the market in August at a price of US$595...

    ) – Extension to BASIC 2.0
    Commodore BASIC
    Commodore BASIC, also known as PET BASIC, is the dialect of the BASIC programming language used in Commodore International's 8-bit home computer line, stretching from the PET of 1977 to the C128 of 1985...

     with 114 extra commands; programmed by a 16-year old boy and marketed by CBM
  • Super Expander
    Super Expander
    The VIC-1211 Super Expander was a cartridge for the Commodore VIC-20 home computer. It was designed to provide several extensions to the BASIC interpreter on the computer, mostly to help with programming graphics and sound. It also provided 3KB of extra RAM...

     (CBM VIC-20
    Commodore VIC-20
    The VIC-20 is an 8-bit home computer which was sold by Commodore Business Machines. The VIC-20 was announced in 1980, roughly three years after Commodore's first personal computer, the PET...

    ) – A combined RAM
    Random-access memory
    Random access memory is a form of computer data storage. Today, it takes the form of integrated circuits that allow stored data to be accessed in any order with a worst case performance of constant time. Strictly speaking, modern types of DRAM are therefore not random access, as data is read in...

    -expansion (3 kibibyte
    Kibibyte
    The kibibyte is a multiple of the unit byte for quantities of digital information. The binary prefix kibi means 1024; therefore, 1 kibibyte is . The unit symbol for the kibibyte is KiB. The unit was established by the International Electrotechnical Commission in 1999 and has been accepted for use...

    s) and BASIC extension cartridge
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK