Atari BASIC: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Birrezza (discussione | contributi)
Recupero di 1 fonte/i e segnalazione di 0 link interrotto/i.) #IABot (v2.0.9.3
 
(8 versioni intermedie di 4 utenti non mostrate)
Riga 10:
}}
 
L''''Atari BASIC''' è un [[linguaggio interpretato|interprete]] del [[linguaggio di programmazione]] [[BASIC]] sviluppato per i [[Famiglia Atari 8-bit|computer ad 8 bit]] basati sul [[microprocessore]] [[MOS 6502]] commercializzati da [[Atari, Inc.]] nei primi [[anni 1980|anni ottanta]]. L'interprete fu inizialmente distribuito su una [[cartuccia (supporto)|cartuccia]] da 8 [[byte|kB]] di [[Read-only memory|ROM]] e successivamente venne integrato nella memoria dei modelli XL/XLE, che lo caricavano in automatico se il computer veniva avviato senza nessuna cartuccia inserita nell'apposita porta. Il [[codice sorgente]] dell'Atari BASIC, completo di commenti e delle specifiche di progetto, fu pubblicato in un libro nel [[1983]].<ref name="wilko">{{cita libro|cognome=Wilkinson|nome=Bill|anno=1983|titolo=The Atari BASIC Source Book|url=https://archive.org/details/ataribooks-the-atari-basic-source-book|editore=Compute! Books|isbn=0-942386-15-9}}</ref>
 
==Le origini del linguaggio==
Riga 39:
* '''Revision C'''&nbsp;– Eliminava i problemi di gestione della memoria della precedente Revision B. Preinstallata negli 800XLs più recenti, negli 800XLF, negli XEGS e in tutti i computer XE. La versione su cartuccia fu prodotta in piccola serie.
 
Un programmatore poteva sapere la versione dell'interprete in uso esaminando una precisa locazione di memoria. Il comando <code>PRINT PEEK(43234)</code> inserito al READY della macchina resistuivarestituiva <code>162</code> per la Revision A, <code>96</code> per la Revision B e <code>234</code> per la Revision C.
 
==Caratteristiche del linguaggio==
Riga 58:
L'interprete accettava per i nomi delle variabili i caratteri maiuscoli (65-90) ed i caratteri numerici (48-57), con il nome che doveva iniziare con una lettera. I nomi delle stringhe di testo dovevano terminare con il simbolo del dollaro, <code>$</code>.
 
L'insieme di caratteri conteneva anche i caratteri minuscoli ed alcuni caratteri grafici anche se poi la maggior parte dei linguaggiolinguaggi che furono resi disponibili per quei computer, compreso l'Atari BASIC, non riconoscevano i comandi scritti in lettere non maiuscole.
 
Nelle ROM della Revision C dell'interprete fu inserito un insieme di caratteri alternativo che comprendeva anche le lettere accentate, pensato per l'uso in [[Europa]].
Riga 84:
 
===Grafica===
{{MainVedi anche|ANTIC}}
[[File:Atari-gr2-sl.png|thumb|L'output di un programma che usa le modalità GRAPHICS 2 e 0.]]
I computer Atari ad 8 bit avevano un sofisticato sistema di gestione della grafica dovuto all'uso deidi appositi chip, l'[[ANTIC]] ed il [[CTIA e GTIA|CTIA]]: ciò perché originariamente i computer erano stati progettati per essere console giochi. Grazie ai 2 chip il sistema offriva diverse modalità grafiche ed era presente anche il supporto agli [[sprite (informatica)|sprite]].
 
Purtroppo l'Atari BASIC non metteva a disposizione comandi per gestire direttamente gli sprite ma ciò era comunque fattibile mediante l'uso di [[PEEK e POKE]] con cui leggere e scrivere direttamente nei registri del CTIA. Il risultato non era però dei migliori perché il chip grafico supportava lo scorrimento orizzontale degli sprite ma non quello verticale per cui usando l'Atari BASIC, che era molto lento nello spostamento di blocchi di dati in memoria, nel caso di scorrimenti verticali si ottenevano prestazioni scarse. Per gestire questo problema i programmatori ricorrevano ad un paio di trucchi: usavano piccole funzioni scritte direttamente in [[linguaggio macchina]] oppure memorizzavano i dati degli sprite in stringhe e poi usavano le funzioni di copia delle stringhe, che erano funzioni in linguaggio macchina e quindi eseguite molto velocemente.
Riga 109:
*{{cita libro|autore=Bill Carris|titolo=Basic Atari|editore=Gruppo Editoriale Jackson|anno=1985|ISBN=|url=https://archive.org/details/basicatari}}
*{{cita libro|autore=Gary Ryan, Cliff McConnell|titolo=Altri giochi per il vostro Atari|editore=Gremese Editore|anno=1985|ISBN=88-7605-153-8|url=https://archive.org/details/altrigiochiperilvostroatari}}
* {{cita libro|autore=Bill Wilkinson|titolo=The Atari BASIC Source Book|editore=COMPUTE! Books|anno=1983|isbn=0-942386-15-9|url=http://users.telenet.be/kim1-6502/6502/absb.html|accesso=055 agosto 2012|dataarchivio=26 luglio 2012|urlarchivio=https:/08/2012web.archive.org/web/20120726155045/http://users.telenet.be/kim1-6502/6502/absb.html|urlmorto=sì}}
* {{cita libro|autore=Bill Wilkinson|titolo=Inside Atari DOS|editore=COMPUTE! Books|anno=1982|isbn=0-942386-02-7|url=http://www.atariarchives.org/iad/introduction.php|accesso=05/08/5 agosto 2012}}
* {{cita libro|url=http://www.atariarchives.org/dere/chapt10.php|titolo=De Re Atari|capitolo=10: ATARI BASIC|autore=Chris Crawford et al.|accesso=05/08/5 agosto 2012|anno=1982}}
* {{cita libro|url=http://www.atariarchives.org/basic/|titolo=Atari Basic - A Self-Teaching Guide|autore=Bob Albrecht|coautori=LeRoy Finkel, Jerald R. Brown|anno=1979|editore=Wiley Microcomputer Guides|accesso=05/08/5 agosto 2012}}
* {{cita libro|url=http://www.atariarchives.org/basicxl/|titolo=Atari Basic - XL Edition|autore=Bob Albrecht|coautori=LeRoy Finkel, Jerald R. Brown|anno=1985|accesso=05/08/5 agosto 2012}}
 
==Voci correlate==
* [[Atari]]
* [[Atari Microsoft BASIC]]
* [[BASIC]]