Convertisseur Image PNG2MOTO

Couvre tous les domaines de l'émulation logicielle ou de la virtualisation ainsi que les discussions sur les divers outils associés.

Modérateurs : Papy.G, fneck, Carl

Répondre
Avatar de l’utilisateur
Orion_
Messages : 176
Inscription : 07 août 2014 16:29
Localisation : Perpignan
Contact :

Convertisseur Image PNG2MOTO

Message par Orion_ »

Bonjour,
Je suis en train de réaliser un petit utilitaire de conversion d'image PNG vers les formats vidéo étendu du MO6 (et donc TO8)
L'outil supporte les mode Monochrome 640x200, 4 couleurs (chunky) 320x200, et 16 couleurs 160x200

Cependant, j'ai un petit soucis concernant les couleurs.
N'ayant pas encore reçu mon MO6 je ne peu pas tester sur la vraie machine, mais je fait pour l'instant confiance à l'excellent émulateur DCMOTO.
et il se trouve que les couleurs rendu par l'émulateur sont vraiment différente de mon image: (a gauche l'originale, a droite dcmoto)
Image
En essayant d'afficher un dégradé, je me suis aperçu que la première nuance de bleu commençait a 96/255 au lieux de 16/255.
Les images ont donc un rendu très très clair, je suppose que c'est aussi le cas sur la vraie machine ?

A votre avis, faut-il que j'ajoute une option d'ajustement automatique des couleurs de l'image pour que cela corresponde au mieux une fois l'image convertie ?
Auriez vous un algo ou une table concernant l'ajustement des couleurs ?

Part ailleurs, je me remet un peu à la programmation sur MO5/6, j'avais déjà commencer il y a presque 9 ans sur MO5, et je constate qu'il est toujours délicat de trouver des informations technique sur ces machines, surtout le MO6, la majorité des productions étant apparemment très orienté TO8.
Chercher dans les manuels technique de l'époque n'est pas très évident, et j'ai fini par trouvé ce que je cherchait, à savoir une doc détaillée de la mémoire: http://pulko.mandy.pagesperso-orange.fr ... mmap.shtml
par contre ça ne concerne que le MO5, et pas le MO6 (ou a défaut le TO8 qui a le même gate array)
Cela serait pas mal d'avoir une doc pour le MO6, j'essayerais d'en faire une si j'ai le temps, mais j'ai pour l'instant une connaissance très limité du sujet. Il y a plein de chose qui serait sympa a voir comme exemple, comment programmer le timer, comment jouer du son, comment changer la palette, charger une image, accéder à la k7/disquette/sd, etc... ça pourrais motiver des gens a porter leurs jeux sur MO/TO je pense :)
Programmation rétro ! Orion_'s website
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: Convertisseur Image PNG2MOTO

Message par Daniel »

Pour obtenir les bonnes couleurs sur Thomson, il faut tenir compte des caractéristiques du générateur de palette des ordinateurs de dernière génération (MO6, TO8...). En gros ça revient à corriger le coefficient gamma. Je n'ai plus les formules en tête mais on doit trouver facilement sur internet.

Dans dcmoto j'utilise cette table extraite de la datasheet du circuit EF9369, mais il y a aussi un paramètre de réglage du gamma dans les options, permettant une légère adaptation en fonction des caractéristiques du moniteur du PC.

Code : Tout sélectionner

 //definition des intensites pour correction gamma de la datasheet EF9369
 int gamma4096[16]={0,38,48,56,62,67,72,76,80,83,86,89,92,95,98,100};
La documentation technique du MO6 est très insuffisante, nous avons déjà évoqué le problème dans un autre fil de discussion. Les documents les plus intéressants sont les brochures Cofadel du MO5NR et du MO6. Il n'y a rien d'autre, pour en savoir plus il faut désassembler la ROM.

Evidemment il serait bon d'avoir un ouvrage de référence, mais ce n'est pas facile. Pulko-mandy a eu le courage de le faire pour le MO5, mais au départ il a fait pas mal d'erreurs, heureusement FoolDupleX est passé derrière pour en corriger. Il en reste certainement, et quand j'ai besoin d'une information sûre je vérifie toujours dans les schémas ou dans la rom.

On peut essayer pour le MO6, mais c'est encore plus compliqué. Sauf pour programmer le timer, là c'est très facile car le MO6 n'a pas de timer :wink:
Daniel
L'obstacle augmente mon ardeur.
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: Convertisseur Image PNG2MOTO

Message par __sam__ »

Orion_ a écrit :En essayant d'afficher un dégradé, je me suis aperçu que la première nuance de bleu commençait a 96/255 au lieux de 16/255.
Les images ont donc un rendu très très clair, je suppose que c'est aussi le cas sur la vraie machine ?
(...)
Auriez vous un algo ou une table concernant l'ajustement des couleurs ?
Oui, c'est le cas sur une vraie machine. La palette des thomson est largement non-linéaire. Typiquement les couleurs sombres sont difficiles à obtenir sur thomson, et en revanche les couleurs claires sont toutes très voisines. Il faut en tenir compte pour la conversion d'image. Cf le fil de discussion suivant dans lequel j'expose mes productions: http://www.logicielsmoto.com/phpBB/view ... ?f=3&t=383 Quand on arrive à maitriser le gamma thomson, on arrive a faire de très belles images 160x200x16 pleine de finesses dans les dégradés et les contrastes
hdr-31.gif
hdr-31.gif (13.47 Kio) Consulté 6792 fois
hdr-76.gif
hdr-76.gif (15.73 Kio) Consulté 6792 fois
Chine_millenaire-dem43.gif
Chine_millenaire-dem43.gif (12.35 Kio) Consulté 6792 fois
et même 320x200x4 ou 320x200x16, voir la série de D7 "TruC" de PULS: http://www.logicielsmoto.com/phpBB/viewtopic.php?t=395

J'avais posté il y a quelque temps mon algo de conversion, mais je ne retrouve plus le lien. Du coup je le reposte: http://pastebin.com/cwF8GkZs

Le code est un peu (très) brouillon ("work in progress" ;) ), mais la partie qui peut t'intéresser est vers la fin du source au niveau de la routine to9_pal. C'est une adaptation de l'oct-tree qui produit de bons résultats sur thomson. Ah oui j'oubliais, ce qui est important dans la conversion est surtout de convertir l'image d'origine dans une intensité linéaire (http://www.4p8.com/eric.brasseur/gamma.html), de faire le traitement (zoom, réduction de couleur) dans ce gamma linéaire, puis à l'arrivée de rebasculler dans la palette thomson.

(il faudrait que je regarde à coler cet algo dans un outil dédié un jour.. le python c'est bien pour la mise au point, mais pour la diffusion, c'est moyen).
constate qu'il est toujours délicat de trouver des informations technique sur ces machines, surtout le MO6, la majorité des productions étant apparemment très orienté TO8.
Chercher dans les manuels technique de l'époque n'est pas très évident, et j'ai fini par trouvé ce que je cherchait, à savoir une doc détaillée de la mémoire: http://pulko.mandy.pagesperso-orange.fr ... mmap.shtml
par contre ça ne concerne que le MO5, et pas le MO6 (ou a défaut le TO8 qui a le même gate array)
Cela serait pas mal d'avoir une doc pour le MO6, j'essayerais d'en faire une si j'ai le temps, mais j'ai pour l'instant une connaissance très limité du sujet. Il y a plein de chose qui serait sympa a voir comme exemple, comment programmer le timer, comment jouer du son, comment changer la palette, charger une image, accéder à la k7/disquette/sd, etc... ça pourrais motiver des gens a porter leurs jeux sur MO/TO je pense :)
Le MO6 est la machine la moins documentée. Il n'y a pas eu de bouquin "manuel technique du MO6" du coup pas de référence officielle pour les points d'entrée en ROM. Daniel avec publié ici (http://forum.system-cfg.com/viewtopic.p ... MO6#p87896) sa propre table des points d'entrée en ROM.
Le TO8 en revanche est largement documenté et donc plus facile d'accès. C'est pas pour rien qu'il y a plus de démos TO8 que MO6 alors que les capacités techniques sont très voisines.
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Avatar de l’utilisateur
Orion_
Messages : 176
Inscription : 07 août 2014 16:29
Localisation : Perpignan
Contact :

Re: Convertisseur Image PNG2MOTO

Message par Orion_ »

pourquoi ne pas faire une page rassemblant tout ces outils ?
la le soucis c'est que c'est un script perl donc on est obliger d'installer perl etc...
y'a pas un compilateur perl pour windows ?
Programmation rétro ! Orion_'s website
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: Convertisseur Image PNG2MOTO

Message par __sam__ »

Le mieux serait de porter l'algo dans un outil qui fait déja l'édition. Au départ j'ai fait un afficheur de fichier MAP pour XnView (http://www.logicielsmoto.com/phpBB/view ... a8d7#p3616) auquel je voulais ajouter des possibilités de conversion, mais faute de motivation, de documentation (XnView a changé d'API et je suis largué), et de demandes tierces, j'en suis resté aux scripts perl qui vont très bien pour mon usage. En effet l'avantage des scripts et que j'en suis à la N-ième version de l'algo qui parfois (souvent) est parti dans une impasse, mais parfois s'est amélioré considérablement. En C il n'aurait pas été possible de faire autant de tentatives. J'aurais laissé tomber avant la fin.

A présent ca fait depuis le début d'année que je n'ai plus touché aux algos. Je suppose que j'ai atteint le point stable du compromis qualité_du_résultat/complexité_du_code (je suis aussi parti du coté de la musique sur thomson entre temps). Il serait peut-être temps de pérenniser tout ca dans un outil en effet. GrafX2 ferait peut-être un bon candidat. J'ai vu qu'exocet l'utilisait pour faire des dessins sur thomson: http://16couleurs.wordpress.com/2013/11 ... -pour-to8/. Dans l'idéal j'aimerais trouver un outil permettant de dessiner pour les modes thomson avec contraintes. Je ne sais pas si GrafX2 permet ca, de même que je ne sais pas s'il est possible d'y ajouter des plugins pour lui ajouter des importeurs de fichiers.

Sinon au niveau algo j'ai dans les scripts
  • Un algo de réduction de couleur tenant compte de la non linéarité thomson. Utilisable pour les modes ayant 16couls (320x200 avec contraintes et 160x200 sans contraintes).
  • Un algo de dither prenant en compte les contraintes de deux couleurs par groupe de 8pixels. Utilisable avec la palette de base (8/16 coul prédéfinie), mais aussi utilisable avec la palette obtenue avec l'algo ci-dessus. Cette dernière combinaison donne de très bons résultats laissant croire que la contrainte de proximité n'est pas si gênante que ca en pratique pour la conversion d'image (Le slideshow Skyrim a été obtenu ainsi).
  • Un autre algo qui donne des images 320x200 en 4 couleurs bien plus jolies que ce que j'attendais (voir plus bas ou http://www.logicielsmoto.com/phpBB/view ... 4021#p4021 pour des exemples). J'ai mis ca au point à l'occasion du slideshow de 6502man pour HRX.
  • du dither à poids variable d'Ostromoukhov (http://www.iro.umontreal.ca/~ostrom/pub ... oeffED.pdf) adapté à des pixels non carrés (i.e. mode 160x200, voir images du post au dessus)
Pièces jointes
56227-photo-crop-p88810af1e1423b1332c70afb1bffdbf8-borderlands-2-mechromancer-pack.gif
56227-photo-crop-p88810af1e1423b1332c70afb1bffdbf8-borderlands-2-mechromancer-pack.gif (11.99 Kio) Consulté 6766 fois
The-interesting-Borderlands-2.gif
The-interesting-Borderlands-2.gif (10.79 Kio) Consulté 6766 fois
t_borderlands2_dlc_kriegmeatbicyclebuiltfor2_trailer_em_5-31_3am.gif
t_borderlands2_dlc_kriegmeatbicyclebuiltfor2_trailer_em_5-31_3am.gif (12.48 Kio) Consulté 6766 fois
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Avatar de l’utilisateur
Orion_
Messages : 176
Inscription : 07 août 2014 16:29
Localisation : Perpignan
Contact :

Re: Convertisseur Image PNG2MOTO

Message par Orion_ »

les résultats sont impressionnant !
mais je ne suis pas très fan du dithering a outrance :/

sinon, comme je suis très très mauvais en algo, j'ai réussi a me débrouiller avec d'autres outils pour faire les opérations intermédiaire.
comme je travail très souvent sur différente machine rétro, j'ai fini par me prendre un plugin de traitement d'image très efficace: http://www.ximagic.com/q_index.html
et je viens de trouver une fonction dans ce plugin qui permet de charger une palette de 4096 couleurs !!
du coup j'ai généré un fichier palette contenant toute les "vraies" couleur du thomson (grâce a la table de daniel)
et je fait un prétraitement de mon image pour sélectionner les couleurs de cette palette, avant ensuite de réduire en 16 couleurs
ça donne un meilleurs résultat que précédemment (gauche avant, droite après)
Image

enfin, avec des couleurs aussi claire, on est pas aidé :D
je serais curieux de voir ce que ça donne avec ton script, si tu peu essayer avec cette image: http://www.toolito.com/wp-content/uploa ... ande-3.jpg
Programmation rétro ! Orion_'s website
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: Convertisseur Image PNG2MOTO

Message par __sam__ »

L'image thomson a l'air un poil trop clair ou contient un poil trop de vert. Je pense que pour la recherche de couleur la plus proche l'algo est biaisé par la gamma non linéaire. Typiquement la couleur (C1 + C2)/2 n'est pas à mi teinte de C1 et C2, mais plus proche de C1 ou C2 suivant la valeur. Sur une échelle linéaire, le gris 50% (== l'intensité vue de loin d'un damier noir=0/blanc=255) correspond à la palette 127 (sur 255) soit 1/2(noir+blanc). S'il y a du gamma, le gris 50% est proche de 183 (sur 255) lequel n'est pas 1/2(blanc + noir). C'est pour ca je pense qu'il faut retirer le gamma de l'image d'origine et de la table de correspondance de daniel, puis faire le traitement de couleur le plus proche, et enfin remettre le gamma. L'intéret est que pendant le traitement principal, l'échelle des couleur est linéaire, et (C1+C2)/2 est exactement la teinte médiane entre C1 et C2. Il n'y a plus de biais.

Retirer/ajouter le gamma peut se faire facilement en 1ère approximation avec un outil en élevant les composantes RGB à la puissance 0.45 ou 2.22.

Mes algo donnent les images suivantes (4/16couls)
grotte-glace-skaftafell-glacier-islande-3_4coul.gif
grotte-glace-skaftafell-glacier-islande-3_4coul.gif (11.39 Kio) Consulté 6745 fois
grotte-glace-skaftafell-glacier-islande-3 _16coul.gif
grotte-glace-skaftafell-glacier-islande-3 _16coul.gif (15.49 Kio) Consulté 6745 fois
à partir de cette image pas tout à fait en 16/10e:
grotte.png
grotte.png (177.34 Kio) Consulté 6733 fois
Dernière modification par __sam__ le 13 août 2014 15:30, modifié 5 fois.
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Avatar de l’utilisateur
Orion_
Messages : 176
Inscription : 07 août 2014 16:29
Localisation : Perpignan
Contact :

Re: Convertisseur Image PNG2MOTO

Message par Orion_ »

ah oui c'est carrément mieux, ton algo est vraiment balaise :D
bon va falloir que je trouve un moyen de faire tourner perl sous windows moi...
Programmation rétro ! Orion_'s website
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: Convertisseur Image PNG2MOTO

Message par __sam__ »

Orion_ a écrit :ah oui c'est carrément mieux, ton algo est vraiment balaise :D
bon va falloir que je trouve un moyen de faire tourner perl sous windows moi...
oh mieux, tu sais ca dépend des images.. Il est paufiné à chaque fois que je tombe sur une série d'image qui ne rend pas bien. J'ai un corpus de test de plusieurs milliers d'images réalistes.

Tu devrais commencer par retirer le gamma de l'image d'origine (pow 0.45), puis trouver les couls thomson (elles aussi à la puissance 0.45) les plus proche et faire pow 2.22 . Le résultat pourrait être pas mal.
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Avatar de l’utilisateur
Orion_
Messages : 176
Inscription : 07 août 2014 16:29
Localisation : Perpignan
Contact :

Re: Convertisseur Image PNG2MOTO

Message par Orion_ »

non mais j'ai fait cette conversion avec des outils intermédiaire qui ne sont pas de moi.
j'ai déja essayer de programmer des algos de réduction de couleur, mais je ne suis pas bon en algo ni en math, alors je suis pas près de faire un script comme le tiens.
Programmation rétro ! Orion_'s website
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: Convertisseur Image PNG2MOTO

Message par __sam__ »

Pour perl, moi j'ai simplement installé cygwin en prenant soin de cocher perlmagick. La résolution de dépendance devrait installer perl + imagemagick et la glue entre les deux (c'est tout ce qu'il faut pour le script). Ensuite pour lancer les scripts c'est toujours pareil:

Code : Tout sélectionner

perl <nom-du-script>.pl [<options>] fichiers...
Comme en général je mets les fichiers résultats dans un dossier "rgb" du répertoire courant (une vieille habitude), il est préférable d'avoir un dossier vide nommé "rgb" dans le dossier d'où on lance le script (sinon on ne verra pas le résultat).

Sinon j'ai appris que GrafX2 est extensible par scripts lua. Si j'ai un peu de temps devant moi ca serait bien que j'adapte mon algo de réduction de couleur à cet outil.
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Avatar de l’utilisateur
Orion_
Messages : 176
Inscription : 07 août 2014 16:29
Localisation : Perpignan
Contact :

Re: Convertisseur Image PNG2MOTO

Message par Orion_ »

j'ai installer perl avec le module image magick sous cygwin et résultat, au lancement du script il me dit qu'il ne trouve pas:
Can't locate Image/Magick.pm
:?
Programmation rétro ! Orion_'s website
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: Convertisseur Image PNG2MOTO

Message par __sam__ »

C'est la preuve qu'il faut que je largue perlmagick. Cygwin = plus ca avance et moins ca va. C'était mieux avant. Leur gestion des dépendances est catastrophique :?

Est-ce que ca te fait ce genre de trucs?

Code : Tout sélectionner

#  perl -e "use Image::Magick;"
>>/usr/lib/perl5/vendor_perl/5.10/i686-cygwin/auto/Image/Magick/Magick.dll
Can't load '/usr/lib/perl5/vendor_perl/5.10/i686-cygwin/auto/Image/Magick/Magick.dll' for module Image::Magick: No such file or directory at /usr/lib/perl5/5.10/i686-cygwin/DynaLoader.pm line 201.
 at -e line 1
Compilation failed in require at -e line 1.
BEGIN failed--compilation aborted at -e line 1.
Out of memory during request for 4088 bytes, total sbrk() is 401901568 bytes!
Segmentation fault (core dumped)
J'ai reinstallé perl-image-magick en ajoutant libXext6 (1.3.2-1).
cygwin.png
cygwin.png (101.95 Kio) Consulté 6727 fois
Il m'a installé un max de trucs en plus
cygwin2.png
cygwin2.png (85.81 Kio) Consulté 6727 fois
Et là miraaacle ==> CA MARCHE:

Code : Tout sélectionner

$ perl -e 'use Image::magick;'
$ mkdir rgb
$ MODE=0 perl img_ostro.pl 'C:\Users\Sam\Desktop\grotte.png'
1/1 C:\Users\Sam\Desktop\grotte.png => rgb/grotte.MAP
bst_lvl: 1.34375 32(8367)->43 13015<13306.1
ncols=15
+00+00+00
(28  : d=3 p=19   s=7 n=14504    z=14.56 rgb=06f:002,153,254)
(3   : d=3 p=2    s=5 n=210156   z=8.02  rgb=001:000,011,050)
(108 : d=2 p=15   s=5 n=13757    z=15.79 rgb=03d:000,077,243)
(2   : d=2 p=1    s=4 n=66784    z=13.17 rgb=013:003,025,079)
(15  : d=1 p=0    s=2 n=10357    z=36.97 rgb=14a:035,105,211)
(22  : d=1 p=0    s=3 n=21007    z=35.82 rgb=0bf:007,218,254)
(1   : d=1 p=0    s=3 n=128460   z=31.69 rgb=015:003,040,129)
(174 : d=2 p=15   s=6 n=3222     z=15.21 rgb=47f:107,155,253)
(49  : d=3 p=19   s=5 n=5375     z=16.64 rgb=04d:004,106,239)
(0   : d=0 p=-1   s=1 n=5969     z=28.17 rgb=aef:214,250,254)
(30  : d=3 p=19   s=5 n=24004    z=13.88 rgb=04f:001,116,254)
(19  : d=2 p=15   s=5 n=7152     z=21.47 rgb=35e:075,134,247)
(16  : d=2 p=15   s=7 n=43489    z=25.29 rgb=029:003,069,201)
(65  : d=2 p=22   s=4 n=970      z=27.39 rgb=6ef:140,245,255)
(140 : d=2 p=22   s=6 n=4778     z=23.62 rgb=69f:136,196,254)
$ ls rgb
grotte.MAP  grotte.MAP.png  toto4.gif  totof.png
Résultat: l'image en 320x200 avec contraintes de couleur:
grotte.MAP.png
grotte.MAP.png (16.9 Kio) Consulté 6727 fois
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Avatar de l’utilisateur
Orion_
Messages : 176
Inscription : 07 août 2014 16:29
Localisation : Perpignan
Contact :

Re: Convertisseur Image PNG2MOTO

Message par Orion_ »

c'est pour ça que je déteste toute ce qui a une dépendance, c'est pareil pour .NET ... obliger d'installer 200Mo de truc pour utiliser un pauvre programme de 5ko ....
Programmation rétro ! Orion_'s website
Avatar de l’utilisateur
6502man
Messages : 12286
Inscription : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: Convertisseur Image PNG2MOTO

Message par 6502man »

Intéressant comme projet :D

Concernant Cygwin personnellement je l'ai utilisé pour le développement homebrew sur XBOX mais c'est une vraie usine à gaz, et tous ca parceque certains outils ne sont conçus que pour Linux :twisted:

Pour les softs .NET c'était vrai avant qu'il fallait installer tout un tas de trucs mais depuis W7 .NET est inclus dans le système et c'est encore plus intégré dans Windows 8, je suis sur que Microsoft va abandonner un jour ou l'autre WinApi :roll: ....
Franchement quand tu programme en .NET C/C++/C#/VB ... il n'y a pas une grande différence avec le WinApi sauf que tu utilise un moteur différent pour les executables mais ca reviens exactement au même que WinApi tu est dépendant du système :wink:
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.
Répondre