In Europa è stato il principale antagonista del Commodore 64 e conquistò una discreta fetta di mercato grazie al prezzo di listino più abbordabile. Le tante soluzioni costruttive adottate per contenere i costi senza penalizzarne le funzionalità spinsero alcuni recensori dell'epoca a classificarlo come "il computer con il miglior rapporto prezzo-prestazioni".[1] Le piccole dimensioni, la velocità di calcolo e il prezzo relativamente basso lo resero popolare negli anni ottanta in tutto il mondo, tanto che se ne ebbero versioni clonate e praticamente uguali in estetica ma con nomi diversi, come l'Inves Spectrum in Spagna, il Moscow e poi il Baltic in Russia. Lo Spectrum fu anche distribuito negli USA con il marchio Timex, in una inusuale livrea chiara, con il nome Timex Sinclair 2068.
L'interprete BASIC venne fortemente personalizzato dalla Sinclair per compensare i limiti della tastiera e per sfruttare al massimo le caratteristiche grafiche e sonore della macchina.
Furono prodotte varie versioni dello Spectrum: oltre alle prime a 16 e a 48 kB, possiamo ricordare quella con una tastiera vera derivata da quella del Sinclair QL (Spectrum +) e le ultime, dopo l'acquisizione del progetto da parte dell'Amstrad con BASIC esteso, 128 kB di RAM ed il registratore a cassette o il floppy incorporato (Spectrum +2 e Spectrum +3).
Storia [modifica]
Con lo ZX Spectrum la Sinclair intendeva riproporre la filosofia minimale introdotta negli anni precedenti con lo ZX80 (1980) e lo ZX81 (1981). Il nome in codice, ZX82 (o ZX81 Colour) venne sostituito dal nome commerciale ZX Spectrum, con il quale si voleva sottolineare la possibilità di visualizzare immagini su tutto lo spettro dei colori (i due computer precedenti, malgrado il discreto successo, non disponevano né di suono né di colore). I due modelli disponibili disponevano di 16 kB e di 48 kB di memoria (il kit di espansione a 48 kB per il modello più piccolo in Italia costava circa 90.000 lire).Lo Spectrum con 48 kB di serie fece il suo debutto alla fine del 1982 e diventò ben presto uno degli home computer di maggior successo. Le caratteristiche che attiravano di più gli acquirenti erano il prezzo e la linea compatta, risultati ottenuti concentrando molta dell'elettronica in un solo chip custom (la Uncommitted Logic Array della inglese Ferranti, nota anche come ULA).
Milioni di unità furono vendute, principalmente in Europa (fino alla prima metà del 1983 lo Spectrum doveva essere acquistato direttamente in Inghilterra[2]) ma riscosse immediatamente un notevole interesse. Le prime crisi settoriali dopo il Natale 1984 e gli altri pretendenti al trono degli 8-bit (Commodore 64, Amstrad CPC464, ecc.) non compromisero il suo successo: la larga base di utenti della macchina valeva più di qualunque fattore prestazionale dei concorrenti. La Sinclair Research, tuttavia, non navigava in buone acque. Sir Clive Sinclair si era dedicato allo sviluppo di altri progetti come il Microdrive e lo "scooter" C5, entrambi un fallimento completo e i successori dello Spectrum non riuscivano a ingraziarsi il mercato. Il QL, (presentato in Italia nel settembre del 1984 allo SMAU di Milano) precorreva un po' troppo i tempi, non era più una macchina da gioco e contemporaneamente non era affidabile per un uso professionale, principalmente proprio a causa delle memorie di massa su microdrive. Verso la fine del 1984 i sintomi di questa difficoltà divennero visibili: agli imbarazzanti ritardi sul programma di lancio del QL si aggiunse la notizia del ritiro dal mercato della Timex (distributrice dei computer Sinclair negli USA).[3] Lo Spectrum+, sebbene sostenuto in Italia da una ragionevole campagna di marketing consisteva in un semplice restyling: di fatto si trattava di un 48K dotato di tastiera rigida (venne venduto anche un kit per sostituire la tastiera del 48K "classico" con quella del "Plus"). Nonostante tutto a fine anno la Sinclair deteneva ancora il 43% del mercato Britannico superando, almeno sul suolo nazionale, Commodore e Acorn.
Le promesse del governo inglese nel 1985 e la presentazione dello Spectrum 128 (lanciato inizialmente in Spagna con la collaborazione della Inves) che avvenne ufficialmente a Natale dello stesso anno non salvarono la società, che aveva investito troppo nel tentativo di commercializzare QL e C5[4]. Nel marzo 1986 la Sinclair Research fu venduta alla società che era stata la sua più accanita concorrente, la Amstrad di Alan Sugar.
L'Amstrad non fece scomparire lo Spectrum per favorire la sua linea di macchine CPC, anzi lanciò lo ZX Spectrum 128K +2. Dotato di 128Kb di RAM e di una tastiera migliorata, la nuova macchina presentava tre caratteristiche derivate dagli Amstrad CPC 464 e 4128: un registratore a cassette incorporato, una interfaccia joystick "non standard" e soprattutto un chip audio. Così facendo continuò a detenere un alto livello di vendite nella fascia bassa del mercato, e le software house ne approfittarono per inserire delle colonne sonore nei loro titoli più recenti (mentre nel vecchio Speccy l'audio era limitato a un beeper).
Nel 1987 iniziarono a comparire i primi computer a 16-bit e la Amstrad presentò i modelli +3 con disk drive incorporato da 3 pollici ereditato dal CPC, e +2A come alternative economiche ai suoi CPC6128 e CPC464. Le macchine furono ampiamente pubblicizzate nel periodo natalizio e riuscirono a ottenere delle vendite accettabili, nonostante i nuovi modelli iniziassero ad avere problemi di compatibilità con lo Spectrum 48 kB.
Con il boom dei 16-bit i possessori di Spectrum si spostarono verso altre piattaforme ma la macchina non scomparve del tutto: la sua economicità e la vastissima libreria di software lo fecero diventare uno dei computer più venduti nei paesi dell'est europeo.
In Italia lo Spectrum fu distribuito dalla Rebit (GBC); ecco alcuni prezzi del listino 1984:
- ZX Spectrum 16 kB L. 398.000
- ZX Spectrum 48 kB L. 499.000
- ZX Microdrive L. 199.500
- ZX Interface 1 L. 199.500
- 2 cartucce per Microdrive L. 45.000
Specifiche tecniche e hardware [modifica]
- processore Zilog Z80A a 3,5 MHz
- 16 kB ROM contenente il sistema operativo e l'interprete BASIC
- 16 kB RAM (espandibili a 48 KB) per la versione Spectrum 16 kB o 48 kB RAM nella versione Spectrum 48 kB
- dimensioni: 233 mm (larghezza) x 144 mm (profondità) x 30 mm (altezza)
Grafica [modifica]
Lo ZX Spectrum opera costantemente in modalità grafica, e la sua memoria video può essere indirizzata direttamente. La mappa dello schermo prevede 256x192 pixel, e il font di caratteri, di dimensioni 8x8 pixel, permette la visualizzazione di 24 righe da 32 caratteri. Con l'utilizzo di font più compatti i programmatori arrivarono comunque ad ottenere fino a 85 caratteri per riga, sebbene raramente si superasse il limite delle 64 colonne (è ad esempio il caso del Word Processor "Tasword II"). Testo e grafica possono essere tranquillamente usati contemporaneamente. Lo schermo è diviso in due sezioni: quella superiore normalmente occupa le prime 22 linee di caratteri e mostra il listato o l'output dei programmi in esecuzione; quella inferiore, costituita dalle ultime 2 righe, mostra il comando digitato o la linea di programma che si sta modificando o eventuali messaggi di sistema. I comandi possono essere editati con l'ausilio dei tasti cursor left, cursor right, insert e delete con ripetizione automatica.A differenza delle console per videogiochi dell'epoca (e di diversi home-computer indirizzati al mercato dei videogiochi), l'hardware dello ZX Spectrum non implementava un chip grafico in grado di generare i cosiddetti sprite, né vi erano porte joystick di serie. La velocità del processore e la possibilità di un accesso relativamente veloce alla pagina video permisero ugualmente la creazione di una vasta libreria di videogiochi che sfruttavano ingegnosi trucchi di programmazione per animare figure sullo schermo.
Lo Spectrum, per il quale non era commercializzato un monitor dedicato, si collega ad un normale televisore PAL UHF a colori o in bianco e nero, sul canale 36.
Colori [modifica]
Per utilizzare i colori senza consumare troppa memoria e potenza di calcolo i progettisti scelsero di far colorare solo le 32x24 aree di 8x8 pixel: ogni area 8x8 poteva mostrare 2 colori da una palette di 15 (8 di base più 7 a luminosità maggiorata, "bright" - il nero non subisce l'effetto del bright), più la possibilità del flash (lampeggiamento, generato dall'hardware, ottenuto invertendo ciclicamente il colore di sfondo e quello in primo piano). In un'area di 8x8 pixel non potevano perciò essere presenti contemporaneamente più di due colori qualsiasi; tentare di utilizzare un altro colore avrebbe cambiato gli "attributi" dell'intera area 8x8 (limitazione all'origine del cosiddetto effetto del colour clash, passione e fastidio di tanti programmatori Spectrum).I colori base sono: nero, verde, blu, rosso, magenta (porpora), cyan (ciano), giallo e bianco. Tutti gli otto colori possono essere presenti sullo schermo contemporaneamente con eventuali zone lampeggianti e altre fisse e dei caratteri con l'extra bright: tramite quest'ultimo accorgimento si ottengono in tutto 15 colori, ma non è possibile usare un colore bright ed uno standard nel medesimo quadretto di 8 x 8 pixel. Il colore del bordo dello schermo è definibile con uno degli 8 colori base tramite il comando BORDER. I colori di primo piano (foreground) e di sfondo (background) e gli attributi di luminosità (brightness) e lampeggio (flashing) sono impostati con i comandi BASIC INK, PAPER, BRIGHT e FLASH. Possono essere attivati anche OVER (sovrascrittura degli attributi dello schermo) e INVERSE (scambia i colori di sfondo e primo piano). Questi sei comandi possono essere impostati in modo da modificare tutte le successive operazioni PRINT, PLOT, DRAW o CIRCLE o riguardare una singola riga di comando.
Audio [modifica]
Come molti altri microcomputer dei primi anni ottanta, per la generazione dei suoni lo ZX Spectrum è dotato solo di un limitato buzzer, teoricamente in grado di generare esclusivamente segnali ad onda quadra. Grazie alla discreta velocità di calcolo del microprocessore questi limiti sono stati comunque spesso superati con accorgimenti software: tramite accurate temporizzazioni infatti i programmatori hanno sintetizzato svariati effetti sonori, brani polifonici e addirittura un minimo di sintesi vocale. Il segnale sonoro può inoltre essere riprodotto, amplificato e (seppure in bassa qualità) campionato sfruttando gli stessi connettori messi a disposizione per il registratore a cassette. Questa caratteristica, che potrebbe sembrare banale, è stata utilizzata per molte realizzazioni hardware a basso costo, tra le quali la penna ottica e un modem RTTY per radioamatori: l'essenzialità degli schemi elettrici, principalmente costituiti da circuti per l'amplificazione e l'adattamento dei segnali, veniva infatti compensata via software.I modelli prodotti da Amstrad montano un vero e proprio chip audio, quindi offrono un sonoro migliore di quello ottenibile con l'altoparlantino integrato nei modelli precedenti. Il chip era lo stesso degli Amstrad CPC ed un parente stretto di quello montato sull'Atari ST, la qualità era inferiore a quella del C64 ma era pur sempre un importante passo avanti rispetto al 48K ed al primo plus. Molti giochi hanno usato il chip senza rinunciare alla compatibilità coi modelli precedenti, anche se ovviamente questi ultimi non erano in grado di riprodurre i suoni e le musiche che richiedevano il chip.
Tastiera [modifica]
La tastiera ha 40 tasti con maiuscole e minuscole e tasto Caps Lock. Tutti i tasti hanno la ripetizione automatica. I primi modelli di Spectrum (Spectrum 16K e Spectrum 48K) hanno una tastiera gommosa piccola e piuttosto scomoda: per ridurre la fatica di digitazione durante la programmazione il produttore pensò quindi di associare ad ogni tasto due o tre comandi BASIC, richiamabili premendo semplicemente il tasto associato, eventualmente in combinazione coi tasti CAPS SHIFT e/o SYMBOL SHIFT: in tal modo, oltre a permettere una maggiore velocità di redazione del software, si eliminava la possibilità di lasciare errori di sintassi nei listati, il che contribuì alla divulgazione di questo semplice ma assai utile linguaggio di programmazione.Il set di caratteri comprende, oltre ai normali caratteri ASCII, 16 caratteri grafici, 22 codici colore e 21 caratteri grafici ridefinibili dall'utente.
Interfacce e periferiche [modifica]
La memoria di massa utilizzata da tutti i modelli di Spectrum è il registratore a cassette e tutto il software prodotto è disponibile su nastro. L'eccezione è il modello ZX Spectrum+3 che usa un floppy disk drive da 3” ma può caricare i programmi anche da nastro. Ove il registratore non sia integrato, l'interfaccia è realizzata tramite due connettori da 3,5 mm. Questo permetteva di utilizzare come dispositivo di memorizzazione di massa, a differenza del Commodore 64, che richiedeva un registratore dedicato, un qualsiasi registratore portatile. I dati vengono registrati a circa 1500 baud. Un tono guida viene registrato sul nastro prima di far partire i segnali relativi ai dati in modo da aggiustare le eventuali fluttuazioni di volume di alcuni registratori. I programmi iniziano con un header contenente informazioni relative al tipo, al titolo, alla lunghezza dei successivi dati. Programmi, blocchi di memoria, stringhe e matrici o schermate possono essere salvate separatamente e i primi tre tipi possono essere verificati dopo il salvataggio per confermare la corretta memorizzazione. Normalmente i programmi non si avviano da soli dopo il caricamento ma occorre lanciarli con RUN; il salvataggio però può avvenire anche in modo da impostare l'avvio automatico.Sulla porta di espansione, documentata accuratamente nei manuali a corredo, furono realizzate parecchie interfacce aggiuntive. La Kempston produsse interfacce per joystick e mouse; la Sandy produsse floppy drives da 400 e 800kb di capacità; Seikosha vendeva una stampante ad aghi a colori corredata di interfaccia parallela dedicata allo Spectrum e fornita di software di controllo per le funzionalità di hardcopy. Tra le tante stampanti utilizzate con lo Spectrum la Mannesmann Tally MT-80 ebbe una discreta diffusione, in quanto controllabile sia tramite porta parallela che (con apposita espansione interna), tramite porta seriale. La Sinclair stessa produsse una mini-stampante a carta termica (la ZX Printer).
Alcuni dispositivi esterni prodotti nel corso degli anni includono:
- ZX Interface 1: utilizzata per connettere fino a 8 ZX Microdrive, apposite unità a nastro di fabbricazione Sinclair, concettualmente simili alle cartucce Stereo8 (ma molto più piccole). Forniva anche una porta seriale RS232C e una rudimentale LAN per connettere fino a 63 Spectrum o QL fra loro. Nell'interfaccia era presente una ulteriore ROM da 8K in grado di estendere il BASIC Sinclair con i comandi di supporto alle nuove porte di espansione.
- Kempston Interface: Dotava lo Spectrum di 1 porta per joystick digitali. A differenza delle altre interfacce, non emulava la pressione di tasti del computer: lo stato del joystick era invece leggibile alla porta di I/O 31, anche da BASIC. Divenne lo standard de facto per collegare un joystick allo Spectrum.
- ZX Interface 2: prodotta direttamente dalla Sinclair, anch'essa dotava lo Spectrum di due entrate per joystick digitali, ma al contrario da quanto proposto dalla Kempston, i movimenti rilevati erano abbinati ai tasti numerici. Oltre agli ingressi per i joystick era presente anche una interfaccia per cartucce ROM, ma i titoli software pubblicati in ROM si contano sulle dita. È interessante notare che dopo l'acquisizione di Sinclair da parte di Amstrad (1986) lo Spectrum venne dotato di una interfaccia Joystick interna, incompatibile con i Joystick digitali standard, come il modello SISJ dell'Amstrad, e le interfacce precedenti.
Alcune caratteristiche del BASIC residente [modifica]
Per approfondire, vedi la voce Sinclair BASIC. |
Operazioni matematiche e funzioni [modifica]
- I numeri sono memorizzati in 5 byte in virgola mobile (4 di mantissa e 1 di esponente), con un range compreso tra ±2,9·10-39 e ±1,7·1038 e una precisione di 9,6 cifre decimali.
- Oltre alle quattro operazioni aritmetiche, sono disponibili: elevamento a potenza, seno, coseno, tangente, logaritmi naturali ed esponenziali, valore assoluto e intero, radice quadrata, pi greco e generatore di numeri casuali.
- I numeri binari possono essere usati direttamente nelle espressioni del BASIC grazie alla funzione BIN.
- L'utente può creare delle funzioni con il comando DEF FN, richiamabili con FN.
Operazioni logiche [modifica]
- Gli operatori “=”, “>”, “<”, “>=”, “<=” e “<>” possono essere impiegati per confrontare valori numerici o stringhe alfanumeriche.
- Sono disponibili anche le operazioni logiche AND, OR, NOT.
Operazioni sulle stringhe [modifica]
Le operazioni tra stringhe includono, oltre ai già detti confronti, la concatenazione, effettuabile con l'operatore “+”. Altre funzioni specifiche riguardanti le stringhe sono VAL (conversione da stringa a numero), VAL$, STR$ (conversione da numero a stringa) e LEN. Infine, le funzioni CHR$ e CODE convertono codici ASCII in caratteri e viceversa.Altre caratteristiche [modifica]
- Mediante le istruzioni READ e RESTORE è possibile leggere dati statici memorizzati nel programma per mezzo dell'istruzione DATA.
- Non c'è orologio in tempo reale che però è ottenibile tramite programmazione.
Nomi delle variabili [modifica]
- Le variabili numeriche ammettono nomi alfanumerici inizianti per lettera. Il BASIC non distingue tra maiuscole e minuscole, e gli spazi sono ignorati.
- Le variabili e le matrici di tipo stringa ammettono nomi di una lettera seguita dal simbolo “$”
- Le variabili di controllo dei cicli FOR-NEXT e le matrici numeriche ammettono infine nomi di una lettera singola.
Compatibilità con lo ZX81 [modifica]
Il BASIC dello ZX81 (derivato a sua volta da quello dello ZX80) è essenzialmente un sottoinsieme di quello dello Spectrum; conseguentemente i listati per ZX81 possono essere digitati sullo Spectrum con pochissimi cambiamenti. I programmi su cassetta per ZX81 invece non sono direttamente leggibili dal BASIC residente del fratello maggiore.Software [modifica]
La dotazione iniziale comprendeva software per l'archiviazione, foglio elettronico, (Vu-File, Vu-Calc, Vu-3D, etc) e BASIC. Grazie alla successiva diffusione dello ZX Spectrum e del Commodore 64, iniziò anche la prassi di distribuire nelle edicole riviste con in allegato i programmi già pronti all'uso, spesso frutto dell'ingegno dei lettori: furono molte numerose le editorie che sfornarono riviste per i principali concorrenti del mercato dell'home computer. tra queste, in Italia, ricordiamo la redazione di "RUN", la prima rivista su cassetta per spectrum e la S.I.P.E srl, la più diffusa e conosciuta tra tutte le redazioni che vantava riviste come "SPECIAL PROGRAM" e "SPECIAL PLAYGAMES".I programmi erano infatti forniti quasi esclusivamente sotto forma di listato cartaceo da copiare a mano oppure registrati su musicassette e in questo caso potevano essere trasferiti utilizzando un comune lettore di musicassette, purché dotato di prese per microfono e cuffie. Questa caratteristica costituiva contemporaneamente il più grande limite del sistema e il miglior incentivo economico: infatti il computer poteva essere utilizzato anche senza il corredo di costose periferiche, ma la velocità di trasferimento proposta di circa 1500 baud, si traduceva in tempi di attesa che, nel caso di programmi particolarmente lunghi, raggiungevano i 5 minuti. Inoltre l'utilizzo di registratori e cassette di qualità scadente comportava fastidiosi problemi di affidabilità nel tempo e con un uso intenso.
Il problema affliggeva soprattutto altri microcomputer dell'epoca: il Commodore 64 ad esempio proponeva una velocità di trasferimento su cassetta di soli 300 baud, richiedendo perciò tempi fino a cinque volte superiori a quelli dello Spectrum; la situazione spinse le "software house" a sviluppare degli acceleratori software chiamati turbo tape, che nella seconda metà degli anni ottanta ebbero successo su entrambe le piattaforme. Certamente lo Spectrum raggiunse con l'implementazione del turbo velocita' molto notevoli, a volte a scapito dell'affidabilita', arrivando addirittura a superare la velocita' di caricamento della periferica a dischetti del concorrente Commodore 64.
Versioni [modifica]
Lo ZX Spectrum 16/48 kB è stato prodotto in numerose versioni. Dalla rarissima "Issue One" del 1982 fino all'ultima evoluzione del 1984 con la "Issue 6A".- Issue 1 - 1982 - Prima versione con circuito stampato disegnato a mano con 16 kB di memoria e possibilità di espansione a 48 kB con modulo interno montato su un piccolo circuito separato ed installato sul lato inferiore della scheda madre (soluzione proposta dalla Sinclair) oppure con espansione esterna in stile ZX80/81 (soluzione proposta da terze parti). A causa di un bug nel chip ULA 5C102E, le Issue 1 montano una piccola scheda aggiuntiva, detta "ragno" o "scarafaggio morto" (dead cockroach) perché collegata alla scheda madre in maniera poco ortodossa con un circuito 74TL(X) posizionato a rovescio che serve come timing per evitare i conflitti di accesso alla memoria fra CPU e ULA.[5] Questa versione montava una tastiera in gomma di colore grigio chiaro, che a partire dalla Issue 2 venne sostituita con una di color blu-grigio, per migliorarne la leggibilità con la luce artificiale.[6]
- Issue 2 - 1982 - Design simile alla precedente versione ma ora con la possibilità di alloggiare tutti i 48 Kbyte di RAM sulla scheda. Con questa versione viene anche di fatto stabilito che lo Spectrum di serie è quello con 48 kB di memoria, scelta decretata dal successo di vendite della precedente Issue 1 con tale quantitativo di RAM. Nuova ULA 5C112E-3 che non necessita del circuito di correzione aggiuntivo.[6] La "Issue 2" è la prima ad essere disegnata con programma CAD.
- Issue 3 - 1983 - In questa versione ritroviamo numerose modifiche: nuovo circuito di alimentazione, dissipatore di calore spostato vicino allo slot di espansione, nuovo chip ULA 6C001E-6 a basso consumo, eliminati i potenziometri per la regolazione dei colori, buzzer più "rumoroso" e varie altre modifiche. Tecnicamente va segnalata una piccola incompatibilità che nasce dal una correzione introdotta sulla porta MIC (ingresso dal registratore) per ridurre il consumo di corrente. Mentre precedenti modelli Issue 1 e 2 in assenza di segnale dal registratore il valore del bit corrispondente era fissato al valore '1', a partire dalla Issue 3 questo variava continuamente, specialmente quando la ULA non si era ancora riscaldata. Siccome la ULA unisce sulla stessa porta i bit in ingresso dalla tastiera e quello della porta MIC, i programmi scritti in modo poco preciso confrontando il valore dell'intero byte non funzionavano più correttamente.[6]
- Issue 3B - 1983 - Molto simile alla Issue 3, differisce solo per alcuni componenti secondari. La prima ad essere usata negli ZX Spectrum +
- Issue 4A e 4B - 1983 - A parte l'ulteriore evoluzione del chip ULA, qui in versione 6C001E-7, sono virtualmente identiche alla Issue 3B. La Issue 4A è l'ultima prodotta anche con 16 kB espandibili. A partire dalla Issue 4B, 48 kB di serie.
- Issue 5 - 1983 - Completamente ridisegnata la sezione decoder/multiplexer. Sei chip (IC3, IC4, IC23, IC24, IC25 and IC26) vengono rimpiazzati da un unico chip, il Mullard ULA type ZX8401, consentendo una riduzione dei costi. Viene aggiunto anche un altro chip (IC28), un inverter esadecimale 74LS04, per far funzionare lo ZX8401.[6] Insieme alla Issue 1 e 2 è molto rara.
- Issue 6A - 1984 - Versione finale dello Spectrum 48kB. Solo piccole differenze rispetto alla versione precedente. Su alcune schede troviamo il chip ULA fornito da Saga invece che da Ferranti.[6]
Nessun commento:
Posta un commento