Précédent : Description des fonctions Up : Description des fonctions Suivant : Fonctions de haut niveau

Spécifications des structures de données

Depuis le début, nous parlons de matrice de tiles, de liste de sprites, de grand écran virtuel, ou d'écran virtuel simple, sans vraiment avoir précisé quelles étaient leurs spécificités.

Matrice de tiles
Tableau de char ou de short, à deux dimensions, ayant au minimum 8 lignes et 15 colonnes si on utilise des sprites 16x16, ou 16 lignes et 30 colonnes avec des sprites 8x8.


Sprites
Les sprites peuvent être en noir et blanc ou en niveaux de gris, et de taille 8x8 pixels ou 16x16. Il y a des fonctions spécifiques pour chaque type de sprite, il ne faut donc pas se tromper en les choisissant.
Les sprites en noir et blanc sont classiques : un tableau de 8 char pour les sprites 8x8, ou un tableau de 16 short pour les sprites 16x16, contenant successivement chaque ligne du sprite.
Les sprites en niveaux de gris utilisent un format un peu plus compliqué : c'est un tableau de 16 char pour les sprites 8x8 ou 32 short pour les sprites 16x16 qui est organisé comme ceci : ligne1/plan1, puis ligne1/plan2, puis ligne2/plan1, puis ligne2/plan2, etc... On appelle cela un format entrelacé. Le plan1 peut-être celui correspondant au gris clair au au gris foncé, cela n'a pas d'importance tant que vous respectez la même convention pour les écrans virtuels (voir plus bas).


Liste de sprites
La liste peut être vue comme un tableau à une dimension contenant des sprites, mais en réalité, c'est un tableau à deux dimensions, puisque les sprites eux aussi sont des tableaux à une dimension.


Tableau d'animation
Tableau de short à deux dimensions : le nombre d'étape d'animation et le nombre d'animations. Chaque ligne représente une étape, et chaque colonne représente une animation, ainsi l'élément du tableau situé sur la colonne c et la ligne l sera le numéro du sprite de la lième étape de la cième animation.
Le tableau ne peut être qu'un tableau de short, car j'ai pensé que si vous utilisez des tiles animés vous aurez probablement beaucoup de sprites.


Table de décalage horizontal
Tableau de char à une dimension, de 128 éléments. Chaque élément représente le décalage individuel horizontal à ajouter à celui de la ligne courante lors de la recopie du grand écran virtuel vers l'écran. Les valeurs autorisées sont comprises entre 0 et 16.


Table de décalage vertical
Tableau de short à une dimension, de 128 éléments. Chaque élément représente la valeur à ajouter à l'adresse source à la fin de chaque ligne lors de la recopie du grand écran virtuel vers l'écran. Toutes les valeurs sont permises, mais faites attention à ne pas sortir du grand écran virtuel.


Grand écran virtuel (ou big_vscreen)
Zone mémoire de 5440 octets si vous travaillez en noir et blanc, ou bien deux fois plus grande (10880 octets) si vous travaillez en niveaux de gris (dans ce cas, les 5440 premiers octets correspondront au Plan1, et les 5440 suivants correspondront au Plan2, vous choisissez comme il vous arrange de définir le Plan1 gris clair ou gris foncé, mais respectez cette convention dans vos sprites).


Ecran virtuel
Zone mémoire de 3840 octets en noir et blanc, ou 2 fois 3840 octets si vous travaillez en niveaux de gris (dans ce cas, les deux plans ne sont pas nécessairement adjacents).


Précédent : Description des fonctions Up : Description des fonctions Suivant : Fonctions de haut niveau