Autor: Taik0
Data: 2 de Fevereiro do 2002.
Neste mini-howto explicarei a forma de compilar o sistema e o xmame para que funcione com um comando USB em FreeBSD ( a compilacion em mame é a mesma para NetBSD).
Principalmente precisámos suporte USB no kernel:
device uhci # UHCI PCI->USB interface device ohci # OHCI PCI->USB interface device usb # USB Bus (required) device ugen # Generic device uhid # "Human Interface Devices"
Esses são os devices necessários para que nossa FreeBSD detecte o comando ao arrancar, principalmente uhid.
Uma vez configurado o kernel passámos a compilá-lo:
root@jotaro# config MYKERNEL root@jotaro# cd ../../compile/MYKERNEL root@jotaro# make depend && make && make install
Adicionaremos ao rc.conf o seguinte flag:
usbd_enable="YES"
Com isso já teremos nosso sistema pronto para ter suporte USB.
Agora olharemos se nosso joypad é detectado pelo sistema, o mas comodo é o seguinte:
root@jotaro# usbdevs
addr 1: UHCI root hub, VIA addr 2: Microsoft SideWinder Plug & Play Game Pad, Microsoft
O device por defeito costuma ser /dev/uhid0.
Como usuários normais não temos acesso ao dispositivo do joypad (/dev/uhid0), portanto mudaremos suas permissões:
root@jotaro# chmod 666 /dev/uhid0
Uma vez todo detectado passaremos à configuracion do xmame, podemos baixar a ultima version disponível de: x.mame.net
Não aconselho instalar o port já que não te deixa configurar nada e o suporte para USB vem desativado para -CURRENT e -RELEASE.
Uma vez temos o pacote passámos a descomprimí-lo:
root@jotaro# tar jxvf xmame-0.57.1.tar.bz2 root@jotaro# cd xmame-0.57.1.
E começámos com a configuracion do Makefile que em nosso caso é makefile.unix.
As seguintes opções há que as mudar para o melhor funcionamento do mesmo.
ARCH = freebsd
Sem isto não teremos suporte USB já que só é suportado por FreeBSD e NetBSD e por defeito vem Linux
JOY_USB = 1.
NetBSD/FreeBSD USB joystick support (faz defeituosa dizer mas?).
DISPLAY_METHOD = SDL
Melhor utilizar a libreria SDL, se não a tens ou não te interessa usá-la pela razão que seja o mas recomendável é:
DISPLAY_METHOD = x11
Aviso, só se pode ter uma opcion de cada tipo ativada!
Se tens o DGA ativado nas X:
X11_DGA = 1.
Para ativá-lo basta com comentar estas lineas de etc //X11/XF86Config :
# SubSection "extmod" # Option "omit xfree86-dga" # don't initialise the DGA extension # EndSubSection
Com isto já acabámos de configurar o Makefile de nosso mame, agora só falta compilá-lo.
root@jotaro# gmake -f makefile.unix root@jotaro# gmake install
E já estamos practicamente prontos para jogar! E agora vamos diretamente ao mame.
Podemos criar um xmamerc da seguinte maneira:
root@jotaro# xmame.x11 -sc > xmamerc
Aviso que a extension .x11 a põe por defeito se compilas com suporte para x11.
Configuraremos o que queiramos (ainda que eu o faço sempre a mão) e nos disporemos a jogar!
Que?! que não tens nenhuma rom? podes baixar-te alguma de www .mame.dk (aconselho que seja um King Of Fighters ou um Metal Slug :D).
Agora os flags necessários para ativar o comando ao arrancar o mame.
root@jotaro# xmame.x11 -jt 5 -jdev /dev/uhid0 kof2000.zip
O -jt 5 indica que vamos usar um comando do tipo USB e -jdev o dispositivo, já que por defeito é /dev/joy.
Podes poupar-te o -jdev fazendo um link entre eles:
root@jotaro# ln -s /dev/uhid0 /dev/joy
Com estes passos tendria que vos funcionar corretamente e sem problemas, se teneis alguma dúvida ou alguma sugestão podeis enviar-me um mail à direcion de email do princípio da página.