Snapshots a través de la red

Si por algo se caracteriza el Spectrum es por su gran variedad de periféricos (clásicos y modernos)

Moderador: Sir Cilve Sinclair

Responder
Avatar de Usuario
winston
Sabreman
Mensajes: 469
Registrado: Mar Ago 19, 2008 4:17 pm
Ubicación: Isla de Man
Contactar:

Snapshots a través de la red

Mensaje por winston » Mié Nov 04, 2009 12:16 am

Esta noche he acabado con el código prototipo para grabar un snapshot (en este momento, 48K) en un sistema de ficheros de la red (usando el Spectranet, por supuesto).

Para grabar un snapshot, se pulsa el botón de NMI. Entonces, se elige la opción "grabar un snapshot", y un segundo más tarde, un fichero se llama "snapshot.sna" aparece en el sistema de ficheros :-) He probado los snapshots con el emulador Fuse, y funcionan muy bien - ahora es fácil transferir el estado del Spectrum entre un emulador y hardware real. Por supuesto, necesito desarrollar más código para manejar los snapshots - por ejemplo, para poder elegir un nombre que no es "snapshot.sna". Lo que voy a intentar es crear un sistema similar del "Task manager" de ResiDOS, donde podemos manejar el estado del Spectrum. Es decir, todavía tengo un montón de trabajo... No obstante, la capacidad para hacer un snapshot es un hito nuevo en el desarrollo del Spectranet.

(En las semanas que vienen, voy a hacer un video que mostrará lo que he hecho con el Spectranet en los meses desde RetroEuskal).
Tarjeta ethernet para el Spectrum - http://spectrum.alioth.net/doc

Debemos practicar un quirkafleeg

Avatar de Usuario
mcleod_ideafix
Johnny Jones
Mensajes: 3985
Registrado: Vie Sep 21, 2007 1:26 am
Ubicación: Jerez de la Frontera
Contactar:

Re: Snapshots a través de la red

Mensaje por mcleod_ideafix » Mié Nov 04, 2009 12:38 am

Te has picado con lo del task manager del ResiDOS ;) La verdad es que es todo un logro! Esto significa que puedo probar software en una máquina real enviándola desde el PC, y si algo falla (se cuelga por ejemplo), puedo hacer un snapshot que aparecerá directamente en mi PC y a partir de ahí, usar el emulador para realizar un análisis "post-mortem" del problema.
Web: ZX Projects | Twitter: @zxprojects

Avatar de Usuario
winston
Sabreman
Mensajes: 469
Registrado: Mar Ago 19, 2008 4:17 pm
Ubicación: Isla de Man
Contactar:

Re: Snapshots a través de la red

Mensaje por winston » Mié Nov 04, 2009 11:11 pm

La verdad es que me encanta el task manager de ResiDOS :-)

Hay más decisiones que tengo que tomar - el problema que tengo ahora es que la CPLD no tiene suficiente recursos para añadir cosas tales como la lógica que observaría los puertos de la ULA del Spectrum (ni los del 128K, por ejemplo 0x7FFD). Por eso, tengo que considerar el uso del XC95144, aunque este chip es 2 euros más caro que el XC9572. (Por otra parte, si uso este chip, puedo añadir otras cosas muy útil). Es posible que pueda hacer unas modificaciones a la CPLD para caber la lógica que captura el estado del borde... pero estoy absolutamente seguro que no puedo poner los flip-flops que necesitaría para almacenar los valores de los puertos 0x7FFD y 0x1FFD en la CPLD que tengo en este momento.
Tarjeta ethernet para el Spectrum - http://spectrum.alioth.net/doc

Debemos practicar un quirkafleeg

Avatar de Usuario
winston
Sabreman
Mensajes: 469
Registrado: Mar Ago 19, 2008 4:17 pm
Ubicación: Isla de Man
Contactar:

Re: Snapshots a través de la red

Mensaje por winston » Vie Nov 06, 2009 12:02 am

...y por suerte, con unas modificaciones pequeñas, he podido poner los tres flip-flops que de tipo D en la CPLD que necesito para almacenar el color del borde :-) Pero la CPLD está absolutamente llena (es curioso - quedan 2 macrocells, pero no hay suficiente recursos para rutear más conexiones dentro de la CPLD)
Tarjeta ethernet para el Spectrum - http://spectrum.alioth.net/doc

Debemos practicar un quirkafleeg

Avatar de Usuario
mcleod_ideafix
Johnny Jones
Mensajes: 3985
Registrado: Vie Sep 21, 2007 1:26 am
Ubicación: Jerez de la Frontera
Contactar:

Re: Snapshots a través de la red

Mensaje por mcleod_ideafix » Vie Nov 06, 2009 12:35 pm

winston escribió:...y por suerte, con unas modificaciones pequeñas, he podido poner los tres flip-flops que de tipo D en la CPLD que necesito para almacenar el color del borde :-) Pero la CPLD está absolutamente llena (es curioso - quedan 2 macrocells, pero no hay suficiente recursos para rutear más conexiones dentro de la CPLD)


Las CPLD tienen ese problema... que no son tan flexibles como las FPGA a la hora de rutear.
¿La XC144 tiene el mismo patillaje que la XC72? ¿Se podría cambiar una por la otra directamente?
Web: ZX Projects | Twitter: @zxprojects

Avatar de Usuario
winston
Sabreman
Mensajes: 469
Registrado: Mar Ago 19, 2008 4:17 pm
Ubicación: Isla de Man
Contactar:

Re: Snapshots a través de la red

Mensaje por winston » Vie Nov 06, 2009 1:16 pm

mcleod_ideafix escribió:Las CPLD tienen ese problema... que no son tan flexibles como las FPGA a la hora de rutear.
¿La XC144 tiene el mismo patillaje que la XC72? ¿Se podría cambiar una por la otra directamente?


Si, la '144 está disponible en un TQFP-100 con el mismo patillaje. De hecho, Chris Smith ha usado la misma plaquita que he usado para hacer un prototipo del Spectrum ULA (con la '144). El problema es que la '144 cuesta 2.50 eur más que el '72 (Pero es posible que no les importe a los que quieran un Spectranet).
Tarjeta ethernet para el Spectrum - http://spectrum.alioth.net/doc

Debemos practicar un quirkafleeg

Avatar de Usuario
mcleod_ideafix
Johnny Jones
Mensajes: 3985
Registrado: Vie Sep 21, 2007 1:26 am
Ubicación: Jerez de la Frontera
Contactar:

Re: Snapshots a través de la red

Mensaje por mcleod_ideafix » Vie Nov 06, 2009 2:04 pm

winston escribió:El problema es que la '144 cuesta 2.50 eur más que el '72 (Pero es posible que no les importe a los que quieran un Spectranet).


La pregunta es: supón que comercializas el Spectranet y ofreces a los usuarios las dos versiones: con la XC72 y la XC144, y entre una y otra hay, pongamos, 3 euros de diferencia, pero con la XC144 hay nuevas características que no están en la versión con la XC72. ¿Cuánta gente crees que compraría la versión "barata"?
Web: ZX Projects | Twitter: @zxprojects

Avatar de Usuario
winston
Sabreman
Mensajes: 469
Registrado: Mar Ago 19, 2008 4:17 pm
Ubicación: Isla de Man
Contactar:

Re: Snapshots a través de la red

Mensaje por winston » Dom Nov 15, 2009 2:58 pm

¡He conseguido éxito!

He podido grabar el valor de bit 3 del puerto 0x7FFD en la CPLD.
La CPLD (hasta ayer) tuvo las líneas de dirección A12-A17 para poder acceder hasta 256K en cada chip. Sin embargo, hoy día el Spectranet tiene memorias de 128K (128K de flash, 128K de SRAM - y 32K de buferes/registros de ethernet). No se usa la línea A17 (de hecho, no está en la placa). He quitado esta línea de la CPLD, que ha vaciado dos macrocelulas más - por eso, he podido caber uno más flip flop en la CPLD (y los demás que descodifica el puerto 0x7FFD etc).

Por supuesto, cuando haya versiones del Spectranet con más de 128K flash/SRAM, van a necesitar una CPLD más grande, pero en este momento me alegro de que todo pueda caber en la CPLD que tengo - y los snapshots va a ser perfecto :-) (Pues casi, hay que añadir una entrada más en la pila cuando se pulse el botón de NMI)
Tarjeta ethernet para el Spectrum - http://spectrum.alioth.net/doc

Debemos practicar un quirkafleeg

Responder

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 18 invitados