La Volpe e il Professore

A scuola la chiamavamo “la valigetta dello Z-80”

Una sera dei primi di Marzo del 2020 gironzolavo su eBay, come spesso faccio, alla ricerca di qualche cimelio informatico degli anni ’70 e ’80. Talvolta si riesce a scovare un pezzo interessante da riparare, restaurare e far entrare a pieno titolo nella propria collezione di “retro-cosi” (un retro-coso, scherzosamente, è quello che oggi viene definito un retro-computer, ossia un computer vintage con almeno 30 anni di vita).

Beh, quella sera, saltando da un annuncio all’altro, a un certo punto mi apparve lei… ed è stata folgorazione.

Non la vedevo dai primi anni ’90… quando ero uno sbarbato studente del Tecnico Industriale di Viterbo.

Lei, la “The FoxMT-80Z della E&L Instruments (ma noi la chiamavamo solo “la valigetta dello Z80”), è stata la mia musa ispiratrice… il sistema di training che, all’età di diciotto anni, mi ha fatto innamorare della programmazione a basso livello.

Il cuore pulsante è lo Zilog Z80: è un microprocessore leggendario, progettato da Federico Faggin a metà degli anni ’70 dopo la sua fuoriuscita da Intel, è l’evoluzione del 8080 ed è stato impiegato su molte macchine che hanno profondamente segnato la storia dell’informatica a 8 bit; oggi lo Z80 è ancora prodotto e utilizzato, ma questa è un’altra storia. “La valigetta dello Z80”, così come gli altri trainer di questa tipologia, porta il programmatore a un livello di interazione con la macchina veramente profondo e questo ci dà l’opportunità di comprendere alcuni concetti che solitamente, oggi, rimangono teorici e astratti. Vediamo il perché.

L’hardware è esposto e disponibile

Letteralmente è tutto a vista. A differenza di un normale computer, qui le sezioni sono facilmente identificabili attraverso una chiara serigrafia e i componenti sono ben visibili e raggiungibili. Se hai competenze elettroniche puoi comodamente verificare i segnali con un analizzatore di stati logici, un oscilloscopio, ecc. E’ possibile inoltre sostituire le ROM e ampliare fisicamente la RAM. Interessantissima è anche la disponibilità di un’area su breadboard ove sono riportati i segnali di bus (socket) e dove è possibile assemblare un circuito personale per poi integrarlo con il sistema.

La programmazione è a basso livello

Il programmatore è chiamato a inserire il programma in memoria direttamente in linguaggio macchina. L’interazione avviene attraverso la tastiera e il piccolo display esadecimale. Puoi lanciare il programma oppure eseguire una istruzione alla volta e man mano verificare il contenuto della RAM e dei registri. Questo meccanismo ti permette di vedere da vicino la rappresentazione dei dati e delle istruzioni in memoria e cosa il microprocessore è in grado di leggere e di eseguire.

Come è fatto?

Della “volpe” esistono diverse versioni, cronologicamente successive.

La prima, quella più datata, si componeva essenzialmente di tre parti: la valigetta in plastica e due schede.

Un The Fox MT-80Z del Vintage Computer Museum

La valigetta in plastica, la parte meno nobile della volpe, resterà più o meno invariata in tutte le release: questa è fatta per ospitare il microcomputer e i manuali e poter riporre il tutto in modo ordinato e sicuro una volta chiusa. E’ possibile separare i due semi-gusci e rendere pratico l’utilizzo della metà che contiene l’elettronica (che comunque rimane saldamente fissata con delle viti alla sua metà di valigetta).

Come dicevamo, l’hardware è composto da due schede collegate tra loro; una delle due (quella “core”, tratteggiata in giallo) è in realtà il microcomputer Microprofessor MPF-1, un sistema didattico (da qua il  curioso nome) prodotto dalla Multitech. Sulla MPF-1 risiede il socket della CPU originaria della scheda, la RAM, la ROM, il chip PIO (parallel input output), un display a 6 caratteri, la tastiera , uno speaker, i connettori per il registratore dati a cassette e la circuiteria di controllo. Sulla scheda è presente una piccola area “millefori” destinata alla espansione/prototipazione.  E’ una scheda autoconsistente e può operare in autonomia senza essere necessariamente integrata con altro hardware. Ad ogni modo E&L ha sviluppato una scheda di espansione da interconnettere alla MPF-1: questa era denominata Fox Expansion BD (nella foto è tratteggiata in viola). Il suo compito è quello di fornire una serie di facilitazioni per lo studente e rendere più pratica la sperimentazione elettronica con il trainer.

Una MT-80Z prima versione. In giallo la MPF-1 e in viola la Fox Expansion BD

Sulla scheda di espansione troviamo:

  • una sezione CPU ospitante il microprocessore Z80;
  • una sezione di alimentazione, quella di logica di controllo e bus buffering;
  • la breadboad per la circuiteria utente con i riporti dei segnali;
  • lo STD (standard) Bus Connector;
  • due dip switch per l’input (a scelta, verso il micro o verso la breadboard);
  • i Logic indicators, ossia due file di 8 led di output da utilizzare a piacimento per monitoring del bus, latch degli Out dal microprocessore o per il monitoraggio della logica;
  • la sezione single cycle che fornisce una modalità aggiuntiva (rispetto a quelle native fornite dalla MPF-1) con cui l’operatore può scandire manualmente un ciclo di clock alla volta (l’esecuzione di una istruzione richiede almeno 4 cicli di clock).

Per necessità di progetto del sistema il microprocessore veniva rimosso dalla MPF-1 (U1) e montato sullo zoccolo U5 della Expansion BD.

Nella ROM originaria della Microprofessor MPF-1 è presente un programma, detto system monitor, il cui compito è fornire al programmatore/utente un’interfaccia primitiva con la macchina.

Il monitor, che in ROM occupa circa 2K Bytes, intercetta e gestisce gli input provenienti dai 36 pulsanti della tastiera integrata, elabora la richiesta e fornisce gli output sul piccolo display costituito da 6 elementi a sette segmenti. Sotto il controllo del monitor è possibile, ad esempio, visualizzare il contenuto di ciascuna locazione di memoria (ROM e RAM), modificare quello della RAM, mostrare il valore dei registi, impostare il Program Counter e lanciare l’esecuzione del programma oppure eseguire step-by-step ciascuna istruzione. Il monitor permette inoltre di caricare in RAM un programma salvato su una cassetta, oppure effettuare l’operazione inversa. Le routine che costituiscono il monitor (ad esempio le stesse routine di gestione della tastiera e del display) possono essere invocate da un nostro programma. La E&L mantenne il system monitor originario della MPF-1 anche per la The Fox.

Più tardi venne prodotta una versione re-ingegnerizzata a singola scheda della The Fox: la circuiteria della Microprofessor venne “inglobata” a formare un tutt’uno con quella della Expansion BD.

Una MT-80Z a scheda singola

Si può notare come il layout generale sia rimasto pressoché invariato. L’area che era propria della MPF-1 ha subito qualche piccolo re-design: eliminazione dello zoccolo per U1 (lo Z80), dello stabilizzatore 7805 per la +5V e dell’area di prototipazione (queste aree sono evidenziate in rosso).

Le aree evidenziate in giallo, invece, erano già state oggetto di revisione, da parte della stessa Multitech, sulla scheda MPF-1 .  Di seguito un confronto tra quanto illustrato nei manuali delle due versioni della Microprofessor.

Differenze tra due versioni di MPF-1 (dai rispettivi manuali)

In tempi successivi la E&L ha ulteriormente rivisitato il trainer e ha prodotto il The Fox II (MT-80AZ), le cui caratteristiche principali sono rimaste pressoché immutate rispetto al predecessore.

Una Fox II (MT-80AZ)

Quello che trovo assolutamente interessante, a livello didattico, di questa tipologia di sistemi di training (ne esistono per diversi processori, incluso l’Intel 8086) è che con essi puoi capire, realmente e praticamente, qual è la filosofia di funzionamento e l’architettura di un calcolatore elettronico basato su micro ed è ragguardevole la possibilità di sperimentare facilmente soluzioni hardware e software a basso livello.

Per iniziare puoi scrivere un programma in assembly, darlo in pasto a un compilatore e poi caricarlo a mano, byte dopo byte, sulla Microprofessor. L’esecuzione passo-passo ti consentirà di ispezionare il contenuto della RAM e dei registri e valutare la bontà del tuo codice.

Se vuoi capire come funziona un assemblatore ti suggerisco di scendere ancora a più basso livello e scrivere un programma su un foglio di carta, prendere lo user manual dello Z80, codificare a mano il tuo sorgente in istruzioni macchina, calcolare man mano gli indirizzi e poi, finalmente, mettere in RAM il codice oggetto che hai elaborato: è decisamente la fisica delle particelle del programmatore e probabilmente si rivelerà illuminante. Capirai anche quanto questa attività possa essere lunga, tediosa e potenzialmente fonte di errori: motivo per cui nasce l’esigenza di un assemblatore automatico, l’assembler appunto.

Se, invece, vuoi approfondire le tematiche dello sviluppo hardware puoi benissimo collegare un tuo dispositivo al sistema e verificarne il funzionamento: è tutto lì, a portata di mano.

Beh, ora dovresti avere le idee un po’ più chiare di cosa sia il The Fox e del perché me ne sia innamorato.

Tornando alle ricerche di quella sera di marzo del 2020 ho dovuto buttare giù un boccone amaro: purtroppo non sono riuscito ad aggiudicarmi l’asta sulla “baia”.

Siamo giunti quindi all’epilogo ma, come in ogni favola, anche qua c’è un lieto fine: cercando qua e là sono riuscito a trovare in Austalia una Microprofessor MPF-1; eravamo in pieno lockdown per il Covid-19 e il pacco ha impiegato ben un mese e mezzo per giungere a casa mia… ma alla fine la scheda è arrivata!

La mia Microprofessor MPF-1

Curiosità:

Multitech presentò il Microprofessor MPF-1 nel 1981; nel 1987 Multitech cambiò nome in Acer, quella stessa azienda che nel 2009 divenne il secondo produttore di computer al mondo.

Il Microprofessor veniva distribuito con una custodia in plastica che, chiusa, aveva le fattezze di un libro.

Flite Electronics International Limited, una distributrice dei prodotti Acer, ha acquistato nel 1993 i progetti e i diritti del Microprofessor MPF-1 e continua a venderlo col nome Microprofessor MPF-1B Z80 Training System.

Un ringraziamento speciale al Vintage Computer Museum (proprietario della Fox ritratta sulla foto di copertina e sulla foto col manuale, qua il link alla pagina facebook) per il supporto che ha dato mettendo a disposizione le fotografie della bellissima macchina che conserva.

4 thoughts on “La Volpe e il Professore

    1. Quando un oggetto diventa “da collezione” il prezzo può essere molto variabile… ogni compravendita fa storia a sé. Nell’ultimo anno ho visto, sulla “baia”, aste della “valigetta” chiudersi intorno ai 250-300 euro (cui aggiungere spese di spedizione ed eventuali spese doganali)

  1. You actually make it seem so easy with your presentation but I
    find this matter to be really something that
    I think I would never understand. It seems too complicated and extremely broad
    for me. I am looking forward for your next post, I’ll try to get the
    hang of it!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *