All Topics  
BBC BASIC

 

   Email Print
   Bookmark   Link






 

BBC BASIC



 
 
BBC BASIC is a programming language
Programming language

A programming language is a machine-readable artificial language designed to express computations that can be performed by a machine, particularly a computer....
, developed in 1981 as a native programming language for the MOS Technology 6502
MOS Technology 6502

The MOS Technology 6502 is an 8-bit microprocessor that was designed by Chuck Peddle and Bill Mensch for MOS Technology in 1975. When it was introduced, it was the least expensive full-featured central processing unit on the market by a considerable margin, costing less than one-sixth the price of competing designs from larger companies such...
 based Acorn
Acorn Computers

Acorn Computers was a British computer company established in Cambridge, England, in 1978. The company produced a number of computers which were especially popular in the United Kingdom....
 BBC Micro
BBC Micro

The BBC Microcomputer System, or BBC Micro, was a series of microcomputers and associated peripherals designed and built by Acorn Computers for the BBC Computer Literacy Project, operated by the British Broadcasting Corporation....
 home/personal computer, mainly by Sophie Wilson
Sophie Wilson

Sophie Wilson, formerly Roger Wilson, is a United Kingdom computer scientist. She was educated at Cambridge University. In 1978, she designed the Acorn System 1, the first of a long line of computers sold by Acorn Computers Ltd....
. It is a version of the BASIC
BASIC

In computer programming, BASIC is a family of high-level programming languages. The Dartmouth BASIC was designed in 1964 by John George Kemeny and Thomas Eugene Kurtz at Dartmouth College in New Hampshire, United States to provide computer access to non-science students....
 programming language adapted for a U.K.
United Kingdom

The United Kingdom of Great Britain and Northern Ireland, commonly known as the United Kingdom , the UK or Britain,is a sovereign state located off the northwestern coast of continental Europe....
 computer literacy project of the BBC.

BBC BASIC, based on the older Atom BASIC (for the Acorn Atom
Acorn Atom

The Acorn Atom was a home computer made by Acorn Computers Ltd from 1980 to 1981 when it was replaced by the BBC Micro and later the Acorn Electron....
), extended traditional BASIC with named procedures and functions, REPEAT-UNTIL loops, and IF-THEN-ELSE structures inspired by COMAL
COMAL

COMAL is a computer programming language developed in Denmark by Benedict L?fstedt and B?rge Christensen in 1973.The "COMAL 80 PROGRAMMING LANGUAGE REPORT" contains the formal definition of the language....
.






Discussion
Ask a question about 'BBC BASIC'
Start a new discussion about 'BBC BASIC'
Answer questions from other users
Full Discussion Forum



Encyclopedia


BBC BASIC is a programming language
Programming language

A programming language is a machine-readable artificial language designed to express computations that can be performed by a machine, particularly a computer....
, developed in 1981 as a native programming language for the MOS Technology 6502
MOS Technology 6502

The MOS Technology 6502 is an 8-bit microprocessor that was designed by Chuck Peddle and Bill Mensch for MOS Technology in 1975. When it was introduced, it was the least expensive full-featured central processing unit on the market by a considerable margin, costing less than one-sixth the price of competing designs from larger companies such...
 based Acorn
Acorn Computers

Acorn Computers was a British computer company established in Cambridge, England, in 1978. The company produced a number of computers which were especially popular in the United Kingdom....
 BBC Micro
BBC Micro

The BBC Microcomputer System, or BBC Micro, was a series of microcomputers and associated peripherals designed and built by Acorn Computers for the BBC Computer Literacy Project, operated by the British Broadcasting Corporation....
 home/personal computer, mainly by Sophie Wilson
Sophie Wilson

Sophie Wilson, formerly Roger Wilson, is a United Kingdom computer scientist. She was educated at Cambridge University. In 1978, she designed the Acorn System 1, the first of a long line of computers sold by Acorn Computers Ltd....
. It is a version of the BASIC
BASIC

In computer programming, BASIC is a family of high-level programming languages. The Dartmouth BASIC was designed in 1964 by John George Kemeny and Thomas Eugene Kurtz at Dartmouth College in New Hampshire, United States to provide computer access to non-science students....
 programming language adapted for a U.K.
United Kingdom

The United Kingdom of Great Britain and Northern Ireland, commonly known as the United Kingdom , the UK or Britain,is a sovereign state located off the northwestern coast of continental Europe....
 computer literacy project of the BBC.

BBC BASIC, based on the older Atom BASIC (for the Acorn Atom
Acorn Atom

The Acorn Atom was a home computer made by Acorn Computers Ltd from 1980 to 1981 when it was replaced by the BBC Micro and later the Acorn Electron....
), extended traditional BASIC with named procedures and functions, REPEAT-UNTIL loops, and IF-THEN-ELSE structures inspired by COMAL
COMAL

COMAL is a computer programming language developed in Denmark by Benedict L?fstedt and B?rge Christensen in 1973.The "COMAL 80 PROGRAMMING LANGUAGE REPORT" contains the formal definition of the language....
. The interpreter also included powerful statements for controlling the BBC Micro's four-channel sound output and its high-resolution graphics display.

One of the unique features of BBC BASIC was the presence of an inline assembler allowing users to write 6502
MOS Technology 6502

The MOS Technology 6502 is an 8-bit microprocessor that was designed by Chuck Peddle and Bill Mensch for MOS Technology in 1975. When it was introduced, it was the least expensive full-featured central processing unit on the market by a considerable margin, costing less than one-sixth the price of competing designs from larger companies such...
 assembly language programs. The assembler was fully integrated into the BASIC interpreter and shared variables with it. This allowed developers to write not just assembly language code, but also BASIC code to emit assembly language, making it possible to use code generation techniques and even write simple compilers in BASIC.

Platforms and versions


BBC Micro

BASIC I, the original version, was shipped on early BBC Micro
BBC Micro

The BBC Microcomputer System, or BBC Micro, was a series of microcomputers and associated peripherals designed and built by Acorn Computers for the BBC Computer Literacy Project, operated by the British Broadcasting Corporation....
s.

BASIC II was used on the Acorn Electron
Acorn Electron

The Acorn Electron is a budget version of the BBC Micro educational/home computer made by Acorn Computers Ltd. It has 32 kilobytes of Random Access Memory, and its ROM includes BBC BASIC along with its operating system....
 and BBC Micros shipped after 1982, including the BBC B+. It added the OPENUP and OSCLI keywords, along with offset assembly and bug fixes.

BASIC III, was produced in both a UK version and a US
United States

The United States of America is a Federal government constitutional republic comprising U.S. state and a federal district. The country is situated mostly in central North America, where its Contiguous United States and Washington, D.C., the Capital districts and territories, lie between the Pacific Ocean and Atlantic Oceans, Borders of the U...
 market version for Acorn's abortive attempt to enter the cross-Atlantic computer market. Apart from a few bug fixes, the only change from BASIC II was that the COLOUR command could also be spelled COLOR: regardless of which was input, the UK version always listed it as COLOUR, the US version as COLOR. The main place that BASIC III can be found is as the HI-BASIC version for the external second processor.

BASIC IV, also known as CMOS BASIC, available on the BBC Master
BBC Master

The BBC Master was a home computer released by Acorn Computers Ltd in early 1986. It was designed and built for the British Broadcasting Corporation and was the successor to the BBC Micro....
 and Master Compact machines, was changed to use the new instructions available in the 65SC12 processor, reducing the size of the code and therefore allowing the inclusion of LIST IF, EXT# as a statement, EDIT, TIME$, ON PROC, | in VDU statements and faster floating point. Bug fixes were again included.

HI-BASIC: this was available in two versions, the first based on BASIC III, and the second based on BASIC IV. Both were built to run from a higher address (B800) to allow more program space to be available on either the external or internal 6502 Second Processors.

Another version of BBC BASIC, called BAS128, was supplied on tape and disc with the BBC Master and Master Compact; it loaded into main RAM and used the 64 kB of Sideways RAM for user programs. This provided support for much larger programs at the cost of being a lot slower than the normal ROM-based version.

Acorn Archimedes (RISC OS)

With the move to the 32 bit ARM
ARM architecture

The ARM architecture is a 32-bit RISC central processing unit architecture developed by ARM Limited that is widely used in embedded system designs....
 CPU and the removal of the 16kB limit on the BASIC code size many new features were added. BASIC V version 1.04 was 61kB long.

Amongst the new commands and features supported were:
  • WHILE-ENDWHILE
  • IF-THEN-ELSE-ENDIF
  • CASE-OF-WHEN-OTHERWISE-ENDCASE,
  • RETURN parameters in procedures,
  • local arrays,
  • procedure libraries (LIBRARY,INSTALL and OVERLAY),
  • LOCAL DATA and LOCAL ERROR handlers,
  • a relative RESTORE,
  • array
    Array

    In computer science, an array is a data structure consisting of a group of element s that are accessed by index . In most programming languages each element has the same data type and the array occupies a contiguous area of computer memory....
     operations,
  • new operators,
  • STEP TRACE,
  • Commands for the new sound system, mouse, graphics.


The graphics commands were entirely backwards compatible, the sound less so (for example, the ENVELOPE keyword from BASIC V onwards is a command which takes fourteen numeric parameters and effectively does nothing - as in older versions, it calls OS_Word 8, but that does nothing on RISC OS ). The in-line in 6502 assembler was replaced by an ARM
ARM architecture

The ARM architecture is a 32-bit RISC central processing unit architecture developed by ARM Limited that is widely used in embedded system designs....
 assembler. BASIC V was said, by Acorn, to be "certainly the fastest interpreted BASIC in the world" and "probably the most powerful BASIC found on any computer".

BASIC VI is a version of BASIC V that supports 8 byte format real numbers (according to IEEE standard 754) as opposed to the standard 5 byte format introduced in BASIC I.

BBC BASIC V and VI were delivered as standard on the Acorn Archimedes
Acorn Archimedes

The Acorn Archimedes was Acorn Computers Ltd's first general purpose home computer based on their own 32-bit ARM architecture RISC Central processing unit....
 and the Risc PC
Risc PC

The Risc PC was Acorn Computers's next generation RISC OS/ARM architecture computer, launched in 1994, which superseded the Acorn Archimedes....
.

Current versions of RISC OS
RISC OS

RISC OS is a computer operating system which was originally developed by Acorn Computers Ltd in Cambridge, England for their ARM architecture based computers....
 still contain a BBC BASIC interpreter.

The source code to the RISC OS 5 version of BBC BASIC V was recently released as 'shared source' by RISC OS Open.

Other platforms

BBC BASIC has also been ported to many other platforms.

In addition to the version of BBC BASIC supplied with the BBC Micro
BBC Micro

The BBC Microcomputer System, or BBC Micro, was a series of microcomputers and associated peripherals designed and built by Acorn Computers for the BBC Computer Literacy Project, operated by the British Broadcasting Corporation....
's Z80
Zilog Z80

The Zilog Z80 is an 8-bit microprocessor designed and sold by Zilog from July 1976 onwards. It was widely used both in desktop and embedded computer designs as well as for military purposes....
 Second processor, a Z80 based version of BBC BASIC also exists for CP/M
CP/M

CP/M is an operating system originally created for Intel 8080/Intel 8085 based microcomputers by Gary Kildall of Digital Research. Initially confined to single tasking on 8-bit processors and no more than 64 kilobytes of memory, later versions of CP/M added multi-user variations, and were migrated to 16-bit processors....
 based systems. Until recently no version existed for the Sinclar Spectrum
ZX Spectrum

The Sinclair ZX Spectrum is an 8-bit personal home computer released in the United Kingdom in 1982 by Sinclair Research Ltd. Referred to during development as the ZX81 Colour and ZX82, the machine was launched as the ZX Spectrum by Sinclair to highlight the machine's colour display, compared with the black-and-white of its predec...
, however due to efforts of J.G Harston (also responsible for a PDP-11
PDP-11

The PDP-11 was a series of 16-bit minicomputers sold by Digital Equipment Corporation from 1970 into the 1990s. Though not explicitly conceived as successor to DEC's PDP-8 computer in the Programmed Data Processor series of computers , the PDP-11 replaced the PDP-8 in many Real-time computing....
 version), was released in January 2002 with many improvements made in subsequent releases.

A Zilog Z80
Zilog Z80

The Zilog Z80 is an 8-bit microprocessor designed and sold by Zilog from July 1976 onwards. It was widely used both in desktop and embedded computer designs as well as for military purposes....
 version of BBC BASIC was also used on the Tiki 100
Tiki 100

Tiki 100 was a desktop home computer/personal computer manufactured by Tiki Data of Oslo, Norway. The computer was launched in the spring of 1984 under the original name Kontiki 100, and was first and foremost intended for the emerging educational sector, especially for primary schools....
 desktop computer, Cambridge Z88
Cambridge Z88

The Cambridge Computer Z88 was an A4 paper size-size, lightweight, portable computer Zilog Z80-based computer with a built-in combined word processing/spreadsheet/database application called PipeDream, along with several other application software and utilities, such as a Z80-version of the BBC BASIC programming language....
 portable and the Amstrad NC100
Amstrad NC100

The Amstrad NC100 was an A4_paper_size-size, portable Zilog Z80-based computer, released by Amstrad in 1992. It featured 64 kilobyte of Random Access Memory, the Protext by Arnor word processor, various organiser-like facilities , a simple calculator, and a version of BBC_BASIC_programming_language....
 Notepad and Amstrad NC200 Notebook computers. This version has been implemented on the TI-83 Plus and TI-84 Plus series graphing calculators
Graphing calculator

A graphing calculator typically refers to a class of handheld calculators that are capable of plotting graph of a function, solving simultaneous equations, and performing numerous other tasks with variables....
.

For PC
IBM PC compatible

IBM PC compatible computers are those generally similar to the original IBM Personal Computer, IBM Personal Computer XT, and IBM Personal Computer/AT....
 based systems, BBC BASIC was also implemented for DOS
DOS

DOS, short for "Disk Operating System", is a shorthand term for several closely related operating systems that dominated the IBM PC compatible market between 1981 and 1995, or until about 2000 if one includes the partially DOS-based Microsoft Windows versions Windows 95, Windows 98, and Windows Me....
 as BBCBASIC (86) (which aimed for maximum compatibility with the BBC Micro) and BBasic (which concentrated on the BASIC language itself, with its own enhancements based on BASIC II).

A version of BBC BASIC integrated with the Microsoft Windows
Microsoft Windows

Microsoft Windows is a series of software operating systems and graphical user interfaces produced by Microsoft. Microsoft first introduced an operating environment named Windows in November 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces ....
 graphical user interface
Graphical user interface

A graphical user interface is a type of user interface which allows people to human-computer interaction such as computers; hand-held devices such as MP3 Players, Portable Media Players or Gaming devices; household appliances and office equipment....
, created by Richard Russell
Richard T. Russell

Richard Thomas Russell is the creator of the BBC BASIC for Microsoft Windows Programming language and the author of the Zilog Z80 and MS-DOS versions of BBC BASIC ....
 (who also developed the Z80 and x86 versions), was released in 2001. This version is still under active development, seeing much industry use currently. Whilst supporting nearly completely the original BBC BASIC specification (BASIC IV), the Windows version supports much of BASIC V/VI syntax as well as some advanced features of its own. Features unique to BBC BASIC for Windows include interpreter support for record/structure types, and the ability to call Windows API
Application programming interface

An application programming interface is a set of subroutine, data structures, class and/or Protocol provided by library and/or operating system Service s in order to support the building of applications....
 routines or those in an external DLL
Dynamic-link library

Dynamic-link library , or DLL, is Microsoft's implementation of the shared library concept in the Microsoft Windows and OS/2 operating systems....
. Recent versions have included advanced features comparable with languages like C
C (programming language)

C is a general-purpose computer programming language originally developed in 1972 by Dennis Ritchie at the Bell Telephone Laboratories to implement the Unix operating system....
.

A GPL
GNU General Public License

The GNU General Public License is a widely used free software license, originally written by Richard Stallman for the GNU project. The GPL is the most popular and well-known example of the type of strong copyleft license that requires derived works to be available under the same copyleft....
 clone of BBC BASIC named written in portable C
C (programming language)

C is a general-purpose computer programming language originally developed in 1972 by Dennis Ritchie at the Bell Telephone Laboratories to implement the Unix operating system....
 is also available.

An emulator of the BBC Micro for the Commodore
Commodore International

Commodore, the commonly used name for Commodore International, was a United States electronics company based in West Chester, Pennsylvania which was a vital player in the home computer/personal computer field in the 1980s....
 Amiga
Amiga

The Amiga is a family of personal computers originally developed by Amiga Corporation. Development on the Amiga began in 1982 with Jay Miner as the principal hardware designer....
 was produced by Ariadne Software for CBM
Commodore International

Commodore, the commonly used name for Commodore International, was a United States electronics company based in West Chester, Pennsylvania which was a vital player in the home computer/personal computer field in the 1980s....
 (UK). While extremely fast, it did not emulate the 6502 at full speed so assembly code would run slower than a real BBC while BASIC programs would run much faster, unfortunately due to the way the optimized basic and the 6502 emulation interacted, almost no commercial games would run (but well behaved code and educational software generally worked); additionally it used a slightly less precise floating-point numeric format. For a while it was bundled with a special academic package of the Amiga 500
Amiga 500

The Amiga 500, also known as the A500, was the first ?low-end? Commodore International Amiga 16-bit/32-bit multimedia home/personal computer....
, in the hope that schools would replace their aging BBC Bs with Amiga 500s.

A version of BBC BASIC (Z80) has also been made for the Ti-83/84+ Texas Instruments calculator families by Benjamin Ryves.

External links