title: MS BASIC for Macintosh
text: # MS BASIC for Macintosh
  
  MS BASIC per Macintosh è un dialetto BASIC sviluppato e distribuito da Microsoft nel 1984 per il primo Macintosh. Il linguaggio può essere considerato a prima vista un antenato del Visual Basic (distribuito solo per Windows) ma i due linguaggi sono molto diversi tra loro.
  
  ## Caratteristiche
  
  MS BASIC per Macintosh, in quanto interprete BASIC per i Mac 68k, utilizza una libreria di comandi appositamente sviluppata, quindi permette di creare finestre per interagire con l'utente attraverso l'istruzione WINDOW, per immettere pulsanti l'istruzione appropriata è BUTTON, ma per scrivere nella finestra viene usata la semplice istruzione PRINT. Invece per disegnare nella finestra attiva vengono usate le istruzioni tipiche del GW-BASIC (o BASICA) come LINE o PSET. Ma MS BASIC per Macintosh usa dei metodi differenti per interpretare i programmi, che si basano sugli spazi inseriti dal programmatore, quindi MS BASIC per Macintosh non riconosce come valida la riga "ifc=1thenprintc", mentre accetta la riga "if c=1 then print c". L'MS BASIC per Macintosh non gestisce il colore (semplicemente per il fatto che tutti i Macintosh in circolazione nel 1984 erano in bianco e nero) e veniva distribuito su un dischetto che conteneva il software di sistema (vale a dire MacOS 1.1), una versione di BASIC con matematica binaria e un'altra con matematica decimale e sei programmi BASIC per illustrare le possibilità di MS BASIC, tra cui uno che riproduce, usando le capacità sonore dei Mac del tempo, la Corale di J.S. Bach (Cantata 147).
  
  ## Compatibilità con le altre versioni del BASIC e con MacOS
  
  Quasi tutte le istruzioni del GW-BASIC sono supportate, quindi il codice sviluppato su un PC-IBM potrebbe essere tranquillamente eseguito anche su Macintosh, a meno che non sia un'applicazione grafica che richiede il colore o il cambiamento di risoluzione.
  
  MS BASIC per Macintosh è pienamente compatibile con tutte le versioni di MacOS fino alla versione 6, ma la compatibilità col System 7 varia da modello a modello. Con alcune varianti di quest'ultima versione (ad esempio quella per Macintosh IIci) sembra aver problemi col Finder, provocando un errore di sistema (Unknown Instruction) ogni volta che viene selezionata una voce di menu, oltre a piccoli problemi dovuti al cambiamento da parte di MacOS 7 del codice di alcune delle routine nella ROM del Macintosh, che servono per gestire l'interfaccia a colori; mentre con altre il programma funziona anche meglio (in System 6 non si poteva aprire un file senza indicare il percorso completo, mentre nel System 7 per Macintosh Plus il problema non esiste più).
  
  