Commodore 64

0
94
copertina della guida di riferimento del programmatore - commodore 64
Ritaglio della copertina della guida di riferimento del programmatore

Non una console in senso stretto, anzi in realtà un home computer, il Commodore 64 ha davvero segnato un’epoca. Epoca che dal punto di vista commerciale è durata 15 anni, e ha registrato 30 milioni di unità vendute.

È stato realizzato in tre versioni, in ordine cronologico: la Silver Label, il biscottone (la serie più famosa tra gli amatori) e il 64C; sono state prodotte anche diverse varianti, a cui dedicheremo successivi articoli in questa sezione.

Presentato in anteprima mondiale a Las Vegas il 6 giugno del 1982 e in Italia il successivo 17 settembre, fu commercializzato negli Stati Uniti a partire dall’agosto dello stesso anno (ad un prezzo di poco inferiore ai 600 $) e 7 mesi dopo in Italia (per 973.500 £, circa 500 €); le vendite cessarono nel 1994, con il fallimento di Commodore.

La possibilità di produrre i microprocessori “in casa”, la maggiore semplicità d’uso rispetto ai suoi predecessori e ai modelli dei concorrenti, e le aggressive tecniche di marketing permisero al Commodore 64 di dominare il mercato mondiale dei computer a 8 bit per oltre un decennio.

Vediamone le principali caratteristiche e la storia.

joystick in primo piano, sullo sfondo fuori fuoco sono visibili diversi monitor e computer
Fotografia di una sala computer

Com’è fatto il Commodore 64

Il Commodore 64 era un modello d’avanguardia, tra le sue caratteristiche tecniche ricordiamo:

  • microprocessore: MOS technology 6510
  • RAM: 64 Kb (non espandibile)
  • ROM: 20 Kb
  • S.O.: KERNAL
  • interprete del S.O.: Commodore BASIC 2.0
  • processore video: MOS VIC-II
  • processore audio: MOS SID

Presentava poi un connettore RF per il collegamento alla TV, la porta per le cartucce (di dimensioni più ridotte rispetto a quella del VIC 20), e due porte a 9 PIN per il datassette; inoltre disponeva di un bus che permetteva di collegare varie periferiche in cascata.

Il microprocessore aveva una frequenza di clock di 0,9875 Mhz che, se si considera che le istruzioni prendevano da 2 a 7 cicli di clock, permetteva una potenza di calcolo ben inferiore a 1 MIPS (Milions of Instructions Per Second); il che tuttavia non rappresentava un grosso problema, in quanto i due chip dedicati per l’audio e il video svolgevano una parte considerevole del lavoro.

Il chip video poteva produrre una gamma di 16 colori, ma sfruttando particolari algoritmi poteva creare l’illusione ottica di un numero di colori superiore; aveva una risoluzione massima di 320 x 200 punti in modalità hi-res, con due colori possibili in ogni cella 8 x 8, o di 160 x 200 in modalità multicolor, con 4 colori possibili per ogni cella 4 x 8 (la dimensione del singolo pixel era doppia rispetto all’altra modalità); la modalità testo forniva un’area di 25 righe per 40 colonne.

Il chip audio poteva riprodurre tre voci hardware, costruite a partire da 4 forme d’onda basilari (a impulsi, a dente di sega, triangolare e rumore bianco) e l’ADSR; il numero di voci poteva essere incrementato tramite l’aggiunta – via software – di campionamenti PWM.

Diagramma a blocchi del commodore 64
Diagramma a blocchi del Commodore 64

Come funziona

Ma naturalmente l’hardware ha bisogno di un software in grado di gestirlo perché possa funzionare al meglio, più nello specifico necessita di un sistema operativo. Quello del Commodore 64 è costituito di tre parti distinte e separate, ma interdipendenti:

  • il KERNAL
  • il monitor in linguaggio macchina
  • l’interprete (Commodore BASIC 2.0)
Schermata di avvio del c64
Gif animata della schermata principale del Commodore 64

Il KERNAL

Era il “cuore pulsante” del sistema operativo, il kernel che veniva usato per tutti i Commodore della famiglia di processori a 8 bit, ovvero un insieme di ruotine che gestisce tutte le operazioni di input/output.

Queste routine potevano anche essere richiamate tramite una jump table standard, e ciò rendeva possibile la piena compatibilità tra le routine presenti su tutte le versioni di KERNAL e tutti i modelli Commodore a 8 bit (anche con differenti mappe di memoria).

Con questo sistema i programmi potevano essere scritti più rapidamente e raggiungevano un elevato grado di portabilità tra le diverse macchine.

Il monitor in linguaggio macchina

Questo non era altro che il programma fornito all’utente per le operazioni di immissione dei testi, ed era alloggiato nella stessa ROM del kernel.

L’interprete

Ovvero il linguaggio che si occupa di interpretare per la macchina le istruzioni digitate dal programmatore. Il Commodore 64 era equipaggiato con il BASIC 2.0 –sebbene all’epoca della sua commercializzazione la Commodore disponesse già di una versione migliore – per ridurre i costi di produzione.

Il Commodore BASIC era di diretta derivazione del Microsoft BASIC, si appoggiava al kernel della macchina e permetteva all’utente di scrivere programmi in BASIC o di interagire col sistema operativo (e quindi con la macchina stessa) direttamente tramite l’immissione di comandi da tastiera: ne è l’esempio più noto il comando “LOAD”, usato per caricare un programma.

Con gli anni nacquero diverse estensioni del BASIC originale in dotazione sui computer a 8 bit della Commodore, in quanto questo non prevedeva alcun comando diretto per la gestione del suono, degli sprites, e della grafica bitmap, che potevano essere controllati solo tramite i comandi “POKE” e “PEEK” seguiti da interminabili inserimenti di dati in forma di numero decimale.

Il valore per i collezionisti

Difficile dire quale possa essere il valore reale di un Commodore 64 oggi: diversi sono i fattori che possono intervenire in una valutazione di un pezzo storico, ma il parametro più importante che mi piace sottolineare quando si parla di collezionismo è la cifra che i collezionisti stessi sono disposti a spendere!

Il valore storico di un’apparecchiatura vintage, che ai suoi tempi ha portato reale innovazione nel suo settore è indubbio, ma occore fare alcune considerazioni:

  • quando un computer diventa storico?
  • il computer è funzionante? E quanti esemplari funzionanti esistono?
  • quante e quali periferiche e o giochi/programmi sono forniti a corredo?
  • in che condizioni si trova/è stato conservato?

…e molte altre in realtà! Il punto è che negli anni successivi al fallimento della Commodore, e con l’avvento di nuove tecnologie, molti Commodore 64 sono stati buttati via o smaltiti nelle isole ecologiche (molti ancora funzionanti) perché obsoleti, come accade oggi per molti altri PC o console: un tempo potevi trovare diversi esemplari usati a prezzi molto contenuti, se non addirittura regalati (“mi risparmio di portarlo in discarica”). Con il passare degli anni poi, e con il collezionismo, i prezzi sono lievitati, ma dall’altra parte molti esemplari sono stati riparati e resi perfettamente funzionanti (facendo scendere di nuovo i prezzi).

Attualmente su eBay si trovano unità funzionanti e in ottimo stato anche per un centinaio di euro (64C e biscottone) oppure, come nel caso dell’ SX-64 Executive (la versione “portatile” con lettore floppy e un piccolo monitor integrato), a oltre 500,00 €!

Per finire…

Una chicca, un piccolo omaggio per voi appassionati che avete letto l’articolo fino in fondo: il pdf con la Guida di Riferimento del Programmatore!