Pues observando el esquema he comprendido que, aunque probandolo en el emulador su BASIC es bastante lento, potencialmente es un ordenador tan rápido como un Spectrum, ya que funciona con un Z80 a 3,547MHz.
¿Dónde está el problema entonces?, pues entiendo yo que el culpable de que todo se ralentice es el método que utiliza para comunicarse con la videopac.
Para comunicarse con la videopac solo utiliza 13 señales, entre las cuales están los 8 bits de datos pero no las líneas de dirección, por lo que las comunicaciones tienen que ser ciclicas y de byte en byte.
Aquí está el listado de señales que utiliza para comunicarse.
/RESET
/OE
D0..D7
LE
T0
/INT
Entiendo que por un lado la videopac hace un bucle en el que constantemente le está enviando el estado de todas las semifilas del teclado y el cartucho a su vez hace otro enviándole el contenido completo de la pantalla a la videopac.
Con /OE la videopac lee un byte, y con LE escribe un byte, utilizando el puerto XXXXXXXX 0X0XXXXX en la parte de la Videopac y el puerto XXXXXXXX 0X0XXXXX en la del cartucho.
T0 le sirve al Z80 para decirle a la videopac que tiene un dato disponible, e imagino que /INT sirve para que la videopac le diga al Z80 que tiene un dato disponible (aunque eso no lo puedo ver en el esquema, habría que verlo en el desensamblado de la ROM)
Total, que el Z80 está todo el rato enviando frames de la pantalla hacia la videopac y leyendo el estado del teclado desde la videopac, con lo que le queda poquito tiempo para hacer otras cosas.
Por otro lado ya tengo un primer diseño preliminar:
He puesto como conexion dos conectores de red Ethernet para que sea sencillo y barato, ya que la solucion original de soldar directamente los cables no me convencía mucho.
He dejado la posibilidad de mantener las 4xDRAM originales o bien de sustituirlas por una SRAM, y con las dos EPROM igual, he dejado la posibilidad de mantenerlas o sustituirlas por una sola.
Estoy a la espera de que el compañero Onlyfordj me deje un cartucho original para disipar algunas dudas.