Raspberry BASIC

Raspberry BASIC => Interpreters => BBC BASIC => Topic started by: Richard Russell on April 14, 2019, 09:58:19 AM

Title: Introduction to BBC BASIC
Post by: Richard Russell on April 14, 2019, 09:58:19 AM
BBC BASIC is the programming language originally specified and adopted by the British Broadcasting Corporation for its groundbreaking Computer Literacy Project (https://en.wikipedia.org/wiki/BBC_Micro) of the early 1980s. It has since been extended and ported onto at least seven CPUs and more than thirty different platforms.  Today BBC BASIC is a modern, structured, language capable of most programming tasks.

The Raspbian edition of BBC BASIC (https://www.bbcbasic.co.uk/bbcsdl/) is free and open-source.  It is highly compatible with the Windows, MacOS, Linux, Android and iOS editions, and generally BASIC programs will run on all these platforms with no modification, even if they use 2D or 3D graphics, sound, joystick input, file or network access etc. More than 100 example programs are supplied with BBC BASIC to demonstrate its capabilities.

Raspbian BBC BASIC needs at least an RPi 2; an RPi 3 or later is recommended for best performance.  It may be downloaded as a precompiled binary in the form of a Zip file (http://www.rtr.myzen.co.uk/bbc-rpi.zip) or the source code, libraries and examples may be obtained from GitHub (https://github.com/rtrussell/BBCSDL).  There is a makefile in the bin/raspi directory (the SDL2 development libraries must first be installed from the Raspbian repository).

Here are some YouTube videos which illustrate things that BBC BASIC can achieve on the Raspberry Pi:

Video games (https://www.youtube.com/watch?v=ySXBbgvCeZ4)
2D graphics (https://www.youtube.com/watch?v=da6QjMAuHw4)
3D graphics (https://www.youtube.com/watch?v=6UT3XRIJ2r0)
Ceefax simulator (https://www.youtube.com/watch?v=_gMlq_IShPo)
Sprites (https://www.youtube.com/watch?v=00SoJIN3wak)
Music and 3D animation (https://www.youtube.com/watch?v=CMnzQR9zSDI)
Shader programming (https://www.youtube.com/watch?v=hVeZHyWOCjk)