nEUrOne a écrit :
mais que l'on peut - surement facilement - transcrire en 4 gray ou n/b 
Non.
La spécialité de ma routine est le fait qu'en 7 niveaux de gris, on peut utiliser une couleur transparente sans réduire l'expressivité (pas comme dans
genlib où il n'y a plus de blanc

).
Ce que fait ma routine (je ne me sers pas de 100% de ses fonctionnalités dans
Backgammon):
* largeur: multiple de 8 arbitraire, codé au début du sprite (c'est une propriété fixe du sprite, donc aucune raison de le passer en paramètre)
* hauteur arbitraire, codée au début du sprite (même remarque)
* clipping horizontal et vertical (que je n'utilise pas dans
Backgammon d'ailleurs)
* la combinaison de bits 011 (un des 2 gris moyens qui donnent le même résultat) est considérée comme transparente
* la combinaison de bits 100 est automatiquement transformée en un mélange de 011 et de 100 (rapport 25%/75%, réparti selon le décor ci-dessous), pour éviter les bogues de l'écran avec les colonnes trop foncées dans un des plans. Le mélange n'est visible ni dans le codage des sprites, ni pour l'utilisateur. (C'est exactement la même couleur, mais les pixels allumés sont sur des plans différents pour éviter que certains des plans soient trop foncés et fassent boguer l'écran.)
décor utilisé pour le mélange:
#...
.#..
...#
..#.