Amarcord: Texas Instruments TI-58
Negli anni '70 andavano 'di moda' le calcolatrici programmabili. La TI-58 insieme alla più completa TI-59 sono state due pietre miliari.
Se spesso, ma soprattutto volentieri, in queste pagine mi diletto a tornare indietro di 30 anni, commentando alcuni numeri di MC, qui il salto a ritroso è ancora maggiore e, maggiormente, mi riguarda a titolo personale.
Correva l'anno 1979 e quello che potete (forse) ammirare qui sopra è stato lo strumento con il quale ho mosso i primi passi (di programma...) nel mondo informatico, in terza liceo scientifico. Non si tratta, ahimè, dell'esemplare da me realmente posseduto a quei tempi, ma di un dispositivo identico acquistato solo pochi giorni fa su eBay. Si tratta della Texas Instruments TI-58 e l'ho pagata 60 euro, cifra che ricorda contabilmente le 125.000 lire - che naturalmente erano all'epoca molto di più - spese a suo tempo per l'acquisto di quel gioiello tecnologico.
Se non ho perso il conto, era già la seconda generazione di calcolatrici programmabili Texas, e arrivò assieme alla sua sorella maggiore TI-59 che possedeva il doppio di memoria e, soprattutto, integrava un'unità integrata per lettura e scrittura di dati e programmi su schede magnetiche. La TI-58 no, costava molto meno ed era per i poveri... :-)))
Non disponeva nemmeno di memoria continua. Se spegnavamo la calcolatrice tutti i dati e i programmi si cancellavano e... non essendo presente alcuna interfaccia per l'esterno (eccezion fatta per la stampante opzionale) ogni volta (ripeto OGNI VOLTA!!!) bisognava ri-digitare da zero i programmi eventualmente da utilizzare nell'immediato. Disponibili, ovvero, fino al prossimo spegnimento! Cose da far rabbrividire al solo pensiero. Eppure al quei tempi eravamo (io lo ero certamente!) felici con poco.
Molto poco... :-)
A quei tempi non solo non c'erano i giga, i mega, i Kbyte ma non si parlava ancora nemmeno dei byte nudi e crudi. La capienza delle calcolatrici programmabili si misurava in passi di programma e, al più, in numero di memorie in cui depositare valori numerici (prima, durante e dopo i calcoli). Spesso, come avveniva nel caso della TI-58, le due quantità erano vincolate l'una all'altra, così se utilizzavano tutte le memorie numeriche ci rimaneva poco o nulla per i programmi e viceversa.
Un passo di programma poteva essere assimilato a un byte (ma nessuno lo dichiarava apertamente) pertanto potremmo dire che la TI-58 poteva contare su ben mezzo Kbyte di memoria RAM. Come dicevo prima questa era volatilissima tant'è che un paio d'anni dopo uscì una versione pietosa (pietà per gli utenti...) dotata di memoria continua e denominata non a caso TI-58C.
Grossa novità per l'epoca - sempreché la memoria, mia, non mi inganni - era l'utilizzo di librerie di programmi a stato solido ovvero presenti all'interno di appositi moduli intercambiabili basati su piccole memorie ROM formato zuccherino :-)))
Un modulo di base era fornito a corredo e conteneva routine matematiche, finanziarie, statistiche e di interesse generale, compreso un semplice gioco. Altri moduli potevano essere acquistati a parte e riguardavano campi specifici: dalla statistica applicata agli investimenti su immobili, dalla topografica alla navigazione marittima e aerea. Ve l'immaginate un pilota d'aereo che prima di atterrare sfodera una macchinetta del genere per verificare che i parametri di discesa fossero giusti o sbagliati??? Io no... :-)
Comunque, il vero e proprio salto nell'iperspazio (ipertecnologico) si faceva collegando la TI-58/58C/59 alla stampantina termica PC-100A, con la quale le calcolatrici programmabili in questione guadagnavano addirittura il dono della parola.
Eh già, non ci dimentichiamo che la TI-58, così come la sua sorella maggiore TI-59, disponeva solo di un display a led rossi a sette segmenti che, in quanto tale, non poteva visualizzare null'altro che puri e semplici numeri, così come altrettanto strettamente numerici potevano essere gli input da tastiera.
Con la stampante era tutta un'altra musica. I valori in input potevano essere richiesti per iscritto (INSERIRE ALTITUDINE) così come i risultati dei calcoli potevano, finalmente, essere accompagnati da descrizione e/o esito (STATE PRECIPITANDO... :-))) Poi con molta, molta, fantasia si poteva finanche abbozzare una sorta di grafica basata su un flusso di asterischi da stampare, come visibile nell'esempio dell'epoca qui sopra, che ne evidenza le spiccate doti grafiche.
Per non parlare, e concludo, della possibilità di stampare i listati dei programmi che, tramite questa, apparivano finalmente con i codici mnemonici dei comandi e non come una brutale sequenza di numeri listandoli sul display. Che tempi...!!!
Ma che ha fatto, l'ha aperta?!? :-)))
Mannaggiammè!!! Non ho resistito alla tentazione (tentazione, peraltro, che mai mi sarebbe venuta 35 anni fa!) e ho tolto le due uniche viti presenti sul fondo per vedere finalmente come era fatta dentro. Praticamente mi è esplosa tra le mani, con i tastini schizzati da tutte le parti, che si tenevano con la sola pressione del coperchio superiore.
Ho la vaga sensazione che se avessi aperto una HP dello stesso periodo tutto ciò non sarebbe successo... ma queste, lo sa bene chi c'era, costavano molto, molto, di più.
Comunque, a parte il malore iniziale (che ho avuto), riassemblarla non è stato infinitamente difficile. Ho riposizionato a mano i tasti nella metà superiore del coperchio (ovviamente a testa in su), riposizionato gli incastri e riavvitato le viti. Incredibile, ri-funziona... come prima, più di prima!
A parte questo, a guardarla dentro ci si rende conto di quante eternità sono passate dai quei giorni ad oggi. Il circuito stampato sembra quello di un frullatore, ma (inaspettatamente) i componenti elettronici presenti sono davvero pochi, segno questo di un buon livello di integrazione... ovviamente per l'epoca!
C'è molto spazio vuoto all'interno della TI-58, ma questo era dovuto al fatto che lo chassis è lo stesso di quello utilizzato per la TI-59 che incorporava, non dimentichiamolo, l'unità a schede magnetiche che la collocava su ben altro livello.
Fattoriale! :-)))
Quello che potete ammirare (?) è un programma per il calcolo del fattoriale scritto questo pomeriggio per vedere se ancora me la cavavo con l'attrezzo in questione. Devo dire che all'inizio mi sentivo perso, a momenti non riuscivo nemmeno ad accenderla, figuriamoci a scrivere qualche riga di codice per verificare se - a distanza di 35 anni - mi desse ancora ascolto o meno. Ho dovuto scaricare un po' di documentazione da Internet, compreso l'Owner's Manual originale che, purtroppo, non era compreso nell'oggetto in vendita su eBay.
Tornando al listatino qui a lato, si tratta in tutto di 22 passi di programma e sono utilizzate due sole memorie numeriche: la 00 e la 01. Nella prima viene memorizzato il dato in input, il numero di cui calcolare il fattoriale, nella seconda viene calcolato quest'ultimo, come prodotto di valori decrescenti.
Quindi, ipotizzando di calcolare il fattoriale di 5 questo valore viene memorizzato inizialmente nella memoria 00. Nella memoria 01 viene caricato d'ufficio il valore (costante) 1 e si procede di moltiplicazioni successive diminuendo di un'unità la memoria 00 fino a quando questa non raggiunge il valore 1. Quindi, nell'esempio in questione, 5x4x3x2x1=120 che è il valore cercato.
Il tutto (fattoriale di 5) in circa 3 secondi di calcolo, situazione che precipita vertiginosamente con valori superiori. Per calcolare ad esempio il fattoriale di 50 ci vogliono ben 23 secondi. Ma a quei tempi questo non era certo un problema!