Le concept de tilemapping ("cartographie de tuiles") est assez simple : les consoles et bornes d'arcade de l'époque gèrent leurs graphismes en les découpant en centaines de tuiles, généralement de taille 8x8 pixels ("caractères") ou 16x16 ("blocs"), parfois même 32x32 en arcade pour certains arrières-plans relativement simples. Chaque tuile peut être unique, mais l'intérêt de ces veilles technologies est justement de se servir de ces tuiles comme "papiers peints" avec des motifs réutilisables et qui pèsent donc moins lourd en mémoire. La "tilemap" est la table des matières pour reconstituer ton graph avec ces groupes de tuiles. Une sorte de puzzle avec plein de pièces numérotées, en double ou en triple
La VRAM de ces machines peut contenir des images plus larges que la taille physique de ton écran, c'est ce qu'on appelle l'écran virtuel. La PCE par exemple dispose d'un écran virtuel max de 1024x512 pixels. C'est carrément énorme pour une image seule, mais pour faire un niveau c'est très limité (sauf si tu fais un jeu de type Bubble Bobble). Si tu veux créer un niveau conséquent avec scrolling, il ne faut pas blinder ta VRAM qu'avec des tuiles, car tu dois aussi penser aux sprites
Le tilemapping consiste donc à ne charger que les tuiles dont tu as directement besoin pour remplir les 256x224 pixels visibles sur ton écran physique. Généralement, tu te contentes d'utiliser un écran virtuel de 512x256 (pour prévoir justement le scrolling).
HuC a des fonctions de chargement de tuiles pour faciliter cette manip, mais c'est incroyablement mal expliqué et tu dois écrire toi-même ta routine. Pour un néophyte c'est l'enfer. Une instruction de palette en particulier ("#inctilepal") n'est même pas documentée, je suis tombé dessus par hasard en décortiquant la démo "promotion" dans le source de HuC 4. Je n'ai toujours pas exactement compris à quoi elle sert, mais sans elle les tuiles sont corrompues.¹
La tâche est rendue ardue par le fait que HuC ne supporte pas directement les éditeurs de maps classiques comme Tiled. Tu dois fournir séparément la tilemap, les palettes, les tilesets (collections de tuiles)... Elmer a implémenté le support partiel de Pro Motion, c'est clairement mieux que le vieux Mappy mais ce n'est pas encore super simple.
Quand tu vois que dans SGDK (le HuC de la Mega Drive), la fonction scrolling gère automatiquement le chargement des tuiles nécessaires pour afficher ta grosse map, on réalise à quel point HuC n'a pas beaucoup évolué depuis 2005.
Addendum¹