sexta-feira, 19 de dezembro de 2014

Configurar o MAME/MESS para reconhecer o mapeamento do XPadder


Configurar o MAME/MESS para reconhecer o mapeamento do XPadder


A configuração dos emuladores MAME e MESS para o reconhecimento de mapeadores de comando/teclado, em específico o XPadder, não é habilitada por padrão, e tampouco há uma opção para habilitá-la via linha de comando ou arquivo de configuração (.ini).

Para que essa configuração seja habilitada, é necessário a execução de um conjunto de passos, que em síntese é a alteração de um número em um arquivo e a compilação do emulador.

Criei esta postagem para justamente me ajudar a relembrar do passo-a-passo, e também para ajudar a quem tiver o interesse. Pois toda nova versão desses emuladores, e enquanto não houver uma configuração mais amigável, preciso refazer essa configuração.


Passo 01: Baixar os arquivos


Baixar os arquivos de fontes dos emuladores:


Entrar na página de distribuição dos arquivos fontes do MAME/MESS em: http://mamedev.org/release.html , nas opções: Downloads >> Latest Release; ir até a seção "Official Source Code Packages" e fazer o download do arquivo zipado (que no caso da figura é o mame156s.zip).


Baixar o compilador dos arquivos de fonte:


Dirigir-se as opções: Development >> Development Tools; e fazer o download do compilador mingw-mame (no meu caso eu baixei a versão x64).



Passo 02: Configurar o compilador


Executar o arquivo do compilador, mingw-mame-w64-20140905.exe. Ele é um arquivo compactado do tipo 7zip, com isso, ele irá solicitar uma caminho de diretório para a descompactação. Assim, foi informado o caminho: C:\mingw\mingw64-w64\


Com o compilador descompactado, é hora de configurar as variáveis de ambiente de Windows. Para isso, abra o Explorer (explorador de arquivos), clique com o botão direito do mouse em "Meu Computador", um menu de contexto se abrirá, em seguida, acione a opção Propriedades. A tela abaixo será exibida, e acione a opção "Configurações Avançadas de Sistema" destacada nela:


Na sequência, acionar a opção "Variáveis de Ambiente...":


Na seção "Variáveis do sistema", criar uma variável com nome MINGW_PATH e com o valor C:\mingw\mingw64-w64\bin;C:\mingw\mingw64-w64\opt\bin;C:\mingw\mingw64-w64\Qt\bin

Esse valor é relativo ao diretório no qual o compilador foi descompactado. Atenção com ajustes !

Após isso, adicione a variável recém criada em outra variável chamada Path. Adicionar a instrução %MINGW_PATH%; antes das demais. Atenção redobrada neste ponto !!!


Observação: A tela abaixo mostra de onde foi extraída a informação referente a variável de ambiente, bem como o comando para a compilação do emulador, o make, que ainda será exposto.





Passo 03: Descompactar os arquivos de fonte dos emuladores


Descompactar o arquivo  mame156s.zip em um local conveniente. Foi utilizado o caminho G:\mame0156s\mame\


Em seguida o arquivo G:\mame0156s\mame\src\osd\windows\Input.c deve ser localizado:


Na sequência, o arquivo Input.c deve ser aberto em algum editor de texto. Recomendo o PSPad ou o Notepad++, pois o Bloco de Notas poderá não exibir corretamente as quebras de linhas.

Logo no início do arquivo, identificar a diretriz FORCE_DIRECTINPUT configurada com 0 (zero/desligada).


Essa diretriz deve ter seu valor alterado para 1 (um/ligado), conforme destaca a figura abaixo. Salve o arquivo !


Passo 04: Compilar o emulador para gerar o arquivo executável do MAME


Dirigir-se ao caminho dos arquivos de fontes, G:\mame0156s\mame\, pelo Prompt de Comando. E digitar o comando make


Irá demorar um pouco (no meu demorou uns 20min), e esse tempo depende do desempenho geral do computador... Após isso, o arquivo executável do emulador, o mame64.exe, foi gerado com sucesso.


A tela abaixo demonstra o arquivo também:



Passo 05: Compilar o emulador para gerar o arquivo executável do MESS


Muito semelhante ao passo anterior, apenas uma opção adicional é informada ao comando make, conforme demonstra o Wiki do MESS:





O comando a ser digitado é make TARGET=mess





Após mais algum tempo, o arquivo mess64.exe é gerado:

 Na interface visual:



Conclusão


Apesar das minúcias, não é difícil efetuar a configuração, requer apenas atenção. Com isso, a configuração para mapeamento de comandos está habilitada.

Agora é pirar na jogatina !

Referência:

Esta postagem foi baseada na postagem do camarada palentir do fórum do Hyperspin, em: http://www.hyperspin-fe.com/forum/showthread.php?18631-Get-MAME-amp-MESS-to-detect-keys-from-XPadder-TUTORIAL


8 comentários:

  1. camarada se tivesse como fazer um video acho que interessava a muitos isso e vc ganharia muitas vizualizacoes p q o mame e o mess acho que sao os unicos que nao da pra configurar com xpadder

    ResponderExcluir
    Respostas
    1. Laercio, olá !

      Obrigado pela postagem.

      Para mim, vídeo é complicado, pois demanda mais tempo e dedicação para a captura, edição e narração. É justamente esse tempo e dedicação que são escassos para mim.

      Por isso prefiro escrever, e tento com as figuras elucidar o máximo que posso para que a tarefa seja entendida.

      Abraços,

      Excluir
  2. não entendi quase nada um video seria muito melhor to me matando aqui com isso

    ResponderExcluir
  3. Este comentário foi removido pelo autor.

    ResponderExcluir
  4. No 'passo 2' você boto essa observação

    "Após isso, adicione a variável recém criada em outra variável chamada Path. Adicionar a instrução %MINGW_PATH%; [antes das demais]. Atenção redobrada neste ponto !!!"

    o comando (%MINGW_PATH%;) fica antes de todos voce quis dizer todos os comando.
    Deixo uma brecha ai, por isso um video e importante, e outros videos de variaves de windows a galera no path sempre deixa no final mais colocando( ;LINHA_DE_COMANDO)
    Mame usado e MAME0156s, eu to testando com windows 7 32 bits Consegui fazer mais queria num mame especifico. Demora que so esse cmd os 2 e uma hora de tempo.

    Tutorial funciona com 100% so tome cuidado na hora de mecher com PATH windows Variaveis Ambiente

    ResponderExcluir
  5. Amigão, parabéns pela iniciativa, belo tutorial, porém, gostaria que você disponibiliza-se o link do mame já configurado. Não é mais fácil???

    ResponderExcluir
    Respostas
    1. TioGu, olá

      Atualmente, está mais fácil ainda isso. Nas versões atuais do Mame, a partir da 162, basta utilizar a configuração (pela linha de comando/cli) via parâmetro: "-keyboardprovider dinput".

      Esta dica está postada aqui, como "direct input":http://amiguinho20.blogspot.com/2016/07/mame-175-e-rocketlauncher-dicas-valiosas.html

      E também na documentação oficial (-keyboardprovider): https://docs.mamedev.org/commandline/commandline-all.html

      Boa sorte aí !

      Abraços,

      Excluir