Jogue Games Retrô no Linux com Mednafen

Mednafen é um emulador de linha de comando para muitos sistemas diferentes.


Jogue Games Retro no Linux com Mednafen

Eu assim como todos os outros mortais também sou fã de games , só que eu não me adapatei muito aos novos games e as novas plataformas.

As vezes eu ainda arrisco no Wii e jogos modernos de PC com meu filho, mas eu me divirto mesmo com os jogos retrô.

Antigamente eu usava os emuladores: Gens para o Mega-Drive, ZNES para o Super Nintendo e Stella para o Atari. Mas alguns desses emuladores foram descontinuados e eu achava ruim possuir 3 instalados para cada console.

Cheguei a tentar o Retroarch e outros. Mas encontrei alguns bugs bizarros, pelo menos pro sistema que eu uso: Gentoo.

Daí navegando nas opções de emuladores da documentação do Gentoo, conheci o Mednafen. Pra testar primeiro tentei no Ubuntu que eu tenho em outra partição e segui o tutorial do OSistemático e deu certo.

Mas precisei ajustar o arquivo de configuração do Mednafen na mão porque a versão gráfica ainda possui alguns limites.

E decidi compartilhar com vocês aqui como instalar no Ubuntu e no Gentoo, além de configurações que não encontrei na internet e tive que me virar pra descobrir.


Introdução

Mednafen é um emulador de linha de comando para muitos sistemas diferentes. Possui suporte total para gráficos OpenGL e SDL, jogo em rede, configuração de entrada remapecável, suporte para joystick e teclado, estados de salvamento, retrocesso do jogo, reprodução de GSF e capturas de tela. Os sistemas suportados pela Mednafen são:

  • Atari Lynx
  • Neo Geo Pocket
  • Neo Geo Pocket Color
  • WonderSwan
  • Game Boy
  • Game Boy Color
  • Game Boy Advance
  • Nintendo Entertainment System/Famicom
  • Super Nintendo Entertainment System/Super Famicom
  • Virtual Boy
  • PC Engine/TurboGrafx 16 (CD)
  • SuperGrafx
  • PC-FX
  • Sega Game Gear
  • Sega Genesis/Megadrive
  • Sega Master System
  • Sega Saturn
  • Sony PlayStation

Instalação no Ubuntu

Como eu disse para vocês eu testei também no Ubuntu e segui esses passos: Instalei o emulador e a interface gráfica para escolher o consoole, configurações, games,…

sudo apt install mednafen mednaffe

E depois abri ele pelo Dash digitando: mednaffe. E funcionou legal, mas percebi que o Mega-Drive, logo o que eu mais gosto 😞 , só era possível jogar com 3 botões e deixei pra resolver isso no Gentoo que me sinto mais à vontade para resolver esses tipos de problemas relacionados à investigação !


Instalação no Gentoo

Bom, no Gentoo também foi simples a instalação, mas teve algumas diferenças. Primeiramente compilei os pacotes:

  • games-emulation/mednafen - Emulador.
  • games-emulation/mednaffe - Interface para configuração do emulador. No Gentoo ainda há o games-server/mednafen-server que é um servidor para o Mednafen.

Após compilar e instalar me deparei com o primeiro problema. A versão atual(de acordo com a data que eu testei) é a 0.9.46 e o Mednaffe não abre para essa versão.

Daí fui pesquisar nesse link se havia um ebuild novo, o mantenedor disse que ainda não foi implementada, mas que é possível atualizar diretamente:

A versão 1.24.3 está disponível no upstream. Por favor, considere atualizar!

Então baixei a nova versão e compilei, mas antes renomeie a versão anterior para que o Mednaffe pudesse pegar do novo caminho:

Lembrando que é 64-bit, para Linux só há essa opção.

su -c "mv /usr/bin/mednafen /usr/bin/mednafen_old"
wget https://mednafen.github.io/releases/files/mednafen-1.21.3.tar.xz
tar Jxvf mednafen-1.21.3.tar.xz
cd mednafen
./configure
make
su -c "make install"

Prontinho, a versão agora é 1.21.3:

mednafen --version
Starting Mednafen 1.21.3
 Build information:
   Compiled with gcc 9.3.0
   Compiled against zlib 1.2.11, running with zlib 1.2.11(flags=0x000000a9)
   Compiled against SDL 2.0.12(hg-13609:34cc7d3b69d3), running with SDL 2.0.12(hg-13609:34cc7d3b69d3)
   Running with libsndfile-1.0.29
 Base directory: ${HOME}/.mednafen
 Emulation modules: nes snes gb gba pce lynx md pcfx ngp psx ss ssfplay vb wswan sms gg snes_faust pce_fast demo cdplay
 Opening lockfile...
 Loading settings from "${HOME}/.mednafen/mednafen.cfg"...
  Loaded 7396 valid settings and 129 unknown settings.
Unrecognized argument: --version

Então consegui abrir o Mednaffe:

Mednaffe rodando

Adicionei uma ROM em File > Open ROM , lembrando que não precisa descompactar a ROM que você baixou. Um site legal pra fazer download de jogos/ROMs é o Cool ROM , se quiser pesquisar games de um console específico vá em Arquivos ROM, aqui um exemplo de link para pesquisar e encontrar jogos para o Mega-Drive.

Bom, até aí tudo certo, mas então apareceu uma “nova barreira”, o Mega-Drive só “enxergava” 3 botões, mas consegui resolver esse problema e vou lhe mostrar como resolvi no tópico abaixo.

Configurando o Mega-Drive para 6 Botões

Bom, você pode configurar: Fullscren, teclado, … de acordo com o console que você deseja customizar através do Mednaffe indo na aba Systems, selecionando o console e na aba Input clicar em Controller Setup e definir as teclas que você deseja para ser: Pra cima, →, ↓, ←, botão: A, B, C e start.

Mas há uma limitação na parte gráfica(Mednaffe) que não é possível configurar os botões: X, Y e Z, assim como o desenvolvedor disse aqui.

O diretório de configuração do Mednafen fica em: ~/.mednafen e o arquivo principal é o ~/.mednafen/mednafen.cfg e ele é gerado assim que você abre um game para rodar. Você pode obter toda documentação nesse link.

Segundo há um comentário de outro membro do fórum, basta você editar o arquivo de configuração e definir para gamepad6, mas não ficou bem claro, então vou resumir:

  • - No arquivo de configuração ~/.mednafen/mednafen.cfg as linhas referentes ao Mega-Drive possuem início: md de MegaDrive depois é seguido de input em seguida a porta, nesse caso o número do controle, para o player 1 seria: port1 gamepad e depois seguem as linhas subsequentes com o mesmo padrão com que com novos parametros que definem as teclas.

Mas a linha que não possuem novos parametros é justamente a que define qual modelo de teclado você deseja e por padrão ela está somente gamepad. se quiser que o Mega Drive aceite 6 botões é s’substituir gamepad por gamepad6, se quiser rode esse comando pelo terminal que fará isso automáticamente:

sed -i 's/^md.input.port1 gamepad$/md.input.port1 gamepad6/' ~/.mednafen/mednafen.cfg

Mas as teclas possuem um numeração peculiar diferente das saídas do showkey por exemplo. Então, você terá que descobrir alterar pela parte gráfica e descobrindo os números.

Por exemplo, no meu caso eu defini as teclas do teclado: a, s e d para serem os botões A, B e C do Mega Drive. E as teclas do tecldo: x, c e v para serem o X, Y e Z do Mega Drive. E as teclas direcionais para serem: para cima, para baixo, …

Se quiser poupar tempo, use meu arquivo de configuração, basta rodar esse comando:

wget https://terminalroot.com.br/downs/mednafen.cfg -O ~/.mednafen/mednafen.cfg

E pronto, abra e tente jogar um games e utilize as teclas que eu informei!

Futuramente vou gravar uns gameplays e postar no meu canal da Twitch, segue lá se quiser acompanhar.

Ah! Quase ia esquecendo, Alt + Enter altera para tela cheia! 😃 Espero ter ajudado!

Play Mednafen Gentoo bspwm

Fui!


games jogos


Compartilhe


Nosso canal no Youtube

Inscreva-se


Marcos Oliveira

Marcos Oliveira

Desenvolvedor de software
https://github.com/terroo

Artigos Relacionados




Pacote Promocional com Todos os Cursos

Adquira todos os cursos para se tornar um ninja do Terminal e do Linux.

Mais detalhes

Receba as novidades no seu e-mail!

Após cadastro e confirmação do e-mail, enviaremos semanalmente resumos e também sempre que houver novidades por aqui para que você mantenha-se atualizado!


caso queira entrar em contato conosco, envie-nos um e-mail.