RADASPALBANK : demo para mostrar más de 16 colores en modo Radastan
- chernandezba
- Mensajes: 841
- Registrado: 02 Oct 2015, 23:35
Re: RADASPALBANK : demo para mostrar más de 16 colores en modo Radastan
Agregado emulación de RADASPALBANK en ZEsarUX
Aunque esa demo de zxuno no va fina, parece que hay alguna incompatibilidad o problema con las interrupciones raster y el modo timex
Saludos
Aunque esa demo de zxuno no va fina, parece que hay alguna incompatibilidad o problema con las interrupciones raster y el modo timex
Saludos
- mcleod_ideafix
- Mensajes: 831
- Registrado: 27 Sep 2015, 00:14
- Ubicación: Jerez de la Frontera
- Contactar:
Re: RADASPALBANK : demo para mostrar más de 16 colores en modo Radastan
Bueno.... la demo no usa los modos Timex para nada. Sólo la interrupción ráster y el modo radastaniano.chernandezba escribió:Agregado emulación de RADASPALBANK en ZEsarUX
Aunque esa demo de zxuno no va fina, parece que hay alguna incompatibilidad o problema con las interrupciones raster y el modo timex
Saludos
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA
Re: RADASPALBANK : demo para mostrar más de 16 colores en modo Radastan
I've been fiddling around with a game demo that uses RADASPALBANK and also switches to Timex screen 1 in the raster interrupt.
In the game this will be a screen 1 status bar on the bottom two rows.
Thanks for adding this, César
Metaru-v0.1.13.tap
In the game this will be a screen 1 status bar on the bottom two rows.
Thanks for adding this, César
Metaru-v0.1.13.tap
- chernandezba
- Mensajes: 841
- Registrado: 02 Oct 2015, 23:35
Re: RADASPALBANK : demo para mostrar más de 16 colores en modo Radastan
mcleod_ideafix escribió:Bueno.... la demo no usa los modos Timex para nada. Sólo la interrupción ráster y el modo radastaniano.chernandezba escribió:Agregado emulación de RADASPALBANK en ZEsarUX
Aunque esa demo de zxuno no va fina, parece que hay alguna incompatibilidad o problema con las interrupciones raster y el modo timex
Saludos
Lo del modo Timex me lié, me confundí con la demo de Robin
No entiendo porque tu demo no funciona, en pantalla lo que acabo viendo es que desactiva continuamente el modo radastan (realmente se va a ulaplus modo 0) por lo que en pantalla está en modo spectrum normal y veo basura. Se te ocurre por que?
- chernandezba
- Mensajes: 841
- Registrado: 02 Oct 2015, 23:35
Re: RADASPALBANK : demo para mostrar más de 16 colores en modo Radastan
You’re welcome!SevenFFF escribió:
Thanks for adding this, César
Re: RADASPALBANK : demo para mostrar más de 16 colores en modo Radastan
Wow!SevenFFF escribió:I've been fiddling around with a game demo that uses RADASPALBANK and also switches to Timex screen 1 in the raster interrupt.
- chernandezba
- Mensajes: 841
- Registrado: 02 Oct 2015, 23:35
Re: RADASPALBANK : demo para mostrar más de 16 colores en modo Radastan
Hay un error en ese código. En la función:mcleod_ideafix escribió:
240col.asm muestra una cuadrícula de 16x16 cuadros en la zona de paper, cada uno de un color. En realidad, las 16 filas de cuadros contienen los mismos valores para sus píxeles, ya que en modo radastaniano un pixel sólo puede tomar valores del 0 al 15. Si no cambiáramos la paleta, veríamos 16 columnas de cuadros verticales, cada uno de un color.
ld d,0
ld hl,PaletaInicial ;rellenamos la paleta ULAplus con un gradiente con los 64 primeros colores
LoopPaleta ld bc,ULAPLUSADDR ;pero cuidando de que las entradas de la paleta 0,16,24,32,48 sean el negro, para que el
out (c),d ;borde no cambie cuando cambiemos de paleta (mirar PaletaInicial para entender c<F3>mo funciona esto)
ld bc,ULAPLUSDATA
ld a,(hl)
out (c),a
inc hl
inc d
cp 40h
jr nz,LoopPaleta
Fíjate en el cp 40h final, ahí tiene que haber antes un:
ld a,d
Si no, estás comparando el registro A con 40h, que a saber qué tiene ahí el registro A (tiene el valor de color enviado)
Así ese código debe quedar como:
ld d,0
ld hl,PaletaInicial ;rellenamos la paleta ULAplus con un gradiente con los 64 primeros colores
LoopPaleta ld bc,ULAPLUSADDR ;pero cuidando de que las entradas de la paleta 0,16,24,32,48 sean el negro, para que el
out (c),d ;borde no cambie cuando cambiemos de paleta (mirar PaletaInicial para entender c<F3>mo funciona esto)
ld bc,ULAPLUSDATA
ld a,(hl)
out (c),a
inc hl
inc d
ld a,d
cp 40h
jr nz,LoopPaleta
Este error, que parece no fallar en zxuno provoca que se envíen valores mayores que 40h (del registro D) al puerto de ULAPLUSADDR. Los valores menores de 40h significa "cambiar color de paleta", pero los mayores (cuando bit 6 es 1 y bit 7 es 0) significa cambiar modo ulaplus (tomando los 6 bits inferiores).
Dado que en la especificación ULAPlus "estándar" (la de Andrew, sin modos radastan ni modos ZEsarUX) sólo hay dos valores de modo (0 desactivado, 1 activado) este bug provoca que cada vez que los 6 bits inferiores vale 0, se desactiva ULAPlus. Y cuando vale 1, se activa ULAPlus.
En ZEsarUX, cuando se desactiva el modo ULAPlus estándard, se desactivan también los modos extendidos radastan y/o ZEsarUX, por lo que, ese bug provoca que se desactive el modo continuamente (entiendo que en ZX-Uno real no sucede de la misma manera).
Si puedo subo el tap y el asm corregidos
Saludos
- chernandezba
- Mensajes: 841
- Registrado: 02 Oct 2015, 23:35
- mcleod_ideafix
- Mensajes: 831
- Registrado: 27 Sep 2015, 00:14
- Ubicación: Jerez de la Frontera
- Contactar:
Re: RADASPALBANK : demo para mostrar más de 16 colores en modo Radastan
Ohhhhhhhhhhhhh! Total awesomenes!!!! May I feature this in the Facebook page?SevenFFF escribió:I've been fiddling around with a game demo that uses RADASPALBANK and also switches to Timex screen 1 in the raster interrupt.
Metaru-v0.1.13.tap
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA
Re: RADASPALBANK : demo para mostrar más de 16 colores en modo Radastan
Sure! Thanksmcleod_ideafix escribió:Ohhhhhhhhhhhhh! Total awesomenes!!!! May I feature this in the Facebook page?