Mi sono rifatto gli emulatori
Capire cosa sia un "core" e poi sfruttarlo per farsi una biblioteca piena di videogiochi del passato (non per forza remoto).
Da queste parti mi sono già speso a favore dell’abbattimento dell’idea che i videogiochi del passato e quelli di oggi rientrino in due categorie differenti. Se nel 2025 scegli di investire un po’ del tuo tempo libero giocando a Turbo OutRun (1989) non ti stai dedicando al “retrogaming”. Tra questo e lanciare la beta di Monster Hunter Wilds (28 febbraio 2025), non c’è differenza: in entrambi i casi hai di fronte e sotto alle mani un videogioco. Se vi interessa l’argomento, ne ho parlato con alcuni ospiti in questa puntata.
Turbo OutRun è uno dei protagonisti della puntata dell’11 febbraio di Day One, l’altra newsletter che pubblico e che si occupa di presentare ogni giorno una selezione di giochi pubblicati in 35 anni di storia. La mia memoria ed esperienza non sono sufficienti e così preparare le schede dei vari giochi mi porta spesso a rileggerne la pagina di Wikipedia, a consultare qualche recensione, a scavare in un’intervista pubblicata molto tempo fa e giù giù, fino a provare in prima persona il gioco. Con circa 1500 schede previste e un lasso di tempo tanto ampio dentro cui scegliere i giochi, è più che evidente che non solo posso non ricordare in maniera abbastanza precisa tutto ciò di cui sto scrivendo, ma che in molti casi posso non avere avuto un’esperienza diretta del gioco.
E quindi, emulatori
Dopo qualche mese in cui per tante volte mi sono affidato alla mia scricchiolante raccolta di emulatori (i programmi che imitano i sistemi da gioco come console e computer), ho deciso che fosse venuto il momento di rimetterla in ordine. L’idea iniziale è stata quella di mantenere tutti i file, cioè le versioni digitali di migliaia di giochi, e di lasciare che un programma apposito le raccogliesse tutte e le disponesse in un’unica libreria. I vari sistemi da gioco emulati sarebbero diventati gli scaffali: da una parte una tonnellata di giochi per il Nintendo Entertainment System (la console degli anni ‘80 di Super Mario e The Legend of Zelda) e appena sotto altrettanti per il Super Nintendo Entertainment System (la console degli anni ‘90 di Super Mario e The Legend of Zelda). Ma poi anche i sistemi di Sega e NEC. E sopra a tutti il MAME, la Multi Arcade Machine Emulator che dal 1997 rimette in moto almeno vent’anni di videogiochi a gettone, quelli che si trovavano nei bar.
Questa parte del piano non ha funzionato molto bene. Per qualche ragione tecnica, che non sono riuscito a isolare, il programma si faceva venire dei gran mal di testa con una parte dei giochi per il PC Engine/Turbografx, una console prodotta dalla giapponese NEC che non è mai arrivata ufficialmente in Europa. C’era qualcosa che non andava anche con una percentuale di giochi per il MAME. Quel programma si chiama LaunchBox, ma è più giusto definirlo un frontend. Quello che fa non è offrire il motore che poi deve emulare il comportamento delle console e dei sistemi da gioco, ma solo prendere un software che lo sa già fare e poi vestirlo con un’interfaccia che dia ordine al tutto.
Allora ho chiesto consiglio a Fabio Bortolotti, uno degli ospiti di quella puntata sul retrogaming che dovremmo smettere di chiamare retrogaming. Mi ha chiesto perché stessi usando LaunchBox e non passassi direttamente al software che ne è costituisce il cuore, cioè il motore dell’emulazione, e che si chiama RetroArch (realizzato da Libretro). “E soprattutto, Retroarch è un software libero”, ha concluso Fabio, spiegandomi che Retroarch non ha alcun fine commerciale (a differenza di LaunchBox). È un argomento da tenere in considerazione, quando stai già galleggiando in una zona che più grigia non potrebbe essere.
Non proprio legale
Molti dei videogiochi emulati sono commercialmente indisponibili da anni, a volte da decenni, e tanti dei sistemi da gioco non sono più tecnicamente compatibili con le tecnologie di oggi. Questo obbligherebbe a procurarsi televisori, monitor, tastiere e periferiche di memoria di epoche passate, per poterli di nuovo utilizzare. Anche una volta inseguiti i pezzi utili tra i vicoli di eBay o Vinted e giù per le pareti umide di una fiera a tema, dopo essersi divincolati dalla presa dei cravattari dei giochi d’epoca, devi comunque sperare che tutto funzioni una volta che hai collegato i cavi. Ecco, di fronte a queste prospettive e tenuto conto della pochissima voglia dei detentori dei diritti di mettere un’enorme parte di quei giochi a disposizione del pubblico, trovo eticamente giustificabile (e a tratti doveroso) rivolgersi all’emulazione.
Questa parte era per ricordare che è tuttora illegale procurarsi le versioni dei giochi da utilizzare con gli emulatori (che solitamente vengono definite “ROM”, ma è un termine ombrello che può racchiudere più standard e tipologie di codice e di risorse). L’unica scappatoia è possederne la controparte originale, oppure fregarsene altamente e tirare dritto. Ringraziando pure le comunità di appassionati che, per salvare il salvabile e catalogare il catalogabile, si fanno un discreto mazzo da quasi trent’anni.
Pochi spigoli e tanta collaborazione
Il passaggio a Retroarch è stato inizialmente scoraggiante, ma prima di arrivarci devo svelare che anche Retroarch è, di fatto, un frontend. Non chiamate l’associazione consumatori, non vi sto truffando. La differenza è che con Retroarch sei sempre a un click di distanza dal download dei motori dell’emulazione, che qui e non solo qui vengono chiamati “core”. Sono in effetti i nuclei che imitano il funzionamento degli hardware da gioco del passato. Così se vuoi provare l’indegno Last Battle (1989) per il Mega Drive, che poi era il gioco di Kenshiro senza licenza e senza game design, devi dire a Retroarch: ciao, mi scarichi il core del Mega Drive? Lui ti chiede di sceglierne uno tra svariati a disposizione e a quel punto ti muovi un po’ a tentoni, magari riconoscendo nomi già sentiti e letti altrove.
L’impatto con Retroarch è stato scoraggiante, scrivevo, perché l’interfaccia può sembrare di un minimalismo che scivola nella riluttanza a collaborare. Fabio mi ha consigliato di selezionare un’altra delle interfacce grafiche già disponibili nelle opzioni del programma, una che ripropone in tutto e per tutto il sistema XMB (Cross Media Bar), lo stesso che sfruttano le console PlayStation fin dalla PlayStation 3. Ci ho provato per un po’, ma poi sono tornato all’interfaccia standard, che in realtà è molto pulita e leggibile e chiede solo un po’ di attenzione, essenziale per capire come muoversi e dove trovare ciò che si cerca. È comunque molto importante sottolineare che Retroarch è pensato per essere “navigato” con un controller da gioco tra le mani. Si può anche fare tutto via mouse e tastiera, ma funziona meglio con un controller da gioco ed è una scelta che paga. In questo modo ho avuto la costante sensazione di essere alle prese con un’enorme console da gioco e non con un software per il computer con cui lavoro.
Dopo aver scaricato tutti i core di mio interesse, operazione che inizia e finisce dentro Retroarch e quindi non richiede alcuna ricerca esterna, ho indicare la posizione delle cartelle del disco fisso in cui ci sono i file dei videogiochi (quelli che fluttuano nella zona grigia). Quello che fa il programma, a quel punto, è creare una playlist con tutti i giochi suddivisi per sistema. Dipende dalle esigenze della singola persona capire fino a dove mettere mano per togliere automatismi a questa parte e imporre delle scelte personali, dal nome che viene visualizzato (Sega Genesis o Sega Mega Drive, per intenderci), al core che viene associato e poi usato per tutti i giochi di quella console o sistema.
Quello settimane di utilizzo quotidiano di Retroarch mi hanno fatto capire, è che le opzioni sono tantissime, ma che ci vuole proprio poco per iniziare. Quello che mi ha sorpreso è l’ordine e la logica con cui molte possibilità vengono proposte. C’è anche una certa generosità nel fornire informazioni essenziali, quelle che molti altri sistemi simili a Retroarch prevedono che l’utente si procuri da sé, attraverso forum, tutorial e riti voodoo. Una volta che ho iniziato a vedere che le cose funzionavano bene e che quasi tutti i giochi dei sistemi “base” che avevo importato erano anche accompagnati dalla loro bella illustrazione, ci vuole poco perché Retroarch le scarichi per te, ho alzato l’asticella. Ho scaricato degli enormi set di giochi emulati per Amiga, un computer che non ho mai avuto e che in passato ho provato a emulare, senza mai riuscirci (per mancanza di applicazione mia e di cordialità da parte degli emulatori stessi).
Con Retroarch ho scaricato il core adeguato, ho indicato la posizione dei file e poi ho provato a lanciare Lemmings, il gioco del 1991 di quelli che poi avrebbero fatto Grand Theft Auto. Non ha funzionato. Qualche ricerca mi ha fatto capire che c’era un pezzetto di Retroarch che non avevo ancora sfruttato: le informazioni del core. C’è una voce del menu che fornisce tutta una serie di notizie sullo stato del core che si vuole utilizzare e in questa schermata compare pure un elenco dei file che il core sta cercando e che non trova, con l’indicazione del “valore” di questi file. Possono essere essenziali per il funzionamento od opzionali. Il core dedicato all’Amiga aveva bisogno dei file per emularne anche l’avvio del sistema operativo, cioè il BIOS (basic input/output system). Retroarch mi ha detto quale file mancasse e in che cartella si sarebbe aspettato di trovarlo. Non ha potuto procurarmelo, perché i file dei BIOS sono di proprietà di chi li ha preparati al tempo e quindi non sono generalmente disponibili in forma gratuita. Ma avere la certezza del nome del file mancante e del suo posizionamento, ha fatto metà del lavoro. Cercarlo e trovarlo tra le pieghe di internet è stato quasi sempre molto veloce.
Ci sono addirittura dei pacchetti di file, fondamentali perché alcuni core funzionino ma liberi dai vincoli delle proprietà e delle licenze, che Retroarch scarica su richiesta e piazza proprio dove dovrebbero essere piazzati. Per trovarli non serve altro che farsi un bel giro nel menu “Online Updater”, lo stesso che si occupa di scaricare le copertine dei giochi e molto altro.
Oltre il limite dei ricordi
Sono così arrivato a mettere assieme delle raccolte piuttosto soddisfacenti di sistemi più complessi, come l’Amiga appunto. O l’X68000 di Sharp, un computer che è esistito solo in Giappone e di cui si vagheggiava sulle riviste degli anni Ottanta e Novanta. Qui le cose si sono fatte un po’ più macchinose, perché solo facendomi prendere per mano da altri che ci erano passati prima (sì, insomma, i tutorial), ho imparato come si potesse emulare il cambio di dischetti virtuali quando hai ben due slot per i floppy a disposizione, tanti ne aveva l’X68000. Naturalmente stiamo parlando di risorse previste dal core dell’X68000, non da lettori per i floppy che devono esistere fisicamente nel computer che si utilizza! Beh, comunque sia, le conversioni di Final Fight e Street Fighter II per l’X68000 sono spettacolari… e tanti saluti a quelle per il Super NES!
Grazie all’ottima esperienza con Retroarch, la mia esperienza con l’emulazione ha fatto un altro passo in avanti. Dicevamo all’inizio che è del tutto arbitrario ciò che rinchudiamo nel recinto del retrogaming e quello che lasciamo all’esterno, libero di pascolare. Sta di fatto che mi sono sempre fermato alla generazione a 16 bit. O, per dirla con il calendario, alla metà degli anni Novanta. La fiducia che mi ha dato Retroarch, unita a certe esigenze di Day One, mi ha spinto oltre. Riuscirei mai a giocarmi Astal o Silhouette Mirage sul mio Saturn? Probabilmente no. Posso salvare delle immagini di gioco da Final Fantasy VIII sulla PlayStation 2 che uso anche per i giochi della prima PlayStation? Spenderei mai i soldi per recuperare la serie di cartucce di Cruis’n USA per il Nintendo 64?
L’emulazione delle console a 32 e 64 bit ha fatto passi da gigante dall’ultima volta che l’ho frequentata. A cambiare è stata anche la mia curiosità verso quelle generazioni, a cui ha di certo contribuito il passare del tempo. Qualche volta qualcosa non ha funzionato e per alcuni giochi del Saturn mi sono dovuto dotare di una fiaccola e perlustrare le segrete delle “opzioni del core”, andando a spippolare un po’ alla cieca sui sistemi utilizzati per ricreare le immagini (insomma, il rendering video). Ma alla fine ho risolto in quasi tutti i casi. Mi sono spnto fino al Dreamcast di Sega e alla PlayStation 2. Il mio disco di Daytona USA 2001 non viene più letto dal Dreamcast comprato nel 1999 e così ho deciso di rimediare con l’emulazione. Discorso diverso per il semisconosciuto Bujingai: Swordmaster per la PlayStation, il gioco con cui Taito festeggiò i suoi quaran’tanni (se volete saperne di più ne ho scritto qui).
Il controller e il trucco all’immagine
Mi muovo bene dentro a Retroarch. Sto usando un controller per Xbox che ho comprato quando uscì Street Fighter 6 e che sacrifica uno stick analogico in favore di sei pulsanti frontali. Si tratta del Fighting Commander di Hori e visto che poi, con Street Fighter 6, l’ho utilizzato molto poco, ho pensato di riciclarlo come strumento d’elezione per Retroarch. Il sistema di riconfigurazione dei controlli è intuitivo e si può salvare e associare a tutti i contenuti di un core. Vuole dire che ogni volta che avvio un gioco per il Mega Drive, il programma sa come voglio che vengano associati i pulsanti del controller di Hori. E lo stesso accade con la PlayStation, il Nintendo 64 o il Game Boy Advance. Quando poi mi servono due stick analogici, non faccio altro che collegare un controller di Xbox o PlayStation.
Chi cerca un’immagine più simile a quella che si otteneva dai televisori a tubo catodico, o dagli schermi delle console portatili, può affondare il naso dentro a innumerevoli filtri grafici (in Retroarch vanno sotto al nome di “shader”), ma sono presentati in maniera sommaria e confusa, quindi non resta altro da fare che provarli un po’ tutti e trovare quello che fa al proprio caso. Sempre Fabio me ne ha consigliato uno che imita alla grande lo schermo a matrice di punti del Game Boy del 1989.
Ho fatto altre cose che non mi sarei immaginato di fare, perché sempre troppo pigro per trovare le soluzioni o preoccupato dall’eventualità di rompere tutto (non so voi, ma ogni volta che devo cambiare un’impostazione del router in casa, faccio tre giri su me stesso e recito la password al contrario ad alta voce). Per far sì che Retroarch riuscisse a interpretare perfettamente i nomi dei file di tutti i giochi del MAME, ho dovuto affidarmi a un file di dati che si può trovare online. Diversamente ti ritrovi con un elenco di “bjack.zip” (Bombjack) e simili. Però alla fine il risultato è talmente soddisfacente, che ora non so più come e dove fermarmi.
Se anche voi avete: 1) un certo interesse per i videogiochi, 2) una mente che richiede ordine e precisione o rischia di svalvolare, date a Retroarch un’opportunità. Vi lascio qua sotto alcuni link utili.
Risorse: Retroarch | Documentazione Retroarch (progetto Libretro) | Fighting Commander (Hori) | Day One (spam!)
COME SOSTENERE QUESTA NEWSLETTER
Se questa puntata ti è piaciuta, inoltrala o condividila in giro.
Puoi pagare questa puntata o, più in generale, il lavoro alla base della newsletter attraverso Ko-Fi e PayPal.
Ci sono iscrizioni gratuite ma anche a pagamento, scegli tu.
Barili Esplosivi | le notizie della settimana
Heavy Meta | scrivere di cultura pop
Fantastico Mattia, tutto molto interessante : mi sono buttato su Raspberry Pi + Recalbox e i magnifici joypad retrò (come i vecchi) di 8bitdo e mi sto molto divertendo. Gran fan del Mame durante il periodo universitario è stato anche per me impressionante vedere come sono evolute le cose… finora avevo surfato sull’effetto nostalgia giocando a tutti quei giochi che mi avevano segnato durante l’infanzia e la giovinezza, ma scartabellando sui vari « top 10 » su youtube ho avuto un’esperienza simile alla tua con Amiga : ho testato metroid zero mission per GBA (mai avuto un GBA) ed è veramente bello… ora sto trafficando con gli overlays e addio.. Sono felicemente abbonato a Day One ma del content più specifico per emulazione sarebbe fantastico 😉
Questo articolo mi rincuora. Mi ero avvicinato a RetroArch ed ero riuscito a farlo andare sullo smartphone. Il mio sogno, però, è riprendere il mio vecchio portatile, ripulirlo ed usarlo come macchina da emulazione. Un giorno, chissà...