Obrigado a Julio Marchi pelo espaço cedido na MSX All
 

Aquarela (.SPR), (.FNT) e (.PRD)

  Os arquivos de sprites (.SPR) e fontes (.FNT) são idênticos, onde cada desenho ou caractere é formado por blocos de 16x16 pixels, no formato dos sprites do MSX. Cada desenho ocupa 32 bytes.
  O arquivo é formado pelo header padrão do MSX mais os desenhos de 16x16 pixels empilhados. O tamanho dos dois tipos de arquivo são fixos.
  O arquivo de sprites é composto por 32 desenhos, o que dá 1024 bytes de dados. Entretanto, o arquivo possui 1145 bytes de dados, onde os bytes restantes não são usados.

  Arquivo .SPR
 ┌────────┬───────────┬───────────┬───────────┬────────────┐
 │ Header │ Desenho 1 │ Desenho 2 │   ...     │ Desenho 32 │
 └────────┴───────────┴───────────┴───────────┴────────────┘


  O arquivo de fontes é composto por 46 desenhos de caracteres, o que dá 1472 bytes de dados. Entretanto, o arquivo possui 1473 bytes de dados, onde o byte excedente não é usado.

  Arquivo .FNT
 ┌────────┬───────────┬───────────┬───────────┬────────────┐
 │ Header │ Desenho 1 │ Desenho 2 │   ...     │ Desenho 46 │
 └────────┴───────────┴───────────┴───────────┴────────────┘


  Conforme visto, não adianta empilhar mais desenhos nesses arquivos, uma vez que o Aquarela irá ignorá-los.

  Padrão dos sprites

  Cada byte define uma linha de 8x1 pixels, onde o valor "1" acende o pixel, enquanto que o valor "0" deixa o pixel apagado. As linhas de 1 a 32 são dispostas na tela da seguinte maneira:

 linha 1    linha 17
 linha 2    linha 18
 linha 3    linha 19
 linha 4    linha 20
 linha 5    linha 21
 linha 6    linha 22
 linha 7    linha 23
 linha 8    linha 24

 linha 9    linha 25
 linha 10   linha 26
 linha 11   linha 27
 linha 12   linha 28
 linha 13   linha 29
 linha 14   linha 30
 linha 15   linha 31
 linha 16   linha 32


  O arquivo de padrões (.PRD) contém 16 desenhos de 8x8 pixels, que serão utilizados como padrão de preenchimento (fill). No Aquarela, ele é desenhado com a replicação do bloco de 8x8 para ficar com 16x16 pixels.
  O arquivo contém o header com 7 bytes e os padrões ocupam 128 bytes. Entretanto, eles começam na posição &H67 do arquivo.


Marcelo Teixeira Silveira
Engenheiro de Sistemas e Computação - UERJ
Mestre em Engenharia de Computação - UERJ

© MarMSX 1999-2018