Negli anni Ottanta, IBM distribuì il codice sorgente del BIOS del PCjr in forma stampata su carta, una pratica comune all’epoca che nessuno immaginava potesse diventare, decenni dopo, il punto di partenza per un progetto di recupero storico.
Un gruppo di appassionati di retrocomputing ha preso quelle pagine, le ha digitalizzate manualmente e ha ricostruito un BIOS funzionante utilizzando strumenti di sviluppo moderni. Il risultato è qualcosa che sta a metà tra l’archeologia informatica e l’ingegneria del software.
Dalla carta al codice eseguibile: il processo di ricostruzione
Il punto di partenza è stato il materiale cartaceo originale, che ha richiesto una trascrizione manuale precisa prima di poter essere trattato come codice. Anche un singolo carattere errato in assembly può compromettere il funzionamento dell’intero sistema, quindi questa fase ha richiesto attenzione e, in molti casi, una comprensione approfondita di ciò che il codice era destinato a fare, non solo di come appariva sulla pagina.
Una volta digitalizzato, il sorgente è stato adattato per essere compilato con assembler contemporanei, strumenti che non esistevano quando quel codice fu scritto originariamente. Il processo ha richiesto la correzione di incongruenze tipografiche, l’interpretazione di sezioni ambigue o parzialmente illeggibili e la risoluzione di dipendenze legate all’hardware specifico del PCjr, un sistema con caratteristiche proprietarie che lo distinguevano dal PC IBM standard.
Il BIOS ricostruito gestisce operazioni fondamentali come l’inizializzazione dell’hardware, la gestione dell’input e dell’output e il caricamento del sistema operativo, funzioni identiche a quelle dell’originale ma ora compilabili e testabili su emulatori moderni.
Perché questo progetto conta al di là dell’esercizio tecnico
Il PCjr fu un insuccesso commerciale al momento del lancio, nel 1983, e proprio per questo la documentazione relativa al suo software di sistema è rimasta per decenni in un limbo: non abbastanza rilevante da essere conservata sistematicamente, non abbastanza trascurabile da essere ignorata da chi si occupa di storia dell’informatica. Ricostruire il suo BIOS a partire dal codice sorgente originale significa sottrarre un pezzo concreto di quella storia all’obsolescenza.
Il valore del progetto non è puramente nostalgico. Iniziative di questo tipo dimostrano che il software storico può essere recuperato anche quando i supporti originali sono andati perduti o inaccessibili, a condizione che esista documentazione stampata e competenze sufficienti per interpretarla. È un modello replicabile per altri sistemi della stessa epoca, molti dei quali si trovano in condizioni analoghe.
Restano però difficoltà concrete. La qualità del materiale cartaceo influisce direttamente sulla fedeltà della ricostruzione: pagine danneggiate, testo sbiadito o sezioni mancanti obbligano a scelte interpretative che introducono un margine di incertezza. Il BIOS ricostruito non può essere certificato come identico all’originale byte per byte senza un termine di confronto binario autentico, che nella maggior parte dei casi non è disponibile. Il progetto lo riconosce apertamente, e questo lo rende più credibile, non meno.
Il codice sorgente è disponibile al download attraverso il sito di GitHub.