Voto a favorflopping escribió:Y hay algún planteamiento de hacer un 128k?, solo pregunto por si acaso, jejejejeeje.
![Sonrisa :)](./images/smilies/sc_jsmiley.gif)
Moderadores: cacharreo, Fundadores
Voto a favorflopping escribió:Y hay algún planteamiento de hacer un 128k?, solo pregunto por si acaso, jejejejeeje.
No nos hagamos ilusiones, no sé si hay alguna implementación “libre” de la ULA de un 128k, creo que algo hay, pero no sé si estará disponible, alguna idea?.
Ummmm interesante,
El Abu Simbel necesita un teclado Issue 2, aunque hay versiones que funcionan con el Issue 3, no recuerdo cuales de todas las que están en WoS.Kyp escribió: ↑22 Ene 2018, 16:57 He hecho pruebas y los timings son "regulares". La contienda está desplazada (probado con ulatest3) y el primer byte de pantalla se pinta en el t-state 14336 como correspondería a un "early-timing" (probado con btime). Yo creo que es más habitual que los programas esperen un "late-timing". En los ULA tests de la ROM de test de Brendam Alford se ven unas cuantas líneas rojas arriba de la pantalla que son un indicador de que los timings están mal. Otro síntoma es que no se puede jugar al Abusimbel porque es como si estuviera una tecla pulsada permanentemente. Eso puede ser por que no he hecho el fix del EAR o porque la ULA implementa un teclado issue 2 (tengo que hacer más pruebas).
Hacía mención al Abu Simbel precisamente porque prácticamente es el primer juego que pruebo siempre y lo uso de test de teclado
Esos no los tengo. ¿De dónde me los puedo bajar?
Como sé que lo conoces, en el repo SVN del ZX-Uno tienes un directorio llamado software/tests donde, entre otros muchos programas tienes el floatspy.tap. Vale tanto para 48k como para 128k. El que no tienen en ese repo es el IR_Contention, te lo puedo enviar a ti o a quien corresponda para que lo añada al repo.Kyp escribió: ↑23 Ene 2018, 11:29Esos no los tengo. ¿De dónde me los puedo bajar?
Ya puestos, me interesaría mucho afinar el core de la ULA tanto para el Humble como para el ZX-Uno. En todas partes habla de T-estados que supongo se usa mucho en emulación pero en la implementación está todo referenciado a los contadores horizontal y vertical y no estoy del todo seguro de estar haciéndolo bien al pasar de una referencia a otra.
Por ejemplo, la interrupción de retrazo vertical debería saltar en T-14336. En la implementación del Humble se activa en v=248 y h=0 durante 32 ciclos, de ahí que funcione como un early-timing. Lo que no me cuadra es que dure 32 ciclos. Según entiendo yo, la interrupción se mantiene activa 32 ciclos de reloj de CPU que equivalen a 64 ciclos del reloj de la ULA. En mi implementación se activa en v=248 y h=2 durante 64 pulsos de reloj de ULA. Lo de retrasarlo al 2 del contador horizontal es para que sea en T-14337 y funcione como un late-timing, creo.