Imagen

Temas AGD

Avatar de Usuario
pser1
Mensajes: 4881
Registrado: 08 Dic 2012 18:34

Temas AGD

Mensaje por pser1 »

Hello,
I have prepared a java program that converts a text file with the AGD definitions
of Blocks / Tiles into data for 4 bitplanes for the FM77AV2
The program uses the shape definition (8 bytes) and the colours (fore and background)
Before going on, I wanted to have a peek at the 16 colours defined in the LoadPal function
so I have used an old program that draws 16 rectangles with these 16 colours and have found
a few that are not as I had hoped or as their name make me think of.
This is the screenshot ...
Palette16C.jpg
Palette16C.jpg (18.34 KiB) Visto 808 veces
In order to adjust the component values of the colours that are not what they should be,
I would appreciate if anyone could upload a screenshot of the 16 colours palette on the
std Spectrum 48Kb and even better if anyone had a screenshot of these 16 colours used
in the MSX for the AGD games.
I attach a zip file containing
- TILES-AGD.BLK is a short text file with seven block/tiles definition from an AGD game
- TILES-BitPlanes is the conversion result of the java app
- PAL16B.ASM is the source code used to create the palette 16 coours
- PAL16B.D77 is the virtual disk for maybe you'd want to test it

In the source code you will find just before subroutine "PLTPG1" all the data related to
the colours used on MSX if I am not wrong.
Feel free to change the values in the 16 definitions an have a peek at the results after
compiling and executing on XM7

Besides the inaccuracy of some colours, the MSX seems to use colour Zero as transparency
so colour number 1 is used as Black (that's true for sprites ...)
I really don't want '1' to be Black colour as, for the FM77AV, the better number would be '0'.
In this case, colour number '1' results undefined or a second zero.
Any idea how to solve that?
thanks in advance
pere
TILES.ZIP
(161.75 KiB) Descargado 14 veces
Avatar de Usuario
pser1
Mensajes: 4881
Registrado: 08 Dic 2012 18:34

Re: AGD related

Mensaje por pser1 »

By now, the only things I have found are the images I attach hereunder.
The MSX colours seem very alike the ones I get on the FM77AV2 and the names are ok. Not very happy with them :-(
On the Spectrum the colours seem brighter but no correspondence in numbers with MSX2

And most important thing. The values associated to these palettes are always $00-$FF but I am using values $00-$0F on the FM77AV
Could I really use values up to $FF instead?
I am not sure if this series of values could be ok: 00-11-22-33-44-55-66-77-88-99-AA-BB-CC-DD-EE-FF as every component has 16 levels
in the 4096 colours palette.
cheers!
pere
Spectrum
Spectrum
Spectrum Palette 15 colours.jpg (16.39 KiB) Visto 797 veces
MSX
MSX
MSX Palette 16 colours.jpg (103.68 KiB) Visto 797 veces
Avatar de Usuario
jimbobaby
Mensajes: 551
Registrado: 13 Ago 2023 21:17

Re: AGD related

Mensaje por jimbobaby »

I must confess i don't get what's the problem -grin

That's a nice spectrum palette
Capture.JPG
Capture.JPG (34.87 KiB) Visto 730 veces
The palette, as expected, from the values of the screenshots provided.

Código: Seleccionar todo

PLTPG1    FCB          $00,$00,$00 		
          FCB          $00,$00,$00 		
          FCB          $00,$00,$0D 		
          FCB          $00,$00,$0F 		
          FCB          $00,$0D,$00 		
          FCB          $00,$0F,$00 		
          FCB          $00,$0D,$0D 		
          FCB          $00,$0F,$0F 		
          FCB          $0D,$00,$00 		
          FCB          $0F,$00,$00 		
          FCB          $0D,$00,$0D 		
          FCB          $0F,$00,$0F 		
          FCB          $0D,$0D,$00 		              
          FCB          $0F,$0F,$00 		
          FCB          $0D,$0D,$0D 		
          FCB          $0F,$0F,$0F
I mean, if you have a full 8 bit color range (0-$FF) just pick the high nibble for the FM77AV conversion, that's all. Another thing is how you spend the analog palette indexes for your needs, but the pure RGB values, just pick the high nibble.

Another thing is that colors on an emulator and on real hw are different, but this depends on the analog realm, output devices, color carriers and the likes...

PS: As a little joke, i must say that FM77AV should have 100% of the ZXSpectrum color space -507
-sp3zy PC 386 -coam1 -m3s3x
Avatar de Usuario
jimbobaby
Mensajes: 551
Registrado: 13 Ago 2023 21:17

Re: AGD related

Mensaje por jimbobaby »

By the way, about the MSX palette. On the jltursan AGD MSX github, there is a default palette.
Capture.JPG
Capture.JPG (31.49 KiB) Visto 727 veces

Código: Seleccionar todo

PLTPG1    FCB          $00,$00,$00 		
          FCB          $00,$00,$00 		
          FCB          $0C,$02,$02 		
          FCB          $0E,$06,$06 		
          FCB          $02,$02,$0E 		
          FCB          $06,$04,$0E 		
          FCB          $02,$0A,$02		
          FCB          $0C,$04,$0E		
          FCB          $02,$0E,$02		
          FCB          $06,$0E,$06		
          FCB          $0C,$0C,$02		
          FCB          $08,$02,$02		
          FCB          $04,$0C,$0A		              
          FCB          $0A,$0A,$0A		
          FCB          $0E,$0E,$0E	
          FCB          $0F,$0F,$0F 		       
-sp3zy PC 386 -coam1 -m3s3x
Avatar de Usuario
jltursan
Mensajes: 6063
Registrado: 20 Sep 2011 13:59
Ubicación: Madrid
Contactar:

Re: AGD related

Mensaje por jltursan »

Yep, these palettes (ZX & MSX1) are pretty standard. What's exactly the problem?, and why are writing english in this thread? -nosweat
Avatar de Usuario
jimbobaby
Mensajes: 551
Registrado: 13 Ago 2023 21:17

Re: AGD related

Mensaje por jimbobaby »

jltursan escribió:Yep, these palettes (ZX & MSX1) are pretty standard. What's exactly the problem?, and why are writing english in this thread? -nosweat
Pos ahora que lo dices... -rofl

Pere juega en otra liga, asi que es normal que enseguida se le vaya a Shakespeare.. ademas nunca sabes cuando puedes necesitar a Malik -507
-sp3zy PC 386 -coam1 -m3s3x
Avatar de Usuario
pser1
Mensajes: 4881
Registrado: 08 Dic 2012 18:34

Re: AGD related

Mensaje por pser1 »

jimbobaby escribió:I must confess i don't get what's the problem -grin
That's a nice spectrum palette

The palette, as expected, from the values of the screenshots provided.

Código: Seleccionar todo

PLTPG1    FCB          $00,$00,$00 		
          FCB          $00,$00,$00 		
          FCB          $00,$00,$0D 		
          FCB          $00,$00,$0F 		
          FCB          $00,$0D,$00 		
          FCB          $00,$0F,$00 		
          FCB          $00,$0D,$0D 		
          FCB          $00,$0F,$0F 		
          FCB          $0D,$00,$00 		
          FCB          $0F,$00,$00 		
          FCB          $0D,$00,$0D 		
          FCB          $0F,$00,$0F 		
          FCB          $0D,$0D,$00 		              
          FCB          $0F,$0F,$00 		
          FCB          $0D,$0D,$0D 		
          FCB          $0F,$0F,$0F
I mean, if you have a full 8 bit color range (0-$FF) just pick the high nibble for the FM77AV conversion, that's all. Another thing is how you spend the analog palette indexes for your needs, but the pure RGB values, just pick the high nibble.
Another thing is that colors on an emulator and on real hw are different, but this depends on the analog realm, output devices, color carriers and the likes...
PS: As a little joke, i must say that FM77AV should have 100% of the ZXSpectrum color space -507
Hola,
la paleta que has subido y que parece hecha con el programa PAL16B, entiendo que es el resultado de algunas modificaciones a los valores
que yo había puesto que, por cierto, son los que utilizo para el módulo SuperSprite-FM+ con el V9958
Lo cierto es que los rojos me parecen mas rojos, la única excepción es el antepenúltimo color que me parece gris, como el penúltimo, en
diferente grado de brillo. Pero en teoría solamente debería haber un gris en la paleta ...
saludos
Avatar de Usuario
pser1
Mensajes: 4881
Registrado: 08 Dic 2012 18:34

Re: AGD related

Mensaje por pser1 »

jltursan escribió:Yep, these palettes (ZX & MSX1) are pretty standard. What's exactly the problem?, and why are writing english in this thread? -nosweat
Hola,
la verdad es que leyendo el nombre que se da a los colores, no parecen todos muy acertados.
Usando los valores del V9958 para el FM77AV los colores rojos salen casi de color rosado y los amarillos salen mal.
Al menos con el programa PAL16B que he subido.
Supongo que los valores asignados a cada componente habrá que ajustarlos en cada máquina para compensar su 'personalidad'
saludos
pere
Avatar de Usuario
pser1
Mensajes: 4881
Registrado: 08 Dic 2012 18:34

Re: AGD related

Mensaje por pser1 »

jimbobaby escribió:
jltursan escribió:Yep, these palettes (ZX & MSX1) are pretty standard. What's exactly the problem?, and why are writing english in this thread? -nosweat
Pos ahora que lo dices... -rofl
Pere juega en otra liga, asi que es normal que enseguida se le vaya a Shakespeare.. ademas nunca sabes cuando puedes necesitar a Malik -507
Efectivamente, era por facilitarle la 'entrada' a malikto999, pero vamos, que si nos vamos a centrar en paletas MSX vs FM77AV podemos
cambiar sin problemas ...
saludos
Avatar de Usuario
jimbobaby
Mensajes: 551
Registrado: 13 Ago 2023 21:17

Re: AGD related

Mensaje por jimbobaby »

pser1 escribió:la paleta que has subido y que parece hecha con el programa PAL16B, entiendo que es el resultado de algunas modificaciones a los valores
que yo había puesto que, por cierto, son los que utilizo para el módulo SuperSprite-FM+ con el V9958
Lo cierto es que los rojos me parecen mas rojos, la única excepción es el antepenúltimo color que me parece gris, como el penúltimo, en
diferente grado de brillo. Pero en teoría solamente debería haber un gris en la paleta ...
saludos
Si, las paletas simplemente las he probado a fuego en tu ejemplo (reemplazando la que habia). En el caso del spectrum he usado la imagen que has puesto como referencia para los valores, en el de MSX he tirado de aqui https://github.com/jltursan/AGD-MSX-Suite
If the MSX machine supports color palettes this feature is enabled. The default palette if you don't use the DEFINEPALETTE command is the following:

0x000,0x000,0x611,0x733,0x117,0x327,0x151,0x627 0x171,0x373,0x661,0x664,0x411,0x265,0x555,0x777

The 16 values (one color palette definition each) are defined using the GRB scheme.
Asi que he pillado los valores, he multiplicado por 2 cada RGB y ale, paleta hecha -grin

(eso si, como bien has visto me he saltado un color y luego he rellenado con un $0F,$0F,$0F que no deberia estar ahi -banghead )
-sp3zy PC 386 -coam1 -m3s3x
Avatar de Usuario
pser1
Mensajes: 4881
Registrado: 08 Dic 2012 18:34

Re: AGD related

Mensaje por pser1 »

Muy buenas,
tras unas pruebas mas, decido quedarme con esta paleta ...
Me parece que los colores hacen mas justicia a los nombres que se les da.
Estos nombres los podéis ver en el fichero fuente ASM
Además en el color 1 he puesto naranja que podría ser utilizado para sprites.
Para fondo, el color negro será el color 0
saludos
PAL16C2.jpg
PAL16C2.jpg (18.89 KiB) Visto 692 veces
PAL16C2.ZIP
fuente y disco
(161.31 KiB) Descargado 12 veces
Avatar de Usuario
jltursan
Mensajes: 6063
Registrado: 20 Sep 2011 13:59
Ubicación: Madrid
Contactar:

Re: AGD related

Mensaje por jltursan »

La paleta de los chips de Yamaha (la estática aplicada al modo G7), como la mayoría de sistemas que emplean paletas de 8bits, suelen basarse en un reparto de bits R3-G3-B2 (G3-R3-B2 en el caso del Yamaha) porque se supone que el ojo percibe con menos detalle los cambios en el azul. Sea verdad o no, eso hace que convertir colores de esa paleta a otros formatos pueda dar resultados algo desviados; pero vamos no se si ha sido este el caso.

Y por tanto...para gustos paletas. Veo que has tratado de replicar la del MSX1, que aunque tiende a ser algo "desvaída", me gusta (Deep Purple forever!). Además, al poder reciclar ese color "transparente" puedes añadir el color que quieras y si lo tuviese que elegir yo, sería un gris medio. Salvo que tengas planes para él, ese amarillo-anaranjado no acabo de verlo ;-)
Avatar de Usuario
pser1
Mensajes: 4881
Registrado: 08 Dic 2012 18:34

Re: AGD related

Mensaje por pser1 »

jltursan escribió:La paleta de los chips de Yamaha (la estática aplicada al modo G7), como la mayoría de sistemas que emplean paletas de 8bits, suelen basarse en un reparto de bits R3-G3-B2 (G3-R3-B2 en el caso del Yamaha) porque se supone que el ojo percibe con menos detalle los cambios en el azul. Sea verdad o no, eso hace que convertir colores de esa paleta a otros formatos pueda dar resultados algo desviados; pero vamos no se si ha sido este el caso.
Y por tanto...para gustos paletas. Veo que has tratado de replicar la del MSX1, que aunque tiende a ser algo "desvaída", me gusta (Deep Purple forever!). Además, al poder reciclar ese color "transparente" puedes añadir el color que quieras y si lo tuviese que elegir yo, sería un gris medio. Salvo que tengas planes para él, ese amarillo-anaranjado no acabo de verlo ;-)
Hola,
es verdad, no me acordaba de que los V9958 tienen paleta de 256 colores 8x8x4 como bien dices con la mitad de valores en Azul.
El color naranja lo iba a dejar para los sprites ya que es un tono bastante distinto de los demás, pero pensándolo bien, valdrá la pena tener
las dos paletas personalizadas, de forma que el color 1 podrá ser un gris entre los dos ya existentes y podría ser el naranja o cualquier otro
para sprites ya que supongo, sin certeza alguna, que para el FM77AV el color 0 será interpretado como 'transparente' y si no se asigna el color
negro a ningún área de los sprites, pues no haría falta el 1. Ya veremos como manejan los sprites en el juego "Shounen Mike"
De momento intentaré hacer un programa que muestre las dos paletas, la de sprites arriba y la de fondo abajo.
Los rectángulos serán la mitad de altos, pero debería ser suficiente. Así podría cambiar algunos colores para sprites y hacerlos mas brillantes
en lugar de tan 'pastel'
saludos
Avatar de Usuario
pser1
Mensajes: 4881
Registrado: 08 Dic 2012 18:34

Re: AGD related

Mensaje por pser1 »

Hola,
adjunto el programa que define y muestra las dos paletas, arriba los colores para primer término (sprites) y abajo para fondo
No hay muchas diferencias por ahora, pero se puede 'personalizar' su se desea ...
En lo que concierne a juegos AGD convertidos, el color 1 para los Patrones no será usado nunca ya que el conversor de Spectrum-MSX
o Spectrum-FM77 trabaja con los colores 0-7 mas brillo añadiendo 64 resultando 64-71, pero claramente 0 y 64 son Negro
así que solo usamos para el fondo 14 colores.
Mirando el compilador de C para V9958 he visto que, en su momento, puse la función Convert Colours que tiene esta tabla

Código: Seleccionar todo

unsigned short ConvertColours( unsigned short oldCol)
	unsigned short int convCol[16]={1,4,6,13,12,7,10,14,1,5,8,13,3,7,11,15};
Como se puede ver hay dos valores que retornan 1, que es interpretado como CERO
Veo que además el 7 también está repetido mientras que faltan 2 y 9
Supongo que sería mejor utilizar todos los colores posibles ....
@jltursan
¿Podrías mirar en el compilador para MSX que valores pusiste en la función de conversión de colores?
muchas gracias -drinks
pere
Avatar de Usuario
jltursan
Mensajes: 6063
Registrado: 20 Sep 2011 13:59
Ubicación: Madrid
Contactar:

Re: AGD related

Mensaje por jltursan »

Um, no recuerdo conversores de colores en los AGD MSX o MSX2. Todos los colores que uso son en formato nativo, incluyendo la existencia de paletas en MSX2.

Lo que si que recuerdo que hice fue una utilidad que puedes encontrar aquí: https://github.com/jltursan/AGD-MSX-Sui ... 0MSX/tools, llamada ZXAttributeConverter y que ayudaba a la hora de decidir que color MSX usar cuando se migraba algo desde ZX.
Avatar de Usuario
pser1
Mensajes: 4881
Registrado: 08 Dic 2012 18:34

Re: AGD related

Mensaje por pser1 »

jltursan escribió:Um, no recuerdo conversores de colores en los AGD MSX o MSX2. Todos los colores que uso son en formato nativo, incluyendo la existencia de paletas en MSX2.
Lo que si que recuerdo que hice fue una utilidad que puedes encontrar aquí: https://github.com/jltursan/AGD-MSX-Sui ... 0MSX/tools, llamada ZXAttributeConverter y que ayudaba a la hora de decidir que color MSX usar cuando se migraba algo desde ZX.
Hola,
yo me refería al compilador en C que utilizamos en cada plataforma para convertir los ficheros AGD en ASM y luego los compilamos.
Para el MC6847 en B/N no utilizo el atributo de color, pero para el V9958 si lo uso, enviándolo a una función que lo descompone
basándose en que el formato es:
- Indicador de Intermitencia
- Indicador de brillo
- color de fondo
- color primer término
Una vez decodificados ambos colores con valor de 0 a 7 se les añade 8 si el indicador de brillo es 1
Con esto se obtienen 16 valores: 0-1-2-3-4-5-6-7-8-9-10-11-12-13-14-15
El valor de fondo y primer término se usan como índices a la tabla que los convierte de Spectrum a V9958, siendo esta la tabla
unsigned short int convCol[16]={1,4,6,13,12,7,10,14,1,5,8,13,3,7,11,15};
Donde puede verse que el valor 1 (color cero) aparece dos veces ya que negro con brillo sigue siendo negro
Pero me sorprende el hecho de que el 7 y 13 estén repetidos también mientras que echo en falta los valores 2 y 9 en la tabla
Estoy preparado una comparativa de colores Spectrum-MSX que subiré en el próximo mensaje ...
hasta pronto!
Responder

Volver a “Fujitsu FM7”