En vivo y en directo - El blog de Jaime
¿¿¿es posible que alguien sea programador, otaku y aieseco al mismo tiempo???
domingo, 26 de noviembre de 2006
Montando un control de Psx en Ubuntu
Ayer me encontraba bastante aburrido (las vacaciones misteriosamente siempre arrancan asi...) sin nada que hacer por la tarde (mi ISP estaba en hora pico asi que ni modo de entrar Flyff). Por esas cosas locas del destino terminé en Ubuntu. Buscando que hacer me acordé que hace poco había instalado el Zsnes y estaba jugando Actraiser. Me dispuse a jugar y vi mi control de Ps2 al lado y pense "...que bueno sería poder jugar con mi control. Mmm, ¡que hijuemadres! montemoslo...". Tarde de desparche productiva diría yo...

En fin lo primero que hice fue buscar el driver correspondiente. Para aquellos que no lo saben un driver es, citando la definición de wikipedia, "un tipo específico de software, desarrollado para permitir la interacción con dispositivos físicos". Cual es mi sorpresa cuando me doy cuenta que no necesito bajar nada... EL SISTEMA OPERATIVO YA LO TRAE!!! d(o.0)b ZOMG.

Algunos dirán "viejo eso no tiene nada de raro... windows también incluye colección de drivers para gamepads y joysticks...", y pues tienen razón: windows incluye una colección de drivers de gamepads y joysticks suministrados por el fabricante. El driver que necesitamos en este caso es uno que permita interactuar con un dispositivo que, en nuestro caso, no esta diseñado para el PC (llámese control de Snes, N64, Psx, ...).

En fin lo primero se hace es crear el nodo del dispositivo, asi que nos vamos al directorio dev y creamos un directorio nuevo, input; luego el dispositivo; y finalmente el enlance a él:
cd /dev
mkdir input
mknod input/js0 c 13 0
ln -s input/js0 js0
Ahora instalamos el módulo (driver). Antes de hacerlo hay que revisar que el módulo lp no se encuentre instalado; y que los módulos parport y parport_pc si. Utilizamos el comando lsmod para listar los módulos que se encuentran instalados en el sistema.

En caso de que lp se encuentre instalado procedemos a desinstalarlo utilizando el comando rmmod nombredelmodulo, es decir rmmod lp. Una vez verificado lo anterior procedemos a intalar el módulo gamecon.

Gamecon es un módulo que requiere de ciertos parámetros, parámetros que hay que entregarle en el momento de la instalación. Estos paŕametros son el puerto paralelo en donde se encuentra conectado el control (debe de estar conectado antes de realizar la instalación del módulo), y el tipo de control conectado a la interfaz. Los tipos son nulo (o ninguno), Snes, Nes, Joystick multiplataforma de un botón, Joystick multiplataforma de dos botones, N64 y Psx(autoconfigurado para análogo o digital); y sus identificadores son 0, 1 ,2, 3, 4, 5, 6 y 7 respectivamente.

La sintáxis es la siguiente (utilizando el comando insmod o modprobe): insmod gamecon map = PuertoParalelo, tipoDeControl. En mi caso nuestro caso sería algo como modprobe gamecon map=0,7. 0 porque es el primer puerto paralelo, y 7 porque es un control de Psx. Para probar que el control esta conectado se pueden utilizar aplicaciones como jstest (para probar que el gamepad quedo bien montado) y jscal para calibar el gamepad.

En fin si esto no es suficientemente ilustrativo o tienen dudas al respecto pueden consultar aquí. Si lo que pasa es su distribución no dispone del módulo, pueden bajarse el fuente de aquí (para kernels mayores a la versión 2.16.x, y fijense la arquitectura para la cual lo van a bajar).

Lo que soy yo tengo un Batman Returns que jugar y el control me esta llamando... nos vemos luego

Etiquetas: ,

2 Comentarios
Publicar un comentario
<< Volver a la página principal
 
Sobre Jaime...

Nombre: Jaime
Localización: Medellín, Antioquia, Colombia
Acerca de mi: Que les puedo decir? en algún lugar tenía que descargar toda la basura que pasa por mi cabeza...
Ver mi perfil completo
Categorías
Post Anteriores
Feed

Suscribirse al feed

Entradas Archivadas
Shoutbox

Otros blogs
Links
Visitantes

Este blog ha sido leido
Web Site Counter
veces. Siéntete libre de dejar un comentario.

Contacto
Google talk:
jjaramillo.aiesec@gmail.com

MSN Messenger: peleleman@msn.com

Mail:vulcanic.viper@gmail.com
Powered by

BLOGGER