Proyecto ZX-Uno, clon de spectrum basado en FPGA

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

Moderador: Sir Cilve Sinclair

Avatar de Usuario
cheveron
Manic Miner
Mensajes: 277
Registrado: Lun Jun 28, 2010 6:14 pm
Ubicación: Londres
Contactar:

Re: Proyecto ZX-Uno, clon de spectrum basado en FPGA

Mensaje por cheveron » Dom Mar 30, 2014 6:48 pm

antoniovillena escribió:And cheveron, can you tell me what is your more efficient 6x8 routine to do the comparision?


Your routine is more efficient. But mine isn't far off it without using pre-rotation.
«Dime con quién andas, y te diré quién eres» — Cervantes

Avatar de Usuario
antoniovillena
Nonamed
Mensajes: 1162
Registrado: Dom Ene 09, 2011 8:55 am

Re: Proyecto ZX-Uno, clon de spectrum basado en FPGA

Mensaje por antoniovillena » Dom Mar 30, 2014 6:57 pm

cheveron escribió:
antoniovillena escribió:And cheveron, can you tell me what is your more efficient 6x8 routine to do the comparision?


Your routine is more efficient. But mine isn't far off it without using pre-rotation.


Of course, I will compare 3 routines in 256x192 mode (normal ZX Spectrum): your 6x8 without prerotated, my 6x8 rotated and the fastest 8x8 that I can write. It will take me some time. Of course I'll fill all the screen with strings to do the results more visible.
Imagen

Avatar de Usuario
cheveron
Manic Miner
Mensajes: 277
Registrado: Lun Jun 28, 2010 6:14 pm
Ubicación: Londres
Contactar:

Re: Proyecto ZX-Uno, clon de spectrum basado en FPGA

Mensaje por cheveron » Dom Mar 30, 2014 7:05 pm

antoniovillena escribió:
cheveron escribió:
antoniovillena escribió:And cheveron, can you tell me what is your more efficient 6x8 routine to do the comparision?


Your routine is more efficient. But mine isn't far off it without using pre-rotation.


Of course, I will compare 3 routines in 256x192 mode (normal ZX Spectrum): your 6x8 without prerotated, my 6x8 rotated and the fastest 8x8 that I can write. It will take me some time. Of course I'll fill all the screen with strings to do the results more visible.


I wouldn't bother, for two reasons. First, the code in SE Basic IV is optimized for the a 512x192 screen. Second, you're not taking into account the stuff that really slows printing down like dealing with OVER, INVERSE, keeping track of the print position and so on. A clean 8x8 driver will always be fastest. But the standard Spectrum ROM isn't clean.
«Dime con quién andas, y te diré quién eres» — Cervantes

Avatar de Usuario
antoniovillena
Nonamed
Mensajes: 1162
Registrado: Dom Ene 09, 2011 8:55 am

Re: Proyecto ZX-Uno, clon de spectrum basado en FPGA

Mensaje por antoniovillena » Dom Mar 30, 2014 9:31 pm

cheveron escribió:I wouldn't bother, for two reasons. First, the code in SE Basic IV is optimized for the a 512x192 screen.


I can do it for 512x192 and count the cycles with Ticks.

cheveron escribió:Second, you're not taking into account the stuff that really slows printing down like dealing with OVER, INVERSE, keeping track of the print position and so on. A clean 8x8 driver will always be fastest. But the standard Spectrum ROM isn't clean.


But taking account OVER, INVERSE, etc... won't advantage the 6x8 driver against the 8x8 one. It will be slower in both cases. The point is that in whatever scenario that you choose 8x8 font are faster than 6x8, I think that it's at least 500% faster. I have compared recently in the BIOS for the ZX-Uno and quickly improve to a rotated version because it was very very slow.
Imagen

Avatar de Usuario
cheveron
Manic Miner
Mensajes: 277
Registrado: Lun Jun 28, 2010 6:14 pm
Ubicación: Londres
Contactar:

Re: Proyecto ZX-Uno, clon de spectrum basado en FPGA

Mensaje por cheveron » Dom Mar 30, 2014 9:54 pm

antoniovillena escribió:...whatever scenario that you choose 8x8 font are faster than 6x8, I think that it's at least 500% faster.

Depends how it's written. The original ROM code is amazingly slow.

I have compared recently in the BIOS for the ZX-Uno and quickly improve to a rotated version because it was very very slow.


The BIOS is written in Z80?
«Dime con quién andas, y te diré quién eres» — Cervantes

Avatar de Usuario
antoniovillena
Nonamed
Mensajes: 1162
Registrado: Dom Ene 09, 2011 8:55 am

Re: Proyecto ZX-Uno, clon de spectrum basado en FPGA

Mensaje por antoniovillena » Dom Mar 30, 2014 10:06 pm

cheveron escribió:Depends how it's written. The original ROM code is amazingly slow.


Ok. A bad written 8x8 driver can be as slow as the best written 6x8 one, but if we want compare we must be fair. As I know SE BASIC IV is not the original ROM, it's a rewritten from scratch.

The BIOS is written in Z80?


Yes
Imagen

Avatar de Usuario
cheveron
Manic Miner
Mensajes: 277
Registrado: Lun Jun 28, 2010 6:14 pm
Ubicación: Londres
Contactar:

Re: Proyecto ZX-Uno, clon de spectrum basado en FPGA

Mensaje por cheveron » Dom Mar 30, 2014 11:28 pm

antoniovillena escribió:
cheveron escribió:Depends how it's written. The original ROM code is amazingly slow.


Ok. A bad written 8x8 driver can be as slow as the best written 6x8 one, but if we want compare we must be fair. As I know SE BASIC IV is not the original ROM, it's a rewritten from scratch.


It's not that the original ROM is bad, it's just that it has to serve the screen and the printer. Like the original ROM, SE Basic IV is derived from the ZX81 ROM, which thanks to the generosity of John Grant is available under the GPL license.

The BIOS is written in Z80?

Yes

I suppose it makes sense to write for the target CPU. What things will be configurable?
«Dime con quién andas, y te diré quién eres» — Cervantes

Avatar de Usuario
antoniovillena
Nonamed
Mensajes: 1162
Registrado: Dom Ene 09, 2011 8:55 am

Re: Proyecto ZX-Uno, clon de spectrum basado en FPGA

Mensaje por antoniovillena » Dom Mar 30, 2014 11:33 pm

cheveron escribió:I suppose it makes sense to write for the target CPU. What things will be configurable?


Not much. Basically you can manage different ROMs and on which you'll boot. It's in the official repository, in a folder called /firmware. You can execute firmware.rom as a 48K ROM.
Imagen

Avatar de Usuario
cheveron
Manic Miner
Mensajes: 277
Registrado: Lun Jun 28, 2010 6:14 pm
Ubicación: Londres
Contactar:

Re: Proyecto ZX-Uno, clon de spectrum basado en FPGA

Mensaje por cheveron » Lun Mar 31, 2014 12:25 am

antoniovillena escribió:
cheveron escribió:I suppose it makes sense to write for the target CPU. What things will be configurable?


Not much. Basically you can manage different ROMs and on which you'll boot. It's in the official repository, in a folder called /firmware. You can execute firmware.rom as a 48K ROM.


Where is the official repository?
«Dime con quién andas, y te diré quién eres» — Cervantes

Avatar de Usuario
antoniovillena
Nonamed
Mensajes: 1162
Registrado: Dom Ene 09, 2011 8:55 am

Re: Proyecto ZX-Uno, clon de spectrum basado en FPGA

Mensaje por antoniovillena » Lun Mar 31, 2014 12:34 am

cheveron escribió:Where is the official repository?


I'm sorry. Look at the bottom of the first message in this thread:

http://zonadepruebas.com/viewtopic.php?f=26&t=4927
Imagen

Avatar de Usuario
cheveron
Manic Miner
Mensajes: 277
Registrado: Lun Jun 28, 2010 6:14 pm
Ubicación: Londres
Contactar:

Re: Proyecto ZX-Uno, clon de spectrum basado en FPGA

Mensaje por cheveron » Lun Mar 31, 2014 11:46 am

antoniovillena escribió:
cheveron escribió:Where is the official repository?


I'm sorry. Look at the bottom of the first message in this thread:

http://zonadepruebas.com/viewtopic.php?f=26&t=4927


That's pretty nifty. I'm not clear on how you add ROMs from the BIOS though. I assume you're not going to ship it with the BSkyB ROMs included?
«Dime con quién andas, y te diré quién eres» — Cervantes

Avatar de Usuario
antoniovillena
Nonamed
Mensajes: 1162
Registrado: Dom Ene 09, 2011 8:55 am

Re: Proyecto ZX-Uno, clon de spectrum basado en FPGA

Mensaje por antoniovillena » Lun Mar 31, 2014 4:32 pm

cheveron escribió:That's pretty nifty. I'm not clear on how you add ROMs from the BIOS though. I assume you're not going to ship it with the BSkyB ROMs included?


By tape or by SD (FAT32 LFN formatted), but doesn't work because it's in development. Yes, the included ROM is only the SE BASIC.
Imagen

Avatar de Usuario
cheveron
Manic Miner
Mensajes: 277
Registrado: Lun Jun 28, 2010 6:14 pm
Ubicación: Londres
Contactar:

Re: Proyecto ZX-Uno, clon de spectrum basado en FPGA

Mensaje por cheveron » Lun Mar 31, 2014 10:52 pm

antoniovillena escribió:
cheveron escribió:That's pretty nifty. I'm not clear on how you add ROMs from the BIOS though. I assume you're not going to ship it with the BSkyB ROMs included?


By tape or by SD (FAT32 LFN formatted), but doesn't work because it's in development. Yes, the included ROM is only the SE BASIC.


Awesome. Well I'm really looking forward to getting my hands on one now. Having seconds thoughts about my choice of keyboard colors though. Maybe this would be better:

Imagen
«Dime con quién andas, y te diré quién eres» — Cervantes

hikoki
Freddy Hardest
Mensajes: 652
Registrado: Sab Nov 23, 2013 8:27 am

Re: Proyecto ZX-Uno, clon de spectrum basado en FPGA

Mensaje por hikoki » Jue Jul 31, 2014 9:43 pm

Idea peregrina para el teclado que no sé si tiene mucho sentido :)
El teclado sería una app para tablet con las teclas ocupando toda la pantalla, la ventaja sería que el diseño sería muy parecido al original, posibilidad de elegir diferentes teclados, se emularía el teclado utilizando un dispositivo táctil a pantalla completa, una tableta de 10 pulgadas daría mucho de sí y en una de 7 pulgadas se podría utilizar algún tipo de lupa si tocas una tecla, la tecla quedaría agrandada, si la vuelves a tocar se pulsaría dicha tecla.
Podría hacerse un interfaz tableta/zx-uno ?

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

Re: Proyecto ZX-Uno, clon de spectrum basado en FPGA

Mensaje por mcleod_ideafix » Vie Ago 01, 2014 2:17 am

hikoki escribió:Podría hacerse un interfaz tableta/zx-uno ?

Técnicamente se puede, por supuesto. Ahora bien, para poder abarcar tablets tanto Android como iOS, y para no tener que pagar royalties a Apple por sacar un aditivo hardware para el iPad, la única forma que veo de interfaz es... a través del conector de auriculares. La app, para cada tecla pulsada o soltada, generaría un código similar a los make/break codes de un teclado PS/2, y lo enviaría codificado como sonido, similar a los sonidos de carga del Spectrum, al ZX-Uno, en donde la FPGA decodificaría el stream convirtiéndolo en un código.

También se puede hacer que lo que mande la app cada vez que se pulsa o suelta una tecla sea el estado completo de la matriz, es decir, 40 bits. De esa forma la decodificación en la FPGA es mucho más sencilla.

Si tu pretensión era sólamente abarcar tablets Android, imagino que puede usarse el puerto USB OTG de estos dispositivos y conectar ahí un FT232 o un FT245 para enviar datos por USB a la FPGA.

Ahora bien, lo que no sé es qué latencia puede tener eso. Es: tocar la pantalla + tiempo desde que se detecta pulsación hasta que se informa a la app + tiempo que la app necesita para enviar la información a la FPGA.
Web: ZX Projects | Twitter: @zxprojects

Responder

¿Quién está conectado?

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