MAME (Multiple Arcade Machine Emulator) è il progetto che ha reso possibile conservare la storia dei videogiochi da sala: oltre 10.300 stelle su GitHub, sviluppo attivo da quasi trent’anni e una nuova release quasi ogni mese. In questa guida aggiornata all’11 giugno 2026 vediamo passo dopo passo come installare MAME nella versione 0.288, come organizzare correttamente cartelle e ROM MAME, come configurare controller e hotkey, come verificare l’integrità dei set con gli strumenti ufficiali e come ottenere artwork e shader CRT per un’esperienza fedele ai cabinati originali. Dal download alla prima partita servono circa 30-40 minuti.
Ultimo aggiornamento: 11 giugno 2026. Nota legale: MAME è software libero e non contiene alcun gioco. Il progetto non distribuisce ROM di titoli commerciali: puoi usare legalmente solo dump di schede arcade o cartucce che possiedi fisicamente, oppure ROM homebrew e di pubblico dominio distribuite con licenza esplicita. Scaricare ROM di giochi coperti da copyright che non possiedi è illegale nella maggior parte dei Paesi, Italia inclusa, e questa guida non fornisce né consiglia fonti per farlo.
Cosa costruiremo, in concreto: partiremo da una cartella vuota e arriveremo a un’installazione completa di MAME, con struttura delle cartelle corretta, mame.ini configurato, controller mappati, set ROM verificati con gli strumenti ufficiali e artwork/bezel attivi per un look da cabinato vero. Ogni passaggio include i comandi pronti da copiare, sia per Windows sia per Linux. Partiamo dalle fondamenta: capire davvero cos’è MAME e perché, nel 2026, resta il punto di riferimento per l’emulazione arcade.
Che cos’è MAME e perché conta ancora nel 2026
MAME nasce nel 1997 per mano di Nicola Salmoria, con l’obiettivo dichiarato di documentare l’hardware dei cabinati arcade prima che sparisse per sempre: non un semplice emulatore, ma un progetto di preservazione, che riproduce il comportamento dei circuiti originali invece di limitarsi a “far girare” i giochi. Nel corso degli anni il progetto ha assorbito MESS (Multi Emulator Super System), la costola dedicata ai computer e alle console domestiche, che oggi convive nello stesso codice base: per questo MAME copre, secondo il sito ufficiale, «migliaia» di sistemi arcade e non solo, dalle schede da bar ai primi home computer.
Il codice è interamente open source e pubblico su GitHub, dove il repository mamedev/mame ha superato le 10.300 stelle e i 2.475 fork, con centinaia di problemi tracciati apertamente e una cadenza di rilascio che da anni resta mensile. La release corrente al momento di scrivere è MAME 0.288, pubblicata il 29 maggio 2026: MAME non usa un versionamento “maggiore.minore” in stile tradizionale, ma incrementa progressivamente un numero a tre cifre a ogni ciclo di sviluppo, quindi «0.288» è semplicemente l’ultima iterazione di un progetto che dal 1997 non si è mai davvero fermato.
| Versione | Data di rilascio | Note |
|---|---|---|
| 0.288 (attuale) | 29 maggio 2026 | Ultima release stabile disponibile al momento di questa guida |
| 0.287 | 31 marzo 2026 | Correzioni driver e aggiornamenti core |
| 0.286 | 26 febbraio 2026 | Nuovi sistemi supportati, fix di compatibilità |
| 0.285 | 30 gennaio 2026 | Aggiornamenti al motore grafico e audio |
| 0.281 | 26 settembre 2025 | Base della serie di rilasci coperta in questa guida |
Perché scaricare MAME oggi ha ancora senso, in un’epoca di frontend “tutto in uno”? Perché resta lo standard di riferimento per l’accuratezza: i core arcade integrati in altri strumenti (inclusi quelli di RetroArch) derivano quasi sempre dal codice MAME, spesso con qualche versione di ritardo rispetto al progetto originale. Se ti interessa la massima fedeltà e vuoi capire davvero come funziona l’emulazione arcade, installare MAME standalone resta il punto di partenza più corretto.
MAME, RetroArch, Batocera ed EmuDeck: come si inserisce
Chi inizia a informarsi sull’emulazione arcade si scontra quasi subito con una domanda: MAME, RetroArch o un sistema “tutto pronto” come Batocera? Non sono alternative equivalenti, ma strumenti con scopi diversi che spesso convivono. MAME standalone è l’applicazione ufficiale, sviluppata dal team MAME stesso: massima accuratezza, aggiornamenti mensili, ma un’interfaccia più spartana e pensata per essere guidata da riga di comando o da un frontend esterno. RetroArch, invece, è un frontend multiemulatore che integra MAME come “core” tra decine di altri, con un’interfaccia unificata e funzioni come i rewind e gli shader condivisi tra sistemi diversi — comodo, ma spesso qualche versione indietro rispetto a MAME current.
Se invece cerchi una soluzione “chiavi in mano” che includa MAME insieme a decine di altri emulatori già configurati, le nostre guide a Batocera ed EmuDeck coprono quello scenario nel dettaglio: entrambe includono MAME come uno dei componenti, ma automatizzano gran parte della configurazione che in questa guida vediamo passo per passo. Il confronto EmuDeck vs RetroDECK approfondisce ulteriormente le differenze tra questi pacchetti “tutto in uno”.
| Strumento | Tipo | Accuratezza arcade | Facilità d’uso | Aggiornamenti |
|---|---|---|---|---|
| MAME standalone | Emulatore ufficiale | Massima (riferimento) | Media, richiede configurazione manuale | Mensili |
| RetroArch (core MAME) | Frontend multi-core | Alta, talvolta in ritardo di versione | Alta, interfaccia unificata | Legati al ciclo dei core libretro |
| Batocera | Sistema operativo retro | Alta (include MAME) | Molto alta, “chiavi in mano” | 2-3 release maggiori l’anno |
| EmuDeck | Script di installazione | Alta (include MAME) | Molto alta su Steam Deck | Legati agli script della community |
Perché la conservazione digitale dei cabinati arcade conta davvero
Un aspetto che spesso sfugge a chi si avvicina a MAME per la prima volta è quanto sia effettivamente urgente il lavoro di documentazione che il progetto porta avanti dal 1997. Le schede arcade originali non sono eterne: i condensatori elettrolitici si degradano fisicamente nel giro di pochi decenni, le EPROM perdono carica e possono corrompere silenziosamente i dati che contengono, e molti cabinati sono già andati distrutti, smontati per i componenti o semplicemente persi. Per centinaia di titoli, l’unica documentazione accurata rimasta dell’hardware che li faceva funzionare è oggi il codice sorgente di MAME.
Questo è anche il motivo per cui MAME va oltre la semplice “emulazione”: il progetto simula il comportamento dei singoli chip, dei circuiti audio e persino dei bug hardware delle schede originali, invece di limitarsi a riprodurne il risultato visivo. È un approccio più impegnativo dal punto di vista dello sviluppo, ma è quello che rende possibile, per esempio, scoprire ancora oggi dettagli sul funzionamento di sistemi vecchi di quarant’anni. La community dietro al progetto include storici dell’hardware, collezionisti che dumpano schede rare mai documentate prima e sviluppatori che decodificano protezioni anti-copia originali esclusivamente per motivi di documentazione storica.
Per chi si occupa di sicurezza e conservazione digitale, il parallelo è diretto: allo stesso modo in cui un archivio di sicurezza documenta vulnerabilità storiche per evitare che si ripetano, MAME documenta hardware che altrimenti sparirebbe senza lasciare traccia verificabile. Installare MAME e usarlo con contenuti legalmente posseduti significa, in piccolo, partecipare a questo lavoro di conservazione: è la ragione per cui il progetto insiste così tanto, da quasi trent’anni, sulla distinzione netta tra “emulatore” (che è conservazione) e “distribuzione di ROM protette da copyright” (che non lo è, e che il progetto stesso ha sempre rifiutato di fare).
Prerequisiti: hardware, sistema operativo e software
La buona notizia è che MAME, per la stragrande maggioranza dei giochi arcade (fino agli anni 2000 circa), gira senza sforzo praticamente su qualunque PC costruito nell’ultimo decennio: la difficoltà dei cabinati storici è nell’accuratezza dell’emulazione, non nella potenza di calcolo richiesta. Il progetto non pubblica requisiti minimi ufficiali rigidi, ma dalle indicazioni sul sito e dall’esperienza pratica valgono queste linee guida.
- Sistema operativo: Windows 10/11 a 64 bit (build ufficiali x64 e ARM64), oppure Linux (Ubuntu 22.04+, Fedora, Arch e derivate, compilando da sorgente o tramite pacchetto della distribuzione), oppure macOS tramite Homebrew o compilazione da sorgente.
- Processore: qualunque CPU x86_64 o ARM64 moderna. Per i giochi arcade più recenti supportati (fine anni ’90/inizio 2000, hardware 3D) conviene una CPU con qualche anno di vita al massimo, ma i classici a 8/16 bit girano bene anche su hardware modesto.
- Memoria RAM: 4 GB sono sufficienti per l’uso base, 8 GB o più se usi grandi librerie con molte anteprime e artwork caricati contemporaneamente.
- Spazio su disco: l’eseguibile di MAME occupa poche centinaia di MB; lo spazio reale dipende dai tuoi set ROM e dagli asset di artwork/anteprime che aggiungerai.
- Scheda video: qualunque GPU con supporto Direct3D 9+ (Windows) o OpenGL/Vulkan (Linux) recente va bene; per gli shader CRT più pesanti una GPU dedicata rende l’esperienza più fluida.
- Un controller USB o un joystick arcade dedicato (opzionale ma consigliato per l’esperienza autentica).
- Le tue ROM: dump legali di schede o giochi che possiedi, oppure ROM homebrew/di pubblico dominio.
| Componente | Versione/requisito verificato a giugno 2026 |
|---|---|
| MAME | 0.288 (29 maggio 2026), build ufficiali Windows x64/ARM64 |
| Windows | 10 64 bit o 11 (Windows 7/8 non più supportati dalle build ufficiali recenti) |
| Linux | Ubuntu 22.04 LTS o successivo, kernel recente per il supporto controller |
| Strumento di verifica hash | certutil (incluso in Windows) o sha256sum (incluso in Linux) |
| Programma di decompressione | 7-Zip o equivalente per estrarre l’archivio di MAME |
I 12 passaggi in sintesi
Prima di entrare nel dettaglio, ecco la mappa completa del percorso che seguiremo. Puoi usarla come riferimento rapido e tornare a ogni sezione quando serve:
- Scaricare la build ufficiale di MAME
- Verificare l’integrità del download
- Creare la struttura delle cartelle
- Generare e personalizzare
mame.ini - Primo avvio e configurazione dell’interfaccia
- Mappare controller, joystick e hotkey
- Capire la questione ROM: legalità e formati
- Verificare i set ROM con
-verifyroms - Avviare i giochi da terminale e da menu interno
- Configurare artwork, bezel e shader CRT
- Gestire salvataggi, hiscore e impostazioni per gioco
- Aggiornare MAME e i romset in sicurezza
Passo 1 e 2 – Scaricare e verificare la build ufficiale
Vai alla pagina download del sito ufficiale di MAME e scegli il pacchetto corretto per il tuo sistema: le build ufficiali per Windows sono disponibili in versione 64bit e ARM64. Come racconta un tutorial video molto seguito su questo primo passaggio: «Under Windows, under official Windows binary packages, you want to click on this file here, 64bit.exe, and your download should start» — in pratica, sotto la sezione dei binari ufficiali per Windows scegli il file .exe a 64 bit e il download parte automaticamente. Su Linux, la scelta più semplice è compilare da sorgente o usare il pacchetto della tua distribuzione (su Ubuntu/Debian, ad esempio, è spesso disponibile tramite i repository o Flatpak).
Questo è il passaggio in cui vale la pena essere prudenti: scarica sempre l’eseguibile solo dai mirror ufficiali elencati su mamedev.org, mai da siti terzi che promettono “pacchetti completi” con ROM incluse — sono quasi sempre il modo in cui si diffondono copie manomesse o malware. Una volta scaricato l’archivio, verificane l’integrità prima di eseguirlo:
# Windows (PowerShell o Prompt dei comandi): calcola l'hash SHA-256
certutil -hashfile mame0288b_64bit.exe SHA256
# Linux/macOS: calcola l'hash SHA-256
sha256sum mame0288b_64bit.exe
# Confronta il valore ottenuto con quello pubblicato sulla pagina di download ufficiale.
# Se non corrispondono, NON eseguire il file: ri-scaricalo da mamedev.org.
Con l’hash confermato, estrai l’archivio in una cartella dedicata — evita “Programmi” o altre directory di sistema che richiedono permessi elevati per la scrittura, perché MAME salva molti file (configurazioni, screenshot, salvataggi) nella propria cartella durante l’uso, e i permessi di sistema possono bloccare questa scrittura in modo silenzioso.
Passo 3 – Creare la struttura delle cartelle
Come spiega lo stesso tutorial citato sopra, uno dei primi passaggi pratici è organizzare le cartelle prima ancora di lanciare il programma: «Now, we need to create a new folder», cioè creare le sottocartelle che MAME userà per ROM, artwork e dati di gioco. MAME cerca queste risorse in percorsi predefiniti relativi alla cartella dell’eseguibile, quindi conviene crearle subito con i nomi corretti:
mame/
├── mame64.exe # eseguibile principale (Windows)
├── mame.ini # file di configurazione generato al Passo 4
├── roms/ # qui vanno i file .zip dei set ROM
├── artwork/ # bezel, overlay e cornici dei cabinati
├── samples/ # campioni audio per hardware pre-digitale
├── cfg/ # configurazioni salvate per singolo gioco
├── nvram/ # dati di salvataggio non volatile (hiscore, impostazioni)
├── snap/ # screenshot
├── diff/ # differenze hard disk per giochi che li usano
└── hash/ # file di verifica per software list e CHD
La cartella più importante è naturalmente roms: come sottolinea ancora il tutorial, bisogna «find this folder here called ROMs, and you want to move all of your main ROMs into this folder» — individuare la cartella ROM e spostarci dentro tutti i tuoi set. Un dettaglio che confonde molti principianti: ogni gioco resta nel proprio archivio .zip (o .7z nelle versioni più recenti), non va estratto. MAME legge i file direttamente dall’archivio compresso: estrarli manualmente è uno degli errori più comuni, e lo vedremo tra i problemi frequenti più avanti.
Passo 4 – Generare e personalizzare mame.ini
Con le cartelle pronte, il passaggio successivo è creare il file di configurazione principale. Come indicato in una guida per principianti pubblicata sui forum di LaunchBox: «The first thing you want to do is to generate a mame.ini file». Apri un terminale nella cartella di MAME ed esegui:
# Windows (Prompt dei comandi, nella cartella di MAME)
mame64.exe -createconfig
# Linux
./mame -createconfig
# Il comando genera mame.ini con tutte le opzioni predefinite commentate.
Apri mame.ini con un editor di testo e modifica almeno queste voci, che coprono la maggior parte delle esigenze di un’installazione nuova:
rompath roms # percorso dei set ROM (puoi elencarne più di uno separati da ;)
artpath artwork # percorso degli artwork/bezel
samplepath samples # percorso dei campioni audio
cfg_directory cfg # configurazioni salvate per gioco
nvram_directory nvram # salvataggi non volatili (hiscore incluso)
snapshot_directory snap # screenshot
video d3d # motore video: d3d, bgfx, opengl o gdi
window 0 # 0 = schermo intero, 1 = finestra
resolution auto # o una risoluzione specifica, es. 1920x1080
autosave 1 # salva automaticamente lo stato all'uscita
Se in futuro vuoi ripristinare le impostazioni predefinite, rigenera semplicemente il file con lo stesso comando: -createconfig sovrascrive mame.ini riportandolo ai valori di partenza, quindi conviene farne una copia di backup una volta personalizzato.
Passo 5 – Primo avvio e configurazione dell’interfaccia
Avvia MAME senza parametri per accedere al menu interno (MAME UI): su Windows fai doppio clic sull’eseguibile o lancialo da terminale, su Linux esegui ./mame dalla cartella del programma. Al primo avvio, se la cartella roms è vuota o non contiene ancora set validi, vedrai una lista vuota o un avviso: è normale, e lo risolviamo al Passo 8 con la verifica dei ROM.
Il menu principale di MAME UI ti permette di navigare tra i giochi rilevati, filtrare per produttore o anno, e accedere alle impostazioni generali premendo Tab durante l’esecuzione (sia nel menu sia dentro un gioco). Da questo menu puoi configurare video, audio, dispositivi di input e le opzioni avanzate senza mai toccare manualmente mame.ini. Vale la pena esplorarlo subito: la maggior parte delle regolazioni fini (filtri video, gestione degli slot hardware, opzioni per singolo sistema) passa da qui.
Un consiglio pratico per chi installa MAME per la prima volta: lascia inizialmente video d3d (Windows) o l’equivalente predefinito su Linux, e cambia motore video solo se noti problemi di prestazioni o artefatti grafici. Il motore BGFX, più moderno, abilita gli shader avanzati che vedremo al Passo 10, ma richiede una GPU un po’ più recente per restare fluido su risoluzioni alte.
Passo 6 – Mappare controller, joystick e hotkey
MAME riconosce automaticamente la maggior parte dei controller USB, ma la mappatura predefinita non sempre rispecchia il layout di un cabinato arcade classico (movimento a 4/8 vie più pulsanti azione). Per personalizzarla, apri il menu con Tab durante l’esecuzione e vai su Input (general) oppure Input (this machine) per una configurazione specifica del gioco corrente. Da qui puoi riassegnare ogni comando: seleziona la voce, premi il tasto o il pulsante che vuoi usare, e MAME lo registra immediatamente.
Le combinazioni da ricordare, valide per impostazione predefinita su tastiera e adattabili al tuo controller:
- Tab: apre il menu di configurazione generale, sia nei menu sia durante il gioco.
- 5 e 6: inseriscono moneta nel giocatore 1 e 2 (simulano il gettone in cassa dei cabinati originali).
- 1 e 2: avviano la partita per il giocatore 1 e 2.
- P: mette in pausa l’emulazione.
- F12: cattura uno screenshot nella cartella
snap. - Esc: esce dal gioco corrente e torna al menu di selezione.
- F3: riavvia (reset) la macchina corrente.
Se usi un joystick arcade dedicato con scheda encoder (molto comuni per chi costruisce un bartop o un cabinato), MAME lo tratta come un joypad USB standard: la configurazione è identica a quella di un controller tradizionale, con il vantaggio che puoi mappare i pulsanti fisici esattamente come su una macchina originale. Ricorda di salvare la configurazione per macchina se vuoi mappature diverse per giochi con schemi di controllo particolari (ad esempio i cabinati a doppio joystick o con volante).
Passo 7 – La questione ROM: legalità, formati e dove non cercarle
Questo è probabilmente il punto più frainteso di tutta l’emulazione arcade, quindi vale la pena essere espliciti. MAME non include, non distribuisce e non collega a nessuna ROM di gioco commerciale. Il progetto emula l’hardware; i dati del gioco (il contenuto delle memorie ROM originali delle schede arcade) restano opera protetta da copyright dei rispettivi editori, anche per titoli vecchi di quarant’anni. La legge italiana ed europea, come quella della maggior parte dei Paesi, consente di realizzare una copia di backup di un software che possiedi legalmente, ma non di scaricare copie di giochi che non hai mai posseduto.
In pratica, le fonti legali per procurarsi ROM MAME sono limitate a poche categorie: dump realizzati personalmente da schede arcade o cartucce che possiedi fisicamente (con strumenti dedicati di lettura hardware), ROM homebrew create da sviluppatori indipendenti e distribuite gratuitamente con licenza esplicita, e ROM di pubblico dominio il cui copyright è scaduto o è stato rilasciato dagli autori stessi. Questa guida non indica né consiglia siti da cui scaricare ROM di giochi commerciali: qualunque sito prometta “ROM pack completi” gratuiti per giochi coperti da copyright viola la legge, indipendentemente da quanto sia diffuso l’uso.
Un altro aspetto tecnico da capire riguarda i set ROM: MAME li distingue in merged (i giochi “clone” condividono i file con il gioco “parent” in un unico archivio), split (parent e clone in archivi separati che si richiamano a vicenda) e non-merged (ogni gioco è autosufficiente, ma occupa più spazio perché duplica i dati comuni). Se hai dump legali da fonti diverse, verifica sempre a quale tipo di set corrispondono: mescolare tipi diversi nella stessa cartella roms è una delle cause più comuni di errori “romset non riconosciuto”, come vedremo nella sezione dedicata ai problemi frequenti.
Passo 8 – Verificare i set ROM con -verifyroms
Una volta che hai posizionato i tuoi dump legali nella cartella roms, non aprire semplicemente MAME sperando che funzioni: usa lo strumento di verifica integrato, che confronta ogni file con i checksum ufficiali del progetto e ti dice esattamente cosa è a posto e cosa no. È il modo più rapido per diagnosticare problemi prima ancora di provare ad avviare un gioco.
# Verifica un singolo set (esempio: pacman)
mame64.exe -verifyroms pacman
# Verifica tutti i set presenti nella cartella roms
mame64.exe -verifyroms
# Elenca tutti i sistemi supportati dalla tua build di MAME
mame64.exe -listfull
# Elenca i ROM richiesti da un set specifico, utile per capire cosa manca
mame64.exe -listroms pacman
L’output tipico di -verifyroms per un set corretto assomiglia a questo:
romset pacman is good
1 romsets found, 1 were OK.
Se invece qualcosa non torna, MAME segnala il problema in modo specifico, distinguendo tra file mancanti, checksum errati o versioni sbagliate:
romset pacman is bad
pacman.6e NOT FOUND (or wrong checksum)
pacman.6f NOT FOUND
1 romsets found, 1 bad.
Un errore molto comune è confondere questo output con un problema di MAME: nella grande maggioranza dei casi, “bad” significa semplicemente che il dump non corrisponde esattamente ai checksum previsti dalla versione di MAME che stai usando — spesso perché il set è stato preparato per una versione diversa dell’emulatore. Ne parliamo nel dettaglio nei problemi comuni più avanti, perché è di gran lunga la causa numero uno di frustrazione per chi inizia.
Passo 9 – Avviare i giochi da terminale e da menu interno
Con i set verificati, puoi avviare un gioco in due modi. Il primo, più immediato, è dal menu interno di MAME UI: cerca il titolo nella lista (usa la barra di ricerca premendo semplicemente il nome sulla tastiera) e premi Invio. Il secondo, più flessibile per chi vuole automatizzare o creare collegamenti dedicati, è da riga di comando:
# Avvio semplice
mame64.exe pacman
# Avvio in finestra invece che schermo intero
mame64.exe pacman -window
# Avvio con una risoluzione specifica
mame64.exe pacman -resolution 1920x1080
# Avvio con il debugger/console Lua attivo (uso avanzato, vedi sotto)
mame64.exe pacman -console -window
Quest’ultima opzione richiama una funzione avanzata poco nota ai principianti ma molto potente per chi vuole sperimentare: la console Lua integrata. Come indicato nella documentazione ufficiale del progetto, il modo corretto per attivarla è questo: «First run an arcade game in MAME at the command prompt with the -console and -window options to enable the Lua console», cioè avviare un gioco arcade dal prompt dei comandi con le opzioni -console e -window per abilitare la console Lua. Da lì è possibile leggere e modificare la memoria del gioco in tempo reale, scrivere script di automazione e persino creare strumenti di analisi personalizzati: un livello di controllo che va ben oltre il semplice “giocare”, pensato per chi vuole studiare l’hardware emulato.
Passo 10 – Artwork, bezel e shader CRT
I cabinati arcade originali non avevano solo lo schermo di gioco: intorno al monitor c’erano cornici illustrate, pannelli di controllo serigrafati e, soprattutto, tubi catodici (CRT) con una resa dei colori e dei pixel molto diversa da un monitor LCD moderno. MAME permette di ricreare entrambi gli aspetti. Gli artwork (o bezel) sono pacchetti di immagini, spesso in formato .zip con lo stesso nome del set ROM, da posizionare nella cartella artwork creata al Passo 3: una volta presenti, MAME li applica automaticamente attorno all’area di gioco.
Per l’effetto CRT, invece, entra in gioco il motore video BGFX, che include shader dedicati alla simulazione di scanline, curvatura dello schermo e sfocatura dei fosfori. Per attivarlo, imposta nel mame.ini:
video bgfx
bgfx_screen_chains crt-geom # oppure hlsl, crt-easymode-halation, ecc.
Su hardware modesto, gli shader CRT più elaborati hanno un costo prestazionale reale: se noti rallentamenti, prova preset più leggeri (ad esempio varianti “fast” degli shader disponibili) prima di rinunciare del tutto all’effetto. Vale la pena ricordare che questi shader non sono un vezzo estetico: i giochi arcade furono disegnati e colorati tenendo conto delle caratteristiche ottiche dei CRT, quindi su alcuni titoli la differenza percepita è sorprendente rispetto ai pixel “nudi” su un monitor piatto moderno.
Passo 11 – Salvataggi, hiscore.dat e impostazioni per gioco
A differenza delle console casalinghe, i cabinati arcade originali non avevano quasi mai un vero “salvataggio”: al massimo memorizzavano le classifiche dei punteggi migliori in una piccola memoria non volatile. MAME riproduce esattamente questo comportamento tramite la cartella nvram: qui vengono scritti i dati che il gioco stesso salverebbe su hardware originale, incluse le classifiche punteggio quando il gioco le supporta nativamente.
Per i giochi che non gestiscono nativamente le classifiche, MAME offre comunque un sistema di save state generico, utile per interrompere e riprendere una sessione: premi Shift+F7 per salvare lo stato corrente e F7 per ricaricarlo. Con autosave 1 impostato in mame.ini (come visto al Passo 4), MAME salva automaticamente lo stato all’uscita e lo ripropone al rilancio dello stesso gioco, così riprendi esattamente da dove avevi interrotto.
Le configurazioni specifiche per singolo gioco (mappature dei controlli personalizzate, opzioni dip-switch modificate rispetto ai default) vengono salvate automaticamente nella cartella cfg con un file per ogni set ROM. Se vuoi ripristinare le impostazioni predefinite per un gioco specifico, basta eliminare il file .cfg corrispondente: MAME ne genera uno nuovo con i valori di base al successivo avvio.
Passo 12 – Aggiornare MAME e i romset in sicurezza
MAME esce con cadenza mensile, e ogni release può introdurre nuovi driver, correggere bug di emulazione o, occasionalmente, cambiare i checksum attesi per alcuni set ROM già supportati, quando vengono scoperti dump più accurati dell’hardware originale. Questo significa che aggiornare MAME senza verificare la compatibilità dei tuoi set può trasformare romset che funzionavano perfettamente in set segnalati come “bad” da -verifyroms.
La procedura più sicura per aggiornare:
- Fai un backup delle cartelle
cfg,nvrame del tuomame.inipersonalizzato prima di sostituire l’eseguibile. - Scarica la nuova build dalla pagina ufficiale e verificane l’hash come al Passo 2.
- Sostituisci solo l’eseguibile (e i file di supporto forniti), lasciando intatte le cartelle
roms,artworke le configurazioni di backup. - Esegui
-verifyromssu tutta la libreria per individuare eventuali set diventati incompatibili con la nuova versione. - Consulta il cronologia (changelog) ufficiale per capire quali sistemi hanno subito modifiche ai requisiti ROM prima di preoccuparti di un singolo set “bad”.
Se non hai urgenza di funzionalità nuovissime, una strategia comune tra utenti esperti è restare su una versione stabile per qualche mese e aggiornare solo quando serve davvero un driver o una correzione specifica, proprio per evitare di dover ri-verificare l’intera libreria a ogni singolo rilascio mensile.
Progetto completo: da cartella vuota a cabinato virtuale funzionante
Mettiamo insieme tutti i passaggi in un progetto end-to-end che puoi replicare con contenuti pienamente legali, usando ROM homebrew o di pubblico dominio invece di titoli commerciali. Ecco la sequenza completa:
- Scarica MAME 0.288 dai mirror ufficiali e verifica l’hash SHA-256.
- Estrai l’archivio in
C:\mame\(Windows) o~/mame/(Linux). - Crea le sottocartelle
roms,artwork,samples,cfg,nvram,snap. - Genera
mame.inicon-createconfige imposta i percorsi come mostrato al Passo 4. - Copia nella cartella
romsuno o più set homebrew/di pubblico dominio a cui hai accesso legale. - Esegui
-verifyromsper confermare che i set siano riconosciuti correttamente dalla tua build. - Avvia MAME, apri il menu Input con Tab e mappa il tuo controller.
- Lancia il gioco, salva uno screenshot con F12 per confermare che tutto funzioni.
- Attiva uno shader CRT leggero da
bgfx_screen_chainse verifica le prestazioni. - Esci e controlla che
autosaveabbia salvato correttamente lo stato innvram/cfg.
Se ogni punto della lista si conclude senza errori, hai un’installazione di MAME completamente funzionante, verificata end-to-end: dal download autenticato fino al primo salvataggio persistente. Da qui puoi espandere la libreria aggiungendo, uno alla volta, altri dump legali, verificandoli sempre con -verifyroms prima di considerarli “pronti”.
MAME su Steam Deck e handheld Linux
MAME gira nativamente anche su Steam Deck e sulla maggior parte degli handheld basati su Linux, dato che il progetto pubblica build per architettura x86_64 compatibili con SteamOS. La strada più semplice, se hai una Steam Deck, resta comunque passare da un pacchetto che lo integra già, come EmuDeck, che configura automaticamente percorsi, BIOS e artwork senza dover ripetere manualmente tutti i passaggi di questa guida.
Se invece preferisci un’installazione manuale in modalità desktop di SteamOS, la logica è identica a quella vista per Linux: scarica il binario, verifica l’hash, crea la struttura di cartelle e genera mame.ini, prestando attenzione a lasciare percorsi scrivibili dall’utente deck predefinito. Su schermi piccoli come quello della Steam Deck, gli artwork e i bezel visti al Passo 10 hanno un impatto minore sull’esperienza (lo spazio a schermo è limitato), mentre gli shader CRT leggeri restano perfettamente godibili anche in mobilità grazie alla GPU integrata.
6 errori comuni da evitare
Questi sono gli sbagli che, in assoluto, causano più tempo perso a chi installa MAME per la prima volta:
- Estrarre i file .zip dei ROM. MAME legge i set direttamente dagli archivi compressi: estrarli non aiuta, anzi impedisce il riconoscimento del set.
- Mescolare set merged, split e non-merged. Copiare dump di tipo diverso nella stessa cartella
romsgenera errori di verifica incoerenti e difficili da diagnosticare. - Usare set preparati per una versione di MAME molto diversa. I checksum attesi cambiano nel tempo: un set “buono” per una versione di due anni fa può risultare “bad” sulla release corrente.
- Rinominare i file ROM. MAME identifica i set anche dal nome del file: rinominare uno
.ziplo rende irriconoscibile anche se il contenuto è corretto. - Ignorare i file CHD richiesti da alcuni giochi. Diversi sistemi (in particolare quelli con supporto disco ottico) richiedono file
.chdaggiuntivi oltre al set ROM base:-verifyromste lo segnala esplicitamente. - Non fare backup di cfg e nvram prima di un aggiornamento. Sono le cartelle con le tue configurazioni personalizzate e i punteggi salvati: sovrascriverle per errore significa perderle senza possibilità di recupero.
Risoluzione dei problemi
Se qualcosa non funziona come previsto, questa tabella copre i problemi più frequenti segnalati da chi installa MAME e la relativa soluzione rapida:
| Problema | Causa probabile | Soluzione |
|---|---|---|
| Il gioco non compare nella lista | Set ROM non nel percorso rompath o nome file errato | Verifica rompath in mame.ini e conferma il nome esatto atteso con -listfull |
“romset is bad” su -verifyroms | Checksum non corrispondenti o set per versione diversa | Ri-verifica la provenienza legale del dump e la compatibilità con la tua versione di MAME |
| “CHD MISSING” o simile | File disco aggiuntivo non presente | Usa -listroms per capire quali file CHD mancano e posizionali nella cartella corretta |
| Schermo nero all’avvio di un gioco | Driver video incompatibile o gioco non ancora emulato correttamente | Prova -video gdi (Windows) come fallback e controlla lo stato di emulazione del set specifico |
| Audio assente o distorto | Campioni mancanti per hardware pre-digitale | Aggiungi i file samples corretti nella cartella dedicata |
| Controller non riconosciuto | Mappatura non configurata | Apri il menu con Tab → Input (general) e rimappa manualmente |
| Prestazioni scarse su hardware datato | Motore video/shader troppo pesante | Passa a video gdi o disattiva gli shader BGFX più complessi |
| Artwork/bezel non visibili | File nella cartella sbagliata o nome non corrispondente al set | Verifica che il file in artwork abbia lo stesso nome del set ROM |
| Salvataggi o punteggi persi dopo un aggiornamento | Cartelle cfg/nvram sovrascritte | Ripristina dal backup fatto prima dell’aggiornamento (vedi Passo 12) |
| Il gioco si avvia ma è troppo lento/veloce | Impostazioni di refresh o throttle errate | Controlla throttle 1 in mame.ini per sincronizzare la velocità a quella originale |
Consigli avanzati per utenti esperti
Una volta padroneggiati i passaggi base, MAME apre diverse strade per chi vuole andare oltre il semplice “installa e gioca”. La console Lua vista al Passo 9 permette di scrivere piccoli script per automatizzare sequenze di test, leggere variabili di memoria in tempo reale o costruire strumenti di analisi per lo studio dell’hardware emulato: la documentazione ufficiale in formato PDF resta il riferimento più completo per esplorare questa funzione.
Se costruisci un bartop o un cabinato fisico, vale la pena approfondire le software list (-listsoftware), che documentano in modo strutturato periferiche, espansioni e varianti regionali di molti sistemi supportati, utili per configurare correttamente hardware complesso come i sistemi con più schede o slot di espansione. Per chi gestisce librerie molto grandi, infine, l’opzione -listxml restituisce un export XML completo di tutti i sistemi supportati dalla build corrente: è la base su cui si costruiscono i frontend esterni e i database di catalogazione più diffusi nella community.
Un ultimo consiglio, spesso sottovalutato: tieni un file di testo separato con la provenienza e la licenza di ogni ROM legale che aggiungi alla tua libreria. Con centinaia di set può diventare difficile ricordare cosa hai dumpato personalmente, cosa è homebrew e cosa è di pubblico dominio — e in caso di dubbi, la regola più sicura resta rimuovere il file finché la provenienza non è chiara.
Domande frequenti su MAME
MAME è legale da scaricare e installare?
Sì. Il software MAME è open source, gratuito e perfettamente legale in qualunque Paese. Ciò che può non essere legale è il contenuto che ci carichi dentro: le ROM di giochi commerciali che non possiedi. La distinzione tra emulatore (legale) e ROM protette da copyright (da usare solo se possedute legalmente) è centrale per un uso corretto di MAME.
Qual è l’ultima versione di MAME nel 2026?
Al momento di questa guida (11 giugno 2026) l’ultima release stabile è MAME 0.288, pubblicata il 29 maggio 2026. Il progetto rilascia una nuova versione con cadenza mensile: puoi sempre verificare l’ultima disponibile sulla pagina download ufficiale di mamedev.org.
MAME è gratuito?
Sì, MAME è completamente gratuito e open source, con il codice sorgente pubblicato su GitHub. Non esistono versioni a pagamento, abbonamenti o funzioni bloccate: l’intero progetto è mantenuto da una community di sviluppatori volontari dal 1997.
Dove trovo le ROM MAME legali?
Legalmente, solo da tre fonti: dump personali di schede o cartucce che possiedi fisicamente, ROM homebrew distribuite gratuitamente dai loro sviluppatori, oppure titoli di pubblico dominio. Questa guida non indica siti per scaricare ROM MAME di giochi commerciali, perché farlo senza possedere l’originale è illegale nella maggior parte dei Paesi.
Che differenza c’è tra MAME e RetroArch?
MAME è l’emulatore arcade ufficiale, sviluppato direttamente dal team del progetto con aggiornamenti mensili e la massima accuratezza possibile. RetroArch è invece un frontend che integra MAME (e decine di altri emulatori) come “core” all’interno di un’unica interfaccia: comodo per chi vuole un sistema unificato, ma i core MAME di RetroArch sono talvolta una o più versioni indietro rispetto a MAME standalone.
Perché MAME segna un romset come “bad” anche se il file esiste?
Quasi sempre perché il checksum del file non corrisponde a quello atteso dalla versione di MAME installata: può succedere se il dump proviene da una fonte diversa da quella verificata dal progetto, o se è stato preparato per una versione di MAME precedente o successiva. Usa -verifyroms per un messaggio diagnostico preciso su quale file specifico non corrisponde.
MAME funziona su Steam Deck?
Sì, MAME gira nativamente su Steam Deck grazie alle build ufficiali per architettura x86_64 compatibili con SteamOS. Per una configurazione già pronta senza passare da tutti i passaggi manuali, la nostra guida a EmuDeck automatizza l’installazione includendo MAME tra gli emulatori configurati.
Serve una scheda video potente per usare MAME?
No, per la maggior parte dei giochi arcade classici (anni ’80 e ’90) qualunque GPU degli ultimi dieci anni è più che sufficiente. Una scheda video più recente diventa utile solo se attivi gli shader CRT più elaborati del motore BGFX o se emuli i sistemi arcade più recenti e complessi supportati dal progetto.




