Prototipo 2 del ZX-Uno

Sinclair QL, ZX81, +2, +3, 128K ...
Avatar de Usuario
antoniovillena
Amiga 1200
Amiga 1200
Mensajes: 2013
Registrado: 16 Abr 2012, 21:22
Gracias recibidas: 8 veces

Re: Prototipo 2 del ZX-Uno

Mensajepor antoniovillena » 13 Nov 2014, 17:11

Quest escribió:Me interesa bastante el tema de la expansión trasera, sobre todo para trabajar con el Spectranet original. Hablé con winston la semana pasada en Retromañía acerca de la posibilidad que se comentó de hacer un módulo de Spectranet sencillo para el ZX-UNO que sólo tuviera el chip ethernet y el conector, para implementar el resto en la FPGA, pero ahora mismo está con otras cosas (en concreto estaba trabajando en vivo en una tarjeta DMA con una CPLD) y parece que la cosa iría para largo, por eso querría poder usar el Spectranet original mientras tanto.

A raíz de esto, y dado que ya tengo montado (y funcionando desde hace más o menos un año de forma regular) el servidor TNFS de Spectranet, se me ha ocurrido la posibilidad, si fuera factible (y ahí es donde os pido valoración sobre todo a antoniovillena y mcleod_ideafix) de alojar en el servidor TNFS las actualizaciones del propio ZX-UNO (core, bios, rom, lo que sea...) y poderlas instalar on-the-fly directamente desde internet, desde el propio ZX-UNO. Winston ya lo hace con el Spectranet, es actualizable por internet directamente desde el Spectrum. Supongo que no sería complicado crear y alojar un pequeño instalador y los archivos de las versiones, etc.

Gracias :)


Para esto hay 2 opciones, o implementamos una placa de expansión del ZX-Uno que saque el conector edge (hay que multiplexar el bus de direcciones porque faltan bits) o bien se hace un addon específico de spectranet para ZX-Uno. La ventaja de lo primero es que en teoría podrías enchufarle cualquier interface para spectrum que funcione a 5V, los que necesiten las líneas de 9V, 12V ó 12V evidentemente no funcionarán. La ventaja del segundo (el addon) es que podemos utilizar RAM del propio ZX-Uno y la circuitería del addon se simplificaría a un sólo chip (tampoco necesitamos level shifters porque el chip de Ethernet funciona a 3.3V).

Lo del servidor TNFS está bien pero hay muchas cosas por hacer y tampoco pasa nada si mientras tanto hacemos las actualizaciones por el puerto EAR o por la tarjeta SD.

gamer80 escribió:Lo que sí sería muy interesante es que la versión final traiga varias Roms, S.O. , pokeador, cargar y salvar, poder darle más velocidad, etc.. ya veremos :D


Menos lo de darle más velocidad, todo lo demás lo hace el primer prototipo del ZX-Uno. Del selector de ROMs se encarga el firmware (es como la BIOS de un PC) y del resto de cosas los distintos SO que hay gracias a la implementación DivMMC de McLeod. El ZX-Uno es como un Spectrum hipervitaminado, la mayoría de cosas existen ya en hardware por lo que no es necesario escribir nada nuevo (el ESXDOS hace bastantes virguerías), otras como el TurboSound (2 AYs trabajando en paralelo) existen pero no son muy populares y por último está el modo radastaniano que es exclusivo del ZX-Uno.

Lo de darle más velocidad tengo constancia de que McLeod lo ha probado antes en otras FPGAs y no sería muy difícil, pero que tengáis en cuenta que esto no es un emulador y no podemos escoger la velocidad que queramos. Tendrá un selector de 2x y como mucho otro de 4x, la razón es que todos los timings dependen del reloj maestro, si overclockeas a 2x a la vez tienes que poner divisores para no perturbar la señal de video. Por eso no es práctico aumentar la velocidad por ejemplo al 150%.

Avatar de Usuario
Quest
Atari 1040 STf
Atari 1040 STf
Mensajes: 900
Registrado: 18 Jul 2013, 22:20
Sistema Favorito: Commodore Amiga
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Nintendo SNES
Primera consola: Nintendo NES/Clónica
Gracias dadas: 9 veces
Gracias recibidas: 16 veces

Re: Prototipo 2 del ZX-Uno

Mensajepor Quest » 13 Nov 2014, 20:21

antoniovillena escribió:Para esto hay 2 opciones, o implementamos una placa de expansión del ZX-Uno que saque el conector edge (hay que multiplexar el bus de direcciones porque faltan bits) o bien se hace un addon específico de spectranet para ZX-Uno. La ventaja de lo primero es que en teoría podrías enchufarle cualquier interface para spectrum que funcione a 5V, los que necesiten las líneas de 9V, 12V ó 12V evidentemente no funcionarán. La ventaja del segundo (el addon) es que podemos utilizar RAM del propio ZX-Uno y la circuitería del addon se simplificaría a un sólo chip (tampoco necesitamos level shifters porque el chip de Ethernet funciona a 3.3V).


Claro, por eso, tal como comentaba en mi post, como la opción del add-on específico con la implementación en la FPGA va a ser a largo plazo, mientras tanto estaría bien hacer primero la opción de expansión del spectrum. De momento se podría empezar por sacar por los pines de expansión del propio ZX-UNO las señales correspondientes al conector edge. Al menos para ir probando cosas antes de hacer un addon con conector edge me puedo soldar uno casero para ir tirando. Estamos en proceso de prototipo aún, así que no hay problema. Si algo necesita 12 o 9V pues ya se lo meto con alimentación externa (insisto, de momento en la etapa de prototipo, para que no sea una limitación el hecho de tener que ir esperando a ir creando addons específicos hasta la versión final). Lo que quiero decir en definitiva es, que una cosa no quita la otra (no veo por qué iba a ser excluyente un addon con otro).

Lo del servidor TNFS está bien pero hay muchas cosas por hacer y tampoco pasa nada si mientras tanto hacemos las actualizaciones por el puerto EAR o por la tarjeta SD.


No, no.. en realidad respecto al servidor no hay nada por hacer (no se realmente qué pensabas que había que hacer), puesto que ya está montado y funcionando y sólo necesito un TAP para colgar en él (ya que Spectranet usa TAPs con el comando %tapein). Digo yo que si se puede actualizar por EAR, se podrá con un TAP de esa misma "cinta" de actualización. En todo caso, lo único que se haría por parte vuestra (y entiendo que serían 2 líneas, y tampoco es que sea necesario, pero mola) sería un "detector" de versión, para consultarla antes de actualizar, pero fuera de eso, no hace falta más, y fuera de eso, del resto (del tema del servidor) me ocupo yo. Simplemente me pareció una buena idea, porque creo que un futuro, cuando esté hecho el addon específico de Spectranet, todo el mundo tendrá uno, y creo que va a molar bastante :) . Quien ha probado un Spectranet no vuelve atrás... :roll: Por eso yo tengo 2, me hice con el segundo el otro día aprovechando que winston estaba por Zaragoza, con idea de usarlo sobre todo para probatinas de todo tipo (y no arriesgar el otro que tengo), incluido el ZX-UNO si la cosa va adelante con el puerto de expansión.

Avatar de Usuario
mcleod_ideafix
Amiga 2500
Amiga 2500
Mensajes: 5316
Registrado: 06 Oct 2009, 04:12
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Vectrex
Primera consola: TV Games/Pong Clone
Ubicación: Jerez de la Frontera
Gracias dadas: 12 veces
Gracias recibidas: 54 veces
Contactar:

Re: Prototipo 2 del ZX-Uno

Mensajepor mcleod_ideafix » 13 Nov 2014, 21:51

gamer80 escribió:Lo que sí sería muy interesante es que la versión final traiga varias Roms, S.O. , pokeador, cargar y salvar, poder darle más velocidad, etc.. ya veremos :D

A la hora de hacer la lista de los deseos, tened en cuenta que esto no es un emulador, así que lo que quisierais que tuviera, es mejor si ya existe como hardware, y no como una opción del emulador que más os guste.
Aun con todo y con eso, habrá seguramente cosas, propias de emuladores, que podrán implementarse en el ZX-Uno, como por ejemplo el efecto de scalines cuando se use el scandoubler para VGA.
- Varias ROMs: implementado ya gracias a la BIOS de Antonio.
- Cargar y salvar: a audio y a la SD: esto último gracias al DivMMC
- Pokeador: que yo sepa, el DivMMC no trae esta opción en el menú de NMI, pero es cuestión de software el ponérselo.
- Más velocidad: no de la forma en la que lo hacen los emuladores, que puedes ponerlo hasta el 2000% y burradas así: el reloj maestro del ZX-Uno es de 28MHz, así que a lo máximo que podría ir es a esa velocidad, pero la memoria tiene una cierta latencia que hay que cumplir, y que frena cualquier cosa que se haga a una velocidad de... aproximadamente 7MHz... 14MHz si consigo optimizar el módulo de manejo de la RAM. Y por descontado, cualquier cosa que signifique ir más rápido tiene que ser a costa de perder la contención de memoria, que ya no tendría sentido en una máquina acelerada.

Cosas que seguramente nunca veas en el ZX-Uno, pero que tiene cualquier emulador que se precie: pues que cargue todo tipo de TZX, sean turbo o normales. No es que no se pueda hacer en el ZX-Uno.... es que NO CABE, porque leer e interpretar TZX significa tener dentro de la FPGA a otro procesador, independiente del Z80-A, con su RAM y su ROM y su pequeño módulo de video, que saque una pantallita estilo OSD encima de la del Spectrum, para elegir el TZX y reproducirlo de forma que al Z80-A del ZX-Uno le llegue la señal como si viniera de EAR. Vamos, que para que el ZX-Uno lea TZX's desde la tarjeta SD hay que meter dos ordenadores dentro de la FPGA.

También se podría hacer, con un solo procesador, si tuviéramos muuuuucha más memoria: con un programita para ESXDOS lees de la SD un TZX, lo interpretas (esto lo haría el propio Z80) y los datos interpretados se guardarían, en formato wave de 1 bit, en la megamemoria RAM que aparecería para el Spectrum como un periférico más. Luego, un módulo hardware leería esa memoria de forma periódica recreando la señal de audio depositada allí, enviándola a EAR.

Como ves, se pueden hacer muchas cosas, pero hay que pensar de un modo diferente a como se hace cuando programas un emulador :)
Recuerda: cada vez que se implementa un sistema clásico en FPGA, Dios mata a un purista

Avatar de Usuario
aowen
Commodore 128
Commodore 128
Mensajes: 90
Registrado: 14 Mar 2014, 14:31
Sistema Favorito: Spectrum +2
primer_sistema: Spectrum +2
consola_favorita: Nintendo GameBoy
Primera consola: Nintendo GameBoy

Re: Prototipo 2 del ZX-Uno

Mensajepor aowen » 20 Nov 2014, 22:59

Sorry for the long delay since my last post. I got temporarily locked out. But I've recently changed jobs and I've got my coding mojo back. I have an idea for a radical overhaul of SE Basic IV in the next major release. I plan to drop support for native 32x24 character mode. Instead the native mode will be 40x24. Given that I've now got working 16K, 48K and 128K emulators for the Chloe280SE, there's really no need to continue legacy 32x24 support in SE Basic IV. Most games don't use the native ROM printing anyway. So while I'll be trying hard to preserve compatibility with games so they will run without the original ROMs, I'll be taking SE Basic IV in a new direction. To do this I'm going to need more space in the ROM, and that means dropping native tape support. You'll still be able to use virtual tapes via esxDOS, but if you want to use real audio tapes you'll need to load one of the emulators. Hopefully as well as creating enough room for 40x24 mode, it might free up enough room to add graphics support to 80x24 mode. The caveat is, I really need some development hardware to work on as trying to move stuff on and off HDF files under emulation is an utter bore. I'm happy to wait for the release version of zxuno, but if there's a way I could get a development board I'd be able to start coding sooner.

jepalza

Re: Prototipo 2 del ZX-Uno

Mensajepor jepalza » 21 Nov 2014, 08:49

aowen escribió:... and that means dropping native tape support


No es un problema grande. Es mejor soporte de tarjetas SD que casette, es mas rápido y fiable.

Avatar de Usuario
aowen
Commodore 128
Commodore 128
Mensajes: 90
Registrado: 14 Mar 2014, 14:31
Sistema Favorito: Spectrum +2
primer_sistema: Spectrum +2
consola_favorita: Nintendo GameBoy
Primera consola: Nintendo GameBoy

Re: Prototipo 2 del ZX-Uno

Mensajepor aowen » 21 Nov 2014, 10:38

jepalza escribió:No es un problema grande. Es mejor soporte de tarjetas SD que casette, es mas rápido y fiable.


That's the idea, but I need to work out how much of the tape code I need to leave in for virtual tapes to work.

Avatar de Usuario
Haplo
MSX Turbo R
MSX Turbo R
Mensajes: 278
Registrado: 14 Abr 2014, 22:24
Sistema Favorito: PC
primer_sistema: Spectrum +2
consola_favorita: Sony PlayStation 1
Primera consola: Nintendo NES/Clónica
Ubicación: Ciudad Real
Gracias dadas: 33 veces
Gracias recibidas: 5 veces

Re: Prototipo 2 del ZX-Uno

Mensajepor Haplo » 21 Nov 2014, 16:07

Antonio tiene ya en casita las placas! o por lo menos eso dice correos :D

Avatar de Usuario
antoniovillena
Amiga 1200
Amiga 1200
Mensajes: 2013
Registrado: 16 Abr 2012, 21:22
Gracias recibidas: 8 veces

Re: Prototipo 2 del ZX-Uno

Mensajepor antoniovillena » 21 Nov 2014, 19:17

Sí, me llegó ayer y estoy preparando los componentes que faltan. Sólo me van a faltar tira de pines, por lo que si me da tiempo mañana podré enviar alguna. Prometo fotos.

Avatar de Usuario
Sinclair
MSX Turbo R
MSX Turbo R
Mensajes: 323
Registrado: 19 Jun 2013, 00:00
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Atari 2600
Primera consola: Sony PlayStation 1
Gracias dadas: 8 veces
Gracias recibidas: 1 vez

Re: Prototipo 2 del ZX-Uno

Mensajepor Sinclair » 21 Nov 2014, 19:23

antoniovillena escribió:Sí, me llegó ayer y estoy preparando los componentes que faltan. Sólo me van a faltar tira de pines, por lo que si me da tiempo mañana podré enviar alguna. Prometo fotos.


¡¡Estupendo!!, supongo que los componentes que te faltan son para completar los envíos del primer lote.
© 1982 Sinclair Research Ltd

Avatar de Usuario
antoniovillena
Amiga 1200
Amiga 1200
Mensajes: 2013
Registrado: 16 Abr 2012, 21:22
Gracias recibidas: 8 veces

Re: Prototipo 2 del ZX-Uno

Mensajepor antoniovillena » 21 Nov 2014, 22:34

Sinclair escribió:
antoniovillena escribió:Sí, me llegó ayer y estoy preparando los componentes que faltan. Sólo me van a faltar tira de pines, por lo que si me da tiempo mañana podré enviar alguna. Prometo fotos.


¡¡Estupendo!!, supongo que los componentes que te faltan son para completar los envíos del primer lote.


Sí, tengo que hacer inventario de lo que tengo para hacer el pedido del segundo lote en los próximos días. Ya he preparado los 10 paquetes del primer lote, intentaré enviar mañana 1 o 2 sobres y a partir del lunes el resto.

-- Actualizado 21 Nov 2014, 22:37 --
Adjuntos
IMG_20141121_202054.jpg
IMG_20141121_202054.jpg (157 KiB) Visto 6532 veces
IMG_20141121_201236.jpg
IMG_20141121_201236.jpg (120.55 KiB) Visto 6532 veces
IMG_20141121_195645.jpg
IMG_20141121_195645.jpg (142.45 KiB) Visto 6532 veces
IMG_20141121_195253.jpg
IMG_20141121_195253.jpg (167.35 KiB) Visto 6532 veces
IMG_20141121_195229_1.jpg
IMG_20141121_195229_1.jpg (177.14 KiB) Visto 6532 veces
IMG_20141121_194651.jpg
IMG_20141121_194651.jpg (118.23 KiB) Visto 6532 veces
IMG_20141121_193916.jpg
IMG_20141121_193916.jpg (106.49 KiB) Visto 6532 veces
IMG_20141121_192731.jpg
IMG_20141121_192731.jpg (134.08 KiB) Visto 6532 veces
IMG_20141121_192219.jpg
IMG_20141121_192219.jpg (110.27 KiB) Visto 6532 veces
IMG_20141121_184956.jpg
IMG_20141121_184956.jpg (99.62 KiB) Visto 6532 veces


Volver a “Sinclair/Spectrum”

¿Quién está conectado?

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