a cura di Marco Lodi
Il Commodore VIC-20 è stato uno dei primi personal computer di successo prodotti da Commodore Business Machines nei primi anni ’80. Rilasciato nel 1980, è stato il primo computer a vendere oltre un milione di unità, gettando le basi per il grande successo del Commodore 64.
Alla fine degli anni ’70, Commodore cercava un successore economico al PET, il suo primo computer. L’idea era di realizzare un computer più accessibile per il mercato consumer, basato su un processore MOS 6502 e con un’architettura semplificata. Il cuore del progetto fu il chip grafico VIC (Video Interface Chip), sviluppato inizialmente per console e terminali a basso costo.
Jack Tramiel, fondatore di Commodore, voleva un prodotto economico, divertente e adatto anche alle famiglie. Il risultato fu il VIC-20, chiamato così per il chip video e la RAM di 5 KB (espandibile). In Giappone fu commercializzato come Commodore VIC-1001.
🖥 Caratteristiche tecniche
- CPU: MOS 6502 a 1,02 MHz
- RAM: 5 KB (espandibile fino a 32 KB con cartucce)
- ROM: 20 KB (contenente il BASIC di Commodore)
- Grafica: 176×184 pixel, 16 colori
- Suono: 3 canali audio grazie al chip VIC
- Memoria di archiviazione: Registratore a cassette (Commodore Datasette) o floppy drive (CBM 1540)
- Espandibilità: Slot per cartucce ROM con giochi e software
Il VIC-20 fu il primo home computer a costare meno di 300 dollari e divenne estremamente popolare grazie al suo prezzo competitivo e alla strategia di marketing di Commodore. Slogan come “The Friendly Computer” e il supporto di personaggi famosi come William Shatner (Star Trek) aiutarono le vendite.
Commodore sfruttò la rete di distribuzione dei grandi magazzini, vendendo il computer non solo nei negozi di elettronica, ma anche in supermercati e catene di elettronica di consumo. Nel 1982, il VIC-20 divenne il primo computer a superare il milione di unità vendute, e alla fine della sua vita commerciale ne furono venduti oltre 2,5 milioni.
Il VIC-20 aveva una vasta libreria di software, inclusi giochi, applicazioni educative e programmi di produttività. Molti giochi furono sviluppati su cartucce ROM, tra cui:
- Gorf (sparatutto arcade)
- Omega Race
- Avenger (clone di Space Invaders)
- Jupiter Lander
Grazie alla possibilità di programmare in Commodore BASIC, molti utenti iniziarono a creare i propri programmi, rendendolo popolare tra gli hobbisti.
Nel 1982 Commodore rilasciò il Commodore 64, con grafica e suono molto superiori, decretando il lento declino del VIC-20. La produzione terminò nel 1985, quando Commodore si concentrò sui modelli più avanzati.
Il VIC-20 ha lasciato un segno indelebile nella storia dell’informatica:
- Ha reso i computer accessibili a un pubblico più ampio.
- Ha dimostrato che un home computer poteva essere un prodotto di consumo di massa.
- Ha gettato le basi per il successo del Commodore 64, il computer più venduto di tutti i tempi.
Oggi il VIC-20 è un oggetto da collezione, amato dagli appassionati di retrocomputing. Alcune aziende hanno persino prodotto versioni moderne, come il “THEVIC20”, una riedizione con giochi preinstallati e supporto HDMI.
Il Commodore VIC-20 utilizzava il Commodore BASIC 2.0, una variante del BASIC sviluppata da Microsoft. Questo linguaggio di programmazione era integrato nel computer e permetteva agli utenti di scrivere programmi senza bisogno di software aggiuntivo.
📝 Caratteristiche del VIC-20 BASIC
- Interpretato: Non compilava il codice, ma lo eseguiva riga per riga.
- Basato su linee numerate: Ogni istruzione doveva iniziare con un numero di riga (es. 10 PRINT “CIAO”).
- Supporto per variabili: Stringhe (A$), numeri interi e numeri in virgola mobile.
- Gestione di grafica e suono: Usava caratteri grafici e codici POKE/PEEK per controllare il video e il suono.
- Memoria limitata: Solo 3,5 KB disponibili, quindi i programmi dovevano essere ottimizzati.
Il Commodore VIC-20 utilizzava il Commodore BASIC 2.0, una variante del BASIC sviluppata da Microsoft. Questo linguaggio di programmazione era integrato nel computer e permetteva agli utenti di scrivere programmi senza bisogno di software aggiuntivo.
🚀 Comandi base del VIC-20 BASIC
Ecco alcuni comandi fondamentali per iniziare:
Comando | Descrizione |
---|---|
PRINT |
Stampa un messaggio sullo schermo |
INPUT |
Richiede un input dall’utente |
GOTO |
Salta a una specifica riga di codice |
IF...THEN |
Struttura condizionale |
FOR...NEXT |
Ciclo di iterazione |
POKE |
Scrive un valore in un indirizzo di memoria |
PEEK |
Legge un valore da un indirizzo di memoria |
🎨 Esempi di programmazione in BASIC
1️⃣ Il classico “Hello, World!”
10 PRINT "CIAO, MONDO!"
20 END
Questo programma stampa “CIAO, MONDO!” sullo schermo.
2️⃣ Chiedere all’utente il nome
10 PRINT "COME TI CHIAMI?";
20 INPUT N$
30 PRINT "CIAO, "; N$; "!"
40 END
Qui il computer chiede il nome e lo stampa in una frase di saluto.
3️⃣ Ciclo con numeri
10 FOR I=1 TO 10
20 PRINT "NUMERO: "; I
30 NEXT I
40 END
Stampa i numeri da 1 a 10.
4️⃣ Generare numeri casuali
10 PRINT "NUMERO CASUALE: "; INT(RND(1)*100)
20 END
RND(1)
genera un numero casuale tra 0 e 1, moltiplicato per 100 e trasformato in intero con INT()
.
5️⃣ Semplice animazione con caratteri
10 PRINT CHR$(147) : REM Cancella schermo
20 FOR X=1 TO 30
30 PRINT TAB(X); "*"
40 FOR T=1 TO 100 : NEXT T : REM Ritardo
50 NEXT X
60 GOTO 10
Il simbolo *
si muove da sinistra a destra in un ciclo infinito.
🎵 Usare il suono con il VIC-20
Il VIC-20 aveva 3 canali audio controllabili con il comando POKE
. Ecco come generare un suono:
10 POKE 36878, 15 : REM ATTIVA AUDIO
20 POKE 36874, 200 : REM IMPOSTA FREQUENZA
30 POKE 36876, 128 : REM ATTIVA TONO
40 FOR T=1 TO 500 : NEXT T
50 POKE 36876, 0 : REM SPEGNE SUONO
60 END
Questo programma emette un suono per un breve periodo.
📌 Salvare e caricare programmi
Il VIC-20 permetteva di salvare i programmi su nastro (Datasette) o su cartucce ROM.
- Salvare su nastro:
SAVE "NOMEPROGRAMMA"
- Caricare da nastro:
LOAD "NOMEPROGRAMMA",8
💾 Espandere la programmazione
- Con cartucce di espansione RAM, era possibile scrivere programmi più lunghi.
- Il BASIC del VIC-20 non supportava direttamente sprite e funzioni avanzate come nel C64, ma era comunque possibile creare grafica e giochi con combinazioni di caratteri e
POKE
.
Bibliografia
- Sulla cresta… del baratro, la spettacolare ascesa e caduta della Commodore, Brian Bagnall, 2016
- VINTROPEDIA – Vintage Computer and Retro Console Price Guide 2009, Michael Starr, 2008