
Você já parou para pensar que em meados da década de 1990 só era possível jogar aquele jogo seu jogo de arcade preferido na década passada se você encontrasse uma máquina funcionando? Jogar o Pac-Man original ou mesmo Donkey Kong sem ter que recorrer a ports feitos para videogames só era possível na máquina arcade, ou fliperama como chamamos no Brasil, original. Não haviam emuladores. Se todas as máquinas do jogo virassem lixo, o jogo contido nela, na sua programação original, estaria, provavelmente, perdido para sempre já que muitas empresas nem mesmo mantinham backups seguros de seus códigos fontes.
Isso já era uma realidade no inicio da década de 1990. Máquinas de arcade do inicio da década de 1980 estavam a 10 anos em operação, rodando em hardware exclusivo para cada jogo sendo que muitas delas — depois de uma longa temporada levando pancadas nas casas de arcade — acabaram parando em bares e lanchonetes. Inúmeras vezes essas máquinas eram simplesmente descartadas, seja por defeitos que não valiam o custo do conserto ou por não serem mais lucrativas.

Algumas pessoas já pensavam na preservação desses jogos. Até já haviam iniciativas que emulavam máquinas especificas como a do Pac-Man, mas é só em 1996 que aparece Nicola Salmoria, um estudante universitário italiano apaixonado por esses jogos. Ele já tinha a visão de que em um futuro próximo, muitos desses jogos arcade estariam perdidos. No final do ano de 1996 Salmoria baixou o código fonte de um emulador preliminar do jogo Pac-Man, disponível em um site chamado “Arcade Emulation Programing Repository”. Segundo o próprio Salmoria em entrevistas, aquele código “mudou sua vida”. Até então ele só conhecia emuladores de computadores domésticos, como o ZX Spectrum e Commodore 64, sem fazer ideia de que era possível emular máquinas de arcade com relativa facilidade, já que muitas usavam processadores e chips semelhantes aos de micros da época.
Ele começou melhorando o emulador de Pac-Man. Depois, usando a mesma base do código, criou vários emuladores separados: Pengo, Crazy Climber, Lady Bug, Rally X entre outros. Logo ele viu que manter todos esses emuladores isoladamente era um pesadelo. Foi então que ele decidiu unificá-los em um único programa modular e fácil de expandir. Assim nasceu o MAME, lançado publicamente em 5 de fevereiro de 1997. Essa primeira versão rodava apenas no sistema operacional MS-DOS e suportava cinco jogos, todos baseados no processador Z80: Pac-Man, Ms. Pac-Man, Crush Roller, Pengo e Lady Bug. Nada mais. Mas a estrutura modular que Salmoria criou já carregava o DNA de tudo o que viria depois.

A ideia de Salmoria nunca foi só poder reviver a experiência desses jogos antigos. Desde o primeiro dia, a missão era documentar o hardware. O código fonte seria a documentação viva. A possibilidade de jogar era apenas um efeito colateral bem-vindo.
Nos primeiros seis meses o MAME já suportava displays raster e vector, múltiplos processadores, chips de som e um sistema de timers sofisticado. Em setembro de 1997 chegou o primeiro jogo com CPU Motorola 68000 (Rastan). Isso abriu as portas para hardware da Capcom CPS, Neo Geo, Sega System 16 e dezenas de outras placas. Em abril de 1997 Salmoria se afastou do projeto por causa do serviço militar obrigatório e deixou Mirko Buffoni, temporariamente, cuidando do desenvolvimento. Quando Salmoria retornou, o projeto já tinha ganhado vida própria. Ao longo dos anos a coordenação passou por David “Haze” Haywood (2003), Aaron Giles (2005–2011), Angelo “Kale” Salese e, desde 2012, Miodrag “Micko” Milanović.
A filosofia do MAME sempre foi radicalmente purista: emulação de baixo nível sempre que possível, nada de hacks que sacrifiquem a precisão em nome da velocidade. Se o hardware original tinha um atraso de um frame, o MAME também terá. Essa obsessão transformou o projeto no maior esforço de engenharia reversa de hardware de games já realizado. Proteções complexas como Slapstic da Atari, Kabuki, CPS-2, CPS-3 e Neo Geo foram todas decifradas pela comunidade.

Em 1998 surgiu o MESS (Multi Emulator Super System), um fork do MAME dedicado a consoles, computadores, calculadoras e outros sistemas. Durante anos os dois projetos caminharam lado a lado compartilhando o mesmo core. Em 27 de maio de 2015, com a versão 0.162, o MESS foi oficialmente absorvido. O nome Multiple Arcade Machine Emulator deixou de fazer sentido literal já que o MAME passou a emular praticamente qualquer máquina eletrônica vintage com tela e som: fliperamas, Game & Watch, pinballs, slots, workstations Unix, calculadoras gráficas e até dispositivos de espionagem da Alemanha Oriental. Hoje o projeto documenta mais de 32 mil sistemas individuais, com mais de 10 mil títulos jogáveis e continua evoluindo.
