81OkgEsierL._SL1500_[1]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, qualche accessorio ed un’oretta di lavoro.

[REVISIONE 5 DEL POST: questo post è stato aggiornato dopo la prima pubblicazione]

Sarà sufficiente installare sul vostro Raspberry Pi la piattaforma EmulationStation (qui su GitHub i sorgenti).  EmulationStation è disponibile per Linux (Debian) e Windows, ma i ragazzi di petRockBlock hanno messo su il progetto RetroPie (qui su GitHub) che è in grado di far girare EmulationStation su un Raspberry Pi tramite una speciale ISO.​

RetroPie incorpora moltissimi emulatori e vi permette di usare un nostalgico Gamepad USB per giocare migliaia di titoli da retro-gaming.

Questa la mia personale scala di macchine che, nel tempo, ho potuto apprezzare nella loro versione reale (vi invito a girare su questo blog per qualche post a tema sul retrogaming).

TimeLine Retrocomputer e retrogaming anni 80

Picade Arcade MachineAvrete 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 qui.

L’elenco dei sistemi è lungo (tra parentesi l’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 più performante: utilizzo il nuovo 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 PS1!

Questa versione di Raspberry si recupera facilmente per circa 35,00 euro.

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.

Ecco una possibile scelta degli ingredienti fondamentali reperibili facilmente su Amazon: vi fornisco i link per la versione con raspberry Pi 3 e 2.

Versione con Raspberry Pi 3: componenti o kit


Raspberry PI 3 Model B

Kingston MicroSD 64 GB, Classe 10 con Adattatore SD
Raspberry Pi 3 Case
Vilros Raspberry Pi 3 Complete Starter Kit–EU

Versione con Raspberry Pi 2: componenti o kit

Raspberry Pi 2
Raspberry Pi 2 Modello B

Transcend Scheda di Memoria SDHC da 16 GB

Raspberry Pi Custodia per Raspberry Pi B + e Pi2

 se dovete comprare un kit (quindi tutti i componenti da zero) vi consiglio di orientarvi su quello del Raspberry Pi 3

Accessori:

Cavo HDMI ad alta velocità, 1,8 m
Cavo HDMI ad alta velocità, 1,8 m
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

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

KIT DISSIPATORI CON ADESIVO TERMICO PER RASPBERRYKIT DISSIPATORI CON ADESIVO TERMICO
Utili per ore di gioco senza il rischio di surriscaldare il vostro Raspberry

Aukru Alimentatore Micro USB 5v 2000mA Vi serve un alimentatore che sia “stabile” da almeno 2A

Controllers:

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ò | grigioIn stile SNES: CSL – 2x Gamepad USB SNES Qumox SNES gioco PC GamePad controllore SFC per Windows PC USB Super FamicomQumox SNES GamePad controllore SFC USB Microsoft Xbox 360 - Controller Wired

Perfetto un controller Microsoft Xbox 360 – Wired nella versione per PC (ma va bene anche la versione nativa per XBOX 360)

NES Controller USB

Qumox Nintendo SNES GamePad controllore SFC USB Super Famicom

SNES controller USB

Retro-Bit-N64-892 N64 – Controller con cavo USB

Controller USB

Ewent Controller Joypad USB, Double Shock

Controller NES USB

Buffalo Classic Gamepad USB (simile al controller SNES)

Controller USB

Retro-bit classico controller Joystick per Atari 2600

QUMOX NES30 Bluetooth Wireless controller

QUMOX NES30 Bluetooth Wireless controller

CSL – 2x Wireless Gamepads Playstation 3 Stoga Pad Wireless Controller per Microsoft Xbox 360  Controller Retro Pro Nintendo NES

Se volete strafare e mettere a punto una console portatile, vi serve una cosa del genere: SainSmart 7 pollici TFT LCD Touch Screen Monitor per Raspberry Pi + driver scheda HDMI VGA 2AV

Per trasferire le ROM dal PC al RaspberryPi vi serviranno: un router, un PC Windows/Mac/Linux, con (opzionalmente) una copia del software free Cyberduck o FileZilla (o equivalente client FTP, SFTP).

Installazione

Trovate le informazioni necessarie sul sito di Retropie, in inglese. Ma se volete una guida dettagliata ed in italiano, continuate la lettura di questo post:

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.

Apple-Pi BakerOra dovete preparare la vostra SD: inseritela nel lettore del vostro PC e trasferite la ISO scaricata con l’apposito tool:

(abbiate qualche minuto di pazienza, potrebbe volerci del tempo). In ogni caso potete trovare molte informazioni qui, non recentissime ma molto valide. Una volta fatto, rimuovete l’SD 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.

Configurazione guidata

Retroarch Joystick portsA 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.

Retropie configurazione -_DSC0591

A questo punto dovreste vedere la schermata principale di Emulation Station, con l’elenco di tutti gli emulatori disponibili che scorrono orizzontalmemte.

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.

-_DSC0599RASPY-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:

inserite la vostra password, ad esempio 1234567 (non fatelo, vi prego…) . Da questo momento in poi potete accedere da un terminale in rete con:

Ulteriori informazioni qui. Qui i problemi comuni.

RetroArch

rguiRetroArch è 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 libertà 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 appena terminata (quella completata al primo 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…).

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

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:

Hotkeys Action
Select+Start Exit
Select+Right Shoulder Save
Select+Left Shoulder Load
Select+Right Input State Slot Increase
Select+Left Input State Slot Decrease
Select+X RGUI Menu
Select+B Reset

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 optionale 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

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. RetroPie configCome prima cosa, dopo l’installazione dell’ultima immagine, è bene fare un aggiornamento generale con:

Quindi, per eventuali ulteriori configurazioni del sistema, digitate:

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

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:

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 ScrapingE’ 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:

e seguite le istruzioni a monitor alla voce Scraping.

rom-deleter-fullE’ 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 1970Anche 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:

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:

Giocando ad AstromashSe volete settare i parametri questa è la sintassi:

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:

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


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

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_4172Ora 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:

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_4174Vediamo 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.

img_4173Alcuni 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:

2014-12-08 13.41.30Select Joystick 2 mapping: eseguite le istruzioni

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


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:

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

Le ROM dei giochi invece vanno vanno in:

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:


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.

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:

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:

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:

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