MSX BASIC
![]() L'MSX BASIC è un dialetto del linguaggio di programmazione BASIC sviluppato da Microsoft per gli home computer MSX. Deriva dal Microsoft BASIC versione 4.5 anche se è stato influenzato dal GW-BASIC, un interprete BASIC per le macchine MS-DOS a 16 bit. L'MSX include il supporto per la gestione della grafica, dell'audio e delle periferiche collegate ai computer ed è stato sviluppato per essere flessibile ed espandibile. CaratteristicheL'MSX BASIC era integrato nella ROM di tutti i computer MSX, che lo richiamavano al loro avvio se nessun altro software residente su ROM era presente sulla macchina, come una cartuccia giochi o un'interfaccia dischi: in questi casi il sistema avviava o il gioco presente sulla cartuccia oppure il sistema operativo presente sul floppy, l'MSX-DOS. Quando l'MSX BASIC veniva avviato, la ROM del BIOS e dell'interprete BASIC veniva mappata nei primi 32 kB dello spazio indirizzi della CPU Zilog Z80 mentre i restanti 32 kB venivano mappati in RAM: di questi, erano disponibili all'utente per il programma ed i dati dai 23 ai 28 kB, a seconda della presenza o meno del controller per il disco (4 kB) e del kernel dell'MSX-DOS (5 kB). L'ambiente di sviluppo (IDE) dell'MSX BASIC era molto simile a quello del Dartmouth BASIC del Dartmouth Time Sharing System, vale a dire un'interfaccia a riga di comando in cui inserire i comandi e le istruzioni. Se la riga immessa iniziava con un numero, veniva considerata facente parte del programma dell'utente e memorizzata in RAM; in caso contrario, era considerata un comando da eseguire immediatamente (modalità diretta). L'IDE presentava un messaggio iniziale con il contenuto di memoria libera ed in basso un promemoria dei comandi associati ai tasti funzione del computer. VersioniOgni nuova versione dei computer MSX veniva offerta con una versione aggiornata dell'MSX BASIC. Tutte le versioni erano compatibili con le precedenti e fornivano le caratteristiche necessarie all'utilizzo dell'hardware rinnovato o aggiunto presente nei nuovi computer. MSX BASIC 1.0/1.1/1.2
MSX BASIC 2.0
*: le grafiche a 424 linee erano disponibili solo in modalità interlacciata
MSX BASIC 3.0
*: modalità e codifiche colori permesse dal nuovo chip grafico Yamaha V9958 MSX BASIC 4.0
MSX BASIC 4.1
Estensioni dell'MSX BASICGrazie al fatto che l'MSX BASIC fu progettato per essere espandibile, fu possibile realizzare delle estensioni al linguaggio in maniera relativamente facile. Il supporto per uno specifico hardware era aggiunto tramite l'utilizzo di cartucce di espansione, che servivano anche come interfaccia per l'hardware in questione. Il Disk BASIC ne è un esempio: integrato nella cartuccia che forniva l'interfaccia per collegare le unità dischi, aggiungeva dei comandi per accedere alle stesse. Era possibile espandere l'MSX BASIC anche via software: un'estensione alle versioni 1.0/1.1 era "Screen IV", una modifica che aggiungeva la modalità mista grafica/testuale Screen 4 (da cui il nome) con 64×24 caratteri e la risoluzione Screen 2 per la grafica (256×192 pixel, 16 colori). Esempio di codiceQuello che segue è un esempio di codice scritto in MSX BASIC:[2] 10 SCREEN 2
20 C=INT(15*RND(1))
30 I=INT(92*RND(1))
40 X2=255-I
50 Y2=191-I
60 FOR X=I TO X2 STEP 4
70 PSET (X,I),C
80 PSET (X,Y2),C
90 IF X2-X<=64 THEN 120
100 PSET (I,X),C
110 PSET (X2,X),C
120 NEXT X
130 GOTO 20
Note
Bibliografia
Voci correlateCollegamenti esterni
|
Portal di Ensiklopedia Dunia