# Commodore Plus/4

Il Commodore Plus/4 (in Canada talvolta Commodore +4) è un home computer della Commodore Business Machines Inc. commercializzato dal 1984 al 1986 in vari Paesi del mondo.
Appartiene alla serie "Commodore 264", una famiglia di home computer della Commodore Business Machines Inc. che prende il nome dal prototipo su cui è basata la stessa macchina, ovvero Commodore 264.

## Storia
### L'ideazione e il prototipo

Verso la fine del 1982, la Commodore iniziò a pensare allo sviluppo di un nuovo home computer; Jack Tramiel era preoccupato riguardo alla concorrenza della Sinclair Research e della Timex Corporation; così si iniziò a pensare ad un progetto il cui obiettivo era quello di realizzare una macchina più economica del Commodore 64 e che avesse anche delle migliorie. Si pensò quindi ad un nuovo home computer che avrebbe dovuto basarsi su un nuovo chip integrato, il MOS TED che avrebbe dovuto gestire sia la grafica, sia il suono (riprendendo l'approccio del circuito VIC del VIC 20). I progettisti riuscirono in questo intento, offrendo delle caratteristiche simili a quelle del MOS VIC-II del C64, con delle migliorie ma tuttavia con delle lacune; infatti offriva soltanto due canali ad onda quadra, uno dei quali poteva essere impostato, a scelta, anche a rumore bianco per simulare i rumori. Inoltre, erano assenti gli sprite hardware.
Alla MOS Technology svilupparono anche una nuova versione del MOS 6510, il MOS 7501. Questa CPU presentava una velocità di clock pari a 1,78 MHz e consentiva una gestione della memoria mediante un bank switching dotato di un chip MMU dedicato.
Furono messi insieme questi due integrati nell'ambito di una nuova architettura e, dopo alcuni prototipi, fu realizzato, nel 1983, il Commodore 264, battezzato poi Commodore Plus/4 a causa del software aggiuntivo presente.

### La presentazione e la commercializzazione

Inizialmente era stata prevista la commercializzazione del Commodore 264 presentato in anteprima mondiale all'International Winter Consumer Electronics Show del 1984 (7–10 gennaio 1984 – Las Vegas Convention Center – Las Vegas, Nevada, Stati Uniti) assieme al Commodore V364. La commercializzazione del Commodore 264 e del Commodore V364 era stata confermata anche in Europa dove i due computer erano stati mostrati al CeBIT del 1984 (4–11 aprile 1984 – Messegelände Hannover – Hannover, Germania Ovest). La macchina fu presentata in anteprima mondiale all'International Summer Consumer Electronics Show del 1984 (3–6 giugno 1984 – McCormick Place – Chicago, Illinois, Stati Uniti). Nel giugno 1984 inizia negli Stati Uniti la vendita al dettaglio con un prezzo di lancio fissato a 299 dollari. Nel settembre 1986, a fine commercializzazione, negli Stati Uniti lo si poteva invece acquistare al dettaglio (in liquidazione) per 79 dollari.
In Italia l'importazione e la distribuzione autorizzata del Commodore Plus/4 è stata curata direttamente dalla Commodore International Ltd. attraverso la controllata italiana Commodore Italiana S.r.l. che lo ha reso disponibile per la vendita al dettaglio a partire dal novembre 1984 con un prezzo di listino di 1.150.500 lire (che equivalevano a circa 650 dollari). Nel listino della Commodore Italiana S.r.l. il Commodore Plus/4 è rimasto fino all'ottobre 1986 con un prezzo ribassato più volte: nel febbraio 1985 a 997.100 lire, nel settembre 1985 a 588.820 lire e nel dicembre 1985 a 529.820 lire. Commodore Italiana S.r.l. ha distribuito in Italia il Commodore Plus/4 in una confezione localizzata con scritte in inglese e in italiano. All'interno anche i due manuali in dotazione al Commodore Plus/4, uno dedicato al computer e l'altro dedicato alla suite da ufficio 3-Plus-1, erano in italiano. Il primo era intitolato Manuale per l'utente, il secondo era intitolato Manuale del software integrato.
Per il mercato canadese è stata anche realizzata un'edizione del computer commemorativa dei XIV Giochi Olimpici Invernali che si contraddistingue per l'utilizzo della diversa grafia Commodore +4 riportata sul case.

### L'insuccesso e la fine della produzione

Secondo i piani originali della Commodore, il Plus/4 avrebbe dovuto essere commercializzato in differenti serie, ognuna dotata di software applicativo (su ROM) di tipo diverso. Un solo mese prima del lancio sul mercato venne però deciso di concentrare i programmi applicativi in un'unica ROM. Tuttavia la necessità di concentrare tutto su un ristretto spazio di memoria rese necessario limitare o eliminare parecchie funzionalità, a scapito della qualità del software. Alcuni dei software originali (non ridotti) furono pubblicati successivamente su floppy disk. Il fatto che il Plus/4 fosse in parte compatibile col Commodore 16 permise agli utenti del Plus/4 di usare molti programmi, in gran parte giochi, che furono venduti per tale macchina, ma che non sfruttavano tutte le potenzialità di memoria che il sistema offriva.
Nelle intenzioni iniziali del management la serie Commodore 264, cui il Plus/4 apparteneva, era destinata a sostituire i predecessori Commodore VIC-20 e Commodore 64, entrambi non compatibili a livello software con la serie 264 (solo il Kernal del sistema operativo era compatibile) ma l'incompatibilità della nuova macchina con questi ultimi ne decretò lo scarso successo; un ultimo modello di Plus/4 fu il Commodore V364 dotato di tastierino numerico e la circuiteria modificata per alloggiare un circuito di uscita vocale a parole campionate, stile Magic Voice, ma la produzione cessò nel 1986.

## Caratteristiche

Il Plus/4 presentava 64K di RAM e un notevole quantitativo di memoria ROM in quanto, oltre a contenere il KERNAL, il cuore del sistema operativo dei computer Commodore, l'interprete BASIC e il generatore dei caratteri, sulla ROM erano presenti anche dei software di produttività personale. La schermata di presentazione era molto simile a quella del Commodore 16, con la sola variante di dichiarare 60671 bytes liberi contro i 12277 del Commodore 16, e con l'aggiunta della dicitura "3-PLUS-1 ON KEY F1".
Il Plus/4 era infatti dotato del software di produttività personale 3-Plus-1, programmato da David W. Johnson della International Tri Micro Incorporated. Pigiando il tasto F1 o impartendo il comando SYS 1525 era possibile accedere al pacchetto completo, subito disponibile perché precaricato in una apposita ROM e comprendente un programma di videoscrittura, un foglio elettronico e un gestore di database, integrati tra loro. Tuttavia, questi applicativi si dimostrarono essere di modesta qualità dovendo coesistere in soli 16K e furono poco utilizzati, anche perché non prevedevano il supporto dell'unità a nastro, ma solo quello dell'unità a disco.
La gestione dinamica della memoria consentiva di avere molto spazio libero per i programmi BASIC (circa 60K). L'interprete utilizzato fu il BASIC 3.5. Erano presenti comandi specializzati per l'I/O, per la grafica e per il suono, oltre a un utilissimo assemblatore/disassemblatore per il linguaggio macchina (TEDmon). Tutto ciò costituì un notevole miglioramento rispetto al C64. A ciò si aggiunga la notevole palette offerta dal TED, ben 121 colori, che era molto per quell'epoca, e la possibilità di suddividere l'area di testo in finestre, indipendenti tra loro, dove è possibile concentrare separatamente porzioni di testo.
Di contro, l'assenza di un sintetizzatore all'altezza e l'assenza degli sprite, unite a un costo elevato, decretarono l'insuccesso di questa macchina, dovuto senz'altro anche a scelte infelici sui connettori per collegare alcune periferiche, che rendevano difficoltoso utilizzare le periferiche con connettori standard. Ad esempio, per i joystick sono utilizzati dei connettori tipo mini-DIN studiati per ridurre le interferenze RF; parimenti il connettore del registratore non era lo stesso utilizzato nel VIC-20 e nel Commodore 64.
Il maggior difetto della macchina fu la non totale compatibilità con il suo predecessore C64, fatta salva la possibilità di eseguire almeno i più semplici tra i programmi in BASIC. Appartengono a tale categoria tutti quelli privi di istruzioni PEEK, POKE e SYS per il pilotaggio diretto dei chip o per l'accesso alle funzioni in linguaggio macchina.
Va inoltre detto che, dovendo il TED gestire sia la parte grafica sia quella sonora in contemporanea, era soggetto molto spesso a problemi di surriscaldamento e quindi a malfunzionamenti. Si è anche osservato che alcuni joystick dotati della funzione di auto-fire erano in grado di danneggiare il chip.

## Periferiche
### Commodore 1551

Fu sviluppata specificamente per questa serie di computer anche una nuova unità a floppy disk da 5"1/4, modello Commodore 1551. Esteriormente è simile a un 1541, di colore nero e collegata non più sul bus seriale Commodore, che pure i computer di questa serie possiedono, ma tramite una cartuccia sulla porta espansioni; cioè affacciata direttamente sul bus della CPU. Questa periferica, concepita per essere fino a 12 volte più veloce di un 1541, in realtà senza avere caricato sul Plus/4 un software specifico, arriva a 2x in scrittura e 3x in lettura. Questo drive era estremamente raro in America, invece abbastanza diffuso in Germania e Ungheria; una sua denominazione iniziale è stata SFD-481.

## Programmazione
### Esempi

* Programma grafico per produrre linee e cerchi in alta risoluzione con testo:
* Programma per modificare i colori di cornice, testo e sfondo
* Un rudimentalissimo monoscopio circolare con nota continua per chi vuole divertirsi a provare

### Confronto con il Commodore 64

Qui alcune differenze e alcuni comandi presenti nel Basic 3.5 in dotazione al Commodore Plus/4 ma mancanti al Basic 2.0 del Commodore 64.
* Per cambiare il colore della cornice, sul Commodore Plus/4 era sufficiente scrivere il comando COLOR 4,x (laddove "x" è il numero corrispondente al colore desiderato), mentre sul Commodore 64 bisognava dare il comando "POKE 53280,(x-1)" laddove la dicitura "(x-1)" sta a significare che il Commodore 64 aveva la corrispondenza con i colori del Plus/4 con un'unità in meno, ad esempio per cambiare il colore della cornice in nero, sul Plus/4 basta digitare "COLOR 4,1" mentre sul Commodore 64 "POKE 53280,0".
* Per cambiare il colore dell'area di testo, sul Commodore Plus/4 bastava dare il comando "COLOR 0,x" mentre sul Commodore 64 il comando "POKE 53281,(x-1)" (vale il discorso detto a proposito della spiegazione precedente).
* Per ripulire lo schermo in modalità testo, il Plus/4 disponeva del comando SCNCLR (screen clear) che invece era assente sul Commodore 64 (sostituito da PRINT"(tasto SHIFT+tasto CLR/HOME").
* Per caricare un programma da disco, il Plus/4 aveva il comando "DLOAD" che invece il Commodore 64 sostituiva con LOAD"(nome programma)",8.
* Uguale discorso per salvare un programma su disco, sul Plus 4 si poteva usare "DSAVE" mentre sul Commodore 64 l'unico modo era SAVE"(nome programma)",8.
* Per regolare il volume di sistema (nel caso di programmazione di effetti sonori) il Plus/4 utilizzava il comando "VOL" con valori compresi tra 0 (minimo) e 8 (massimo) mentre il Commodore 64 aveva il comando "POKE 54296,x" con valori compresi tra 0 (minimo) e 15 (massimo).
* Per produrre un suono, il Plus/4 disponeva del comando SOUND, assente nel Commodore 64, la cui sintassi era
SOUND A, B, C
dove A è il generatore di voce (1 e 2 per note musicali, 3 per rumore bianco), B la frequenza in hertz (compresa tra 0 e 1023) e C la durata (tra 0 e 65535 sessantesimi di secondo, esempio SOUND 1,865,60 andrà a produrre una nota utilizzando la voce 1 con una frequenza di 865 hertz per 1 secondo; la stessa nota la otterremmo con la voce 2 quindi SOUND 2,865,60 mentre assegnando ad A il valore 3, quindi SOUND 3,865,60 il TED genererà un rumore bianco e non una nota propriamente detta; ancora, prima di adoperare il comando SOUND, si dovrà sempre prima agire sul comando VOL precedentemente spiegato in quanto di default il volume del Plus/4 è pari a zero e dunque non verrebbe prodotto alcun suono, generalmente si soleva digitare VOL 7 o VOL 8 in quanto essi erano i massimi livelli di volume disponibili.
* Per quanto riguarda la modalità grafica ad alta risoluzione, irraggiungibile dal Basic 2.0 del Commodore 64 a meno che non si volesse utilizzare l'istruzione POKE, c'era una vasta gamma di comandi come BOX (per disegnare quadrati, rettangoli e rombi), CIRCLE (per cerchi ed ellissi), DRAW (per linee dritte e curve), PAINT (per riempire di colore le aree vuote), LOCATE (per localizzare il punto di partenza di un disegno) e CHAR (per inserire del testo in modalità alta risoluzione).
* Tra gli altri comandi a disposizione, ve ne erano ad esempio alcuni disponibili per l'utilizzo dell'unità a disco, ad esempio DIRECTORY che mostrava all'utente il contenuto del dischetto stesso, HEADER per la formattazione completa, SCRATCH per cancellare un singolo file lasciando intatti gli altri, COLLECT e così via. Si potevano trovare anche altre tipologie di comandi e istruzioni, per esempio KEY per visualizzare il contenuto dei tasti funzione (tasti funzione riprogrammabili attraverso la stessa istruzione), DELETE per cancellare una riga o più righe da un listato di programma specificandone l'intervallo, PUDEF (che stava ad indicare "Print User Define" ossia la possibilità di visualizzare a schermo determinati caratteri in sostituzione di quelli di default), ed ulteriori come TRAP,TRON e TROFF.
* Vi è anche la possibilità di creare dei loop infiniti senza utilizzare il comando GOTO, questo è possibile grazie alla coppia di istruzioni DO-LOOP. Ad esempio, il classico programma di prova
lo si può anche trasformare in:
Questa combinazione non è però possibile con il Commodore 64, per il quale è solo disponibile il comando GOTO.

## Diffusione

Complessivamente nel mondo sono stati venduti circa 400.000 esemplari di Commodore Plus/4, 150.000 dei quali negli Stati Uniti e i rimanenti nel resto del mondo.
I Paesi nei quali ebbe maggiore diffusione furono nell'Europa dell'est, dove fu venduto a basso costo, in particolare in Ungheria dove considerevoli stock di Plus/4 furono acquistati per le scuole. Molto software venne realizzato proprio in Ungheria, dove tra l'altro un'attiva comunità homebrew ha convertito molti classici del Commodore 64 per il Plus/4..