Este es un breve tutorial para utilizar la aplicación JoyToKey como herramienta para ordenar nuestros dispositivos USB.
Origen y explicación del problema:Si dispones de una recreativa arcade con Joysticks o Panel Arcade (C.P.) y en algún momento decides emplear un mando de consola para jugar a algún juego es posible que te encuentres con este problema. Windows Xp y siguientes usan un protocolo nuevo que coge el nombre del dispositivo directamente del Hardware, por lo que ordena los dispositivos en base a esta nomenclatura, esto supone que no hay manera de saber qué dispositivo se ordenará delante de cual otro hasta que no lo conectemos al ordenador...
Es decir, si tenemos 2 Joysticks arcade que normalmente están configurados como Joystick1 y Joystick2, es probable que al enchufar un mando de consola éste sea asignado por Windows como Joystick1, relegando a los joysticks originales a los puertos 2 y 3. Esto es un problema especialmente cuando tenemos nuestro Frontend configurado para manejarse con el puerto 1 o si usamos un programa remapeador de teclas como Xpadder o AllinFYC
Solución:La solución está en usar el programa gratuito JoyToKey (similar a Xpadder), éste dispone de una opción para asignar los puertos mediante un archivo de configuración cfg del propio programa. Para conseguirlo sólo hay que realizar unos sencillos pasos:
1.- Enchufar todos los mandos USB que en algún momento queramos utilizar (en mi caso dos mandos de consola + los dos joysticks del arcade que tengo siempre enchufados en la maca)
2.- Abrir JoyToKey (
http://joytokey.net/en/download ), crear un nuevo perfil y en la pestaña opciones configurar el número de dispositivos que tenemos en la opción "Number of joysticks to configure". Después hacemos click en el botón "Configure" justo encima de donde hemos puesto el número anterior.
3.- Ir a la pestaña "Advanced setting for each device" y hacer click en el desplegable "Please select a device".
4.- Una vez seleccionado nuestro primer dispositivo hacemos click en el desplegable "Specify a preferred joystick number" y marcamos Joystick1
5.- Repetimos los pasos 3 y 4 para el resto de dispositivos asignando su correspondiente puerto. En mi caso he configurado los joysticks del arcade como Joystick1 y Joystick2 y los mandos usb (usb gamepad) Joystick3 y Joystick4.
6.- Ahora solo tenemos que presionar OK y volver a la pantalla principal, hacemos click en las pestañas de Joysticks# y mapeamos las teclas que queremos. En mi caso los Joysticks 1 y 3 han sido mapeados utilizando las mismas teclas para el primer player y los joysticks 2 y 4 con las teclas del segundo player. De esta forma puedo estar jugando con un amigo y echarme un versus en el Street Fighter y acto seguido poner un Super Mario Kart y jugar con los mandos tener que tocar absolutamente nada.
Si seguimos estos pasos no importa si desenchufamos o enchufamos un mando en cualquier momento por que JoyToKey los ordenará en su archivo de configuración según hayamos especificado antes, para ello se sirve del identificador que comentaba al principio del tutorial y que podéis ver en la siguiente captura.
OJO!! Los cambios realizados en la asignación de puertos quedan reflejados en el archivo joy2key.ini y no en el archivo.cfg donde asignamos las teclas
PD: Perdonad mi escasa habilidad con la cámara del móvil y photoshop pero a las 5 de la mañana que son no tenía ganas de complicarme, si alguien quiere dejarlo más bonito es libre de aportar sus propias capturas