Le saviez-vous ?
Les zip de planetemu (et les autres en général) ne sont pas optimisés
Il y a quelques temps je me suis bricolé un optimiseur de ZIP à base de
KZIP.
Mon outil dispose d'un GUI plutôt facile (du moins j'espère) : sélection de répertoire, parcours recursif des folders, sauvegarde de log...
Pour l'exemple je l'ai fait tourner sur 5 zip issus de planet emu dans le répertoire :
sachant que sf2 est la rom mame de world warrior.
Voici le résultat :
Code:
***25/05/2012 12:34:25, traitement du dossier <<C:\roms planet>>***
5 fichiers à optimiser, taille globale : 4799203 octets
Fichier <<Barbarian - The Ultimate Warrior (1987)(Palace)[cr Pulsar].zip>>, taille initiale : 387687 octets
Décompression ok
Recompression ok
Nouvelle taille du fichier : 374251 octets, gain de 4%.
Fichier <<Sonic The Hedgehog (W) (REV01) [!].zip>>, taille initiale : 387774 octets
Décompression ok
Recompression ok
Nouvelle taille du fichier : 379339 octets, gain de 3%.
Fichier <<Super Mario World (E) (V1.1) [!].zip>>, taille initiale : 352486 octets
Décompression ok
Recompression ok
Nouvelle taille du fichier : 343583 octets, gain de 3%.
Fichier <<1943 (1987)(Probe Software).zip>>, taille initiale : 119459 octets
Décompression ok
Recompression ok
Nouvelle taille du fichier : 114366 octets, gain de 5%.
Fichier <<sf2.zip>>, taille initiale : 3551797 octets
Décompression ok
Recompression ok
Nouvelle taille du fichier : 3451116 octets, gain de 3%.
***25/05/2012 12:37:18, fin du traitement, taille finale : 4662655 octets, gain de 3%.***
C'est long (3 minutes pour 5 Mo, voir ci-dessus) mais on gagne 3%.
Je précise que les zip générés restent compatibles avec tout : Windows, Winzip, StZip, WinCe, Emulateurs(Mame, Steem, Hatari, WinUae, snes9x, fusion...), 7-zip, etc. C'est du "deflate" pour les connaisseurs.
Alors, si comme moi vous avez un demi million de roms et que vous vous souciez de l'espace disque, demandez le moi je le mettrai en ligne !
En plus, sur d'autres ZIP (car ceux de planet sont pas si mauvais) on peut gagner beaucoup (ci-dessous un exemple à 34% en 9 secondes):
C'est fait avec du .net et j'ai même fait un MSI d'installation. Ca tourne sur windows uniquement (peut être avec Wine et Mono mais je ne saurais l'affirmer, je pense même que non). Ce n'est pas multithread et donc ne bouffe qu'un seul core. Vous pouvez donc le laisser tourner en fond et faire autre chose pendant que ça optimise....