Windows 11 è il sistema operativo moderno di Microsoft, ma conserva una caratteristica che continua a sorprendere gli appassionati di informatica: la capacità di eseguire software sviluppato decenni fa.
Un’indagine pubblicata sul blog Enlyth esplora proprio questo aspetto, cercando il programma con interfaccia grafica più datato ancora utilizzabile senza modifiche o strumenti di emulazione.
Il risultato racconta una storia interessante sull’evoluzione del software per PC e sulle scelte tecniche che hanno accompagnato Windows nel tempo. Non si tratta soltanto di nostalgia: poter avviare applicazioni storiche permette di osservare concretamente quanto le fondamenta di una piattaforma possano influenzare la sua durata. L’esperimento, inoltre, distingue la compatibilità nativa dall’esecuzione ottenuta tramite strumenti esterni.
FreeCell dimostra la longevità di Windows
Il primo risultato individuato dall’autore è FREECELL.EXE, una versione del celebre solitario con data di modifica risalente al 22 febbraio 1993. Il programma si avvia e rimane giocabile senza interventi sul file originale, mostrando quanto il supporto alle applicazioni precedenti possa incidere sull’esperienza degli utenti.
La ricerca non si è fermata a questa scoperta. Consultando vecchie versioni preliminari di Windows NT 3.1 conservate su Internet Archive, l’autore ha esaminato eseguibili potenzialmente ancora più vecchi. Alcuni, però, presentavano incompatibilità legate al formato dei file oppure alle convenzioni utilizzate per chiamare le funzioni del sistema operativo. Questi problemi potevano provocare arresti anomali, anche quando il programma sembrava inizialmente promettente.
L’indagine ha portato così a CDPLAYER.EXE, un lettore musicale proveniente da una build preliminare di Windows NT. Il software riesce a funzionare perché utilizza crtdll.dll, una libreria di sistema ancora presente nell’ambiente a 32 bit di Windows. Senza un lettore CD fisico, tuttavia, l’applicazione non può riprodurre direttamente un disco: l’autore ha quindi impiegato cdemu.dll per simulare l’unità e fornire dati audio di prova.
Il confine tra compatibilità ed emulazione
Il caso di CDPLAYER.EXE evidenzia una distinzione fondamentale: un’applicazione può essere molto vecchia e continuare a funzionare se le interfacce da cui dipende restano disponibili. Questo non significa, però, che ogni programma storico sia compatibile con i sistemi attuali.
Le applicazioni Windows a 16 bit, per esempio, non possono essere eseguite direttamente nelle edizioni a 64 bit del sistema tramite il sottosistema NTVDM, assente da questi ambienti. Per superare tale limite esistono strumenti come otvdm, che permettono di avviare software altrimenti incompatibile. L’autore ha utilizzato questa strada per provare REVERSI.EXE, un gioco proveniente da Windows 1.01, datato 1985. Il risultato è interessante, ma non soddisfa il criterio iniziale, perché richiede un supporto esterno.
La lezione più importante riguarda quindi il valore della continuità tecnologica. La retrocompatibilità non rende eterno ogni programma, né elimina i rischi legati al software obsoleto. Dimostra piuttosto che le decisioni architetturali possono avere conseguenze molto durature. Per chi sviluppa applicazioni, mantenere interfacce coerenti significa preservare investimenti e ridurre gli ostacoli agli aggiornamenti. Per gli utenti, invece, significa poter conservare una parte della propria storia digitale senza dipendere sempre da soluzioni alternative.