Atualizações de outubro, 2015 Ativar/desativar aninhamento de comentários | Atalhos do Teclado

  • Fm4lloc 3:37 pm em 11 de October de 2015 Link Permanente | Resposta
    Tags: cdi, dreamcast, , emulator, gdi, , reicast, , sega   

    Testando o Reicast – emulador de Sega Dreamcast no Linux 

    Nessa postagem vou explicar como compilar e instalar o emulador Reicast no Linux.

    Reicast não é o primeiro projeto open-source escrito para emular jogos de Dremcast, existe o Lxdream, sem atualização desde 2010. Na linha de código fechado o finado Chankast reinava no Windows em meados 2005. Contudo, nenhum deles permaneceu como referência na cena da emulação.

    A ascensão do Reicast não foi acidental, o projeto nasceu das mãos dos talentosos desenvolvedores do nullDC, considerado o melhor emulador de Sega Dremcast para Windows x86. Inclusive na página do nullDC contém uma nota informando que os novos trabalhos serão feitos no Reicast:

    Work is now done on reicast (https://github.com/reicast/reicast-emulator), and while nullDC is still a better choice for dreamcast emulation on windows/x86 reicast is where future development is. Come and help us!

    Isso me faz acreditar que grande parte do código base do nullDC vem sendo aproveitado no Reicast.

    O programa também recebe constantes commits no github, com suporte a diversas plataformas, inclusive Linux.

    Mas a postagem não é para contar histórias, quero mesmo é ensinar as etapas de compilação do emulador. Prepara o terminal!

    1. Resolver dependências:

    $ sudo apt-get install build-essential libasound2 libasound2-dev libegl1-mesa-dev libgles2-mesa-dev git
    

    2. Descarregar os arquivos-fonte:

    $ git clone https://github.com/reicast/reicast-emulator.git
    

    3. Entrar no diretório correto, construir e instalar:

    $ cd reicast-emulator/shell/linux/
    $ make
    $ sudo make install
    

    Está instalado! A escassa documentação pode ser lida usando o comando man reicast.

    4. Abra o terminal e rode o comando:

    $ reicast
    

    O programa ira abrir e fechar subitamente, retornara erros por falta de Bios/flash. Faço isso para ele criar os caminhos dos diretórios e arquivos de configuração automaticamente.

    Após essa primeira execução o arquivo emu.cfg será criado em: ~/.config/reicast/

    5.A próxima etapa é o download da Bios/Flash na página: http://www.freewebs.com/animated_site/dc_bios.bin
    http://www.freewebs.com/animated_site/dc_flash.bin

    Os arquivos dc_bios.bin e dc_flash.bin devem ser copiados para: ~/.local/share/reicast/data/

    Não me pergunte o motivo de elegerem tal pasta, estou apenas seguindo a documentação.

    6. Ok! A configuração do controle é através do comando reicast-joyconfig. Antes de executá-lo descarregue as dependências:

    $ sudo apt-get install python-pip python-dev
    $ sudo pip install evdev
    

    Plugue o controle no computador e execute:

    $ mkdir -p ~/.config/reicast/mappings/
    $ reicast-joyconfig -f ~/.config/reicast/mappings/controller_ps3.cfg
    

    Ele vai pedir a id do dispositivo, então informe.

    fm4lloc@debian:~$ reicast-joyconfig
    17: Sony PLAYSTATION(R)3 Controller (/dev/input/event17, usb-0000:00:13.0-1/input0)
    Please enter the device id: 17

    No meu caso a id do controle do ps3 conectado apareceu como 17, o seu pode apresentar outro.

    Siga respondendo se quer mapear (Y – sim ou N – não) determinado botão. Não mapeei o digital pad 2, os botões C, D e Z quando perguntado.

    Depois o mapeamento do controle abra o arquivo: ~/.config/reicast/emu.cfg e acrescente o caminho da configuração recém criada do controle e sua respectiva id editando a seguinte parte do documento:

    [input]
    evdev_device_id_1 = 17
    evdev_mapping_1 = /home/fm4lloc/.config/reicast/mappings/controller_ps3.cfg
    

    NOTA

    Enquanto usava reicast-joyconfig para configurar os botões do controle do Playstation 3, um erro ao tentar mapear o botão A me impedia de avançar.

    O erro foi:

    reicast-joyconfig.py 
    17: Sony PLAYSTATION(R)3 Controller (/dev/input/event17, usb-0000:00:13.0-1/input0)
    Please enter the device id: 17
    Using device 17...
    Name: Sony PLAYSTATION(R)3 Controller
    File: /dev/input/event17
    Phys: usb-0000:00:13.0-1/input0
    Do you want to map a button to exit the emulator [Y/n] n
    Do you want to map the A button? [Y/n] 
    Press the A button now...
    Traceback (most recent call last):
      File "/usr/local/bin/reicast-joyconfig", line 237, in <module>
        mapping = setup_device(dev_id)
      File "/usr/local/bin/reicast-joyconfig", line 147, in setup_device
        print_mapped_button("%s button" % button, event)
      File "/usr/local/bin/reicast-joyconfig", line 89, in print_mapped_button
        code_id = evdev.ecodes.BTN[event.code]
    KeyError: 302
    

    Solucionei comentado a linha do script /usr/local/bin/reicast-joyconfig:

    print_mapped_button("%s button" % button, event)
    

    Comente acrescentando o caractere # (jogo-da-velha) no começo da linha retrocitada.

    7. Hora de jogar.

    Eis o melhor momento! Adianto a lista de compatibilidade, disponível aqui -> Reicast_Compatibility_List – a lista não é exaustiva, uma massa grande de jogos não foram adicionados nela e funcionam, caso do Shenmue 1.

    Atualmente o reicast suporta imagens no formato .CDI e .GDI. O comando para executar o jogo é:

    $ reicast /caminho_do_jogo/jogo.gdi
    

    Para iniciar em tela cheia use a opção -config x11:fullscreen=1:

    $ reicast -config x11:fullscreen=1 /caminho_do_jogo/jogo.gdi
    

    ou edite o arquivo emu.cfg e atribua o valor 1 (um) para fullscreen. A resolução também é alterada no emu.cfg

    [x11]
    fullscreen = 1
    height = 480
    width = 640
    

    Imagens do emulador:

    Este slideshow necessita de JavaScript.

    A configuração da maquina usada:

    Debian 8.2 Jessie
    Operating System =  Linux debian 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u4 (2015-09-19) x86_64 GNU/Linux
    Physical RAM     =  3966 MB 
    CPU name         =  AMD Phenom(tm) II X4 955 Processor 
    CPU speed        =  3.193 ghz (4 logical threads) 
    Video Card       = GeForce GTX 460 1024gb – Driver proprietário da NVIDIA na versão 352.21
    
     
    • Fernando da Silva 2:19 am em 22 de fevereiro de 2016 Link Permanente | Resposta

      Obrigado pelo tutorial. Tenho algumas dúvidas:
      01 – toda vez que fecho o emualdor, ao abrir novamente, ele pedi para configurar a bios, como posso salvar a bios?
      02 – no meu fica na tela, botoes como se fosse para android, como posso retirar eles da tela?

  • Fm4lloc 2:01 am em 7 de October de 2015 Link Permanente | Resposta  

    Usando o compactador de arquivos Engrampa junto ao Thunar 

    O Thunar possui um plugin nomeado de thunar-archive-plugin usado para prover a manipulação de arquivos compactados através de o menu de contexto – aquele que aparece quando pressiona-se o botão direito do mouse dentro de uma pasta no Thunar; Seleciona-se os arquivos, clica em “Criar Arquivo…” ou “Extrair Aqui..” e deixa o compactador fazer o trabalho, entende!?

    O plugin funciona muito bem, mas na versão <= 0.3.1-3 não trabalha com o Engrampa.

    A saída para solucionar isso foi reportada por um usuário que estava com problema semelhante -> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=783611

    O plugin utiliza scripts que fornecem comandos para invocar o compressor. Pensando nisso, a maneira de resolver foi criar um arquivo parecido para o Engrampa e coloca-lo junto aos demais.

    #!/bin/sh
    #
    # engrampa.tap - Wrapper script to create and extract archive files
    #                   in Thunar, via the thunar-archive-plugin, using the
    #                   engrampa archive manager.
    
    # determine the action and the folder, $@ then contains only the files
    action=$1; shift;
    folder=$1; shift;
    
    # check the action
    case $action in
    create)
    	exec engrampa "--default-dir=$folder" --add "$@"
    	;;
    
    extract-here)
    	exec engrampa "--extract-to=$(pwd)" --extract-here --force "$@"
    	;;
    
    extract-to)
    	exec engrampa "--default-dir=$folder" --extract "$@"
    	;;
    
    *)
    	echo "Unsupported action '$action'" >&2
    	exit 1
    esac
    

    É só criar um arquivo com o nome engrampa.tap na pasta /usr/lib/x86_64-linux-gnu/thunar-archive-plugin/ contendo o conteúdo acima. Para a versão 32 bits do Linux o caminho provavelmente é /usr/lib/i386-linux-gnu/thunar-archive-plugin/.

    Depois conceda permissão de execução ao arquivo com o comando: sudo chmod +x ./usr/lib/x86_64-linux-gnu/thunar-archive-plugin/engrampa.tap

    Agora o Engrampa abre diretamente no menu de contexto do Thunar.

     
c
escrever novo post
j
post seguinte/ comentário seguinte
k
post anterior/comentário anterior
r
Resposta
e
Editar
o
mostrar/esconder comentários
t
voltar ao topo
l
vá para login
h
mostrar/ocultar ajuda
shift + esc
Cancelar