Buenas llevo unos dias preparando este pequeño proyectillo y ante las multiples dudas que me van surgiendo, prefiero antes de marear mas a Macarro y [Mad], contaros este proyectillo ademas ver las necesidades que hay :)
Proyecto: Crear un driver totalmente opensource que permita usar el puerto paralelo para nuestros controles; en principio yo voy a trabajar en Linux, pero al ser el driver abierto, si alquien quiere portarlo a MSDOS, MacOS o Windows; es perfectamente libre de hacerlo :D
Mi Idea: En principio mi objetivo va a ser hacer un keycoder por software, es decir un boton te da una tecla, pero seria luego perfectamente posible hacer un driver mejor para configurar Joys virtuales a partir de una configuracion dada al driver (ya sea con configuraciones base, o dando un archivo ini creado por una aplicacion visual :?).
El Debate: Pues hay varios problemas, en principio he visto diferentes versiones con formas de leer el LPT y en todas lo que me he encontrado que seria mejor el concepto/politica que tenemos hoy dia de configuracion de los controles, explico:
Ahora mismo configuramos los botones por lineas, asi:
El problema es que se lee siguiendo las columnas y comprobando que bits hay activos en esa posicion, ej: Enviamos un barrido a la columna 10, esperamos unos segundos (el delay que me teneis que decir - ver abajo), luego miramos de nuevo la columna 10 y vemos que estan pulsados [1-ARRIBA] y [1-DISP2], pasamos a la siguiente columna 11 y repetimos...
Y asi con todas, mi idea seria configurar los controles por columnas:
o algo mas complejo para cuatro jugadores seria:
de esta forma tendriamos solo que mirar el numero de columnas/controles activos, y no tener que esperar mas de lo necesario, Con esta configuracion podrias configurar cada via con controles virtuales de varias formas: - Joy4 ejes + 8 botones (Joy4) - Joy8 ejes + 4 botones (Joy8) - 12 Botones (Btn12) - 12 botones como teclas (Key12) - Custom (Custom) - Usando algun configurador o ini para mandarle tu config (no se me ocurren mas opciones xD)
Asi podriamos configurar el driver: insmod arcade.lpt0=Joy8,Joy8,Joy4,Joy4,Btn12 Y direis 4 botones para 8 vias son pocos, pero es que con (12btn) podemos meterle los 4/8 mas que necesitemos, no se si e entiende la idea :?
Si solo quisieramos un simple panel de arcade clasico para 2 jugadores: insmod arcade.lpt0=Joy4,Joy4 Y tendriamos 2 joystick virtuales de 4 ejes con 8 botones cada uno :)
Vuestra Ayuda: Desafortunadamente yo no tengo Windows, asi que no puedo comprobar totalmente todas las funcionalidades del PPJoy y los diferentes conceptos que usa. En principio me gustaria saber 2 cosas el delay que tiene el PPjoy por defecto y como hace para configurar los botones de tu panel (supongo que sera una utilidad a parte).
Por favor, debatid y aconsejadme que yo acabo de llegar a este mundillo (como quien dice) y no se las necesidades que hay :)
Un Saludo y seguro que entretodos creamos un util proyecto ^_^ WORK IN PROGRESS
En el ppjoy configuras los botones con el driver, te sale por ejemplo : boton 1 , le das a scanear, pulsas un boton, por ejemplo el nº 29 en la interfaz y te asigna ese botón como el 1 en el pad de windows, lo mismo con los joysticks.
Saludos
Macarro7/11/2005, 13:19
Buenas,
D_skywalker, ahora mismo no tengo instalado el driver ppjoy así que no te puedo decir exactamente que valores de delay trae por defecto.
De todos modos, te hablo por lo que recuerdo:
1.- Como ya te dije, el ppjoy tiene los timmings configurables y si no recuerdo mal, eran tres valores diferentes. Tal y como está por defecto, a mi me iba perfectamente y desconozco los efectos de cambiar los valores, pero creo que es interesante dejar ese margen de configuración ya que tal vez ordenadores lentos no fuesen capaces de mantener una alta tasa de refresco.
2.- Sobre tu idea de dar un mapeo prefijado para los cables, creo que no es demasiada complicación programarlo para que sea genérico y se simplifica el trabajo a la hora de la construcción del hardware.
3.- Yo no tengo linux (ni se manejarlo :( ), pero para cualquier prueba sobre windows, aquí me tienes, tengo el panel construido y totalmente funcional con ppjoy así que es muy sencillo hacer comparaciones.
4.- Otra cosa a la hora de la programación, es cierto que activando solo ciertas columnas, se reduce el tiempo del ciclo completo por lo que se podría aumentar la velocidad de refresco. Desconozco con qué frecuencia lee el ppjoy las entradas, pero tengo que decir que debe ser sobradamente alto porque ni con dos jugadores dándole a piñón a todos los botones posibles he notado nunca ninguna clase de retardo, perdida de pulsaciones o similar. Date cuenta de que los juegos a lo sumo irán a 60 fps así que con hacer un barrido completo a esa frecuencia debería ser suficiente... y me imagino que el lpt tendrá capacidad para mucho más.
Un saludo y mucho ánimo con tu proyecto. Si lo sacas adelante, puedes alcanzar los cielos del tuning marciano al lado de ferix :D :D
MODIFICACIÓN ---------------------------
5.- En windows es especialmente interesante que el ppjoy haga funcionar nuestro panel como joystick ya que eso nos da una inmensa versatilidad al poder utilizar ppjoy junto a joytokey. Con ese programa podemos asignar cualquier tecla, combinación de las mismas, acciones del ratón, etc... al joystick y entonces podemos controlar cualquier juego y emulador con el joystick sin ningún problema. En linux y ms-dos no se si habrá alguna aplicación similar...
jormc7/11/2005, 13:32
Muy buenas!
Ya veo que D_Skywalk se me ha adelantado (y me ha quitado un peso de encima! -> no hombre, es broma).
Veamos, como algunos de vosotros sabéis, estoy en proceso de fabricación de mi panel, que irá por LPT. Mi idea era proponer esto mismo, un driver alternativo, open source y modificable, escalable para diferentes plataformas y "de batalla", pero claro, hasta que no tenga material para probarlo (entiéndase, mi futuro panel), no lo quería plantear.
Resumiendo, que estoy dispuesto a ayudar a D_Skywalk en todo lo que me sea posible. Sólo pide y veremos qué sacamos de todo esto.
He de suponer que estás trabjando con C++, al ser Linux tu base de desarrollo, o algo por el estilo. Mi planteamiento era hacerlo en ensamblador, pero... uffff!!! jejeje menuda tela, no?
Pues nada, seguiré este hilo de cerca y aquí estoy, para lo que necesites. Si quieres, ponme al corriente del proyecto y veo en qué te echo una mano (he de reconocer que no sabía por dónde empezar...).
Ahí estamos!
Saludos y felicidades por la idea.
Jordi
PD: puedo hacer pruebas (o podré) tanto en Linux, como en MSDOS como en Windows... y si me apretáis, en mi pocketpc :woot:
Macarro7/11/2005, 13:43
Bueno, ya lo he mirado, D_Skywalker, esto es lo que pone:
LPT switch row select delay: 3 µs
Y si no recuerdo mal eso son 3 * 10^-6... es decir, una frecuencia de 0.3 Mhz, lee 333.333 veces por segundo, que es infinito comparado con los 60 fps a los que corren los juegos.
Y en el peor de los casos, si se hubiesen equivocado (no creo) y fuese milisegundos, seguirían siendo 333 veces por segundo, sobradísimos también.
El tema es que recuerdo que había varios tiempos y ahora no los encuentro.
PD.- Sky, tío, deja la maca a un lado y saca ya adelante dantoine :cry:
D_Skywalk7/11/2005, 13:57
Bien! perfecto tonse, si quieres montamos en sf un espacio :? o subo aki el src :) o montamos una pagina cutre en mi server... bueno ya veremos xD
No, es C puro, un driver para el kernel lo que estoy haciendo :) De esta forma funciona en cualquier plataforma ;)
Bien, bien, eso hacia falta :*
Ok, que pokito, el driver del mando de PSX se gasta unos 30 en escribir esperar y recibir :?
Buf, macarro no te pongas triste :( Todos los dias dedico una horita a Dantoine y luego me gusta dedicar otra horita a mis "paranoias" variadas con la novia xDDD
Un Saludo y tranquilo, basicamente ya tengo el driver andando, luego ya las pijadas las hacemos mas tranquis ;=)
jormc7/11/2005, 14:04
Ok!
Como veas. Yo en el pc del curro, donde estoy ahora, no tengo LPT (me caparon el portatil...). Si quieres pon el fuente y me lo miro. Nunca he traajado con el LPT, pero puede ser interesante.
Al llegar a casa puedo montar algo en un celeron que tengo por allí... con Linux, Windows y MSDOS...
Ah, por cierto, he visto por ahí simuladores de LPT en VB6, puede ser un buen comienzo para interpretar en Windows...
Estamos en contacto!
Jordi
Macarro7/11/2005, 14:14
Me da a mi que en realidad va a ser 10^-9 y que el puerto paralelo va a 33 Mhz, diría que tiene más lógica...
Y en cuanto a lo del pad de psx... pues no se, lo único que se me ocurre es que como los pads de psx codifican la información (y es mucha, porque además tenemos 4 ejes analógicos), puede que el tren de pulsos sea muy largo y además incorpore algún sistema para evitar errores.
PLAYJODETE7/11/2005, 14:18
Por cierto una cosa, y hablando desde la mas completa ignorancia sobre el protocolo que utilize el lpt. No se podria hacer una interfaz más fácil ( ¿ más aún ^_^ ). Me explico, por ejemplo del pin 1 a 6 botones de contactos, y el resto sean masas ¿ no?
Saludos
Macarro7/11/2005, 14:24
No, play:
Los diodos son necesarios en un método matricial, como en el hack de teclado, para evitar el ghosting. Cuando pulsas simultanemante tres de las esquinas de una submatriz, aparece ghosting en la cuarta esquina... Se podrían reducir el número de entradas y realizar una asignación fija de botones para evitarlo de otro modo... pero ya no tendríamos las maravillosas 60 entradas.
Un saludo.
D_Skywalk9/11/2005, 12:56
Bueno para esta tarde ya he terminado el "interface" de testeo del driver; lo he hecho en una plancha de corcho, de esas para memos, y he comprado 120 chinchetas hacen las veces de pulsadores :D (Coste total del interface 2e xDD)
Esta tarde os pongo las fotos y cuento finalmente como funciona el driver, como le dije a Macarro por ahora solo se acceder a los 8 primeros canales, asi que en principio en OpenPPjoy soportaria 40 conexiones :)
Un Saludo y deseadme suerte esta tarde ;)
Macarro9/11/2005, 13:07
Venga, tío... jajajaj, lo has hecho super rápido. Felicidades y gracias.
Intenta corregir luego en el driver el fallo del ppjoy, que los cables no estén asignados al player 1 o 2.
De todos modos, aunque no consiguieras acceder a las 20 entradas restantes, 40 entradas siguen siendo la leche y más que suficientes para la mayoría de los paneles de control.
D_Skywalk11/11/2005, 10:53
Esta visto que voy a terminar antes el driver que hacerme el interface para testearlo xDD
Bien, ya tengo los ansiados 12 canales, asi que el curro basico ya esta terminado :)
Tambien tengo preparado una pequeña utilidad para MSDOS, que lee el lpt y nos da su estado (para testeo tb) la cosa seria ¿que necesitais los usuarios de msdos? ¿un key-encoder? Lo digo sobretodo por que no existen drivers para msdos :?
Un Saludo y en cuanto testee ya todo el paquete lo cuelgo por ahi con los srcs :D
Macarro11/11/2005, 11:03
Supongo que para ms-dos necesitaran que el cacharro emule al teclado y que se pueda asignar cualquier tecla a cualquier botón. De ese modo se tendría la máxima compatibilidad.
D_Skywalk11/11/2005, 11:12
La cuestion es:
¿Habra suficientes "key-codes" para 60 pulsadores distintos? un teclado tiene 104 teclas sino recuerdo mal... pero ¿seran todas legibles para los juegos?
Un Saludo :)
Macarro11/11/2005, 11:25
No entiendo a qué te refieres con legibles. Quiero decir, que por ejemplo F-1 no tiene ningún resultado visible, y sin embargo es perfectamente leíble por un programa (un emulador, en este caso).
D_Skywalk11/11/2005, 11:38
Si pero por ejemplo teclas como 0x00 o 0x01 que son de control (creo que equivalen la pulsacion de CTRL+??) no creo que sean legibles por muchas aplicaciones :?
Un Saludo, la cuestion por lo tanto seria buscar 60keycodes compatibles con todo, no se si me entendeis :?
Macarro11/11/2005, 11:47
Vale, si... yo creo que tengo un libro de pascal por aquí donde venía algo de eso... pero supongo que será más rápido buscarlo en internet o algo, jej
jmsegov24/11/2005, 19:39
¿Como va el proyecto? Para cuando una beta y poder probar.
Mi idea es migrar toda la máquina a linux y poder controlar el programa Geexbox con el mando. ¿Habrá alguna sopresa para Navidad?
Gracias.
Configuración: ------------------
PIII 500 256 RAM SO: Win98 + Mame 0.71 SO: Linux + Geexbox (Reproductor multimedia)
Interfaz de conexión LPT
D_Skywalk25/11/2005, 09:27
Sips, la alfa, esta ya funcionando en mi linux; desde luego la version con la que me voy a esforzar sera con la de linux, aparte de por tiempo por que paso de pelear con el DDK de Microchoft xD
Como el "driver" es abierto, ya cada uno que amplie el driver lo que quiera ;)
Tambien estoy intentando desarroyar aparte un programita que deberia funcionar por igual tanto en linux como en msdos (win?) y que lee el puerto LPT dando un resultado dependiendo del boton/botones que pulsemos; esta utilidad luego permitira hacer configuraciones a gusto del consumidor xD
Una vez este la utilidad terminada empezare a hacer el configurador que seguramente lo haga en SDL o Alegro, de esta forma creo una utilidad multiplataforma que construya a los usuarios el INI que pide el driver al inicio y que configurara vuestros controles :)
Este INI es totalmente legible y configurable a mano, la utilidad simplemente evita errores en la configuracion y la hace mas comoda :)
El driver tambien permite pulsaciones multiples de botones tal que: [CTRL]+[ALT]+[F4] Que basicamente seria:
Bueno, espero haber resuelto tu duda y a ver que os parecen las ideas del driver, yo no conozco el PPJoy oficial, asi que no se si me he saltado algo importante :?
Un Saludo Pd: Que linux vas a instalar?
[MaD]25/11/2005, 10:09
Que cañote D_Skywalk, te lo estas currando de lujo.
Va a ser una gozada cuando tengas terminado el driver y el montaje por puerto paralelo funcione en Linux. Yo ya sabes que no soy Pro-Linux, pero el nivel de customizacion que proporciona Linux en cuanto a las modelines, la de emuladores que tienen versión para Linux y lo bien que rula y pocos recursos que consume en general una vez configurado. Con todo lo anterior va a ser la caña y una alternativa cojonuda para el que quiera probar con Linux recordando el soporte de dispositivos de juegos USB y del soporte de tarjetas de sonido integradas como los AC97 de Realtek ALC650 y ALC850… cosas que por ejemplo MS-DOS no soportaria.
Si esto al final lo porta a TSR para MS-DOS y hace que funcione puede ser la ostia para gente que no quiere complicarse y le sobra con AdvMAME + AdvMENU / ArcadeOS. En cualquier caso cuando hagas publico el driver será cojonudo porque siempre se podrá usar Linux sin X (¿se dice en modo en framebuffer?) y tener algo similar a MS-DOS desde donde AdvMAME para Linux debería poder ejecutarse sin problema.
Lo único decirte sobre las teclas Ctrl., Alt y Shift, no se si lo habrás implantado, pero lo propio es configurar para que el driver diferencie de “KEYCODE_LCONTROL” / “KEYCODE_RCONTROL”, “KEYCODE_LALT” / “KEYCODE_RALT” y “KEYCODE_LSHIFT” / “KEYCODE_RSHIFT”
Un saludo tio. :)
D_Skywalk27/11/2005, 11:23
Asia :D
Ahora mismo ando preparando la parte del panel de control (de verdad), ya que mi invento con chinchetas no era muy preciso (xD). Como voy a tener 57botones... ¿que mejor manera de ir testeando el driver? ;)
El control que tienes como viste es total, entiendo que a alguno le heche para atras tanta personalizacion, pero lo que puedo decir es que complejo no es, no tienes que buscar drivers de nada, ya que todo lo incluye el kernel y luego ya quedarian temas de personalizacion de las X para emuladores no FB ;)
Con tiempo lo iremos viendo todo, yo pienso aprobechar la maquina al maximo y se que eso solo me lo da Linux hoy dia (pensando, claro, en las limitaciones de msdos).
Tambien os puedo contar como usa LVM para añadir discos duros, y por lo tanto espacio, a vuestro sistema de forma totalmente cristalina; me explico en win por ejemplo si añades un nuevo disco duro se convertiria en D: o F: o G: o... con LVM puedes añadiendo un disco duro pasar de 100GB disponibles a 200GB por ejemplo disponibles para el sistema, todo ello facil y rapidamente :)
Ya he mirado cositas de MSDOS y TSR, pero aun no hecho ninguna prueba asi que hasta que no vea que funcione, mejor :-X
Todavia no he visto el AdvCD y si parece que funciona con FB, aunque el kernel no es el que yo usaria. Knopix (en lo que se basa AdvCD) usa un kernel 2.4.x, y lo mejor para sistemas domesticos son los 2.6.x que ademas tienen soporte hasta para tostadoras xD
Ok, apuntado! aunque eso depende del input.h del kernel, si lo soporta, el driver por lo tanto tambien soportara la diferenciacion de L/R en esos controles. Ahora no tengo aqui mi portatil y no puedo asegurartelo :(
Un Saludo y gracias por los comentarios, da moral :D
D_Skywalk29/11/2005, 13:55
Ya he terminado la implementacion basica del driver bajo linux, os dejo un enlace con las posibilidades reales del driver...
Aqui he creado 5 joys, pero pueden configurarse los que sean necesarios :)
Decir que la beta esta practicamente terminada y supongo que en pocos dias la liberare, junto con el code, aunque creo que no habra parte "100% custom" sino, como explico en el primer post, debeis configurarlo de forma vertical y no horizontal... espero que no sea inconveniente :?
De todas formas he creado tambien una posibilidad de montar un keyencoder que segun la linea vertical (mirar primer post) usara unas teclas u otras :) De esa forma todo se puede convertir si el usuario lo desea en un driver LPT->Key "100% custom" y de esa forma pasara de PPjoy a OpenPPjoy sin que le sea un trauma :P
Windows: Al final nadie de por aqui se ha animado a hacer la version de Windows, sigo diciendo lo mismo: si alguno sabe del DDK de Microsoft que se anime y lo haga, que no es muy complejo... aunque entiendo que teniendo PPjoy la demanda de un driver libre sea escasa ;)
Msdos: Un usuario de la web contacto conmigo, al final no he seguido teniendo contacto con el asi que no se si seguira teniendo interes, de todas formas crear un TSR tipo LPT->Key creo que no seria complicado, pero esto ya existe para msdos ¿verdad?
Un Saludo apañeros!
jmsegov16/12/2005, 09:37
Estoy deseando probar el driver con el Advemu en Linux. Una pregunta
¿Cual es el programa que mencionas para msdos?
Estoy deseando que liberes una versión ya que tendré 2 o 3 días en estas navidades en los que pienso empezar con la construcción de un mueble pequeño estilo bartop :D :D :D :D
D_Skywalk16/12/2005, 13:56
Si esta tarde tengo un rato me pongo entonces, es que tambien, al ver el poco interes por el driver, le quite prioridad; ya que a mi ahora mismo, como tampoco tenia el panel montado pues no me corria mucha prisa ;)
Viendo que si hay interes, le doy el ultimo repaso esta tarde y listo :D
Creo que el programa de msdos es sneskey o algo asi... la verdad es que solo lo he leido alguna vez de paso por el foro, pero no me hagas mucho caso ;)
Un Saludo y te agredecere todo el testing que puedas hacerme llegar ;)
D_Skywalk20/12/2005, 11:03
Finalmente he hecho las siguientes configuraciones y solo me queda testearlas esta tarde ya en casa :)
Cada una de estas configuraciones la podeis poner en cualquier canal, de los 5 que tenemos (10,11,12,13,15). Esta va a ser una beta que se queda un poco corta para ciertas configuraciones (8botones) etc, pero por ahora no voy a liar mas el driver... De todas formas con imaginacion podeis configurar mas botones (si 6 por joy son pocos) usando alguna tecla del CFG1 o CFG2.
Este driver no es compatible con vuestra configuracion en PPjoy como explico en el 1er post, y despues de leer mas de 200 paginas de documentacion sobre puerto paralelo, creedme: "configurar el driver en horizontal es un error, tanto en OpenPPjoy como en PPjoy" y deberia de ser subsanado en el tutorial, si quereis una explicacion de por que es un error hacedmelo saber y lo explico sin problema :)
Un Saludo y si todo va bien esta tarde estara publicada la primera beta ^^_
Macarro20/12/2005, 13:47
Muchas felicidades por el curro que ya está terminado :D
Si no fuese mucha molestia, me gustaría saber cuáles son las diferencias en el modo de funcionamiento del puerto paralelo por filas o columnas. Solo por curiosidad, porque de momento no me planteo recablear mi panel, sería demasiado curro.
Un saludo.
D_Skywalk20/12/2005, 17:38
Justo cuando estaba preparando el post para comentarte por que es mas rapido, se me ha ocurrido una forma de hacer el driver que daria igual como configures los controles: de forma horizontal o vertical ^^_
Un Saludo, voy a mirar mi nueva teoria y me trago mis palabras xDD
Macarro20/12/2005, 17:44
jajajajaj :D :D :D
Pues nada, espero impacientes tus resultados, porque así podría probar el driver en linux ;)
jmsegov4/1/2006, 14:00
Hola ¿como va a quedar al final el driver, se va a poder configurar los botones de forma horizontal o vertical?
No es que quiera meter prisa, pero estoy realizando mi panel de control y me gustaría tener este dato para no tener que andar cambiando luego los cables, ya que el panel de control no se va a poder abrir.
En este momento tengo los botones mapeados en horizontal.
Mi configuración actual es Win98 + Mala +AdvMame 0.71 + PPJoy
En cuanto esté disponible el driver meteré cambiaré a la siguiente configuración:
AdvanceCD (la Ultima version con soporte para instalarlo en una partición) sobreescribir el AdVMame por la versión 0.71 (ya que tengo probadas las Roms con esta Versión y el equipo es un Pentimu III 500) y openPPjoy.
D_Skywalk7/3/2006, 13:56
Bueno, re-up el proyecto, esta tarde me he propuesto subir una version operativa muy basica del driver :)
El principal problema al que me he enfrentado y que ha hecho que me demore tanto, era que queria que el usuario pudiera configurar el modulo desde un fichero que este leyera... pero el kernel no te permite hacer estas cosas... ¿quizas un script de arranque que lea esta configuracion y envie los datos al modulo durante el inicio del sistema?
Bien, como esto queda un poco lejos, voy a tratar de finiquitar primera version que comente (mirar el 1er post), usando las lineas verticales y (supongo) que sin ninguna emulacion de teclado (que era otra parte que tampoco iba como queria).
El driver no es apto para newbies, ya que necesita que compileis el modulo vosotros mismos... si os parece muy engorroso este sistema podriamos intentar usar un daemon, aunque claro ya no creo que fuera tan fino :?
jmsegov, el driver es para linux, por ahora nadie se ha puesto conmigo para una version bajo MSDOS, aunque eso si, no creo que fuera muy diferente al sneskey (no se si el sneskey permitiria 60 teclas :?).
Un Saludo :)
Lord Hiryu7/3/2006, 16:40
Madre mia....no tengo perdón de Dios....como se me ha pasado este post por alto. D_Skywalk.....monstruo, más que monstruo!!!...vaya currazo nen. Referente a si es útil una versión de Dos....egoístamente con el corazón en la mano....SÍ!!!
Por cierto, 60 entradas en Ms-dos que se deberían reconocer sin problemas serían estas:
Luego aparte estarían las flechas, el Ctrl Izq, Alt Izq, CrtlDerch, la coma y el punto.
De por sí, con esas, fijo que Ms-dos las entiende.
Si necesitas ayuda para algo dilo.
(Supongo que necesitarías que me hiciera un LPT de 60 interrupciones..)...tengo la base...(ms-dos y advmame)..pero no tiempo para hacer el panel....al menos...de momento..:(
Un saludo.
D_Skywalk7/3/2006, 20:15
Bueno, me alegra no estar solo ante el peligro ;*** El problema Lord, es que desde linux aun no he conseguido compilar para MSDOS, pero sigo intentandolo xD
http://dantoine.iespana.es/ :) Un modulo arcade para linux, configurable para palancas de 2 ejes y 4 botones, y ademas con la posibilidad de usar unas lineas como keycoders (y asi suplir la falta de botones). Recordad que usa las verticales para configurar los mandos (mirad el 1er post)
Ahora una peticion: Necesito testers linuxeros!!! xD Por que al menos en mi linux no me funcionan las lineas 1-14-16-17 :( y quiero que lo probeis a ver si a vosotros os contesta el invento ;)
El testeo del driver ha sido concienzudo, asi que lo que hay funciona de pm, lo digo por si alguno le vale con 4 botones + keys :)
No os asusteis por lo de la compilacion, por que es muy simple, solo descomprimis y con hacer: "make" ya lo teneis listo (mirad instrucciones en el leeme).
Se agradecera todo el feedback que me podais dar, aunque sea revisad el code, por si se me ha pasado algo ;) Un Saludo y espero que guste a los 4 gatos linuxeros que andamos por estos lares xD Pd: Lord, pasate a linux que necesito testers!!! xDD
Lord Hiryu7/3/2006, 21:34
El tema es que de Dos..me defiendo algo....copy c: , format c: y deltree...:P, pero de Linux...vamos...no sé siquiera como se instala.....:P Soy lo puto peor.
Macarro7/3/2006, 21:45
Sky, yo me apunto. Pero tengo la partición de kubuntu chafada desde el temporal que hubo hace tiempo en TF y no he mirado qué hacer para que me arranque desde ahí. Así que a mi, las pruebas me serían rápidas, que aquí tengo el panel de control.
Eso si... a ver si instalo mame en linux, que esa es otra, jej
D_Skywalk7/3/2006, 22:36
Lord, ok dont worry ;* Pero tienes CeDeses de instalacion para torpes!! Yo empece con eso ;D
Oki Macarro!!! :D
Gracias, bueno ya tengo a alguien ;*
Estare por el msn si me necesitas para algo :D
Con respecto al mame... nada mas simple:
Y si quieres el advancemame v102, pideme el .deb que me prepare optimisao para 686 :D Un Saludo :) [UPDATE] Actualizado el post inicial :)
[UPDATE2] HE TENIDO UNA ILUMINACION!! xD
Creo que ya se como puedo hacer para poder acceder a las lineas altas del puerto paralelo!! ahora estoy en el curro, asi que estoy deseoso de llegar a casa a probar si es verdad mi teoria xDD
Un Saludo :-
D_Skywalk9/3/2006, 00:31
Bueno, acabo por fin de terminar la version basica del driver 0.4 :)
Me ha costado un huevo, creo que debo de haber perdido el pelo de tanto darle vueltas al driver, pero al final ha quedado: PERFECTO :D
Dadle las gracias a mi parienta, que me ha soportado 2 dias a "full time" hablandole de como enviar datos por lineas que... bla bla bla.... blablabla xD
Por mi parte creo que no añadire mucho mas al driver de linux, en principio es lo que necesito, pero si alguien tiene alguna sugerencia o quiere aportar algo al codigo es libre de hacerlo... eso si, agradeceria que nos enviara los cambios para hacerlos publicos y que todos podamos disfrutarlos :)
Un Saludo y deseadme wenas noxes xD Pd: Mañana le hecho 10minutitos mas y le pongo a todo el codigo la licencia GPL, que ya toi cansao por hoy :_ Ppd: Espero que ningun purista se moleste por ello :_P
Macarro9/3/2006, 00:55
El fin de semana le hago una prueba, okis? es que ahora no tengo tiempo de ponerme a ver qué demonios le pasa al dichoso linux que no arranca.
Un saludo.
mincho13/8/2006, 18:05
D_Skywalk, si que escogiste la mejor opcion para leer los datos. "Por columnas", y que el driver te de la posibilidad de instalar 5 mandos de 12 teclas.
Creo que esa es la opcion que hace falta en el PPJoy. Para que al instalar varios mandos el emulador los reconosca de una, sin tener que entrar a la configuracion del emulador.
Si todavia tienes el tema caliente, estaria dispuesto a colaborar con el driver de MS-Dos y Windows...
Por ahora trato de comprender el codigo fuente.
Un saludo...
Macarro14/8/2006, 00:21
Creo que Sky está de vacaciones ahora mismo y se desconecta de internet (según me dijo, ahora que no me creo que lo cumpla :D). Te lo digo por si ves que tarda en responder.
Aunque yo uso windows xp, creo que si se consiguiese hacer funcionar el interfaz por lpt en dos, ya sería el sistema perfecto.
Nos vemos.
empardopo18/8/2006, 08:57
Buenas,
¿qué es eso de configurar los botones de la interfaz de puerto paralelo en vertical u horizontal?
Yo en su momento hize mi interfaz utilizando la matriz que hay en el tutorial, ¿ha cambiado algo?
Un saludo
Macarro18/8/2006, 09:56
No, empardopo, es que el driver que programó D_Skywalk para linux es ligeramente diferente y necesita que el cableado se haga de otro modo.
D_Skywalk19/8/2006, 10:22
Buenas marranillas, a ver que ya se me terminaron las vacaciones :P
Mincho, estaria encantado de ayudarte con el driver de MSDOS en lo que necesites, comentame todo lo que no entiendas e incluso si me explicas como ayudarte podria hacer las partes que no haya que trabajar a bajo nivel :)
empardopo, mirate mi articulo, a ver si lo entiendes mejor: http://david.dantoine.org/contenido/6/ Si te queda cualquier tipo de duda, dimela que te respondo y de camino lo añado a la web :D
Un Saludo compas, HE WELTO! xDDD
mincho19/8/2006, 12:20
D_Skywalk, espero que las hayas disfrutado mucho.
Gracias por brindarme el apoyo, la idea es programar algo parecido al Sneskey, pero ahora estoy liado con el pc y con mi coneccion que no me esta respondiendo bien, he instalado 2 veces windows y nada que lo soluciono.
En breve te comento, ya que consegui un disco para ponerle fat32...
Un saludo....
empardopo21/8/2006, 09:12
Gracias Sky,
es que tenía pensado hacerme un panel de control de prueba de un mando, para testear y hacer pruebas con un mando de psx, y la verdad es que me gustaba la idea de linux, así que quería hacerme el panel de forma que si digo a probar con linux me fuera compatible.
Gracias de nuevo y un saludo
D_Skywalk21/8/2006, 09:31
Buenas de nuevo :)
Empardopo, para un mando arcade puedes usar mi driver pero si lo que quieres es usar un mando de consola (PSX, Megadrive, NES, SNES, N64...) tienes un fantastico driver llamado gamecon :D
Mincho, mucha suerte con la instalacion del sistema, yo andare por aqui para cuando estes preparado ;)
Un Saludop
empardopo21/8/2006, 11:59
Gracias Sky,
en principio es algo más complicado, porque lo que realmente quiero hacer es poder jugar a los juegos de dreamcast y xbox (tengo adaptadores para poder jugar con mandos de psx a ambas), con mi panel de control, hackeando un mando de psx.
De momento, trabajo con Windows XP, pero lo mismo hago algún pinito en linux, ya que consume menos recursos, pero tb es verdad que además de más complicado, hay menos emuladores, frontend, etc.
Saludos
D_Skywalk22/8/2006, 10:34
Comorl¿? supongo que lo que querias decir es que quieres jugar con las consolas Xbox, DC y el PC unificandolos todos con un conversor de PSX? :?
Queda un poco offtopic, pero vamos que en linux no tendras problema en hechar a andar un mando de PSX, aunque no necesitaras para ello el OpenPPJoy, como te he dicho.
Emuladores tienes de todos, menos que yo sepa, el vpinball y... yata :?
Un Saludop :D
logaran10/10/2006, 21:26
¿QUE NO EXISTE EL VPIMBALL PARA LINUX? ¡NOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO!!!!
Lease con voz rota y con la camara alejandose de mi en plano cenital ascendente y giratorio.
Buitrako22/10/2006, 15:51
XDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
Perdón por este mensaje inútil, pero es que lo último ha sido buenísimo, me he descojonao.
D_Skywalk28/11/2006, 19:19
xDD
Bueno, se aproxima una nueva versión OpenPPJoy que soportará la ultima versión del kernel de dapper y estoy intentando que soporte también el kernel de la Edgy, aunque por ahora se resiste :?
Sino consigo solucionarlo pues será una versión para kernels 2.6.15 e inferiores, ok? ;)