Articolo pubblicato sul n. 14 di MCmicrocomputer (Edizioni Technimedia Srl - Roma) nel settembre 1982

MCmicrocomputer


Commodore Vic-20:
Grafica senza la scheda

di Andrea de Prisco

I numerosissimi utenti del VIC-20 (recentemente battezzati da qualcuno VIC-inghi) sanno quanto sia difficile reperire sul mercato italiano la Super Expander Cartridge che, oltre ad arricchire il Basic di nuovi comandi, consente di disporre di una grafica ad alta risoluzione di 25600 punti. Il programma qui listato simula per l'appunto un tale ambiente, la matrice dei punti plottabili è di 160 x 152 contro i Copertina del numero di MCmicrocomputer contenente l'articolo160 x 160 della cartuccia sopraindicata. Il sistema adottato si basa sulla possibilità di creare una nuova mappa dei caratteri in una zona RAM della memoria del VIC-20. Dopo aver stampato su video i nuovi caratteri, dapprima tutti blank, agendo sulla mappa con opportune PEEK e POKE è possibile plottare punti singoli sullo schermo.
Il programma si divide in due parti. La prima, di inizializzazione, consiste in una piccola routine in linguaggio macchina che serve ad inizializzare la grafica. La sua funzione è semplicemente quella di riempire il video con 380 dei 512 caratteri stampabili e di ripulire la zona di memoria che ospita la nuova mappa (pagina grafica). La seconda parte, dalla linea 310 in poi, serve appunto per plottare sul video i vari pixel dopo aver assegnato l'ascissa alla variabile X e l'ordinata alla variabile Y. A differenza di altre routine grafiche, avendo questa quasi il 50% dei punti in più necessita dell'espansione da 8K. La pagina grafica è posta all'inizio della memoria RAM utente, quindi prima di battere o rileggere da nastro questo programmino occorrerà digitare POKE 44,36 per spostare il limite inferiore della memoria. Al programma principale sono state aggiunte tutte le linee dispari che, a scopo dimostrativo, disegnano una funzione tridimensionale con routine di punto nascosto. La funzione scelta è la classica Z=SIN(Q)/Q con Q = SQR (X*X + y*y) nella porzione di piano -9.5<X<9.5 e -9.5<Y<9.5. Per tutte le altre applicazioni servono solo le linee dispari; ricordate di inizializzare la grafica prima di cominciare a plottare i vari punti.
 

LISTATO 

Listato BASIC per VIC-20 - Clicca per ingrandire...
 


Impaginato originale...


Clicca per ingrandire...


Articolo pubblicato su www.digiTANTO.it - per ulteriori informazioni clicca qui