› Foros › Retro y descatalogado › DreamCast
nu_kru escribió:Buenas,
os quiero presentar mi proyecto ACDCW (Arduino Controller DreamCast Wireless), sip, el nombre no es muy agraciado, y espero que provisional hasta que se me ocurra/ se os ocurra algo mejor. Mientras tanto la culpa de @Zokormazo, xd
La idea básicamente es usar un arduino de por medio para poder usar otros mandos en la dreamcast.
En un principio tengo intención de adaptar el mando wireless de xbox 360 (básicamente porque voy a hacer las pruebas con el), aunque no estoy seguro si voy a tener demasiado lag y que tal se comportara. Por ejemplo el mando oficial de dreamcast tarda 58 μS en responder a los comandos, mientras que un mando de una third party ( Performance pad) tarda 161μS.
El problema viene, que un arduino anda algo justo para manejar la comunicación, tengo 4 ciclos para procesar cada señal, y encima la variante sincrona del protocolo que implementa, toca un poco los cojones (dos cables de datos a 1Mhz, en la primera mitad uno hace de reloj y el otro envia datos y en la segunda parte al reves, mas explicacion en mi github o http://mc.pp.se/dc/maplewire.html)
A parte de la implementación que haga del protocolo, tendré que sumar los ciclos que ocupará https://github.com/felis/USB_Host_Shield_2.0
Por ahora ando jugando con un analizador lógico (un clon de Saleae_Logic que en vez de costar 160$ cuesta 7 en aliexpress) y con http://sigrok.org/
Tengo escrito una primera versión muy básica del decodificador del protocolo, luego ya lo iré completando mostrando mas info de los mensajes y no solo el chorro de bytes enviados.
Si todo va bien, y hay potencia suficiente o sino con una rbpi de por medio mi idea final (sino abandono antes, xd) es implementar lo máximo posible del protocolo de dreamcast en un arduino y habilitando mediante usb host shield mandos de xbox360, ps3/4 y bluetooth.
Ya puestos a desvariar sustituir la visual memory por una tarjeta sd. Implementar la visual memory (pantalla) en una pantalla externa (creo que no se usa la cpu de vm para nada, sino habría que meterse en emulación y ahi ya un arduino no da) o usar un wiimotion como lightgum.
Pero bueno todo poco a poco, que nunca he tocado nada de arduino y no tengo la placa para usar usb host para arduino, a ver si la pido mañana.
Ya iré informando de los progresos, aunque sino en https://github.com/nukru/ACDCW podréis ver los progresos.