.

Già, cosa si poteva fare con il Sinclair ZX81?

Come premessa è necessario dire che lo ZX81 è figlio di una serie di “calcolatori” progettati sul finire degli anni '70, con lo scopo fondamentalmente di alleviare l’uomo dalla fatica del calcolo matematico. Il principale compito di queste macchine era quindi quello di eseguire tutti quei calcoli complessi necessari in ambito civile/industriale, scientifico e militare: per fare qualche esempio, basti pensare all’enorme necessità di calcolo complesso che viene (e veniva) quotidianamente chiesto per fare le previsioni del tempo, o le proiezioni statistiche degli andamenti di Borsa, o per far andare Niel Armstrong e Buzz Aldrin sulla Luna (era il 1969..). 

Quindi ciò che ci si aspettava principalmente da un computer dell'epoca è che facesse calcoli e restituisse a video solo cifre e lettere; si era ancora ben lontani dall’immaginare l’utilizzo di tali macchine per applicativi grafici a scopo professionale (gli archiretti e i disegnatori industriali erano in grado di produrre disegni di qualità enormemente superiore a quella di qualsiasi computer) e tantomeno per scopi ludici, per quello c’erano i video giochi e i flipper..
Ma come abbiamo già scritto nella breve descrizione tecnica dello ZX81, fu la possibilità di eseguire programmi di grafica animata che determinarono l’incredibile diffusione anche per uso amatoriale/ludico di questi "calcolatori domestici", un po’ come ai giorni nostri, quindi le capacità di elaborazione grafica dello ZX81 furono quelle maggiormente sfruttate.

Lo ZX81 produceva immagini in B/N a 20 caratteri grafici e 54 caratteri negativi Video su uscita  RF (TV, UHF CH 36), nella quale si visualizzavano 24 linee di 32 caratteri, cioè 64x44 pixel.

Ovviamente con questa grafica non si può pensare di visualizzare immagini (appunto) ad alta risoluzione, cosa che fu possibile con una qualità accettabile solo quando i personal computer poterono offrire grafiche VGA (dall'inglese: Video Graphics Array – standard analogico relativo a display per computer introdotto sul mercato dall’IBM nel 1987), che necessitavano di 256 KB di RAM video, un clock principale selezionabile fra 25 MHz o 28 MHz (il buon microprocessore ZiLOG Z80 arrivava a 3,5 MHz..) e offrivano una risoluzione di ben 640x480 pixel (a 16 colori), cioè circa 10 volte superiore a quella del nostro ZX81.

Riporto di seguito, solo per pura curiosità, l’immagine di Sir Clive Marles Sinclair alla presenzazione dello ZX81, apparsa verso la fine del 1980 sui giornali dell’epoca (foto superiore, in toni di grigio) alla risoluzione di 450x330 pixel, cioè con larghezza pari a cm 11,90 e altezza pari a cm 8,80, e la stessa immagine riprodotta con le medesime dimensioni fisiche ma a due colori (bianco e nero) e a risoluzione 64x44 pixel (foto sotto).

La grafica dello ZX81
 

Quindi, la grafica dello ZX81 è da intendersi come il risultato di tutte le possibili combinazioni del suo set di caratteri (di seguito riportato) in “movimento” sullo schermo. Mi rendo conto che alla luce delle risoluzioni grafiche odierne, alle quali siamo oramai assuefatti, tale modalità può sembrare una cosa ‘che non funziona’ affatto, e invece non è così.
I programmatori dell’epoca (è un po’ presto per usare le parole “progettisti SW”), seppero sfruttare al massimo tale limitata possibilità, visto che era l’unica possibile, creando combinazioni di caratteri in movimento che davano l’illusione di scenari ben definiti, sia in ambito di video gioco, sia per nell’uso ‘grafico’ professionale.

Il set di caratteri dello ZX81

Per restare nell'ambito "grafica a buon fine", riporto di seguito due immagini di giochi 'famosi' (versione ZX81) dove si possono notare i due  livelli di programmazione grafica possibili con questo computer, dal livello 'amatoriale' di "Space Invaders", ottenuta mediante l'utilizzo delle sole istruzioni Basic presenti in ROM, fino al livello percepibile nell'immagine di "Star Wars", dove sono state impiagate istruzioni imputate direttamente in linguaggio macchina, con un livello di difficoltà sicuramente maggiore per il programmatore, che non poteva contare su programmi ausiliari per la gestione del listato in linguaggio macchina, ma con risultati decisamente migliori.  

La grafica "migliore" dello ZX81, quella dei giochi!

E le applicazioni  pratiche? Come venne impiegato lo ZX81 per le "cose serie"?

Potendo finalmente disporre di un computer a basso costo furono molti i professionisti e le Società medie e piccole che si dotarono dello ZX81 con l'intento di utilizzarlo per facilitare il loro lavoro, ma si trovarono da subito a fere i conti con un problema serio: non c'era software disponibile per impieghi professionali.

Per il software (all'epoca si chiamavamo "programmi") a scopo ludico/amatoriale c’erano tantissime pubblicazioni, tra le quali ne ricordo molte del Gruppo Editoriale Jackson (mi sento di citare la mitica “Guida al Sinclair ZX81, Z80 e nuova ROM” della prof.ssa Rita Bonelli – Gennaio 1982) che guidavano il novello ‘programmatore’ passo dopo passo, dai rudimenti della computazione sino alle basi dell’allora programmazione avanzata mediante il linguaggio Basic e il linguaggio macchina, ma fornivano al massimo degli esempi di programmi da utilizzare a corredo delle nozioni base per avventurarsi nella programmazione dello ZX81. Mentre il software  prodotto per impieghi professionali era solo quello commissionato da privati o Enti sempre per impieghi specifici, come il comando e controllo di periferiche HW o per il calcolo complesso in precisi ambiti, quindi niente di nemmeno lontanamente simile al “nostro” caro Word, Excel, Power Point, etc..
Certo, c'erano anche delle pubblicazioni specifiche per le applicazioni professionali (come la copertina di seguito riportata), ma il  software in ogni caso  bisognava quasi sempre personalizzarselo da soli, mettendo mano al listato in basic, con tutti i limiti (e qui parlo di tempo) e i rischi (e qui di soldi) del caso.

Real Appplications for Sinclair ZX81

Il Word Processor per ZX81, ad esempio, un programma  che richiedeva l'espansione di memoria a 16Kb, dava la possibilità di memorizzare, cioè di salvare e ricaricare da nastro (insieme al programma) al massimo 11.000 caratteri, in pratica 2 pagine e 1/2 di testo scritto con il moderno Microsoft® Office Word 2003. Quindi per testi più lunghi si doveva necessariamente, man man che si scriveva, stampare con la stampantina elettrostatica, che utilizzava una carta speciale rivestita da un sottile film di alluminio, e archiviare in formato cartaceo parte del testo.  Sicuramente le macchine da scrivere meccaniche, elettromeccaniche ed elettroniche dell'epoca  erano decisamente più indicate per la stesura dei testi..

Ma dove lo ZX81 si distinse veramente, sempre in tema di real applications, fu l'interfacciamento HW.
Il microprocessore che equipaggiava lo ZX81, lo ZiLOG Z80
poteva indirizzare (leggasi "comandare") in I/O sul BUS situato nella parte posteriore del computer sino a 8 bit, e questo voleva dire in pratica controllare via software l’apertura e la chiusura in ingresso ed in uscita dal PC di un numero di contatti elettrici (per convenzione un contatto elettrico chiuso viene interpretato come uno ZERO logico, mentre un conttatto aperto o non chiuso, come un UNO logico) pari a quasi tutte le possibili combinazioni di cifra di 8 bit, cioè ben 256; per l’epoca una vera 'rivoluzione'!

Certo, al giorno d’oggi, dove i nostri potenti PC possono comandare con semplicità ogni tipo di periferica HW sia via cavo che via radio (wireless), questa caratteristica dello ZX81 potrebbe sembrare insignificante, ma bisogna tenere in considerazione che molti sistemi industriali di quei tempi impiegavano risorse nettamente inferiori a quelle offerte dallo ZX81, e soprattutto non avevano la grande possibilità di essere programmabili in tempo reale.
Questa possibilità tecnica di comandare l'HW da computer via SW e in tempo reale
solleticò molto l'inventiva dei progettisti dell'epoca, che non tardarono a far arrivare sul mercato le prime interfaccie I/O di comando e controllo, come la famosa "8ES".
Tale interfaccia si connetteva al BUS posteriore dello ZX81 per il comando e controllo logico delle connessioni ingresso/uscita, elettricamente separate dal computer e alimentate in modo autonomo fino ad un massimo di 30 volt / 2 ampere (60 w) totali,
sufficienti per comandare, relè, luci, piccoli motori elettrici, elettrovalvole, etc..
Ricordo di aver visto di recente in un'asta ebay un sistema robotizzato, composto da una specie di "braccio elettro-meccanico" comandabile dallo ZX81 mediante un opportuno SW e una scheda I/O tipo la "8ES", utilizzato all'epoca in un laboratorio grafico per incidere disegni su fogli di rame o alluminio..

Poi ci fu anche chi utilizzò lo ZX81 per fini "amatoriali" con un livello tecnico decisamente confrontabile con le applicazioni professionali dell'epoca, come i radioamatori.
Riporto di seguito uno stralcio di un progetto pubblicato sul numero 10/1983 della rivista Elettronica 2000 (anche questa passata "a miglior vita"..), che consisteva in un'interfaccia HW (+ SW) per codificare e decodificare i segnali RTTY, in pratica il segnale della Telescrivente via radio, cioè il
Baudot  FSK (Frequency Shift Keyng, ovvero manipolazione a spostamneto o variazione di frequenza) e il codice MORSE.

Codificatore/decodificatore segnali RTTY e MORSE per ZX81

Mi immagino l’emozione che possono aver provato quei radioamatori che hanno realizzato questa interfaccia, quando ascoltando in cuffia il “beep, beep” del MORSE, quasi contemporaneamente cominciarono a veder comparire sul video le lettere e i numeri che componevano il messaggio del loro interlocutore lontano. 

Sicuramente sarà loro sembrato chiaro che una nuova era stava iniziando..



Torna alla Home Page