BBC BASIC
# BBC BASIC

Il BBC BASIC è stato sviluppato nell'anno 1981, principalmente da Sophie Wilson, come linguaggio di programmazione per l'home computer BBC Micro prodotto dalla Acorn.

## Caratteristiche

Il BBC BASIC è una versione del linguaggio di programmazione BASIC basato a sua volta sulla versione precedentemente scritta per l'Acorn Atom. Caratteristica peculiare è l'inclusione dei comandi per la gestione dei quattro canali sonori e della grafica ad alta risoluzione. Altra particolarità è poi la presenza di un assembler in linea, integrato con il linguaggio BASIC, che permette all'utente di scrivere programmi in linguaggio assembly.

## Versioni per BBC Micro

* BASIC I, versione originale a bordo dei primi BBC Micro.
* BASIC II, versione impiegata sugli Acorn Electron e sui BBC Micro prodotti dopo il 1982, incluso il modello the BBC B+. Aggiunge i comandi OPENUP e OSCLI. Include inoltre alcuni bug fix.
* BASIC III, prodotto in due versioni, una per l'Inghilterra, l'altra per gli Stati Uniti. Rispetto alla versione II include alcuni bug fix ed alcuni nuovi comandi come il COLOR o COLOUR.
* BASIC IV, conosciuto anche come CMOS BASIC era disponibile sul BBC Master e sulla macchina Master Compact. Supporta le nuove istruzioni disponibili per il processore 65SC12.
* HI-BASIC, era disponibile in due versioni, la prima basata sul BASIC III, la seconda sul BASIC IV. Entrambe le versioni sono sviluppate per eseguire i programmi ad un indirizzo più alto (B800) rispetto alle versioni normali. Questo determina un maggior spazio di memoria per i programmi.

Un'altra versione del BBC BASIC, chiamata BAS128, era fornita su nastro o su disco assieme al BBC Master ed al Master Compact. Veniva caricata nella memoria principale e supportava 64 KB di spazio per i programmi. Per contro questa versione era più lenta rispetto alla versione residente su ROM.

## Versioni per Acorn Archimedes (RISC OS)

* BASIC V. Questa versione segna il passaggio alla CPU ARM a 32-bit. Allo stesso tempo viene rimosso il limite di 16 KB per la dimensione del codice sorgente. Vengono poi introdotti nuovi comandi quali il WHILE-ENDWHILE, l'IF-THEN-ELSE-ENDIF ed il CASE-OF-WHEN-OTHERWISE-ENDCASE.
