La Place des Développeurs Image conversion pour MSX2
Reprise du message précédent
En fait, il y a bien des références à OS/X, j'ai lu trop vite. Edité par KN2000 Le 26/01/2022 à 14h28
Nous sommes en 2010 aps JC, toute la Gaule est envahie. Ah ben non, apparement, un village résiste encore aux envahisseurs Personalcomputerum et autres Consoledessalum. Bienvenue dans l'antre du emessix !
ericb59
Membre non connecté
Conseiller Municipal
oui par contre le tchat.h
j'en ai récupéré un mais je ne suis pas certain que ça le bon, apparemment il existe plusieurs versions....
pas certain non plus que ça soit compatible.
j'en ai récupéré un mais je ne suis pas certain que ça le bon, apparemment il existe plusieurs versions....
pas certain non plus que ça soit compatible.
Si j'ai bien compris, tchar.h servirait pour l'unicode.
Essayes peut-être <wchar.h> à la place, ou alors <cwchar>... La première est une bibliothèque C et la seconde devrait être celle qui correspond en C++. Je vais prendre une aspirine
Essayes peut-être <wchar.h> à la place, ou alors <cwchar>... La première est une bibliothèque C et la seconde devrait être celle qui correspond en C++. Je vais prendre une aspirine
Nous sommes en 2010 aps JC, toute la Gaule est envahie. Ah ben non, apparement, un village résiste encore aux envahisseurs Personalcomputerum et autres Consoledessalum. Bienvenue dans l'antre du emessix !
aoineko
Membre non connecté
Conseiller Municipal
J'ai récupéré MinGW et quand j'aurai un moment, je vais essayer de convertir mes programmes pour GCC.
Ensuite, il sera beaucoup plus simple d'en faire des versions Linux/MacOS.
Ensuite, il sera beaucoup plus simple d'en faire des versions Linux/MacOS.
On est toujours ignorant avant de savoir.
ericb59
Membre non connecté
Conseiller Municipal
aoineko :
J'ai récupéré MinGW et quand j'aurai un moment, je vais essayer de convertir mes programmes pour GCC.
Ensuite, il sera beaucoup plus simple d'en faire des versions Linux/MacOS.
Ensuite, il sera beaucoup plus simple d'en faire des versions Linux/MacOS.
Alors ça c'est une super idée...
J'ai hate
aoineko
Membre non connecté
Conseiller Municipal
Je termine d'ajouter le MSX-Audio à MSXgl (ça sera le dernier chip sonore ajouté pour le moment... la MoonSound attendra), puis je termine le support des formats Arkos, Trilo et WYZ, et ensuite je vais faire une grosse passe sur mes outils.
Ca faisait un bout de temps que je voulais les harmoniser (j'ai encore plein de code plus ou moins dupliqué) donc j'en profiterai lors du passage à GCC.
J'avance bien en ce moment, mais je peux pas te donner de date donc si tu es pressé, il vaut p'être mieux que tu prévois un plan B.
Ca faisait un bout de temps que je voulais les harmoniser (j'ai encore plein de code plus ou moins dupliqué) donc j'en profiterai lors du passage à GCC.
J'avance bien en ce moment, mais je peux pas te donner de date donc si tu es pressé, il vaut p'être mieux que tu prévois un plan B.
On est toujours ignorant avant de savoir.
Bonjour,
Je déterre ce sujet, car je viens d'utiliser CMSXimg pour la première fois.
Un très bel outil, très polyvalent et très flexible, bravo aoineko !
Une première remarque : -help ne fonctionne pas, sauf erreur de ma part.
1) Je voudrais générer une palette personnalisée mais qui démarre à un certain numéro de couleur. Par exemple, générer une palette de 10 couleurs qui commence au numéro 6. Est-ce que c'est possible ? Je peux aussi décaler toutes les données couleur de 6 avec un petit programme Python, mais je voulais savoir si l'option existe.
2) Serait-ce possible d'avoir une option de sortie au format sc*, qui peut être visualisé par ViewMSX ?
3) Serait-ce possible d'avoir une option -bpc 4 mais qui prend en compte les possibilités de la palette sur v9990 (5 bits pour chaque composante R,G,B) ?
Edité par Metalion Le 15/05/2022 à 13h11
Je déterre ce sujet, car je viens d'utiliser CMSXimg pour la première fois.
Un très bel outil, très polyvalent et très flexible, bravo aoineko !
Une première remarque : -help ne fonctionne pas, sauf erreur de ma part.
1) Je voudrais générer une palette personnalisée mais qui démarre à un certain numéro de couleur. Par exemple, générer une palette de 10 couleurs qui commence au numéro 6. Est-ce que c'est possible ? Je peux aussi décaler toutes les données couleur de 6 avec un petit programme Python, mais je voulais savoir si l'option existe.
2) Serait-ce possible d'avoir une option de sortie au format sc*, qui peut être visualisé par ViewMSX ?
3) Serait-ce possible d'avoir une option -bpc 4 mais qui prend en compte les possibilités de la palette sur v9990 (5 bits pour chaque composante R,G,B) ?
Edité par Metalion Le 15/05/2022 à 13h11
MSX1: Daewoo DPC-200 / Yamaha CX5M
MSX2: Sony HB-F9P
MSXVR
Vidéo: V9990 (GFX-9)
Audio: MSX-Music (FM-PAC) / MSX-Audio (Audiowave) / OPL4 (Monster Sound FM Blaster) / OPNB (Neotron)
aoineko
Membre non connecté
Conseiller Municipal
Metalion :
Une première remarque : -help ne fonctionne pas, sauf erreur de ma part.
Corrigé
Metalion :
Je voudrais générer une palette personnalisée mais qui démarre à un certain numéro de couleur. Par exemple, générer une palette de 10 couleurs qui commence au numéro 6. Est-ce que c'est possible ? Je peux aussi décaler toutes les données couleur de 6 avec un petit programme Python, mais je voulais savoir si l'option existe.
Ce n'est pas possible actuellement.
Mais en fait, c'est déjà le cas car je n'utilise pas l'index 0.
Je vais ajouter cette option.
EDIT: C'est fait.
Tu peux utiliser l'option -paloff pour choisir l'offset de l'index de début de la palette (1 par défaut).
Nouvelle version 1.14.2 dispo sur GitHub.
Pas testé (c'est pas bien)
Metalion :
Serait-ce possible d'avoir une option de sortie au format sc*, qui peut être visualisé par ViewMSX ?
Il suffit d'utiliser l'option -out mon_image.sc5.
Par contre, je ne connais pas les détails de ce format (raw) donc pas sur que ce soit 100% compatible. Notamment pour les screen MSX1 ou je ne sais pas dans quel ordre son placé les tables.
Metalion :
Serait-ce possible d'avoir une option -bpc 4 mais qui prend en compte les possibilités de la palette sur v9990 (5 bits pour chaque composante R,G,B) ?
Tu peux me donner le mapping des bits de chaque couleur dans l'entier 16-bits ? (ou se trouve le bit non utilisé et dans quel ordre sont placées les couleurs)
EDIT: Dans la doc j'ai trouvé un format sur 3 octets ; c'est celui-là ?
On est toujours ignorant avant de savoir.
aoineko :
Corrigé
C'est fait.
C'est fait.
Merci !
aoineko :
Il suffit d'utiliser l'option -out mon_image.sc5
Metalion :
Serait-ce possible d'avoir une option de sortie au format sc*, qui peut être visualisé par ViewMSX ?
Il suffit d'utiliser l'option -out mon_image.sc5
OK, c'est parfait, de toutes façons c'était juste le format sc5 que j'utilise.
aoineko :
Tu peux me donner le mapping des bits de chaque couleur dans l'entier 16-bits ? (ou se trouve le bit non utilisé et dans quel ordre sont placées les couleurs)
EDIT: Dans la doc j'ai trouvé un format sur 3 octets ; c'est celui-là ?
Metalion :
Serait-ce possible d'avoir une option -bpc 4 mais qui prend en compte les possibilités de la palette sur v9990 (5 bits pour chaque composante R,G,B) ?
Tu peux me donner le mapping des bits de chaque couleur dans l'entier 16-bits ? (ou se trouve le bit non utilisé et dans quel ordre sont placées les couleurs)
EDIT: Dans la doc j'ai trouvé un format sur 3 octets ; c'est celui-là ?
Oui, c'est bien un format sur 3 octets.
Code :
R: byte [0-31]
G: byte [0-31]
B: byte [0-31]
Donc relativement facile à transformer à partir d'un bmp 24-bits.
On prend les valeurs de R,G,B et on les transforme linéairement par :
Code :
composante_5bits = composante_8bits * 31/255
MSX1: Daewoo DPC-200 / Yamaha CX5M
MSX2: Sony HB-F9P
MSXVR
Vidéo: V9990 (GFX-9)
Audio: MSX-Music (FM-PAC) / MSX-Audio (Audiowave) / OPL4 (Monster Sound FM Blaster) / OPNB (Neotron)
aoineko :
Ok, j'te fait ça ce soir.
Nickel.
Pour être sûr qu'on se comprenne bien : l'idée c'est d'avoir une conversion type sc5 (donc 2 pixels par octets, avec 4 bits par couleur), mais au lieu de travailler sur la palette restreinte du v9938, d'utiliser celle, étendue, du v9990.
Cela permet de réaliser la conversion de bmp 24-bits pour le mode graphique P1 du v9990.
J'aime bien être précis
MSX1: Daewoo DPC-200 / Yamaha CX5M
MSX2: Sony HB-F9P
MSXVR
Vidéo: V9990 (GFX-9)
Audio: MSX-Music (FM-PAC) / MSX-Audio (Audiowave) / OPL4 (Monster Sound FM Blaster) / OPNB (Neotron)
aoineko
Membre non connecté
Conseiller Municipal
C'est ajouté (version 1.14.4).
L'option --pal24 permet de formater la palette au format 24-bits (3 bytes) pour le V9990.
Par contre, j'ai pas trouvé d'info sur le flag YS du bit#7 du composant Rouge.
J'ai aussi ajouté l'option --bload pour ajouter le header de 7 octets des images au format BLOAD.
L'option --pal24 permet de formater la palette au format 24-bits (3 bytes) pour le V9990.
Par contre, j'ai pas trouvé d'info sur le flag YS du bit#7 du composant Rouge.
J'ai aussi ajouté l'option --bload pour ajouter le header de 7 octets des images au format BLOAD.
On est toujours ignorant avant de savoir.
aoineko :
C'est ajouté (version 1.14.4)
Merci
Je vais faire quelques tests.
aoineko :
Par contre, j'ai pas trouvé d'info sur le flag YS du bit#7 du composant Rouge.
Ce bit sert à déterminer la couleur transparente de la palette. Par défaut, c'est la couleur zéro, mais si on veut définir une autre couleur comme transparente, lors de l'envoi des données palette, on met ce bit à 1 pour la couleur correspondante. Personnellement, je n'ai jamais utilisé cette option.
EDIT : il y a quelque chose qui coince ... (Windows 10, PowerShell)
Code :
Edité par
Metalion
Le 17/05/2022 à 09h00
Le programme «CMSXimg.exe» n’a pas pu s’exécuter: L'exécutable spécifié n'est pas une application valide pour cette plateforme de système d'exploitation.Au caractère Ligne:1 : 1
+ .\cmsximg -help
+ ~~~~~~~~~~~~~~~.
Au caractère Ligne:1 : 1
+ .\cmsximg -help
+ ~~~~~~~~~~~~~~~
+ CategoryInfo : ResourceUnavailable: (:) [], ApplicationFailedException
+ FullyQualifiedErrorId : NativeCommandFailed
MSX1: Daewoo DPC-200 / Yamaha CX5M
MSX2: Sony HB-F9P
MSXVR
Vidéo: V9990 (GFX-9)
Audio: MSX-Music (FM-PAC) / MSX-Audio (Audiowave) / OPL4 (Monster Sound FM Blaster) / OPNB (Neotron)
aoineko
Membre non connecté
Conseiller Municipal
Metalion :
EDIT : il y a quelque chose qui coince ... (Windows 10, PowerShell)
Bizarre. C'est quoi la dernière version qui fonctionnait chez toi ?
Tu peux rééssayer avec la nouvelle version sur GitHub ?
On est toujours ignorant avant de savoir.
ericb59
Membre non connecté
Conseiller Municipal
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie