title: BBC BASIC
text: # 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.
  