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.
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.
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).
Particolarmente 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.
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.
Volendo 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 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 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 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 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/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 Gamepad USB SNES Controller In stile SNES | Qumox SNES GamePad USB Altro controller in stile SNES, fedele nella colorazione |
Microsoft Xbox 360 – Wired nella versione per PC (ma va bene anche la versione nativa per XBOX 360) | Qumox Nintendo NES GamePad controllore USB In stile NES e Super Famicom. Imprescindibile. |
Per i nostalgici del Nintendo 64. | Ewent Controller Joypad USB, Dual Shock Derivato dal controller della Sony PS1 |
Buffalo Classic Gamepad USB Simile al controller SNES | Retro-bit classic controller Ispirato all’iconico controller dell’ATARI 2600 |
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.
Gli 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!
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…
Hotkeys | Action |
Select/Hotkey + Start | Exit |
Select/Hotkey + Right Shoulder | Save |
Select/Hotkey + Left Shoulder | Load |
Select/Hotkey + Right | Input State Slot Increase |
Select/Hotkey + Left | Input State Slot Decrease |
Select/Hotkey + X | RGUI Menu (Retroarch menu) |
Select/Hotkey + B | Reset |
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.
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.
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 passwdinserite 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
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.
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.
Aggiornamento e configurazione manuale
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)
Trovare le ROM non è difficile, ma è fondamentale installare solo quelle compatibili con gli emulatori. Ecco alcuni punti di partenza:
- http://www.theoldcomputer.com/
- http://coolrom.com
- http://www.freeroms.com
- http://www.rom-world.com
- http://www.intellivisionworld.com
- http://www.whoopy.it/emulatori/roms-commodore-64/
- http://www.doperoms.com
- http://www.edicolac64.com/
- http://gamebase64.hardabasht.com/games/
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:
quindi reinserire la password: raspberry |
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
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.
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)
GIOCHI CONSIGLIATI: Pitfall!, 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)
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)
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"
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)
GIOCHI CONSIGLIATI: Berzerk, 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)
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)
GIOCHI CONSIGLIATI: Maniac 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:
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
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:
- Far funzionare il Joystick come emulazione di una tastiera (Allow keyset joystick)
- Far funzionare il Joystick come un normale Joystick (per quelli analogici è la scelta necessaria)
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
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
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)
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-fceumm, lr-nestopia, lr-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)
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)
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)
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.
Facendo riferimento alle immagini in alto:
- E’ possibile decidere il numero di Drives e quindi di dischetti (ROM) caricabili. Per i giochi multidisco è necessario caricare tutte le immagini corrispondenti.
- E’ possibile impostare la velocità di lettura dei dischi: io in genere imposto 8x.
- In ogni schermata è possibile caricare la configurazione hardware tipo dell’Amiga 500 piuttosto dell’Amiga 1200.
- E’ possibile specificare la ROM del kickstarter: per l’Amiga 500 in genere si usa la versione 1.3.
- Se UAE4ALL non dovesse trovare il file di ROM del kickstarter, potete sfogliare il file system ed indicarglielo.
- In ogni schermata è possibile caricare la configurazione hardware tipo dell’Amiga 500 piuttosto dell’Amiga 1200.
- 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.
- Io preferisco avere l’audio dell’Amiga riprodotto in modo accurato!
- Da impostare la porta Joystick.
- 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)
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
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 KODI, il 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
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
le rom possono essere caricate anche su un hard disk esterno?
Ciao Paolo,…
Considera che l’HDD esterno (soprattutto se rotante) andrebbe alimentato opportunamente (difficilmente il Raspberry Pi riuscirà a dargli l’energia necessaria).
si, è possibile.
Devi montare in modo automatico l’HHD esterno (in modo che sia disponibile ad ogni avvio). Edita quindi il file di configurazione es_systems.cfg
Per ogni sezione (quindi per ogni emulatore) devi cambiare l’elemento “path” puntando al tuo HDD esterno.
TI ricordo anche che una SD da 32GB (dal costo di circa 15 euro) è sufficiente per caricare tutte le ROM di decine di emulatori.
Credo che sia la migliore guida in italiano che ci sia online, ottimo lavoro, davvero.
concordo
Ciao, strepitosa guida, la migliore che ho trovato in rete in italiano, complimenti!
ho un dongle bluetooth USB e un controller xbox360 senza filo e Retropie funzionante,
Mi puoi dare due dritte se possibile su come installare il controller xbox per usarlo con mame4all?
Grazie
Dalle impostqazioni di retropie seleziono BLUETOOTH e poi “Register and connect to bluetooth device” ma, anche con due dongle bluetooth diversi , mi da: “No device were found”
Buongiorno ,
bella guida davvero .
Non mi è chiaro come configurare il joypad Xbox 360 .
Installato correttamente su Emulatione Station va perfetto e su Intellivision funziona solo la direzione .
Come facio ad impostare anche il resto ?
Saluti e grazie
Prima una premessa: quando configuri un controller per Emulation Station, lo configuri SOLO per Emulation Station. Ogni emulatore necessita invece di una configurazione specifica.
Purtroppo dalla mia esperienza il controller XBOX funziona bene solo con gli emulatori basati su Retroarch.
L’Intellivision è invece basato su jzIntv. Puoi intanto trovare un po’ di documentazione nella cartella di installazione di jzIntv del tuo PI:
{intellivision_jzintv}/doc/jzintv/joystick.txt
Prova anche a dare una occhiata a questa guida (per alcuni sembra abbia funzionato):
http://www.hyperspin-fe.com/forum/showthread.php?20656-replacing-Nostalgia-(Intellivision-emu)-joystick-support
buonasera,volevo prima di tutto ringraziare per la guida.
sono riuscito a configurare praticamente tutto,ma non riesco a configurare il joystick per neogeo,volevo usare gngeo.
se non fosse possibile volevo chiedere se si poteva integrare un emulatore diverso per un altro sistema,praticamente volevo usare mame4all sotto il menu neogeo.
spero di essere stato abbastanza chiaro.
la ringrazio di tutto
gabriele
Ciao,
direi di si. MAME4ALL è già utilizzato in Retropie per altri emulatori.
Devi editare il file es_systems.cf in modo opportuno per la sezione NEOGEO. Fai riferimento alle indicazioni nel post.
Se puoi posta qui i risultati delle tue prove.
Ciao, E’ un pò di tempo che mi confronto con gli emulatori, soprattutto AMIGA, ma non ho mai approfondito la cosa. Sono stato un possessore di COMMODORE 64, AMIGA 500 PLUS e tuttora WII. Leggendo il tuo articolo mi sono messo a fare delle ricerche più approfondite e mi è venuta quasi voglia di costruirmi un mini cabinato. A parte questo progetto secondo te come base potrebbe andare bene anche un mini computer a chiavetta con sopra WIN?
Perchè non usare un RasperryPI 2? SENZA Windows!!!
Ciao!
Sai per caso se è possibile, soprattutto su Mame/neogeo, il salvataggio degli highscores?
Ciao,vorrei inserire il Rasperry nel mio cabinato in modo da poter avere tutti i giochi mame nello stesso,è fattibile abbinarlo con il vecchio monitor a 15hz?e configurare il jostick del cabinato stesso è un casino?
grazie!
Configurare il Joystick non è un grande problema e ci sono vari esempi on-line.
Dai un occhio qui:
http://www.makeuseof.com/tag/7-fantastic-retropie-game-stations-can-build-weekend/
in aiuto possono venirti questi add-on per il raspberry:
http://petrockblog.storenvy.com/products/13969497-controlblock
oppure se vuoi risparmiare qualche euro:
http://petrockblog.storenvy.com/products/9880033-retropie-gpio-adapter
La guida completa per interfacciare un controller custom la trovi qui:
http://blog.petrockblock.com/2014/12/29/controlblock-power-switch-and-io-for-the-raspberry-pi/
Invece credo che recuperare il vecchio monitor possa essere un problema: probabilmente sarebbe più economico utilizzare una lastra LCD con interfaccia HDMI. Anche per un tema di risparmio energetico, riscaldamento e… longevità.
Puoi anche usare questo trick per avere un feeling like monitor CRT anche su un moderno LED:
cito:
“In this guide (based on RetroPie 3 beta 2) you can setup an overlay that sits on top of the emulated game to simulate scanlines and a general CRT feel. There is a comparison between overlays, shaders and the default view shown.”
Trovi le istruzioni qui:
http://smartretro.co.uk/forums/viewtopic.php?f=3&t=85
il video qui:
https://youtu.be/viSb9t-y7AU
e lo script qui:
https://github.com/biscuits99/rp-video-manager
Ho provato due volte a scrivere ieri, ma il mio commento non salta mai fuori.
Facendo girare un’ immagine 4:3 (anche con eventuale sfondo, però ovviamente fisso) su un LCD, si possono avere problemi di stampaggio ?
Ciao e grazie per la guida é davvero utile! Ho solo un problema con il controller della ps1 che uso con un adattatore usb. Ho configurato tutti i tasti ma nell’emulatore per snes e master system non riesco ad uscire. Ho configurato la combinazione select + start ma nn funziona; non riesco ad uscire neppure con la tastiera… Qualche suggerimento?
salve,
ho aggiornato alla nuova versione (3.4).
Ho riscontrato però che quando lo spengo o riavvio ci mette diversi minuti prima di spengersi.
PRima invece era una scheggia…adesso devo aspettare diverso tempo…… qualcuno sa come mai?
Ciao. 😀
Innanzituto complimenti per la guida, e per la mole di “memorie hardware” che hai inserito. Sono tornato indietro di 30 anni! :))))
Veniamo al mio problema…
Quando devo spegnere il raspy mi limito a togliere corrente perchè non so come fare lo shotdown… come si fa?….
Ad ogni modo, quando tolgo corrente e poi torno a riaccendere, non viene più caricato retropie. Rimane lo schermo completamente nero…
L’unico modo che ho per risolvere il problema è rimontare l’ISO sulla SD… Naturalmente, perdendo tutti i settaggi e soprattutto… GLI AGGIORNAMENTI!
Consigli?
Ciao Andrea,
in genere Linux è abbastanza tollerante con gli spegnimenti incontrollati, ma è comunque sconsigliabile togliere l’alimentazione bruscamente.
Su sistemi complessi come RetroPie (nel senso che c’è I/O su disco) potrebbe corrompersi addirittura la CF.
All’interno dell’interfaccia RetroPie c’è il menu che permette sia di fare un reboot, che di spegnere il Raspberry.
Nella schermata principale con il Joypad premi il pulsante START (o BACK, dipende dalla configurazione RetroArch) ed accedi ud un menu necessario.
Eventualmente premendo F4 puoi accedere alla riga di comando e con l’utente su fare un reboot a mano tramite il comando shutdown.
Pensare di riconfigurare da zero tutte le volte la ISO mi sembra frustrante, anche perchè perderesti tutti i save-gemes
Facci sapere
Uff…
Allora, ho provato prima con “Restart System” ed è ripartito tutto. Poi “Restart Emulationstation” ed anche qui tutto bene…. Fatto lo “shotdown system” si è spento e le luci sul raspy sono rimaste entrambe accese fisse…. La rossa ci sta credo, ma la verde dopo poco non dovrebbe spegnersi?… Dopo circa cinque minuti di luci sempre accese fisse ho tolto corrente pensando che fosse ormai uno stato definitivo…
Ridato corrente e come prima non riparte più…
Mi accingo al format e montaggio ISO per l’ennesima volta in attesa che arrivino consigli che mi permettano di risolvere… :'(
Intanto un saluto e grazie 🙂
Ok problema risolto in parte…
Trovato il menu per fare lo shotdown ed usato… Peccato che ad un successivo riavvio rimane il problema menzionato sopra. Ovvero Retropie non si carica. Rimane lo schermo tutto nero.
Ora provo a riformattare la sd e rimontare l’ISO e fare un restart invece dello shotdown… vediamo che succede.
Invece che riavviare dall’interfaccia di RetroPie, premi F4 e vai da riga di comando. Quindi scrivi sudo shutsown. Ti chiederà la password. Magari trovi qualche messaggio di errore che può darti qualche indizio.
Eventualmente prova a cambiare CF…
ovviamente intendevo:
sudo shutdown
Provato. SD kingstone da 8GB praticamente nuova… funzionante. (La precedente era una Lexar da 32 che prima usavo sul telefono).
Dopo sudo shutdown appare
Shutdown scheduled for mer 2016-03-16 20:08:13 CET, use ‘shutdown -c’ to cancel.
Nuovamente una riga dedicata al prompt (aspetta l’annullamento del comando shutdown con il comando shutdown -c se non ho capito male)
Broadcast message from root@retropie (wed 2016-03-16 20:07:13 CET):
The system is going down for power-off at Wed 2016-03-16 20:08:13 CET!
Poi si è spento.
luce rossa e verde sul raspi sempre accese fisse… Monitor che indica nessun segnale…
Dopo qualche minuto tolgo corrente e aspettando ancora circa un minuto rialimento.
…stessa storia… non cambia niente. nessun dato arriva al monitor. in pratica il raspi non riparte…
Non mi funzionava nemmeno sul raspi 2… all’epoca ho pensato addirittura ad un hardware fallato… solo che Raspbian funzionava perfettamente..
Sul 2 non partiva nemmeno. Tant’è che ho provato anche ad installare la ver. per il raspi 1… la disperazione sai… 🙂
Non mi è MAI partito…
Ora ho preso il raspi 3… qui almeno parte!!! ahahahahah
Avrò la maledizione di “Tutan-RetropYe” HAHAHAHAHAH
Dammi una mano a risolvere va la che sennò faccio un frullato di lampone! ahahahh
Sapete se su raspberry b+ gira il daphne ?? se lo installo come “sperimentale” dal menu retropie si blocca con errore e non lo installa.
Grazie
Ciao Alessandro, complimenti e grazie per questa guida 🙂
Due domande, se volessi lanciare un gioco, ad esempio pacman, direttamente da riga comando senza dover caricare tutta l’interfaccia sarebbe possibile?
Inoltre hai da consigliarmi qualche buon lcd (3.2″ / 3.5″)
Grazieeee 🙂
Ciao,
è assolutamente possibile, e non è necessario Retropie.
Devi preparare uno script che venga lanciato all’avvio e che faccia partire l’emulatore che desideri insieme alla ROM.
(Per lanciare un tuo script fai riferimento ad esempio a queste indicazioni:
https://www.raspberrypi.org/documentation/linux/usage/rc-local.md)
Nella riga di comando tra i parametri accettati in input tutti gli emulatori prevedono la ROM da eseguire.
Per farti un esempio, l’emulatore VICE del C64 può essere lanciato semplicemente con:
x64 pacman.x64.gz
(ovviamente è un esempio)
Devi fare riferimento alla guida del singolo emulatore: tutti hanno una miriade di opzioni da riga di comando.
Sempre rimanendo in tema C64 se digiti
x63 -help
ti snocciola tutti i parametri previsti.
Che emulatore intendevi usare?
Dopo avermi fatto conoscere la fotografia street, LDD per Lego, le fotocamere Vintage e dopo avermi fatto conoscere un sacco di altre cose cercando collegamenti dopo aver letto il tuo blog oggi ho ordinato il Raspberry. Cercherò di avere anche io la mia retro console. Grazie Alessandro.
Salve volevo sapere e possibile aggiungere un emilatore mame con una release aggiornata visto che su quelli gia montati non si trovano molte rom? E se si come? Grazie. E complimenti.
Ovviamente parlo di retropie su raspberry 3….grazie mille in anticipo…
Ciao Alessandro, grazie a te ho potuto riscoprire i giochi della mia gioventù che credevo ormai persi senza più le console.
Ho preso una raspberry pi 3 bodello B, al momento l’ho configurata con una microSD da 4GB classe 4 che avevo a casa e va benissimo, vorrei però prenderne una più grande, non si sa mai, secondo te va bene da 8Gb o più? Conviene prenderne una veloce (tipo classe 10), o va bene una 4 o 6 ?
Poi volevo chiederti come faccio a capire quanta memoria disponibile ho dalla raspberry pi ?
Un’ultima cosa, cercando Retro Pie su google e youtube a tutti il menù principale (dove si scelgono le console da emulare) lo sfonso cambia con immagini di giochi della relativa console. A me (penso sia di default) è tutto nero. Sapresti dirmi come si fa cortesemente ?
Grazie in anticipo per l’eventuale risposta e complimenti ancora per l’esaustiva guida 🙂
Complimenti vivissimi per la guida, veramente ben fatta! Ottimi anche gli spunti per i giochi da provare, avendone tanti a disposizione si rischia di perdersi il meglio! Sito salvato tra i preferiti 🙂
Ciao Alessandro. Quando eseguo il seguente comando sudo ./retropie_setup.sh mi dice che è inesistente. Posso fare la configurazione anche dall’interfaccia grafica?
Grazie
Ciao Alessandro. E’ possibile collegare una plancia di un cabinato direttamente ai pin della raspberry ?
Assolutamente si, con un po’ di lavoro. E’ una cosa che vorrei fare anche io, spazio permettendo.
Intanto dai un occhio qui:
http://www.instructables.com/id/2-Player-Bartop-Arcade-Machine-Powered-by-Pi/
http://www.makeuseof.com/tag/7-fantastic-retropie-game-stations-can-build-weekend/
http://www.makeuseof.com/tag/weekend-project-build-retropie-arcade-cabinet-removable-screen/
La cosa più semplice è acquistare un controller dedicato per i joystick ed i pulsanti.
Sul sito di Retropie consigliano questo:
http://blog.petrockblock.com/2014/12/29/controlblock-power-switch-and-io-for-the-raspberry-pi/
C’è anche una guida completa per installazione e configurazione.
Puoi inoltre trovare dei kit arcade facilmente in giro (anche in alcune fiere dell’elettronica):
http://amzn.to/2f6E7e6
http://amzn.to/2gms6WX
http://amzn.to/2eMDwTj
Grazie per la risposta ma adesso il problema che vorrei sollevare è il perchè i giochi mame e neo-geo non partono. Clicco per aprirli dopo la schermata torna subito alla home. Ho bisogno di aiuto dato che questo mondo per me è nuovo
Ciao Alessandro, non riesco a configurare il controller SNES. Quando lo configuro la prima volta tutto ok, nella home funziona, ma una volta entrato in un singolo gioco da un emulatore i tasti A B X Y non funzionano, sembrano non configurati in modo corretto. Come posso riconfigurarli? Grazie
Buongiorno a tutti, chiedo un aiuto perche’ sto impazzendo con il mio raspberry pi3 mod b , e con emulationstation, funziona tutto alla perfezione,configuro il joypad e nei menu va benissimo, quando faccio partire un gioco da qualsiasi emulatore il joypad smette di funzionare e devo fare tutto da tastiera, ho gia’ provato a cancellare e rieditare il file di configurazione del joypad, ma sono sempre da capo.
Grazie a chi vorra’ darmi una mano,
Complimenti per la guida…
e buone feste
Ciao Alessandro, prima di tutto voglio ringraziarti per la tua guida, molto chiara e utile. Voglio chiederti un ulteriore consiglio, ho collegato 2 spinner ultimarc usb al mio raspberry pi 3, ho capito che con retropie devo far riconoscere gli spinner come fossero dei mouse, ma ancora non ci sono riuscito. Sai dirmi come posso attivarli?
Grazie!
ce mi conviene prendere? il Raspberry Pi 2 Modello B Quad Core CPU 900 MHz, 1 GB RAM oppure il RASPBERRY PI Raspberry PI 3 Model B Desktop Computer (1ghz 1gb ram), considerando che costano uguali.
ho visto che nella guida parla solo di raspberry 1 o 2, per il 3 c’è tutto?
Ovviamente il Raspberry PI 3 Model B che è più recente. C’è tutto.
Provvederò ad aggiornare la guida che era stata scritta qualche mese fa (ed è ancora valida).
Occhio a scaricare la ISO dei Retropia giusto per il Pi3.
grazie mille! intanto ordino 😀
Mi raccomando! Passa da uno dei link in questa guida: così sostieni senza spese anche il blog!
Ho aggiornato il post adeguandolo completamente alla versione 3 del Raspberry Pi
ciao,
non riesco a trovare la versione del neogeo.zip che possa andare bene con la nuova versione del retropei.
Mi puoi aiutare?
Grazie
Ciao e complimenti per l’ottima guida che hai fatto, ho bisogno di un aiuto, non ne sto uscendo più fuori.
In pratica ho comprato una pi3 , ho installato retropie ma non riesco a far riconoscere i pad della Xbox 360 o quelli della ps3 .
Un consiglio per favore
Aiuto! ho fatto un casino della madonna, ho seguito la procedura, quando ho acceso il raspberry ho seguito le varie configurazioni e al reboot rimaneva solo la pagina principale “retropie” e i vari comandi di configurazione senza vedere i vari emulatori,. ho cominciato a guardare a destra e a manca per vedere perché nn li vedevo e ho disinstallato Retropie per ristallarlo da zero, ora mi ritrovo che mi si riavvia sempre in linea di comando con la possibilità di avviare il setup così: sudo /home/pi/RetroPie-Setup/retropie_setup.sh
vedo tutte le parti di configurazione, scarico aggiornamenti, da windows vedo anche la sua rete per mettere dentro le roms ma nn riesco più a far partire in automatico la schermata di retropie. E’ possibile ripristinare o devo buttare la scheda sd e prenderne una nuova?
Tranquillo. La schedina non è persa. Nella peggiore delle ipotesi la puoi riformattare e ripartire da zero.
Credo tu abbia un problema di configurazione: intanto prova a fare una re-installazione dei pacchetti base ed un aggiornamento dal menu RETROPIE-SETUP.
Ricordati poi che gli emulatori installati si vedono nel menu solo se le ROM sono correttamente riconosciute.
Fammi sapere: intanto faccio qualche test anche io…
Si ho rinstallato il tutto, e nn vedevo l’emulatore proprio perché nn avevo inserito la rom, errore mio 😛
Ciao ho installato circa un anno fa retropie e kodi , volevo sapere per aggiornarli entrambi come posso fare dato che gli aggiornamenti automatici a quanto pare non ci sono , grazie
Ciao e bellissima guida, volevo capire come usare “Zero delay USB Joystick Encoder” con tutti gli emulatori, ad essempio sulla psx non funziona come faccio a configurarla?
Grazie
Ciao, come posso fare per impostare il tasto EXIT, che normalmente è un hotkeys (start+select), su un unico tasto? mi sono creato un bartop e vorrei metterlo su un singolo tasto. grazie
Ho erroneamente acquistato un Arcade Game Kits (2 joystick e 1 scheda controller USB) da collegare al mio raspberry. L’errore è stato che dovevo acquistare 2 Joy e 2 schede USB. Chiedo: ho letto che bisognerebbe modificare uno script per poter utilizzare 2 Joy con 1 scheda USB su Retropie. Sapete aiutarmi? Grazie
come va settato retropie per una ligthgun aimtrak?
Ciao, prima di tutto complimenti per la guida. Completa in tutto.
Vorrei costruire il mo arcade usando un Raspberry PI3
Ho un problema di questo tipo.
Ho scaricato delle rom per PSX ed i file terminano con bin.ecm
no anche scaricato ed installato il bios per ps ma niente, non riesco a farli visualizzare su Emulation Station.
Ho provato a caricare direttamente il file zip, niente
Poi la cartella unzipped e niente, in fine soltato copiando il file nella cartella psx ma ancora nulla.
Non riesco a capire come caricare i giochi. Mi daresti una mano per favore?
Grazie mille