Utilitaires

CMSXImg

Cet article a été mis à jour, vous consultez ici une archive de cet article!
MSXImage est un outil Windows en ligne de commande permettant d'extraire des sprites d'une image et de les convertir dans un format intégrable dans un programme C ou Assembleur, ou directement en binaire.

Version actuelle : MSXImage 1.6.3

Exemple



Prenons l'image suivante :


Elle est constitué de 4 rangées (une par voiture) de 16 sprites d'une taille de 13x11 pixels.
Imaginons qu'on souhaite exporter les 16 sprites de la 2e voiture (la jaune) vers un fichier my_sprites.h pour être intégré dans un programme C.
Cela permet d'avoir les images directement intégré au programme sans avoir à les charger à la main (très utile pour les programme destiné aux ROMs).
Nous utiliserons la commande :

> MSXImage -in my_image.png -out my_sprites.h -pos 0 11 -size 13 11 -num 16 1 -name myYellowCar -trans 0xE300E3 -bpc 8

-pos 0 11 donne la position de départ de la zone à extraire dans l'image source.
-size 13 11 donne la taille des blocks à extraire.
-num 16 1 donne le nombre de blocks à extraire.
-name MyYellowCar donne le nom de la structure à créer (dans le cas d'un fichier texte).
-trans 0xE300E3 donne la couleur de fond qui va permettre de déterminer les zones transparentes.
-bpc 8 détermine le nombre de couleur des sprites. Ici, on utilise le mode 8-bits du Screen 8 et ses 256 couleurs.

Dans ce cas, l'outil va générer un fichier texte qu'on va pouvoir ensuite inclure dans un programme C qui va ressembler à ça :
Code C :
// Data table
const unsigned char myYellowCar[] =
{
// Sprite[0] (offset:0)
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
    0x00, 0x00, 0x04, 0x04, 0x04, 0x10, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
    0x6D, 0x49, 0x04, 0x21, 0x04, 0xFB, 0x21, 0x21, 0x91, 0x92, 0xBC, 0x6D, 0x00, 
    ...
};
 


Commandes





Documentation



Fichier source



Fichier destination



Découpage des sprites



Couleurs



Compression