ManuFerHi escribió:A veces se buguea el teclado, no sé exactamente el motivo pero a veces pasa, o se repiten teclas o se ralentiza las pulsaciones, hoy he puesto el bomb jack y no había manera de andar iz-der sólo saltar, al ir al test de la bios esas dos teclas creo que son M y N apenas detectaba pulsaciones, es como si detectara una fracción de pulsación cada segundo. He desconectado la alimentación y ha vuelto a ir bien, pasa pocas veces, pero sí es cierto que a veces se buguea el sistema.
Jaildesigner vuelve a probar el gryzor, si te pasa de nuevo prueba en lugar de OPQAM UIAZN estas teclas en el test de la bios no parpadean, se quedan fijas así vemos si el problema son las teclas que hacen el parpadeo.
Lo del tema del parpadeo, empiezo a pensar que es mas cosa de la interpretación de los scancodes que hace el firmware de la BIOS y su velocidad de refresco que otra cosa... igual lo mejor es utilizar el software de velesoft, lo he probado y no se aprecia ningún tipo de parpadeo y es mas completo:
Lo que te pasa de las teclas M y N te hace cosas raras es curioso, el bomb jack que has probado es de spectrum verdad? como ya dije esa parte del código no la he modificado, pero sí podría suceder que de alguna manera u otra influya todo lo que hayas hecho anteriormente. Una de las mejoras que he hecho (como ya adelanté en su momento) es la optimización de código para que emplee menos memoria dinamica y deje por tanto mayor cantidad para las variables locales, esta es la diferencia del antes y después de la optimización:
Como se puede apreciar, pasamos de tener 657 bytes disponibles para variables locales a 1559 bytes. El disponer de menos memoria, de alguna manera u otra puede influir en el comportamiento del firmware si en un momento dado es demandada y no tiene disponible, porque aunque no genere errores de compilación, sí puede llegar a tener comportamientos extraños al tratar de usar memoria no disponible durante la ejecución, las variables locales.
No quería publicar nada hasta tenerlo todo bien probado, pero voy a adjuntar el binario de la versión que tengo actualmente para que pueda ir probando quien quiera, y reportarme fallos, falta alguna funcionalidad que no he incluído porque sé que no va bien de momento, pero lo que sí he incluído y probado es lo siguiente:
1. Codigo optimizado, ahora entra en atmegas 168 ademas de 328p.
2. Posibilidad de guardar el modo actual en la eeprom del avr, esto te permite por ejemplo dejar por defecto el de CPC en la BIOS y al arrancar que ya tengas el teclado preparado para el mismo. De momento la combinacion es CAPS+SYMBOL+F (pero posiblemente la cambie a W)
3. Al entrar en el set 1 de scancodes en la inicialización, deja de escuchar comandos. Al arrancar el core de PC/XT que hace uso de este set de scancodes, ya no es necesario que se quede escuchando.
4. Solucionado otro escenario de repetición de tecla en modo distinto de spectrum, que es el siguiente: se pulsa una tecla normal, se mantiene y se pulsa symbol, y mientras se mantiene symbol se suelta la tecla normal.
Lo dicho, me váis contado.
Edito: He estado jugando mucho tiempo al bomb jack sin problemas, pero por ejemplo he puesto el de CPC y observo mal funcionamiento en algunas teclas con symbol, pero esta vez se trata de un comportamiento anómalo del propio arduino, tiene ciertos límites ocultos aunque compile sin errores que tengo que entender, ... lo revisaré bien, de momento prefiero eliminar el archivo beta.