domingo, 31 de janeiro de 2016

Como usar o Mednafen

     Depois de dar minha opinião em relação a emulação, resolvi compartilhar um pouco de experiência. Comecei a entrar nesse mundo da emulação primeiramente com o NESticle (o emulador é tão foda - e másculo - que seu nome é a junção entre NES e testículo, sim isso mesmo) e depois com o zsnes. Eis que essa ideia me subiu à cabeça, resolvi emular tudo o que podia para testar, Atari 2600 com as versões iniciais do Stella (não acreditei quando vi os jogos da Mystique, são hilários), Mega Drive com os "gen"s da vida e por aí vai.

     Os emuladores evoluíram com o tempo, e estão passando por uma ótima fase, cada vez mais precisos, Higan para o SNES/NES/GBA/GB, Nestopia ou puNes para NES, CEN64 para N64, Exodus para Mega Drive, Xebra ou Mednafen para PSOne. Hoje, desde que tenha um computador forte o suficiente para rodá-los, é muito difícil achar as diferenças.
     Gosto de emuladores precisos, mas há duas coisas que eu detesto:
  • Programadores que querem ditar como o usuário deve agir: Dois exemplos são MAME e Higan. Acho o "byuu" um programador fantástico, mas detesto a forma que ele dita o emulador, ele "caga" para a opinião de usuários, resolveu que no BSNES não rodaria arquivos compactados, e depois resolveu que só aceitaria roms da extensão .sfc, que não aceita o comando de ALT+ENTER para deixar em tela cheia (forçando o uso do F11), veio o Higan e piorou, decidiu que os jogos seriam separados por pasta, cada um deveria carregar uma BIOS caso seja um cartucho com chip especial, depois reduziu consideravelmente as opções de shader e até mesmo opção de aspecto da imagem (hoje em dia o emulador voltou a aceitar .sfc). Já o MAME é um caso clássico, você tem o emulador e joga a ROM x, atualiza ele e a ROM x não é mais compatível, é um saco.
  • Interface ruim: Quem me dera se fossem todos bem caprichados como o Dolphin, já abre e aparece uma lista caprichada, com o logo do sistema e um banner do jogo, perfeito! Ao contrário do MAME por exemplo, em que se não tiver um frontend, você é obrigado a digitar o nome da ROM desejada, péssima interação.
          E é aí que entra o Mednafen.

    Dynamite Dux do Master System





     Primeiramente o que é o Mednafen?


     É um emulador de múltiplos sistemas, seu nome é sigla de "My Emulator Doesn't Need A Frickin' Excellent Name" (algo como "meu emulador não precisa de um puta nome excelente" -não consigo tradução melhor), e quando se diz múltiplos não é brincadeira, sendo: PSOneVirtual BoyPC Engine/TurboGrafx 16 e versão CD, SuperGrafx, PC-FX, e com códigos de outros emuladores para Atari Lynx (baseado no Handy), Neo Geo Pocket/Color (baseado no Neopop), WonderSwan (baseado no Cygne), GameBoy/Color e GameBoy Advance (baseado no VBA), NES (baseado no FCEU), SNES (baseado no BSNES), Game Gear/Master System (baseados no SMS Plus), Genesis/Megadrive (baseado no Genesis Plus).

     Ou seja, é um conjunto de bons emuladores e um ótimo emulador (para não dizer o melhor) para PSOne/PCE. Mas a principal vantagem dele é a liberdade que dá ao usuário, basicamente tudo nele pode ser configurado. Outra vantagem é não ter interface, ou seja, são 3 opções: ou usa por linhas de comando, o que é uma bosta no Windows (no Linux nem tanto), ou usa um frontend, ou associa a rom diretamente com o emulador. E essa última é o que eu aconselho, vai pegar suas roms e associar as suas extensões ao Mednafen.





     Como configurar:


     Após baixado e por sua vez extraído, execute-o uma vez (apenas piscará a tela por não ter nenhum comando) e será gerado algumas pastas e arquivos de configuração, abra o arquivo "mednafen-09x" (pode variar quanto a versão) com seu editor de texto favorito (recomendo o Gedit, mas o Wordpad funciona bem, o bloco de notas é uma má escolha). Ao abrir verá uma lista imensa de comandos, mas não veja com maus olhos. A estrutura é simples: é sempre "sistema.função" e estará sempre descrito bem atrás. 

    Onde estão os "command." é para você configurar teclas onde na maioria dos emuladores é "inconfigurável", teclas de save state, teclas de resetar ou desligar, tecla de rodar a tela, etc. O contra é que não é muito amigável você precisar saber o valor numérico de cada tecla, infelizmente é só pesquisando. 

    Seguindo abaixo, chegará aos sistemas, vou destacar o que eu acho importante (não irei especificar cada um valor, só as funções, mas está tudo na pasta documentation):
  • .special : essa função é para especificar algum filtro para melhorar a imagem, as opções disponíveis são none, hq2x, hq3x, hq4x, scale2x, scale3x, scale4x, 2xsai, super2xsai, supereagle, nn2x, nn3x, nn4x, nny2x, nny3x, nny4x. 
  • .stretch : vai definir o tamanho da tela, se terá a resolução original do sistema, se preencherá a tela ou respeitará o aspecto original, as opções disponíveis são 0, full, aspect, aspect_int, aspect_mult2
  • .videoip : se usará ou não bilinear filtering, as opções são 0, 1, x, y.
  • .xres e yres : resolução horizontal e vertical respectivamente em tela cheia, o valor padrão é 0, o que respeitará a resolução do sistema, ou então pode-se colocar qualquer uma a gosto
  • .xscale e yscale : escala da imagem horizontal e vertical respectivamente em janela, ou seja multiplicará o tamanho da imagem exibida, os valores vão de 0.01 a 256
  • .xscalefs e yscalefs : escala da imagem horizontal e vertical respectivamente em tela cheia, ou seja multiplicará o tamanho da imagem exibida, os valores vão de 0.01 a 256 
     Tem umas outras, mas para mim só essas serão interessantes, há muitas configurações de controles, mas isso é melhor fazer com o emulador em execução. A minha dica é usar a função de localizar e substituir do editor de texto, por exemplo a função padrão de tamanho da tela é ".stretch aspect_mult2" e você quer que estique tudo usando a opção full, então o que tem que fazer é abrir o menu de busca ou substituição, colocar para substituir ".stretch aspect_mult2" para ".stretch full" e pronto! Todos os sistemas usarão a opção desejada.

     Minha opinião, eu configuro da seguinte forma: Um filtro que dá uma boa cara para os jogos é o HQ, pelo menos entre as disponíveis é o melhor, mas para configurá-lo precisa ficar atento a outras funções, a primeira é ".stretch" em que não pode ficar no full, porque se não o resultado não será o ideal, minha recomendação é mudar para ".stretch aspect" pois usa melhor o tamanho do monitor e respeita a proporção do console (aspect_int e _mult2 costuma ficar pequeno). Outra função que deve ser observada são as ".x/yscale" e ".x/yscalefs", é o seguinte, se for usar hq2x, todas as escalas devem estar em 2, e o mesmo para hq3x e hq4x em que devem escalar todas as opções em 3 e 4 respectivamente. Por fim, acionar o bilinear filtering com .videoip 1. Resumindo
  • .special hq4x
  • .stretch aspect
  • .videoip 1
  • .xscale 4.000000
  • .yscale 4.000000
  • .xscalefs 4.000000
  • .yscalefs 4.000000
     Para configurar os controles, ao iniciar a emulação, deve ser feita uma vez em cada sistema. Primeiramente deve definir o tipo de gamepad usado, por padrão é o mais comum, porém no Mega Drive o controle padrão é o de 3 botões, e o ideal é o de 6, enquanto o PSOne o melhor é o dualshock, para isso por padrão deve segurar Ctrl+Shift e a porta, por exemplo, player 1 é Ctrl+Shift+1, player 2 é Ctrl+Shift+2, e assim sucessivamente. Para mapear os botões o atalho é Alt+Shift+1 (mesma forma de antes) e é só seguir as instruções abaixo, apertando cada tecla 2x seguidas para confirmar.

     Associando ROMS

NES/GB/GBC/GBA/SMS/GG/Lynx/PCE/VB

O melhor da série

     São sistemas em que suas roms possuem extensões bem peculiares, Atari Lynx usa .a26, NES usa .nes, GB usa .gb, GBC usa .gbc, GBA usa .gba, Virtual Boy usa .vb, Master System usa .sms, Game Gear usa .gg. São extensões que muito provavelmente não irá ver sem ser nessa situação, ou seja, acho que pode muito bem associar ao mednafen escolhendo ele como programa padrão. No windows basta clicar com o botão direito do mouse em uma ROM e ir em abrir com (caso não haja a opção, vá em abrir, depois marque "selecionar um programa blablabla" e ok), na janela que for abrir vá no botão procurar, encontre onde deixou o Mednafen e selecione. Lembre-se de deixar marcado a opção "sempre usar o programa selecionado".

SNES

Clássico

     As ROMs do SNES podem ter diversas extensões, .smc, .swc, .fig e .sfc, e uma coisa que eu aprendi com o byuu, é que muitas das extensões não querem dizer a finalidade da ROM, digo, é uma imagem da ROM de um jogo de SNES ou Super Famicon, ou seja o ideal é usar a extensão .sfc que significa Super Famicon Cartridge. Para converter as roms para SFC, pode se usar o programa snespurify feito pelo Byuu, basta baixar o Bsnes v087 (acha fácil na internet, se não encontrar me peça aqui), ou então usar o programa uCON64, que é bem complexo de se usar (precisaria de um post inteiro só para ele). Bom, convertido para .sfc basta associar como feito anteriormente.
Mega Drive/Genesis


Alex

     Esse aqui é muito chato, há várias extensões para ele .smd, .mgd, .gen e .bin. Seria muito fácil se fosse só converter para SMD ou MGD, que seriam únicos para o Mega Drive, porém o maldito Mednafen só aceita .gen e .bin, e daí surgem dois problemas: 1º não há como converter diretamente para .gen, 2º a extensão .bin é usado em várias formas no computador, seja imagens de CD até arquivos de softwares. A parte "boa" é que .gen nada mais é que o .bin renomeado, então vamos. Para converter todas as ROMS para .bin, deve-se usar o programa SBWin, basta adicionar as roms, escolher a pasta e o formato destino e dar um "play, ou então usar o uCON64. Depois de convertido, basta renomeá-los um a um, ou usar um programa para isso, recomendo o Bulk Rename Utility, abra o programa, navegue até a pasta das ROMS, selecione todas, no canto inferior direito terá o botão Rename, logo em cima tem Extension, na caixa selecione Fixed e em frente escreva gen, clique em rename e pronto! Basta associar .gen ao Mednafen.

Wonderswan

Há uns jogos interessantes para ele

     O Wonderswan possui 2 extensões, .ws e .wsc. O problema do .wsc é que é a extensão Windows Script Component, ou seja não pode associar. Mas sem muitas dores de cabeça, basta renomear para .ws e problema resolvido, recomendo usar o Bulk Rename Utility abra o programa, navegue até a pasta das ROMS, selecione todas, no canto inferior direito terá o botão Rename, logo em cima tem Extension, na caixa selecione Fixed e em frente escreva ws, clique em rename e pronto! Basta associar .ws ao Mednafen.

PSOne/PCE-CD/PCFX

Aposto que ouviu a música

     Esses de CDs infelizmente não terá como associar, mas terá 4 recursos: 
  • Usar um frontend, 
  • Arrastar com o mouse o CUE, ou CCD, ou TOC (depende da imagem) do CD em cima do executável do mednafen e ele já vai rodar, 
  • Criar um arquivo .bat: abra o bloco de notas, escreva o caminho do mednafen e em seguida o da imagem, lembrando sempre de usar aspas, por exemplo: "c:\mednafen\mednafen.exe" "c:\imagens\jogo.cue", salve com a extensão .bat
  • Criar um atalho para o mednafen, depois clicar com o botão direito, ir em propriedade e colocar o caminho da imagem em frente do mednafen.exe onde está escrito o destino, ficará +/- como no arquivo bat acima.
     Lembrando que para esses consoles, precisará das BIOS, e o Mednafen é enjoado para isso, são elas:
Para PSOne: scph5500.bin  (Japonês), 
scph5501.bin (Americano) e scph5502.bin (Europeu)
Para PCE-CD: syscard3.pce
Para PC-FX: pcfx.rom


Basta baixar e colocar na pasta Firmware dentro do Mednafen e pronto! Não posso por o link, mas uma dica, o Retroarch possui essas BIOS;


     Para concluir o tutorial vai mais uma dica, trocar ícones das extensões (até porque o Mednafen não tem ícones), use o programa FileTypesMan, basta procurar a extensão desejada, clicar com o botão direito e ir em Edit Selected File Type, em Default Icon escolha o ícone desejado, procure na internet por icones dos consoles, pegue as versões ".ico". Aproveite e mude também a descrição, para ficar mais fácil reconhecer.


Nenhum comentário:

Postar um comentário