Hacker une carte mémoire pour activer une fonction chez Olympus

Dans les années nonante et au début des années 2000, il y avait pas mal de formats de cartes mémoire. Et Olympus avait mis une sorte de DRM un peu bizarre dans ses appareils photo : si vous n’aviez pas une carte mémoire de la marque, certaines fonctions étaient désactivées.

Les appareils (comme le Camedia C-220 Zoom) ne permettent en effet l’enregistrement de photos panoramiques que si vous avez une carte SmartMedia Olympus. Et dans mon cas, je n’ai que des cartes d’autres fabricants. Les cartes SmartMedia, il faut le savoir, sont un peu particulières : alors que la majorité des cartes contiennent un contrôleur et de la mémoire, les SmartMedia (et les xD Picture Card) ne contiennent que de la mémoire. Techniquement, il s’agit essentiellement d’une puce de mémoire flash… et c’est tout. Le contrôleur est dans le lecteur ou l’appareil photo.

Pas d’option Panorama


Il faut une carte Olympus


L’appareil

Pour revenir au DRM, donc, il existe une solution : un logiciel qui va formater la carte et ajouter dans les informations que la carte est une Olympus compatible. C’est possible car la carte est une puce de mémoire flash, et que les données sont donc sur la mémoire elle-même, accessible, et pas dans une zone gérée par un contrôleur. Cette zone s’appelle le CIS et les lecteurs peuvent l’écrire. Vu comme ça, ça paraît trivial, mais ce n’est pas si simple. En fait, le logiciel est la version modifiée d’un pilote pour certains lecteurs de cartes SmartMedia en USB. Et donc si vous n’avez pas le bon lecteur, ça ne fonctionne pas.

L’installation d’un lecteur compatible


Un lecteur incompatible (à gauche), une carte et le lecteur compatible (à droite)

La liste est courte, mais la première chose à savoir, c’est que si votre lecteur n’a pas besoin de pilotes (donc s’il est UMS), ça ne fonctionne pas. J’ai trouvé un lecteur Zio sur eBay, mais ça fonctionne aussi a priori avec un modèle Sandisk, un modèle Microtech et un modèle Delkin. La seconde, c’est que le pilote doit être le smprep.exe. Une fois le bon lecteur trouvé, j’ai essayé dans ma machine virtuelle Windows XP… sans succès. Le pilote, prévu pour Windows 98 ou Windows 2000, plante complètement l’OS avec un écran bleu. J’ai donc tenté sous Windows 98, et ça fonctionne.

On joue avec de l’hexa

Le fonctionnement du logiciel est… particulier. Un premier programme (smprep1.exe) va formater la carte avec une erreur, exprès. Une fois la manipulation effectuée, il faut lancer le second programme (smprep2.exe). Sur le coup, avec mon lecteur Zio, j’ai eu un souci : ça ne fonctionnait pas. J’ai donc pris mon éditeur hexadécimal pour faire les modifications. Je suis parti du fichier smprep.exe du pilote de mon lecteur.

Première étape, créer une copie du fichier, par exemple smprep1.exe. Avec un éditeur hexa, il faut remplacer 01 03 D9 01 FF par 02 03 D9 01 FF. Il y a normalement deux occurrences dans le fichier.

Deuxième étape, créer une seconde copie du fichier, par exemple smprep2.exe. Il faut remplacer (là aussi deux fois) 20202020 20202000 20202020 00302E30 00 par une autre chaine. Soit 4F4C594D 50555300 50414E20 00312E30 00 (v1), 4F4C594D 50555300 50414E20 00312E31 00 (pour la version 1.1) ou 4F4C594D 50555300 50414E20 00322E30 00 (pour la version 2.0). Avec mon Olympus Camedia C-220 Zoom, ça a fonctionné avec la seconde chaîne. Je ne sais pas exactement comment vérifier ce qu’attend l’appareil photo.

Maintenant, la méthode. Il faut lancer smprep1.exe. Formater en Full, il va expliquer qu’il y a un souci de CIS à la fin.




Ensuite, lancer smprep2.exe, toujours en Full.








A noter que j’ai deux cartes SmartMedia et qu’une des deux fait une erreur, sans que je connaisse la raison.

Après cette erreur, le CIS n’est pas modifié

L’option panorama

Avec une carte modifiée, l’option apparaît (plus exactement, elle est utilisable). Le fonctionnement est assez classique ensuite : l’écran affiche une zone centrale et deux zones latérales, et il faut fait glisser les images pour que la zone latérale d’un côté passe dans la zone latérale opposée dans la photo suivante. L’appareil enregistre les photos avec un nom spécial, et le logiciel fourni avec l’appareil photo (Camedia Master) permet ensuite la reconstruction de l’image. La vidéo montre rapidement le fonctionnement, avec la sortie analogique de l’appareil. Et le résultat est en-dessous. Il y a quelques erreurs, mais le résultat reste assez bon vu l’âge de l’appareil.

Ca marche


Le logiciel

L’image