EmulationStation anche su Windows? Sì, però con gli emulatori a scelta!

1:12 am Appunti Cerebrali

Mi è capitato di installare le nuove Ubuntu LTS 14 e 16 su un vecchio laptop mezzo guasto. Nonostante le innumerevoli prove, forse qualcuna mi sarà pure sfuggita, ho dovuto lasciar perdere a causa di un bug noto che non fa spegnere o riavviare il laptop (ho modificato di tutto e di più, ma molto probabilmente è il laptop che è troppo vecchio).

Comunque tra una prova e l’altra ho voluto provare a vedere di creare una installazione che permettesse anche l’utilizzo di qualche vecchio gioco. Così ho cercato i pacchetti che compongono LAKKA TV e li ho installati manualmente. Come frontend ho utilizzato EmulationStation e come librerie per l’emulazione ho scelto RetroArch e Libretro. È andato tutto bene, anche se le prestazioni per certi emulatori non erano un granché. Dipende molto anche dall’hardware, ma soprattutto dal driver grafico più o meno compatibile.

Così mi sono chiesto se la stessa cosa fosse possibile farla con una base Windows 7, ma senza utilizzare le librerie di Libretro e nemmeno RetroArch. Certamente è più comodo usare un solo emulatore per tutto, ma su Windows esistono tantissimi emulatori dedicati che vanno molto bene, proprio perché sono appunto dedicati.

Perciò come frontend ho scaricato EmulationStation dal sito ufficiale (sì, lo so in giro c’è anche di meglio come frontend tipo Kodi ecc…). Una cosa importante da ricordare è il percorso che crea durante l’installazione per il file di configurazione che sarà in:

C:\utenti\nomedelvostroutente\.emulationstation

Dentro questa cartella c’è il file delle impostazioni che dovrà essere creato a mano. Praticamente EmulationStation non è altro che una interfaccia che rileva i giochi e poi tramite un comando fa partire l’emulatore. Normalmente si userebbe RetroArch con Libretro, ma come ho detto prima preferisco scegliere degli emulatori dedicati che spesso e volentieri funzionano meglio oppure hanno delle funzioni in più. Chi volesse optare per RetroArch sappia che dovrà installarlo nella cartella .emulationstation\system\Retroarch, mentre le librerie di Libretro andranno dentro la cartella \Retroarch\cores.

Il file da modificare è: es_systems.cfg

Per chi non è pratico suggerisco come predisporre il proprio laptop per poter utilizzare il file config che troverete in fondo alla discussione. Utilizzando gli stessi nomi e percorsi, la configurazione dovrebbe risultare più facile. Occorrono comunque un po’ di conoscenze che do per scontate, altrimenti devo scrivere la Divina Commedia.

1- Occorre avere installata una versione di Windows 7 64bit
2- Creare una partizione secondaria alla quale assegnare la lettera G: (G come giochi :D)
3- In questa partizione vuota creare tre cartelle:

Emulatori
emulationstation
CartoniAnimati

4- Dentro la cartella \Emulatori creare le cartelle dove installare i vari emulatori

2

5- Dentro la cartella \emulationstation creare le cartelle dove mettere le rom dei giochi

1

Molte cartelle le ho create seguendo la guida per RetroArch che poi non ho utilizzato, ma le ho lasciate con lo stesso nome suggerito sul sito EmulationStation. Per comodità conviene crearsi la cartella \bios nella quale poi inserire i vari bios che occorreranno per alcuni emulatori. I bios sono fondamentali e devono essere quelli giusti altrimenti i giochi non partiranno oppure partiranno, ma con errori come ad esempio quelli del neogeo.

6- La cartella CartoniAnimati è una semplice cartella dove mettere dei video che poi saranno lanciati sempre dal frontend di EmulationStation

7- La scelta degli emulatori, come dicevo prima, è molto personale e dipende da numerosi fattori. A fianco di ogni nome di Console scrivo il nome dell’emulatore da utilizzare (sono solo una parte):

Mame -> mame64 versione 160
Sega megadrive -> KFusion 3.64
Nintendo 64 -> Project64 1.6 oppure Mupen64 (da usare con la GUI M64Py)
Sony playstation 1 -> Psxfin 1.13
Sega MegaCD -> KFusion 3.64Super Nintendo -> Snes9x-1.53-x64

Per vedere i video invece ho scelto l’ottimo Mplayer senza GUI

Ogni emulatore va lanciato e configurato autonomamente. Tipo la grafica, la risoluzione, i tasti di gioco, se partirà in fullscreen, ecc…

8- Fatto ciò bisogna cercarsi delle rom da mettere nelle cartelle. Ricordarsi di installare il programma 7zip che permetterà l’apertura dei file .7z. Per certe roms conviene estrarre il contenuto e lasciare i files decompressi. Ad esempio per lo SNES e il Megadrive rispettivamente .smc e .gen. Per quelle del Mame invece non conviene. Le estensioni delle roms sono importanti perché andranno inserite nel file es_systems.cfg

9- Ora bisogna crearsi il file di configurazione di EmulationStation. La difficoltà maggiore è stata trovare la stringa corretta per dare il comando dell’emulatore e nello stesso tempo dirgli che deve caricare una rom. Per certi emulatori è sufficiente utilizzare i parametri suggeriti dal sito tipo %ROM%, %BASENAME%, mentre per certi emulatori ho dovuto improvvisare con un file .bat.

Questo è un esempio standard per l’emulatore psxfin:

<system>
<name>psx</name>
<fullname>Sony Playstation</fullname>
<path>g:/emulationstation/psx</path>
<extension>.iso .cue .bin</extension>
<command>g:/Emulatori/pSX_1_13-1220/psxfin.exe %ROM%</command>
<platform>psx</platform>
<theme>psx</theme>
</system>

 

Questo invece è quello del Mame64 160 senza GUI:

<system>
<name>mame</name>
<fullname>Mame</fullname>
<path>g:/emulationstation/mame</path>
<extension>.zip .ZIP .7z .7Z .rar .rom</extension>
<command>g:\Emulatori\Mame\mame64.cmd %BASENAME%</command>
<platform>mame</platform>
<theme>mame</theme>
</system>

In questa config ho dovuto utilizzare un file batch mame64.cmd che permettesse di cambiare la directory prima di caricare le roms, altrimenti l’emulatore non partiva e dava errore.

Il file mame64.cmd è composto così e deve stare nella stessa cartella dell’emulatore del Mame (ricordarsi che richiama l’eseguibile senza GUI, quindi NON mameui64.exe (MAMEUI 64 0.160 nella quale c’è anche l’eseguibile mame64.exe):

g:
cd g:\emulatori\mame
mame64.exe %1

10- Per quanto riguarda la visione dei video con Mplayer sarà sufficiente inserire il comando come se fosse una Console:

<system>
<name>Cartoni</name>
<fullname>Cartoni Animati</fullname>
<path>g:/CartoniAnimati/</path>
<extension>.mp4 .avi .mpg .mpeg .flv</extension>
<command>c:/Programmi/MPlayer37853/mplayer.exe %ROM%</command>
<platform></platform>
<theme>video</theme>
</system>

Siccome non esiste alcun template per i video, bisogna crearsene uno. Si può fare una copia di quello per PC che si trova nella cartella .emulationstation e modificarlo con l’immagine di sfondo preferita (pc1_art.jpg) . Basterà sostituire le immagini già presenti facendo attenzione di rinominare le nuove come le vecchie. Stessa cosa per il file ibmpc.svg che dovrà essere sostituito con un logo a piacere, sempre formato .SVG e di circa le stesse dimensioni. Sbagliando qualcosa non si farà danno, ma semplicemente non si vedrà nulla quando si scorre il menu di EmulationStation.

Configurando tutto a dovere, impostando EmulationStation in esecuzione automatica, si riesce a creare un “sistemino” facile e utilizzabile anche da chi è poco esperto permettendo di giocare ai vecchi titoli ormai del retrogaming e guardarsi anche qualche video senza dover uscire dall’interfaccia ES.

Qui di seguito ecco i files già pronti e utilizzabili se si mantengono gli stessi nomi della partizione, dei files e cartelle, oppure modificabili a piacere. Almeno con qualcosa di già pronto è più facile capire come funziona ES.

Come far partire un gioco del pc, ad es. Street Of Rage Remake o Broken Sword 2.5

Per chi non li conoscesse sono due giochi amatoriali per pc liberamente scaricabili.

È possibile far partire i giochi direttamente da EmulationStation creando una voce all’interno del file es_systems.cfg. Prima però si dovrà creare una cartella chiamata linkpc che per comodità sarà dentro la cartella g:\emulationstation\linkpc (ognuno poi può crearsela come gli pare, se però si mantiene lo stesso percorso e lettera del disco sarà tutto più rapido per chi vorrà copiare la configurazione). Nella cartella linkpc i collegamenti, che hanno estensione .lnk, potete rinominarli come meglio credete. Ho usato il tema pc, ma è possibile scegliere quello che vi pare oppure crearsene uno dedicato come ho fatto per video ed mplayer.

<system>
<name>PC GAME</name>
<fullname>Pc game </fullname>
<path>g:/emulationstation/linkpc/</path>
<extension>.lnk</extension>
<command>%ROM%</command>
<platform>pc</platform>
<theme>pc</theme>
</system>

 

EmulationStation installata su vecchi laptop che supportano Windows 7 32bit

Con un po’ di cesello e pazienza è possibile installare emulationstation anche su laptop un po’ datati con 32 Mega di Ram video e 512 Mega di Ram di sistema totali. Il problema principale è che anche se si avvia non si vede alcuna immagine o logo perché il laptop non ce la fa a gestire le risorse.

Allora come fare? Semplicemente creandosi un template ad hoc solo testuale partendo da questo tema:

es-theme-spare-master

(si trova scaricabile in giro)

Quello che conta poi è eliminare i riferimenti alle immagini dentro il file xml del template in modo che emulationstation mostri solo i testi, ad esempio ecco come modificare un tema a caso, quello nella cartella megadrive. Aprire il file theme.xml e modificarlo come segue:

<theme>
<formatVersion>4</formatVersion>
<include>./../spare.xml</include>
<view name="system, basic, detailed">
</view>
</theme>

Così facendo verranno ignorati i riferimenti alle immagini e loghi.

Per diminuire ancora di più le risorse è possibile decidere di far partire emulationstation all’avvio in sostituzione di explorer, modificando il registro di sistema in questo modo:

1- Aprite regedit
2- Cercate HKEY_Local_Machine\Software\Microsoft\WindowsNT\CurrentVersion\Winlogon
3- Cercate Shell
4- Modificate la voce che punta a explorer.exe con il percorso di emulationstation.exe, solitamente sarà c:\programmi\… ecc… ecc… (tra apici il link se contiene spazi)

Ovviamente all’avvio non partirà più explorer.exe e se vorrete lanciarlo per gestire il computer sarà sufficiente chiudere emulationstation, fare ctrl+alt+canc e lanciare explorer.exe da esegui comando. Questa procedura di sostituzione andrebbe fatta quando tutto è funzionante e non ci sarà la necessità di ulteriori modifiche del pc. Coì si avrà un laptop dedicato esclusivamente al retrogaming e non. EmulationStation è molto versatile in questo e se ben configurato permetterà di avere un frontend utilizzabile anche da chi non sa nulla di pc.

Come scelta per gli emulatori da configurare a parte, considerando le esigue risorse del laptop consiglio di utilizzare il mame senza GUI, lo zsnes per il Super Nintendo, il Fusion per il megadrive, PSXFin per la Playstation 1, il project 64 per il Nintendo 64. Allego come esempio il file di configurazione lowram, dal quale potrete attingere informazioni. Tutti rigorosamente per sistemi a 32 bit.

File di Configurazione per EmulationStation:

es_systems
es_systems-lowram

File Batch per convertire i file 7zip in zip da lanciare nella stessa cartella dei file da convertire

convert.bat

File Batch da usare per Mame64

mame64.cmd

Template già pronto per Mplayer da copiare in .emulationstation dove ci sono gli altri

video

5 Responses
  1. Admin :

    Date: April 25, 2016 @ 11:09 am

    Una cosa importante è quella di ricordarsi di cancellare le cartelle dentro .emulationstation\gamelist\…
    Se per caso rinominate le ROM, il progamma ha bisogno di ricreare l’indice dei files. Con il project64 ad esempio restituisce errore e spesso e volentieri il problema dipende dal vecchio indice dei nomi xml che va rigenerato.

  2. Admin :

    Date: April 25, 2016 @ 11:27 am

    Dimenticavo: le ROMS è meglio se non hanno spazi o caratteri strani nel nome. Piuttosto per spaziare usate i trattini tipo: Super-Mario-64.z64

  3. Admin :

    Date: October 10, 2016 @ 1:37 pm

    Quando si modifica l’avvio sostituendo explorer.exe con emulationstation.exe potrebbe capitare che anche lanciando da esegui explorer.exe, non parta il desktop. Perciò se ci fosse la necessità di modificare delle voci dal pannello di controllo sarà sufficiente scrivere in esegui: control e per spegnere il pc qualora non funzionasse da emulationstation menu è possibile farò con il comando: shutdown -s -t 5

  4. Admin :

    Date: October 10, 2016 @ 4:52 pm

    Usando EPSXE è possibile lanciarlo usando il comando: g:/Emulatori/epsxe200/epsxe.exe -bios g:\emulationstation\bios\scph5502.bin -nogui -loadbin “%ROM_RAW%”

    A questo link ci sono tutti i command switch per l’exe di epsxe

    http://www.epsxe.com/files/ePSXe_FAQ.txt

  5. Admin :

    Date: October 11, 2016 @ 6:24 pm

    Usando EPSXE si potrebbero avere problemi con pc un po’ datati per via dei driver video obsoleti.
    Al posto di quello è consigliabile provare PSXFin oppure meglio ancora PCSX Reloaded.

    Anche usando il Mame ultima versione potrebbe comparire schermo nero. Ciò è causato dal fatto che nel file mame.ini nella parte video è impostato auto. Per risolvere il problema si deve modificare auto in ddraw.

Leave a Comment

Your comment

Codice AntiSpam - Completa l'operazione inserendo il numero appropriato (in numero)

Time limit is exhausted. Please reload the CAPTCHA.

You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Please note: Comment moderation is enabled and may delay your comment. There is no need to resubmit your comment.