Volete rivivere l’esperienza ludica delle console e degli home computer degli anni ’80?
Volete rigiocare ai mitici titoli ad 8bit? Volete realizzare una completa stazione di retrogaming?

Vi basta un Raspberry Pi, la piattaforma RetroPie (qui su GitHub), qualche accessorio ed un’oretta di lavoro.

REVISIONE 6 DEL POST


questo post è stato aggiornato dopo la prima pubblicazione

Cos’è RetroPie?

RetroPie è la combinazione di progetti differenti, inclusi EmulationStation (qui su GitHub i sorgenti), e RetroArch.

RetroPie incorpora moltissimi emulatori di macchine da gioco (console e home computer) che hanno fatto la storia dei videogame. RetroPie, di fatto, condensa in una unica piattaforma decine di sistemi differenti e ci permette di usare un nostalgico Gamepad USB per giocare potenzialmente migliaia di titoli da retro-gaming.

Emulatore


E’ un software che permette ad un computer di comportarsi come un altro computer. Ad esempio permette ad ad un RaspberryPi di comportarsi cime una console da videogame degli anni ’80. Invece di cartucce e dischi, i giochi sono contenuti in speciali files chiamati “ROM”

Avrete così a disposizione una piccola console multi-piattaforma da nascondere dietro un televisore o un monitor, o da portare con voi ovunque vogliate andare: i progetti non mancano (qui, qui, e anche qui).

Picade Arcade MachineParticolarmente allettanti sono i progetti per assemblare il proprio coin-op (qui e qui), un vero e proprio arcade cabinet in stile anni ’80.

Alla portata di tutti il bellissimo PiCade. Se volete le istruzioni complete per assemblarlo rapidamente e senza pensieri, leggete il nostro articolo qui.

Intanto vi propongo la mia personale scala di macchine da gioco che, nel tempo, ho potuto apprezzare nella loro versione reale (vi invito a girare su questo blog per qualche post a tema sul retrogaming). E che in questa guida provvederemo a far rivivere in RetroPie.

TimeLine Retrocomputer e retrogaming anni ’80

I ragazzi di petRockBlock hanno preparato per noi versioni di RetroPie adatte al PC, al Raspberry e all’Odroid. In questa guida installiamo un Raspberry, lo configuriamo ed iniziamo a giocare con pochi click.

Qui l’elenco di alcuni sistemi disponibili (tra parentesi il principale emulatore):

  • Amiga (UAE4ALL)
  • Apple II (LinApple)
  • Atari 800 (Atari800)
  • Atari 2600 (RetroArch/Stella)
  • Atari ST/STE/TT/Falcon (Hatari)
  • Apple Macintosh (Basilisk II)
  • C64 (VICE)
  • Amstrad CPC (#CPC4Rpi)
  • Final Burn Alpha (RetroArch / PiFBA, RetroArch/FBA)
  • Game Boy (RetroArch / Gambatte)
  • Game Boy Advance (GpSP)
  • Game Boy Color (RetroArch / Gambatte)
  • Sega Game Gear (Osmose)
  • Intellivision (jzIntv)
  • MAME (RetroArch / mame4all-pi, RetroArch / mame4all)
  • MSX (openMSX)
  • PC – x86 (rpix86)
  • NeoGeo (PiFBA, GnGeo)
  • Nintendo Entertainment System (RetroArch / FCEUmm)
  • Nintendo 64 (Mupen64Plus-RPi)
  • TurboGrafx 16 – PC Engine (RetroArch / Mednafen/pce_fast)
  • Ports
    – CaveStory (RetroArch / NXEngine)
    – Doom (RetroArch/PrBoom)
    – Duke Nukem 3D (eDuke)
  • ScummVM
  • Sega Master System / Mark III (RetroArch / Picodrive, Osmose, DGen)
  • Sega Mega Drive / Genesis (RetroArch / Picodrive, DGen)
  • Sega Mega-CD / CD (RetroArch / Picodrive, DGen)
  • Sega 32X (RetroArch / Picodrive, DGen)
  • Playstation 1 (RetroArch / PCSX ReARMed)
  • Super Nintendo Entertainment System (RetroArch / Pocket SNES,  snes9x-rpi)
  • Sinclair ZX Spectrum (Fuse, FBZX)

Gli ingredienti

La mia RetroPie è attualmente configurata nella versione per il Raspberry Pi 3 Model B con una capiente MicroSD da 32GB di Classe 10.

Il Raspberry Pi 3 Model B ha le seguenti caratteristiche:

  • 1.2GHz 64-bit quad-core ARMv8 CPU
  • 802.11n Wireless LAN
  • Bluetooth 4.1 / Bluetooth Low Energy (BLE) che vi permette di utilizzare senza dongle USB i controller wireless di XBX360 o PS3.
  • (il resto è identico alla versione 2)

Su questa versione ci girano senza problemi i giochi della Sony PSX (Playstation 1)!

Questa versione di Raspberry si recupera facilmente per circa 40,00 euro. Non è al momento disponibile una versione di RetroPie per Raspberry Pi 4.

RetroPie con Raspberry Pi 3
RetroPie con Raspberry Pi 3

RetroPie con Raspberry PI-_DSC0577Volendo potete optare per versioni precedenti del Raspberry Pi: la mia prima versione, per altro più economica (ma ugualmente funzionante) utilizzava addirittura un Raspberry Pi 1 Model B e montava una scheda SD da 8GB di Classe 4. Questa versione di Raspberry aveva un clock di soli 700 MHz e 512 MB di RAM condivisa con la GPU. Disponeva di due sole porte USB.
Ma nonostante tutte queste limitazioni, Retropie ha sempre funzionato egregiamente.

In alternativa potete utilizzare il modello intermedio, il Raspberry Pi 2 (Model B) che all’atto pratico non mi sembra molto dissimile, per prestazioni, al suo fratello più recente.

Facciamo la spesa

Raspberry PI 3 Model B
Il cuore del sistema.
Scheda microSD da 64 GB, UHS-I U3, con Adattatore SDScheda microSD 64GB UHS-I U3, con Adattatore SD
Sufficiente a contenere migliaia di ROM.

Raspberry Pi 3 Case
Uno dei tanti case disponibili.
Raspberry Pi 3 Complete Starter Kit
Tutto il necessario in un kit.

Accessori:

Cavo HDMI ad alta velocità, 1,8 m

Cavo HDMI ad alta velocità, 1,8 m Un cavo per collegare il Raspberry al monitor: disponibile in diverse lunghezze.

Rii Mini i8+ Wireless

Utile anche per giocare a molti titoli tastiera e mouse: io ho optato per una soluzione senza fili e molto compatta. Ma è possibile usare tastiere di grandezza regolare.
Edimax Adattatore USB Nano, 150 Mbps, Wireless 802.11n
Edimax Adattatore USB Nano, 150 Mbps, Wireless 802.11n

Utile per la versione 1 e 2 del Raspberry Pi, in alternativa ad un normale cavo Ethernet con RJ45. Il raspberry Pi 3 ha già il WiFi integrato.
KIT DISSIPATORI CON ADESIVO TERMICO PER RASPBERRY
KIT DISSIPATORI CON ADESIVO TERMICO

Utili per ore di gioco senza il rischio di surriscaldare il vostro Raspberry.
Alimentatore Micro USB 5V 3A
Vi serve un alimentatore che sia “stabile” da almeno 2.5A (bastano 2A per le precedenti versionidel Raspberry).
 Lettore di schede di Memoria SD/MicroLettore di schede di Memoria SD/Micro
Un lettore di schede di memoria USB può essere utile con l’uso del PC.

Ovviamente sono fondamentali i controller, da quelli retrò a quelli più moderni. C’è l’imbarazzo della scelta: da quelli in stile NES o SNES, a quelli di ultima generazione bluetooth. C’è anche una app per usare lo smartphone come controller.

Personalmente preferisco quelli che ricordano gli originali degli anni ’80.

CSL - 2x Gamepad USB SNES / controller per PC / notebook / tablet | design retrò | grigio
CSL Gamepad USB SNES

Controller In stile SNES
Qumox SNES gioco PC GamePad controllore SFC per Windows PC USB Super Famicom
Qumox SNES GamePad USB

Altro controller in stile SNES, fedele nella colorazione
Microsoft Xbox 360 - Controller Wired
Microsoft Xbox 360 – Wired

nella versione per PC (ma va bene anche la versione nativa per XBOX 360)
NES Controller USB
Qumox Nintendo NES GamePad controllore USB

In stile NES e Super Famicom. Imprescindibile.
SNES controller USBN64 – Controller con cavo USB
Per i nostalgici del Nintendo 64.
Controller USB
Ewent Controller Joypad USB, Dual Shock

Derivato dal controller della Sony PS1
Controller NES USB
Buffalo Classic Gamepad USB

Simile al controller SNES
Controller USB
Retro-bit classic controller

Ispirato all’iconico controller dell’ATARI 2600
QUMOX NES30 Bluetooth Wireless controller
NES30 Bluetooth Wireless controller
Un controller senza fili evoluto e completo ispirato al modello del NES
CSL – Wireless Gamepads Playstation 3

Un controller ispirato a quello della PS1 e PS2 senza fili
Pad Wireless Controller per Microsoft Xbox 360
I controller Wireless per Xbox360 sono compatibili con Retropie
Controller Retro Pro Nintendo NES

Alternativa per un controller in stile NES

Se volete strafare e mettere a punto una console portatile, vi potrebbe servire un piccolo monitor da collegare al rasperry Pi ed inscatolare: SainSmart 7 pollici TFT LCD Touch Screen Monitor per Raspberry Pi + driver scheda HDMI VGA 2AV

Per trasferire le ROM dal PC al RaspberryPi è possibile usare la rete di casa (WiFi o cablata). I metodi sono differenti: SFTP (via software free Cyberduck o FileZilla), via cartelle condivise di rete (con SAMBA) oppure via SSH (disponibile nativamente su Linux e Mac, con il software Putty su Windows).

Installazione

Come primo step è necessario scaricare l’immagine ISO dal sito di RetroPie.

ATTENZIONE: scaricate la ISO nella versione adatta per il vostro modello di Raspberry Pi. Esistono due versioni della ISO di Retropie: una per il Raspberry Pi 1 e zero, l’altra per il Raspberry Pi 2 e 3. Scegliete quindi l’immagine della SD direttamente dal sito RetroPie Project.

Se avete scaricato un file .gz dovete estrarre l’immagine ISO (file .img) in una cartella del vostro PC utilizzando un qualsiasi tool di decompressione, come ad esempio 7-Zip. Se invece avete scaricato direttamente il file .img saltate questo passo.

Ora dovete preparare la vostra SD: inseritela nel lettore del vostro PC e trasferitevi la ISO scaricata con il tool Balena Etcher, disponibile per qualsiasi piattaforma.

Balena Etcher RetroPieGli utenti Linux possono eventualmente divertirsi da linea di comando (dd) oppure usare Unetbootin.

(abbiate qualche minuto di pazienza, potrebbe volerci del tempo). 

In ogni caso, relativamente al processo di prima installazione di un Raspberry Pi, potete trovare molte informazioni qui, non recentissime ma molto valide. 

Una volta che Balena Etcher ha terminato la copia dell’immagine sulla MicroSD, rimuovete la scheda dal PC ed inseritela nel vostro Raspberry Pi (aspettate ad accenderlo!).

NOTA: se invece che effettuare una installazione da zero volete aggiornare una vecchia versione di RetroPie, seguite queste istruzioni.

Accendiamo!

Retroarch Joystick ports

A Raspberry spento collegate la tastiera ed il cavo HDMI. Inserite la SD.

Collegate il joystick o il joypad USB: nella figura a lato potete vedere la sequenza con cui i controllers vengono montati dal sistema.

Accendete il Raspberry Pi.

Dovrebbe apparire la nuova procedura di configurazione (introdotta con la versione 3.0) in grado di guidarvi nel primo avvio del sistema operativo, fino al setup dei controller. Seguite le istruzioni a schermo, premendo i tasti sul vostro Joypad (se alcuni tasti non dovessero essere necessari, basta saltarli tenendo premuto un qualsiasi pulsante).

I controller dovrebbero essere riconosciuti automaticamente.

Importanti e da ricordare alcune combinazioni di tasti speciali valide per i giochi degli emulatori basati su Retroarch/Libretro: utili per salvare, caricare o uscire dagli emulatori. Su Retroarch/Libretro più avanti una digressione…

HotkeysAction
Select/Hotkey + StartExit
Select/Hotkey + Right ShoulderSave
Select/Hotkey + Left ShoulderLoad
Select/Hotkey + RightInput State Slot Increase
Select/Hotkey + LeftInput State Slot Decrease
Select/Hotkey + XRGUI Menu (Retroarch menu)
Select/Hotkey + BReset
Left & Right“OK” in MAME4All

A questo punto dovreste vedere la schermata principale di Emulation Station, con l’elenco di molti emulatori che scorrono orizzontalmente. Non disperate se non trovate il vostro emulatore preferito: probabilmente manca qualche ROM a lui associata…

Configuriamo…

Tra le voci dei vari emulatori troverete anche la voce RetroPie, che vi permette di accedere alla completa configurazione del sistema.

Retropie configurazione
RetroPie setup menu

Ogni voce è ben descritta. Tenete presente che per muoversi nelle interfacce testuali di Raspbian/Retropie vi serve una tastiera connessa. Qualche configurazione consigliata…

AUDIO: vi permette di scegliere l’output dell’audio, ad esempio tra HDMI oppure jack stereo da 3.5mm

BLUETOOTH: per accoppiare dispositivi Bluetooth, come tastiere o i controller della PS3 o della XBOX360.

ES THEMES: vi permette di installare uno dei numerosi temi di EmulationStation.

FILE MANAGER: un gestore dei files a due colonne, il più classico del tool. Anche se, per certe operazioni, vi consiglio di utilizzare la shell da riga di comando.

-_DSC0599

RASPI-CONFIG: sono le impostazione del sistema operativo. In genere vi consiglio di partire da qui:

  • Advanced Options > Expand Filesystem: in questo modo allargate la partizione sulla SD sfruttando lo spazio disponibile;
  • Internationalisation Options: settate correttamente location (scegliete IT_IT), tastiera e time-zone (scegliete Roma).
  • Advanced Options > Memory Split e cambiate il numero a 192 o 256 (se avete il Raspberry Pi 2/3). Questo imposterà la memoria per la GPU.
  • Interfacing Options: se pensate possa esservi utile,  abilitate anche l’SSH.
  • Finish: uscite (anche con ESC).
  • Reboot: riavviate.

RETROARCH: si tratta del menu di configurazione generale degli emulatori basati su libretro (cioè quasi tutti) fate riferimento al paragrafo dedicato in basso.

RETROARCH NET PLAY: per poter giocare in multiplayer in rete con gli emulatori basati che usano librerie libretro!

RETROPIE SETUP:

  • Basic Install: per installare i pacchetti base di RetroPie (utile in caso di problemi)
  • Update all installed packages: per aggiornare i pacchetti RetroPie (e gli emulatori) già installati, compreso lo script del setup ed i pacchetti del kernel: mettetevi comodi perché potrebbe impiegare diverso tempo.
  • Manage packages: aggiornamenti selettivi. Se non avete necessità di installare proprio tutto potete scegliere singolarmente le voci desiderate. Io personalmente vi consiglio di aggiornare solo gli emulatori che usate maggiormente. Alcuni di questi si trovano nei pacchetti opzionali. Cercate in giro nei menu…
  • Configuration / tools: (opt. 826) utile l’abilitazione dello share delle cartelle via protocollo SAMBA
  • Update RetroPie-Setup script: in caso vogliate aggiornare soltanto lo script di base (per il setup) della piattaforma. Si tratta della prima operazione da fare per un corretto aggiornamento. Aggiornando lo script potrete accedere a funzioni sperimentali, quali la auto configurazione del joypad, o l’installazione di Minecraft. In ogni caso è il primo passo di ogni procedura di aggiornamento.

RUN COMMAND CONFIGURATION: è possibile il menu di scelta dell’emulatore di una specifica piattaforma in fase di avvio (vedi paragrafo dedicato) ed altre configurazioni per l’avvio degli emulatori.

SHOW IP: mostra l’IP del vostro Raspberry Pi, funzione utile in caso vogliate connetterai sia SAMBA o SSH.

WIFI: per collegare alla rete wireless il vostro Raspberry.

Per ragioni di sicurezza, soprattutto se volete tenere in rete il vostro Raspberry Pi,  meglio cambiare la password dell’utente pi (usato per l’accesso SSH e SAMBA). Inizialmente le credenziali sono pi/raspberry. Successivamente digitate:
sudo passwd
inserite la vostra password, ad esempio 1234567 (non fatelo, vi prego…) . Da questo momento in poi potete accedere da un terminale in rete con:
username: root @ pass: 1234567

Ulteriori informazioni qui. Qui i problemi comuni.

Una digressione su RetroArch

rgui

RetroArch è il front-end ufficiale per le API Libretro: significa sostanzialmente che RetroArch gestisce i comandi e le configurazioni per tutti gli emulatori che fanno parte della Libretro-core (cioè qualsiasi emulatore con una “lr” prima del nome). Questo significa che (ad esempio) è possibile configurare i controller solo una volta per tutti questi emulatori, invece di dover configurare ogni emulatore singolarmente. RetroArch ci dà comunque anche la libertà di configurare gli emulatori individualmente, lasciandoci possibilità di personalizzazione.

Se accedete alla funzione RETROARCH all’interno della voce RetroPie (paragrafo precedente) vi si apre una sorta di interfaccia grafica (RGUI). Muovetevi tra i menu con questi tasti:

  • A button (Default PC: X): Accept/OK
  • B button (Default PC: Z): Back/Cancel
  • Start (Default PC: Return): Go to main settings menu
  • Select (Default PC: Right shift): Set a setting to default
  • Up/Down D-pad (Default PC: Up/Down keys): Browse settings/files
  • Left/Right D-pad (Default PC: Left/Right keys): Toggle settings, or browse several items at once in file browser.

Da tenere presente che la configurazione del joypad completata all’avvio è già valida sia nell’ambiente di Emulation Station, sia negli emulatori basati su (libretro) Retroarch (ad esempio Atari 2600, Game Boy, MAME, Nintendo Entertainment System, TurboGrafx 16, Sega Master System, Playstation 1, etc.).

Una volta terminata la procedura di riconoscimento, la configurazione del vostro controller sarà memorizzata in questo file:

/opt/retropie/configs/all/retroarch-joypads

Se aveste necessità di modificare una specifica impostazione di Retroarch, magari anche solo le impostazioni per uno specifico emulatore Retroarch o un suo specifico gioco, potete modificare il file corrispondente all’indirizzo:

/opt/retropie/configs/<EMULATORE>/retroarch.cfg

Facendo riferimento ad un controller di tipo NES, qui a lato trovate le principali combinazioni di tasti, utili anche per poter salvare, effettuare un reset, terminare una sessione di gioco o tornare al menu principale.

Se volete riconfigurare il tutto (non solo il controller) attraverso l’editing dei files potete scegliere Edit RetroPie / Retroarch configuration.

Se volete cambiare le impostazioni di uno specifico gioco basato su RetroArch, premete F1 mentre siete nel gioco: vi apparirà la RGUI che modificherà le impostazioni limitatamente a quel gioco.

Gli emulatori non basati su Retroarch potrebbero invece richiedere una differente configurazione del controller: fate riferimento alla specifica sezione di ogni emulatore.

Installare gli emulatori

Nelle nuove versioni di RetroPie, l’installazione base prevede solo gli emulatori compatibili libretro RetroPie. Nonostante ciò questi potrebbero non essere visibili nel menu: serve infatti che sia presente almeno una ROM per emulatore.

Se volete installare ulteriori emulatori dovrete farlo a mano. Usate le funzioni raggiungibili da:

RetroPie > RetroPie Setup > Menage packages > Manage optional packages

scegliete il pacchetto opportuno e procedete con una installazione da binari.

Scegliere l’emulatore

In molti casi per una piattaforma (ad esempio lo ZX-Spectrum) è installato più di un emulatore. RetroPie ne sceglie uno di default, generalmente quello maggiormente affidabile, dando per altro precedenza a quelli RetroArch.

Potete però mettere mano alla procedura di lancio degli emulatori, chiamata RunCommand. Andate nel menu RetroPie e scegliete la voce Run Command Configuration. Da qui potete abilitare il menu di lancio (opzione 1): in sostanza prima dell’avvio di un emulatore, vi verrà presentato un menu dal quale fare le vostre scelte.

-GOPR5399
-GOPR5400

Ad esempio (figure in basso) avviando un gioco per ZX Spectrum vi compare per alcuni secondi una schermata che vi invita a premere un pulsante della tastiera. Da qui potete accedere a molteplici opzioni, ma soprattutto potete scegliere l’emulatore di vostro gradimento, impostandolo di default o solo per uno specifico gioco.

-GOPR5401
-GOPR5398

Aggiornamento e configurazione manuale

RetroPie config

Tutte le operazioni precedenti possono ovviamente essere eseguite via shell. Se volete procedere “manualmente”, collegatevi via SSH oppure uscite da Emulation Station (dal menu grafico) oppure dopo il boot premete F4 sulla tastiera per andare direttamente al terminale. Come prima cosa, dopo l’installazione dell’ultima immagine, è bene fare un aggiornamento generale con:

sudo apt-get update
sudo apt-get upgrade -y

Quindi, per eventuali ulteriori configurazioni del sistema, digitate:

sudo raspi-config

Quindi accedete alla configurazione di RetoPie (accessibile anche da Emulation Station):

cd RetroPie-Setup
sudo ./retropie_setup.sh

La utility sono esattamente quelle a cui avete accesso dal menu grafico di RetroPie.

ROM

Intorno agli aspetti legali circa l’utilizzo delle ROM negli emulatori c’è un po’ di confusione, ed i termini possono cambiare anche da titolo a titolo. Assicuratevi comunque di muovervi nei limiti della legalità.

Dal punto di vista legale un ROM set altro non è che una copia del gioco originale. Per questo motivo s’incorre in violazione di copyright nel caso in cui non si abbia l’originale del gioco stesso che, nel caso delle piattaforme arcade, è la scheda con i chip. (da Wikipedia)

giocando a DOOM...

Trovare le ROM non è difficile, ma è fondamentale installare solo quelle compatibili con gli emulatori. Ecco alcuni punti di partenza:

Le ROM saranno state scaricate sul vostro PC. Ora è necessario copiarle nelle giuste cartelle dentro il Raspberry Pi. Assicuratevi che il Raspberry Pi sia acceso e connesso al vostro router (via cavo Ethernet o via WiFi).

Reperite il suo IP dal menu di RETROPIE, oppure direttamente dal terminale, oppure aspettate che il Raspberry si presenti sulla rete e sia visibile dopo un semplice scanning: il suo nome di default è retropie. Potete collegarvi

  • via SSH (user: pi password: raspberry)
  • via SAMBA (user: pi password: raspberry)
  • via SFTP (tramite Cyberduck o FileZilla).
  • E’ anche possibile usare una penna USB. Le ultime versioni di RetroPie mettono anche a disposizione un file manager piuttosto pratico.
NOTA PER GLI UTENTI MAC: è documentato un problema di connessione via SAMBA. Di fatto il MAC potrebbe non riconoscere l’utente per l’accesso. E’ possibile risolvere la issue accedendo al terminale di Retropie via SSH e digitare i seguenti comandi:

 

sudo smbpasswd -a pi

quindi reinserire la password: raspberry

Retropie Shared Folder SAMBA

Nell’esempio in alto si vedono le cartelle condivise in rete:

  • bios: qui dovreste caricare i files del BIOS di alcuni emulatori che, per ragioni legali e di licenza, non vengono distribuiti con la ISO.
  • configs: trovate sia le configurazioni globali, che le configurazioni specifiche per ogni emulatore (ad esempio la mappatura dei pulsanti dei controller).
  • roms: qui c’è una sottocartella per emulatore. Questo è il posto in cui dovrete inserire le ROM dei vostri giochi preferiti
  • splashscreen: è possibile scaricare dalla rete sia nuovi temi, sia una serie di nuovi splashscreen.

Via SSH potete fare riferimento a questo percorso: ~/RetroPie/roms/SYSTEMNAME

Copiate le vostre ROM e riavviate EmulationStation dal menu di RetroPie (altrimenti le ROM non verranno riconosciute).

NOTE: nel mio caso, copiando i files da un computer MAC, mi sono ritrovato le cartelle delle rom piene di files nascosti (tipo ._NOMEFILE). Praticamente un file nascosto per ogni ROM trasferita. Da quanto ho potuto sperimentare si tratta di files inutili, che occupano spazio prezioso. Vi consiglio di eliminarli con un’unica istruzione da terminale:

cd RetroPie
cd roms
find . -name "._*" -type f -delete

Se volete prima verificare l’effetto della vostra istruzione di eliminazione, eseguite l’ultima istruzione senza -delete alla fine.

Dalla GUI di EmulationStation, premendo il pulsante START, attraverso la funzione di SCRAPER,  potete divertirvi ad aggiornare i metadati di ogni ROM. Se il vostro Raspberry riesce ad accedere ad Internet sarà in grado di sincronizzarsi con i principali indici dei videogame e scaricare le descrizioni e le locandine dei vostri titoli.

Scraping

Retrovie Scraping

E’ possibile, per ogni ROM installata, scaricare i suoi metadati da alcuni delle basi dati più importanti della rete come thegamesdb o archive.vg.

E’ la funzione di scraping (raschietto): trovate l’applicazione da riga di comando (molto efficiente) di Steven Selph da installare via shell. Lanciate il setup di RetroPie con:

cd RetroPie-Setup
sudo ./retropie_setup.sh

e seguite le istruzioni a monitor alla voce Scraping.

rom-deleter-full

E’ disponibile inoltre una applicazione di scraping direttamente dentro la GUI di EmulationStation, meno efficiente ma certamente più immediata nell’utilizzo.

Il problema più grosso delle funzioni di Scraping è legato alla corretta identificazione delle ROM. In genere molti sistemi si basano sul nome file, che deve essere praticamente identico. I tool più evoluti controllano un hash.

Per fortuna esiste GoodTools: si tratta di una suite di applicazioni per Windows che utilizzano una base dati del software per le varie console di videogiochi e per gli home-computer.
Questi strumenti, rilasciati come freeware, si sono affermati come un importante riferimento per i collezionisti di ROM, in particolare per i sistemi più vecchi che non hanno fonti di verifica autorevoli.

Ovviamente affinché lo scraping funzioni è necessario essere collegati ad Internet: in caso di collezioni di migliaia di ROM potrebbe essere necessario scaricare qualche centinaio di MB di dati (tra locandine ed informazioni) ed alcune ore di lavoro.


Atari 2600 (1977)

atari-2600-game-system
GIOCHI CONSIGLIATIPitfall!, Missile Command, Super Breakout, Adventure, Combat, Space Invaders, Dig Dug, Pole Position, Frogger, Pong, Q*bert, Centipede

Nonostante abbia posseduto un Mattel Intellivision, sicuramente superiore per qualità, invidiavo gli amici che avevano un Atari 2600, molto più ricco di titoli ed anche molto più diffuso.

Gli emulatori disponibili sono 2: lr-stella (consigliato, compatibile RetroArch) e Stella.

Le ROM accettate sono: .bin .a26 .rom

Da inserire in: /home/pi/RetroPie/roms/atari2600/

Per uscire dal gioco premere SELECT e START insieme. Maggiori informazioni qui.


Z-Machine (Infocom, 1979)

Mainframe 1970

Anche se io (per ragioni di età) ho incrociato la Z-Machine qualche anno dopo, non posso non spendervi due parole: si tratta di una macchina virtuale usata da Infocom per le prime avventure testuali.

L’emulatore va installato come pacchetto opzionale: si tratta di frotz.

L’installazione si porta dietro i 3 celebri giochi, veri e propri pezzi di storia: (ZORK I (1980), II e III). Considerate che Zork I è considerato tra i 10 giochi più importanti dell’informatica: non potete non cimentarvi.

Per uscire dal gioco digitate quit.


Intellivision (1979)

Intellivision-Logo[1]
GIOCHI CONSIGLIATI: Astrosmash, Lock ’N’ Chase, Demon Attack, Bump ’n’ Jump, Atlantis, Worm Whomper, Thin Ice, BurgerTime, Beauty & the Beast, Diner, Q*bert, Soccer
Menzione personale: Soccer, NBA Basketball, Tennis, Pitfall!

La consolle della mia Infanzia. L’emulatore del Mattel Intellivision è JZIntv nella versione per Raspberry Pi: va installato tra i pacchetti opzionali.

Questa la mappatura della tastiera:

Function/Special keys, all maps:
    F1              Quit
    F4              Break into debugger
    F5              Switch to keymap 0 (default keymap)
    F6              Switch to keymap 1 (left controller only for 1 player games)    
    F7              Switch to keymap 2 (ECS keyboard keymap)
    F8              Shift to keymap 3 while held (command keys)
    F9              Toggle fullscreen/windowed 
    F10             Toggle movie recording 
    F11             Take screen shot
    F12             Reset emulator
    Pause           Pause the emulator
    PgUp            Increase volume
    PgDn            Decrease volume
    Numeric Keypad, maps 0 and 1
    1-9             Left controller 1 - 9
    0               Left controller Clear
    .               Left controller 0
    Enter           Left controller Enter<
    Main Keyboard, map 0.  (Map 1 just moves right controller mappings to left.)
    0-9             Right controller 0 - 9
    -               Right controller Clear
    =               Right controller Enter
    Left Shift      Right controller top action buttons
    Left Alt        Right controller lower left action button
    Left Control    Right controller lower right action button    
    Right Shift     Left controller top action buttons
    Right Alt       Left controller lower left action button
    Right Control   Left controller lower right action button
    Up Arrow        Left controller disc up
    Down Arrow      Left controller disc down
    Left Arrow      Left controller disc left
    Right Arrow     Left controller disc right
   Fine-grain directional pad inputs:    U   I   O
      \ | /
       \|/ 
    J --+-- K      Left controller disc
       /|\
      / | \
    N   M   , 
   
    W   E   R
      \ | /
       \|/ 
    S --+-- D      Right controller disc
       /|\
      / | \
    Z   X   C

Il joystick dovrebbe funzionare. Ho però trovato qui alcune indicazioni per riconfigurare il joystick: esiste l’opzione --js<#> in grado di configurare fino a 4 periferiche USB (--js0 ... --js3).  Se lanciate –js0 senza parametri potete leggere i default: questo è quello che vedo io con un gamepad (e la tastiera) collegati:

joy: Found 1 joystick(s) joy: Joystick JS0 "Chicony USB Gaming Keyboard Pro"
joy: 0 axes, 0 trackball(s), 0 hat(s), 11 button(s) 
joy: Cfg: X-Axis = axis 0 Y-Axis = axis 1 Autocenter = off
joy: Push threshold = 17% Release threshold = 10%
joy: X range = [-49%,50%] Y range = [-49%,50%]
joy: Directions = 16 diagonal bias
--js0="xaxis=0,yaxis=1,noac,push=17,rels=10,xrng=-49:50,yrng=-49:50,16dir"
Giocando ad Astromash

Se volete settare i parametri questa è la sintassi:

 --js0="config string" 
...
 --js3="config string"

Il file:

jzintv/doc/jzintv/joystick.txt

descrive come modificare le stringhe per ottenere comportamenti diversi. Volendo potete collegare il controller originale acquistando un adattatore da qui o da qui.

NOTA: per far partire le vostre ROM (.bin, .int) potrebbe essere necessario recuperare alcuni files del BIOS e copiarli nella cartella BIOS:

  • Executive ROM: exec.bin
  • Graphics ROM: grom.bin
  • Entertainment Computer System ROM: comunemente conosciuto come ECS.BIN. Richiesto per giocare ai giochi ECS.
  • Intellivoice ROM: comunemente conosciuto come IVOICE.BIN. Richiesto per giocare coni giochi Intellivoice.

Questi files possono essere recuperati dal CD di Intellivision Lives! sotto licenza e copiati in: /home/pi/RetroPie/BIOS

Nelle versioni meno recenti di RetroPie (e se doveste avere problemi) provate a metterli in una diversa locazione: /usr/local/share/jzintv/rom

Questo path è uno di quelli in cui l’emulatore li cerca. Le cartelle però vanno create:

cd /usr/local/share
sudo mkdir jzintv
sudo mkdir jzintv/rom

in alcuni casi potrebbe essere necessario copiare anche le ROM dei giochi dalla cartella rom dell’emulatore appena creata:

sudo cp ~/RetroPie/roms/intellivision/* /usr/local/share/jzintv/rom

Vectrex (1982)

Vectrex-Console-Set
GIOCHI CONSIGLIATIBerzerk, Pole Position, Scramble, Space Wars, Star Castle

Mi hanno sempre affascinato i giochi dalla grafica vettoriale dei primi anni ’80, quelli che sembrano girare all’interno di un oscilloscopio (e qualcuno lo ha fatto sul serio…).

Purtroppo gli oggettivi limiti della categoria non hanno facilitato la diffusione delle console di questo genere dell’epoca.

Considerando che si portavano dietro anche un monitor a tecnologia vettoriale monocromatica, il prezzo diventava non del tutto accessibile.

Come però non dimenticare Space Wars (o meglio Asteroids)?

Purtroppo l’esperienza su un televisore non vettoriale o CRT non è delle migliori. E se ci aggiungere che i giochi sono davvero difficili, capirete come mail il Vectrex ormai sia solo un oggetto da appassionati.

Su RetroPie trovate l’emulatore lr-vecx, compatibile RetroArch. Accetta ROM .vec .gam .bin


ZX Spectrum (1982)

ZX Spectrum Sinclair
GIOCHI CONSIGLIATI: Elite, R-Type, Chuckie Egg, Manic Miner, Jet Set Willy, Knight Lore, Back to Skool, Football Manager, Lunar Jetman, Horace Goes Skiing, Boulder Dash, Head over Heels Chaos, Chase H.Q.,  Rebelstar, All Or Nothing, Stop The Express, The Sentinel, Rainbow Islands, Tornado Low Level, Sim City, Carrier Command, Super Hang On, Nebulus

L’emulatore di default è lr-fuse (quindi RetroArch). Ha perciò l’indubbio vantaggio di condividere la configurazione dei controller: usate la combinazione di tasti descritta all’inizio del post per accedere alla configurazione oppure salvare, resettare o uscire dall’emulatore.

Ma in passato la mia esperienza con lr-fuse non è stata così positiva. Finalmente nelle ultime versioni di RetroPie è stato previsto anche l’emulatore fuse (da installare come pacchetto opzionale): la sua configurazione è possibile con la tastiera (F1) o anche attraverso il joypad.

Le ROM supportate sono: sna .szx .z80 .tap .tzx .gz .udi .mgt .img .trd .scl .dsk

Le ROM vanno copiate in: /home/pi/RetroPie/roms/zxspectrum


C64 (1982)

C64-left
GIOCHI CONSIGLIATIManiac Mansion, Zak McKracken and the Alien Mindbenders, Bubble Bobble, Turrican II: The Final Fight, Creatures, Project Firestart, Samurai Warrior: The Battles of Usagi Yojimbo, Defender Of The Crown, Emlyn Hughes International Soccer, Leaderboard Golf, Buggy Boy, Last Ninja 2, Mayhem in Monsterland, IK+, Impossible Mission, Elite, World Games, Summer Games II, Arkanoid: Revenge of Doh, The Way of the Exploding Fist, Grand Prix Circuit, Revs, Microprose Soccer, California Games, Pitstop II, Ghosts’n Goblins, Summer Games, Rainbow Islands, Barbarian: The Ultimate Warrior, The Great Giana Sisters, Ghostbusters, Combat School, Cabal, One on One, Popeye, Prince of Persia, Rocket Ball, Nebulus

L’emulatore VICE va installato come pacchetto opzionale. Per cambiare le impostazioni dell’emulatore è necessario accedere al pannello dei settaggi: premere F12 e seguire le istruzioni a video.

Le ROM compatibili sono: .crt .d64 .g64 .t64 .tap .x64

Vanno copiate in: /home/pi/RetroPie/roms/c64

Si trovano molti giochi con ROM in dischi multipli: è una buona abitudine creare sotto /rom/c64 delle sottocartelle per gioco, ma farli avviare correttamente è veramente fastidioso e difficile. Soprattutto in questo caso un passaggio dalle impostazioni di VICE è obbligatorio (fatemi sapere).

Altra sfida è riuscire a trovare la giusta configurazione per mappare il tasto “RUNStop”, necessario per far partire il gioco dopo la schermata di introduzione). Qui riporto il mappaggio teorico di una normale moderna tastiera con quella del C64 (da www.commodoreserver.com), ma con me non ha mai funzionato:

Il problema potrebbe essere un conflitto tra il mappaggio della tastiera per EmulationStation ed il mappaggio per VICE: infatti in EmulaStation il tasto ESC (che sul C64 è Run/Stop) viene utilizzato per altri scopi.

Qui i controlli di default:

66C201A9145B40ED859FE61662E6C8A8
Start Game: Spacebar
Menu: F12
Select: Enter
Cancel: Backspace
Exit GUI: Escape

Changing Controls:
-Press F12 to enter menu
-Navigate to machine settings and press enter
-Navigate to Joystick settings and press enter
-Navigate to Joystick device in port 2 and press enter
-to use a numpad to play your game navigate to Numpad and press enter
     -Up: 8
     -Up/Right: 9
     -Up/Left: 7
     -Left: 4
     -Right: 8
     -Down: 2
     -Down/Left: 1
     -Down/Right: 3
     -Fire: 0
-to use a Joystick (gamepad) instead, navigate to Joystick and press enter

SAVING CONFIGURATIONS:

Go into 
- settings management
- save settings on exit
- save current settings
- save hotkeys
- save joystick map

CUSTOM MAPPING
- Go back to Joystick settings by pressing backspace and navigate to Joystick 1 Mapping and press enter
- Press enter on each key followed by pressing the key on your gamepad you wish to be mapped.
- Press escape to exit the menu and return to your game

La configurazione del joystick la trovate in /opt/retropie/configs/c64/sdl-vicerc e /opt/retropie/configs/c64/sdl-joymap-c64.vjm.  Per configurare il joystick è necessario di nuovo andare nelle impostazioni di Vice (F12):

Select – Settings Management > Select – Define UI Keys > Select – Activate Menu

img_4172

Ora premete un tasto che vi servirà per accedere al menu di VICE: qualcosa che non viene usata spesso, come per esempio “<” oppure “,”. Uscite da questo menu premendo Backspace.

Select – Save Current Settings.

Ora potete uscire da VICE, spegnere il Raspberry, disconnettere la tastiera (se volete) e collegare uno o due joystick. Fate il reboot e riaprite VICE. Entrate nel menu:

Select – Machine Settings > Select – Joystick Settings

La mia esperienza mi dice che ci sono due scelte possibili:

  1. Far funzionare il Joystick come emulazione di una tastiera (Allow keyset joystick)
  2. Far funzionare il Joystick come un normale Joystick (per quelli analogici è la scelta necessaria)
img_4174

Vediamo la soluzione N1.

Select – Allow keyset joystick: dovete vedere un asterisco

Select – Define keysets: rimappate i tasti e bottoni del joystick per ogni voce proposta

Se utilizzate un solo joystick vi consiglio di collegarlo alla porta N.2 e di configurarlo come joystick 2. Una volta definiti tutti i controlli per uno o due joystick uscite da questo menu cliccando “back” sul pulsante del joystick.

Select Joystick device in port 1 – > cambiatelo in Keyset 1
Select Joystick device in port 2 – > cambiate in Keyset 2
img_4173

Alcuni giochi del C64 richiedono di avere il joystick inserito esattamente nella porta 1 o porta 2. Potete fisicamente scambiare le porte (io ve lo sconsiglio), ma anche usare la funzione Swap joystick ports che lo fa al volo (si tratta di mappare un tasto sulla tastiera che esegue lo swap).

Per la soluzione N2:

Select Joystick device in port 1 – > cambiatelo in Joystick
Select Joystick device in port 2 – > cambiatelo in Joystick
Select Allow keyset joystick: dovete elimiare l'asterisco
Select Joystick 1 mapping: eseguite le istruzioni
2014-12-08 13.41.30

Select Joystick 2 mapping: eseguite le istruzioni

Alla fine, per entrambe le soluzioni, ricordatevi di salvare:

Exit the Joystick menu.
Exit Machine Setting menu.
Select – Settings Management.
Select – Save current settings, SaveJoystick Map, etc...
Exit the menu and test.

NES (1983)

NES-Console-Set
GIOCHI CONSIGLIATI: Super Mario Bros. 3, The Legend of Zelda, Super Mario Bros., Mega Man 2, Castlevania III: Dracula’s Curse, Metroid, Mike Tyson’s Punch-Out!!, Tetris, Final Fantasy, Dragon Warrior III, Bionic Commando, Duck Tales, Contra, Ninja Gaiden II

Gli emulatori disponibili sono 3 (lr-fceummlr-nestopialr-quicknes) tutti compatibili RetroArch. L’emulatore acceta files .zip .nes .smc .sfc .fig .swc .mgd

Nestopia può anche far girare ROM del Famicom Disk System utilizzando un files del BIOS disksys.rom da copiare in:

/home/pi/RetroPie/BIOS

Gli emulatori disponibili utilizzano quindi la configurazione Retroarch di default (quella che avete impostato al primo avvio di RetroPie). Se si volesse adottare una configurazione custom, è possibile editare il file:

/opt/retropie/configs/nes/retroarch.cfg

Usate la combinazione di tasti descritta in precedenza per accedere alla configurazione oppure salvare, resettare o uscire dall’emulatore.

Finalmente potrete giocare a Nintendo World Championships: Gold Edition. Furono prodotte soltanto 26 cartucce (il più raro videogame della storia), oggi dal valore superiore ai 10.000 dollari!


MSX(1983)

Sony MSX 1
GIOCHI CONSIGLIATI: Bubble Bobble, Castle Excellent, Comic Bakery, The Goonies, The Black Onyx, Penguin Adventure, Romancia, Guardic, Nightmare, Eggerland Mystery

MSX è la denominazione di uno standard per degli Home computer degli anni 1980. Fu concepito da Kazuhiko Nishi, all’epoca vice direttore della filiale giapponese di Microsoft e fondatore della società ASCII, con l’intento di creare delle linee guida comuni per la costruzione di computer compatibili da parte di diversi produttori.

in Italia sono stati diffusi numerosi esemplari prodotti da Philiphs e Samsung. La prima versione (MSX 1) è molto simile alle console videogiochi Colecovision e Sega SG-1000. La storia di MSX è però piuttosto varia e lunga: sono molte le azienda che fino a pochi anni fa sono rimaste attive con il marchio MSX Association.

In RetroPie trovate 3 emulatori, di cui 2 RetroArch compatibili: accettano ROM .rom .mx1 .mx2 .col .dsk

E’ necessario però recuperare i BIOS: MSX.ROM e PHILIPSDISK.ROM

Potrete poi anche sviluppare con una delle prime versioni del BASIC di Microsoft!


Amstrad (1984)

amstrad_cpc4641
GIOCHI CONSIGLIATI: cpcwiki.eu
Menzione personale: Roland goes Digging

Gli emulatori disponibili sono due: lr-caprice32 e CapriceRPI.

Mettete le ROM su: /home/pi/RetroPie/roms/amstradcpc

lr-Caprice32 sfrutta la configurazione RetroArch: dovreste quindi avere già il controller configurato. Usate la combinazione di tasti descritta in precedenza per accedere alla configurazione oppure salvare, resettare o uscire dall’emulatore.

CapriceRPI invece prevede un minimo di interazione in più. Ma vi bastano i comandi CAT e RUN”FILENAME

  • CAT: vi elenca la lista dei files per il vostro gioco
  • RUN“<FILENAME>: fate partire il file corrispondente

Inoltre potete usare: F5: reset, F6: exit

Qui un riferimento per la console del CPC464. Qui ulteriori informazioni.


Amiga (1985)

Leander_Amiga500
GIOCHI CONSIGLIATI: Super Cars II, Sensible Soccer: European Champions, Kick Off 2, Eye of the Beholder, 5. Eye of the Beholder II: The Legend of Darkmoon, Cannon Fodder, Syndicate, Lemmings, Pinball Fantasies, The Secret of Monkey Island, Monkey Island 2: LeChuck’s Revenge, Speedball, Prince of Persia, Rainbow Islands, Flashback: The Quest for Identity, Turrican II: The Final Fight, F/A-18 Interceptor, Jimmy White’s Whirlwind Snooker, Sensible World of Soccer ’95/’96, The Settlers, Simon the Sorcerer, Another World, Wings,
Formula One Grand Prix, Pinball Dreams, Pirates!

Da installare come pacchetto opzionale. Dalle ultime versioni di RetroPie l’emulatore consigliato per Amiga è il UAE4All2, che affianca quello storico UAE4ARM.

Viene fornito con la ROM gratuita AROS che è in grado di far partire molti giochi.

Se invece volete usare le ROM Kickstarter originali, che danno certamente maggiore garanzia, potete copiarle nella cartella dei BIOS:

/home/pi/RetroPie/BIOS/

In genere il nome dei files delle ROM devono essere kick13.rom, kick20.rom, kick31.rom.

Le ROM dei giochi invece vanno vanno in:

/home/pi/RetroPie/roms/amiga/

Qui trovate qualche altra informazione e qualche consiglio per eventuali problemi di funzionamento.

Per lanciare i giochi (purtoppo) nella versione di RetroPie in mio possesso, è necessario passare dalla GUI di UAE4ALL2.

Attraverso questa interfaccia non è solo possibile caricare le ROM dei giochi, ma anche cambiare la configurazione hardware, emulando le varie espansioni sia dell’Amiga 500 che dell’Amiga 1200.

UAE4ALL
UAE4ALL
IMG_0903
IMG_0904

Facendo riferimento alle immagini in alto:

  1. E’ possibile decidere il numero di Drives e quindi di dischetti (ROM) caricabili. Per i giochi multidisco è necessario caricare tutte le immagini corrispondenti.
  2. E’ possibile impostare la velocità di lettura dei dischi: io in genere imposto 8x.
  3. In ogni schermata è possibile caricare la configurazione hardware tipo dell’Amiga 500 piuttosto dell’Amiga 1200.
  4. E’ possibile specificare la ROM del kickstarter: per l’Amiga 500 in genere si usa la versione 1.3.
  5. Se UAE4ALL non dovesse trovare il file di ROM del kickstarter, potete sfogliare il file system ed indicarglielo.
  6. In ogni schermata è possibile caricare la configurazione hardware tipo dell’Amiga 500 piuttosto dell’Amiga 1200.
  7. E’ possibile cambiare la quantità di RAM sia sul CHIP che di espansione. In genere va bene 1MB, oppure 512kB+512kB. Alcuni giochi però potrebbero richiedere 2MB.
  8. Io preferisco avere l’audio dell’Amiga riprodotto in modo accurato!
  9. Da impostare la porta Joystick.
  10. In genere è necessario rallentare la velocità del Mouse.

A questo punto basta premere RESET e caricare il gioco! I principali controlli:

lctrl      - joy 1/mouse 1 (button X in gui)
lalt       - joy 2/mouse 2 (button Y in gui)
lshift     - joy 1 autofire (button A in gui)
z          - mouse 1  (button B in gui)
5          - switch input between mouse/joystick
arrow keys - up / down / left / right
lctrl + esc (exit back to menu)

Sony Playstation 1 (1994)

Sony Playstation 1
GIOCHI CONSIGLIATI: Metal Gear Solid, Gran Turismo 2, Final Fantasy 7–9, Tekken 3, Castlevania: Symphony of the Night, Xenogears, Soul Reaver, Civilization 2, Resident Evil 2, Driver, Crash Bandicoot Warped, Grand Theft Auto 2, Medal of Honor: Underground, Command & Conquer Red Alert, Silent Hill, Tony Hawk’s Pro Skater 2, Wipeout XL, Ape Escape, Tomb Raider II

Ci sono a disposizione ben 3 emulatori compatibili Retroarch che accettano files di tipo:

.bin .cue .cbn .img .iso .m3u .mdf .pbp .toc .z .znx

Ma per poter far funzionare il tutto potrebbe essere necessario recuperare il BIOS chiamato SCPH1001.BIN. Va copiato al solito in:

/home/pi/RetroPie/BIOS

Esistono comunque numerosi BIOS alternativi che potrebbero essere utilizzati. Per quanto riguarda il controller, se utilizzate come emulatore lr-pcsx-rearmed oppure lr-beetle-psx, essendo compatibili RetroArch, potete tranquillamente usare un DualShock della PS3.

Nella mia prima versione di RetroPie con il Raspberry Pi 1 Model B ho sempre avuto qualche difficoltà a far girare i giochi della PSX, soprattutto quelli in vettoriale 3D.

Con il nuovo Raspberry Pi 2/3, le cose girano lisce come l’olio, evidenziando come l’aumento di clock e di memoria video abbia giovato nettamente alle performance generali.


Mame

Neo_Geo_full_on
GIOCHI CONSIGLIATI: Pac-Man, Galaga, Donkey Kong, Star Wars, Ms. Pac-Man, Dig Dug, Asteroids, Defender, Tron, Tempest, Centipede, Joust, Robotron 2084, Pengo, Q*bert, Ghosts ‘n Goblins, Arkanoid, Outrun, Street Fighter, Tron, Golden Axe, NBA Jam, Ferrari F355 Challenge, Area 51, Virtua Cop II, Soul Caliber, New Zealand Story, Afterburner, R-Type, 1942, Mario Bros, Gyruss, Dragon’s Lair, Pole Position, Popeye, Ladybug

M.A.M.E. è acronimo di Multiple Arcade Machine Emulator. MAME può emulare le migliaia di giochi che hanno popolato bar e sale giochi negli anni 80 e che altrimenti sarebbero andate perduti nella cenere della storia.

In RetroPie ci sono numerosi emulatori per MAME. La versione consigliata è la Mame4all-Pi basata sulla 0.37b5 di Nicola Salmoria che dovrebbe supportare “solo” 2270 ROM. E’ però disponibile anche lr-imame4all (anche questa 0.37b5) che sembra più stabile ed è compatibile RetroArch.

Tutti gli altri emulatori previsti dovrebbero far girare molti più giochi (fino a 8782), ma usano versioni delle ROM più recenti e meno reperibili. Scegliete quindi la versione dell’emulatore che fa al caso vostro, soprattutto in funzione delle vostre ROM.

Potete mettere le ROM nella cartella arcade. Leggete qui.

/home/pi/RetroPie/roms/arcade/


Emulator ROM Folder Required ROM Set Version Controller Configuration
mame4all-pi arcade or mame-mame4all MAME 0.37b5 /opt/retropie/configs/mame-mame4all/cfg/default.cfg
lr-imame4all arcade or mame-mame4all MAME 0.37b5 /opt/retropie/configs/arcade/retroarch.cfg, or /opt/retropie/configs/mame-mame4all/retroarch.cfg
lr-mame2003 arcade or mame-libretro MAME 0.78 /opt/retropie/configs/arcade/retroarch.cfg, or /opt/retropie/configs/mame-libretro/retroarch.cfg
lr-mame2010 arcade or mame-libretro MAME 0.139 /opt/retropie/configs/arcade/retroarch.cfg, or /opt/retropie/configs/mame-libretro/retroarch.cfg
AdvanceMAME 0.94 arcade or mame-advmame MAME 0.94 /opt/retropie/configs/mame-advmame/advmame-0.94.0.rc
AdvanceMAME 1.4 arcade or mame-advmame MAME 0.106 /opt/retropie/configs/mame-advmame/advmame-1.4.rc
AdvanceMAME 3 arcade or mame-advmame MAME 0.106 /opt/retropie/configs/mame-advmame/advmame.rc

Indipendentemente dall’emulatore vi serve il BIOS del NEOGEO: piazzate il file neogeo.zip nella stessa cartella delle ROM.

Facendo riferimento alle configurazioni Retroarch premete TAB durante qualsiasi gioco per accedere alla configurazione dell’emulatore. I principali tasti sono:

Keys LControl, LAlt, Space, LShift are the fire buttons
Cursors Keys for up, down, left and right
Keys 1 & 2 to start 1 or 2 player games
Keys 5 & 6 Insert credits for 1P or 2P
Key Escape to quit
Key TAB to bring up the MAME menu
Function Keys: F11 show fps, F10 toggle throttle, F5 cheats, Shift F11 show profiler
Key P to pause

Il mondo delle ROM del MAME è complesso: d’altra parte l’hardware che viene emulato è davvero molto vario. Per orientarvi partite da qui.

MAME controlla il tipo e la versione della ROM che è chiamato ad eseguire. MAME avvia solo ROM testate: per questo è possibile ottenere una lista completa dei giochi supportati eseguendo il comando:

sudo /opt/retropie/emulators/mame4all-pi/mame -listgames > listgames.txt

E’ possibile però convertire versioni differenti di ROM in versioni compatibili tramite ClrMAME. Se volete verificare la ROM di un gioco (es: Robby reperibile sul sito ufficiale di MAME), oppure tutte le rom di una cartella e scrivere i risultati in un file di testo, potete eseguire i seguenti comandi:

sudo /opt/retropie/emulators/mame4all-pi/mame -verifyroms ~/RetroPie/roms/mame/robby
sudo /opt/retropie/emulators/mame4all-pi/mame -verifyroms ~/RetroPie/roms/mame/* > verify.txt

In alternativa potete utilizzare alcuni “ROM Manager” come ClrMAME Pro (qui la guida nella traduzione italiana) e RomCenter: con questi software (per Windows) potete veriifcare le vostre ROM ed eventualmente convertirle nel formato corretto. Ma soprattutto potete ricostruire correttamente gli archivi di ogni gioco. Per questo vi serve il file .dat per la vostra versione del MAME. Molte informazioni su mameitalia.net. Qui per semplicità riporto il file MAME 0.37b5.dat che ho utilizzato io per mettere ordine al mio archivio.

Ricordo solo che se usate le rom nel formato “split sets” dovete necessariamente copiarle tutte dentro RetroPie: infatti i files in comune tra molte ROM non sono replicati ma messi in condivisione tra ROM diverse (questo per risparmiare qualche centinaio di MB su disco).

Altri emulatori

Retropie fornisce numerosi altri emulatori: dal Nintendo 64 al Sega Master System. Potete installarli seguendo le stesse le istruzioni riportate all’inizio del post. Il loro funzionamento è infatti simile a quanto già illustrato. Eventualmente scrivetemi per maggiori informazioni. Vi segnalo alcune piattaforme da provare.

  • ScummVM (installable come pacchetto opzionale): è l’ambiente realizzato da LucasArts per far girare le loro famose avventure grafiche punta e clicca: ad esempio Monkey Island, Indiana Jones, Day of the Tentacle, Sam & Max, Zak McKracken. Pura storia.
  • Ports (installable come pacchetto opzionale): vi si trova il porting di software compatibile Linux Raspbian (ad esempio KODIil media center). Oppure giochi storici come Quake, Prince of Persia, Doom, Cave Story, Duke Nukem 3D, Wolfenstein 3D. Tutti questi titoli sono contenuti nel pacchetto di installazione.

Alternative a RetroPie

http://chameleon.enging.com

Se volete acquistare e contribuire a questo sito

Per ogni acquisto tramite i links di questo blog potrete donarmi una piccola percentuale dell’importo speso, senza sovrapprezzo sul listino di amazon.it.

Cliccate qui se volete attivare la spedizione amazon gratuita in 1 giorno