J’avais parlé il y a quelque temps de création d’images en pixel art pour le ZX Spectrum. Restons dans le même état d’esprit aujourd’hui avec la série d’ordinateurs 8 bit de Thomson, dont les plus célèbres sont le MO5 et le TO8. Pour de nombreux trentenaires français (moi y compris), ces machines représentent le premier contact avec l’informatique, et dans la plupart des cas les séquelles ont été somme toute limitées 🙂
Graphiquement les Thomson ont des caractéristiques techniques comprises entre « correctes » (MO5-MO6) et « franchement bonnes » (TO8-TO9)… pour des machines 8 bit bien entendu ! Plusieurs modes graphiques sont supportés, mais le plus commun est le très classique 320 x 200 en 16 couleurs, avec néanmoins une petite contrainte pour rajouter un peu de piment : chaque bloc de 8 x 1 pixel ne peut comporter que 2 couleurs (gare au color clash autrement). Le MO5 ne supporte qu’une palette fixe aux couleurs pas franchement bien choisies (voir l’image ci-dessous), mais les 16 couleurs sur TO8 et TO9 sont à choisir parmi 4096, soit une gamme aussi étendue que sur Atari STE ! On trouve également sur TO8 un mode graphique 160 x 200 en 16 couleurs, sans aucune contrainte de bloc.
Voilà pour la partie théorique. En pratique, deux solutions sont envisageables pour réaliser des graphismes pour Thomson à l’heure actuelle. On peut soit utiliser un émulateur avec un logiciel natif comme Colorpaint ou Graffiti, mais la prise en main est à des années lumières d’outils sur d’autres machines comme Deluxe Paint, pourtant à peine plus récent. Une solution moins stressante est d’avoir recours au très polyvalent Grafx2 (évoqué ici auparavant), qui tourne sur une tripotée d’OS différents. Voici la marche à suivre :
Création de la palette : pour le MO5, il suffit d’importer la palette d’origine et de se limiter aux 16 couleurs fournies. Pour le TO8, il faut régler la profondeur des couleurs sur 16 (le nombre de niveaux pour chaque composante R, G et B, soit 4096 permutations) avant de choisir ses 16 couleurs. Dans Grafx2, c’est avec RGB Scale que ça se passe, accessible avec un clic droit sur le bouton PAL. Il faut ensuite s’assurer que ces couleurs soient bien compatibles avec la palette du TO8, un peu particulière, et c’est avec TGA2Teo que ça se passe.
Réglage de la grille : elle permettra de garder les contraintes de bloc à l’esprit. Effectuer un clic droit sur le bouton FX, puis un clic droit sur Grid. Utiliser X = 8 et Y = 200, décocher « Snap » et cocher « Show ». Tout est maintenant en place pour commencer à dessiner, mais attention : pas plus de 2 couleurs par bloc de 8 pixels, sinon ça va coincer.
Contrôle du color clash : à moins d’être un robot, il y aura forcément des erreurs ici et là, mais Pulkomandy (qui est également l’auteur de la version actuelle de Grafx2) a eu la gentillesse de créer un script qui permet de détecter automatiquement les problèmes de color clash. Merci à lui puisque ça permet d’économiser pas mal de temps.
Le script affiche les erreurs sur le deuxième calque qui devra avoir été créé auparavant en cliquant sur le bouton « + » juste en dessous de la barre d’outil. Choisir ensuite une couleur 17 bien flashy puisqu’elle servira à afficher les erreurs. Pour lancer le script, effectuer un clic droit sur le bouton « FX encadré » (Brush effects), puis sur le script ThomsonConstraints.lua.
Pour rendre les erreurs plus visibles, on peut aussi avoir recours à une petite rotation de palette avec la manipulation suivante : effectuer un clic droit sur Grad Menu, sélectionner les couleurs 17 et 18, puis choisir une vitesse assez élevée, comme 50. Lancer la rotation de palette avec Ctrl+` ou ² (la touche au dessus de tabulation, à gauche du 1).
Voici mes premières réalisations pour Thomson. La première image utilise la palette MO5 standard, la deuxième bénéficie quant à elle d’une palette libre grâce à la puissance du TO8. La version MO5 est utilisée dans une démo Thomson visible avec l’émulateur DCMOTO. Si vous souhaitez en savoir plus sur la demoscene Thomson, il est relativement rapide d’avoir une vue d’ensemble du phénomène, puisque Pouët.net ne recense que 28 productions.
Mise à jour du 23 mai 2014 :
Ci-dessous un exemple d’une très bonne image Thomson de Johan Elebrink qui prend en compte les contraintes de blocs de manière élégante, puisqu’on ne les remarque pas du tout ! Sur la deuxième image j’ai surimposé des colonnes de 8 pixels qui permettent de mieux apprécier l’excellent boulot de l’auteur puisqu’il n’y jamais plus de 2 couleurs dans un bloc de 8×1 pixel.
2 avril 2013 à 13:06
Très intéressant!
I did not know you could get that kind of help with checking the color constraints while drawing. That could be a lot of help when working with other platforms too.
Keep up the good work!
/Dalton
2 avril 2013 à 22:27
Hi Dalton! Indeed that’s super helpful and script support is a massive plus for Grafx2. I remember it was quite tricky to check for blocks mistakes when I did those pictures for your GBC demo. I’m sure there could be a script for that now and it would speed up the process a lot.
15 juillet 2013 à 11:44
très intéressant ! je viens de lancer une idée de co_prod de graf disk thomson to8d
et je serai ravi que tu participes 🙂 a voir sur demoscene.fr. amitiés yogib33r
15 juillet 2013 à 14:07
Content que l’article soit utile 🙂
Je suis vraiment intéressé par le projet sur TO8D, très bonne initiative en tout cas !
28 juillet 2013 à 08:44
et bien cool ! gilles sera au code , on est 5/6 au graf pour l’instant, et mind body alpha au beepola. ta venue ne sera que la bienvenue, sachant qu’alors on pourra avoir une diversité bien sympa pour l’ensemble ! a très bientot alors (stetff qui va gerer cette semaine son interface CC90 entre le teo8 et son pc win7)
ha oui h2o sera a l’ascii art !
bref passion
30 juillet 2013 à 21:16
Cool ! Qu’est ce que vous avez en tête niveau deadline ?
31 juillet 2013 à 22:10
coucou ! alors dans deux trois mois, le temps de recuperer les grafs et de tout donner a gilles. si tu as vu sur demoscene.fr, le sujet est celui de l’auto portrait, par la symbolique d’un objet, une couleur, un monstre personnel, une representation burlesque bref le territoire est large ^^ j’espere te croiser a la alchimie x qui aura lieu a tain l’hermitage cette année encore (tous les deux ans) et alors je viendrai avec mon to8d pour lancer la chose sur grand ecran. a très vite alors. steff le yogib33r
Pingback: Planète Thomson, le retour du pixel art pour TO8 ! | 16 Couleurs
7 juin 2015 à 23:55
Incroyable
je ne pensais qu’une qualité pareille était possible avec des Ordi Thomson…O_o
Alors au final votre projet/contribution à donné quelque chose ?
8 juin 2015 à 21:42
Les Thomson TO8 et TO9 avaient de très bonnes capacités en graphisme pour des 8 bit (enfin tant que c’était des images fixes, pour l’animation c’était moins impressionnant 😉 ) mais peu de jeux en ont vraiment tiré parti. Marché trop fragmenté entre différentes machines Thomson plus ou moins compatibles entre elles et beaucoup de développeurs qui privilégiaient la quantité à la qualité.
Les images ont été utilisées pour un slideshow Thomson. Une version améliorée avec du son était prévue mais je ne sais pas trop où ça en est. Il faut que je demande à Yogibeer 🙂
8 juin 2015 à 21:58
coucou exocet je t’ai laissé réponde c’est ton blog ^^ oui pour le son c’est temporisé. demether a des blemes de santé et on verra ca plus tard. bref ca viendra un jour mais pas tout de suite
8 juin 2015 à 22:58
Quelle réactivité ! 😉 Désolé d’apprendre pour Demether, j’espère que ce n’est rien de sérieux et que ça va s’arranger rapidement.
4 décembre 2015 à 16:14
bonjour, j’ai un To8 en état de fonctionnement. J’aimerai savoir combien il est possible de le vendre.
4 décembre 2015 à 21:18
Bonjour, le prix dépend toujours de l’état de la machine et des accessoires inclus mais d’après ce que j’ai pu voir sur des sites spécialisés (http://www.mo5.com/musee/cotes/rarete.php et http://gamopat.com/page-146232.html ), la côte d’un TO8 semble osciller entre une vingtaine et une trentaine d’euros.
Pingback: 8 BIT 4 LIFE (pixel art Thomson) | 16 Couleurs
Pingback: Forever 2017 : 8 bits et pas un de plus | 16 Couleurs
Pingback: Alientis, pixel art pour Thomson TO8 | 16 Couleurs
Pingback: Archéologie infographique : le graphisme pour la NES | 16 Couleurs
11 novembre 2018 à 13:56
Salut exocet, j’aimerais ajouter la possibilité de charger/sauvegarder directement les images Thomson à GrafX2
Tu utilises quoi pour faire les conversions. seulement TGA2TEO ?
11 novembre 2018 à 15:26
Salut Nanard ! Ça serait bien pratique, je e supporte totalement dans ce projet 🙂 J’utilise TGA2TEO qui permet de faire la conversion de manière visuelle mais pour Liftoff, Prehisto m’avait fourni un petit programme qui s’assurait que la palette de PNG était parfaitement calibrée pour le Thomson. Je peux voir avec lui s’il accepte de le partager. Tu comptes supporter les modes 160×200 (où il s’agit surtout de restreindre la palette de 4096 couleurs aux teintes correctes) et 320×200 (où il faut gérer les contraintes de blocs en plus) ?
12 novembre 2018 à 22:13
bah j’essaye de supporter le « 40col » 320×200 avec contraintes, mais aussi le bm16 (160×200), bm4 (320×200 4couleurs sans contraintes) et le 80col (640×200)
Pour l’instant j’ai réussi à lire le format sorti par TGA2TEO, et je lis les .MAP aussi (avec extension TO-SNAP ou non !!)
J’ai extrait toutes les images de la D7 du slideshow « Auto portait » et je les lis.
Les .MAP c’est plus pour ouvrir les images directement sur un TO8 depuis le basic.
Me reste à faire l’écriture. Le format « TGA2TEO » a pour principal défaut d’être sur deux fichiers, ce qui est ultra chiant 😦 En plus l’info du mode video n’est pas stocké.
Mais bon je vais peut être pas me faire chier à coder l’écriture des .MAP tout de suite.
Pulkomandy avait fait un truc custom dans le format binaire Thomson, tout dans un seul fichier. Je vais peut être me laisser tenter.
Toi de ton côté, tu files des PNG aux codeurs qui se démerdent après ? 😉
Après, on va voir comment bien configurer la palette automatiquement.
14 novembre 2018 à 10:45
une préversion est dispo ici :
https://gitlab.com/miniupnp/grafX2/-/jobs/120318164/artifacts/download
Ci dessous le code basic 512 pour afficher les .BIN produit (mettre le bon nom de fichier en ligne 40)
10 REM CHARGEMENT D’UNE IMAGE GrafX2
20 REM (C) THOMAS BERNARD
30 LOCATE,,0 ‘DESACTIVE CURSEUR
40 LOADM »POISCTO8″
50 REM PALETTE EN VRAM APRES L’IMAGE
60 FOR I=0 TO 15
70 BGR=PEEK(&H4000+8000+I*2)*256+PEEK(&H4000+8000+I*2+1)
80 PALETTE I,BGR
90 NEXT I
100 IF INKEY$= » » GOTO 100
110 LOCATE,,1 ‘ACTIVE CURSEUR
120 REM AFFICHAGE DU COMMENTAIRE
130 FOR I=0 TO 31
140 C=PEEK(&H4000+8032+I)
150 IF C>=32 AND C<127 THEN PRINT CHR$(C);
160 NEXT I
170 PRINT
14 novembre 2018 à 21:39
Super, merci. Je teste ça dès que possible, ce week-end probablement. C’est vraiment nickel si ça supporte les différents modes graphiques. Ça supporte la palette également ? C’est ça le plus galère généralement.
Et oui, généralement je fournis un PNG ou les fichiers TGA2TEO 🙂
14 novembre 2018 à 21:41
c’est la palette le soucis là. Donc je suis preneur si tu as des docs sur les valeurs à utiliser.
Il y a des incohérences entre ce que j’ai trouvé dans l’emulateur TEO et ce que m’a filé pulkomandy
16 novembre 2018 à 08:55
Je viens de t’envoyer un email sur ton adresse miniupnp.