117Fermer119
RajahLe 16/11/2008 à 19:13
merci smile

Bon, j'ai réussi pour la décompression avec l'algo INFLATE (le pendent du DEFLATE).

Un truc quand vous codez en C : mettez des parenthèses partout dans vos macros. Parce que un calloc(1 << nombre_de_bits, sizeof(structure)) peut devenir facilement un malloc(1 << nombre_de_bits * sizeof(structure)). La taille demandée explose, d'où erreur mémoire...

Reste plus qu'à faire un panel de tests, peut-être inclure des sécurités, rendre le bouzin "convivial", mettre un fichier de log (comme dans le Litchi) pour éviter d'avoir des suites d'alertes bloquantes en cas d'erreur, simplifier la LDG pour n'avoir que les fonctions pertinentes (zlib.ldg fait 108 Ko, un deflate.ldg devrait être plus léger), etc...

Le truc, c'est que ça demande pas trop de RAM : mes buffers in et out sont 32Ko chacun. L'avantage est que le tout pourrait tourner dans 1 Mo, mais ça sollicite beaucoup le disque (et donc interdiction de killer le KK pendant qu'il bosse). Je dois donc s'il y a de la RAM suffisante, essayer d'en utiliser autant que possible pour 'soulager' les disques.

Version courant Novembre, si je craque pas pour dépression nerveuse. Je devrais être fou de joie, mais non : plus aucune réserve de modjo.

Dire qu'on aurait dû avoir un STZIP next gen depuis longtemps, surtout quand on peut porter des trucs d'ailleurs... C'est une tafiole qui code en GFA Basic qui doit se cotiner le taf.

Sinon, n'essayez même pas de compiler la zlib avec l'option -mshort dans gcc : ya une couille quelque part (zéroification d'une zone mémoire) qui fait qu'il préfère les int sur 32 bits. Dommage, mais bon, tant que ça marche sur mon MegaST4, on va pas s'offusquer.