zx81 escribió:El core de ZX-Spectrum, que es lo que a mi me interesa, no pone en su sitio los ciclos de contención, ni el bus flotante saca lo que debe cuando debe.
¿Qué tests has usado para comprobar esto?
zx81 escribió:Las páginas en contienda solo son la 5 y la 7, pero eso afecta a programas que no se ejecutan como lo hacen en el real
Eso está hecho aposta. Las únicas páginas que necesitan tener contienda son la 5 y la 7. El resto no tiene por qué tenerlas. Poner contienda al resto de páginas es trivial de todas formas, pero como no conozco ninguna demo, juego o utilidad que necesite contienda en las páginas 4, 5, 6 y 7, pues dejé la contienda sólo en 5 y 7.
zx81 escribió:o no permite ver las diferencias de ejecución entre el 128k/+2 y los +2a/+3
Los timings del +2A/+3 no están implementados, sólo los de 128K/+2. No conozco ningún juego o demo que los necesite.
zx81 escribió:Los tiempos tampoco tengo claros que sean totalmente precisos entre máquinas.
Esto... ¿qué significa?
zx81 escribió:Y eso por no hablar de meterle mano al core Z80 para arreglar las 52 diferencias que me han salido en los test de CPU que creó Patrik Rak, el autor del emulador ZXDS.
Y más que habrá
El core de Z80 que tenemos es... eso, el que tenemos. Tampoco implementa bien la señal WAIT (por eso no implemento el +2A/+3). Escribir un core de un procesador en FPGA es más complejo que hacerlo para un emulador. Sobre todo porque la depuración es mucho más compleja y tediosa que cuando depuras software. Lo he intentado un par de veces, partiendo de cero, pero las dos aproximaciones que he usado se han dado de bruces con la limitación de espacio en la FPGA. En emulación uno se preocupa de que el sistema sea lo suficientemente rápido como para mover todos los elementos que se emulan. En FPGA no hay esa preocupación, pero sí hay otra: que el chip sea lo suficientemente grande como para que quepan todos los módulos.
zx81 escribió:Me pregunto (y pregunto) si sería posible y si hay suficientes pines libres como para poner una sintetización de un FDC 765 y conectar de manera externa algo similar a una Gotek. Molaría tela marinera tener un +3 funcional sin cosas raras tipo ESXDOS ni +3e.
¿Quieres decir conectar un FDC765 de verdad a los pines del conector de expansión? ¿o sintetizar un core de FDC765 completo dentro de la FPGA? Lo primero es perfectamente posible. Lo segundo... no conozco ningún core completo de FDC765. Wilco2009 estaba precisamente sobre el tema.