Modifier le texte d'une rom WPC/S/95

A

Ancien Visiteur 1

Non Membre
Envie de corriger les fôtes de traduction de votre flip Bally/Williams des années 92 et plus? Envie de modifier les messages anti-drogue à la.... ou d'autres? Voici un petit tutorial pour le faire.

Disclaimer: toute modification et utilisation de roms modifiées dans votre flipper est à vos risques et périls. Ne modifiez JAMAIS autre chose que du texte dans le fichier et faites attention à ne jamais dépasser le nombre de lettres qui était initialement présent.

Il est très facile de modifier le texte dans les fichiers .rom , toutefois sans recalcul du checksum, le flipper fera systématiquement une erreur au boot , indiquant une checksum erreur dans U6, pas bon. En effet le checksum attendu est lui-même stocké dans l'eprom, si le calculé diffère du théorique, la CPU indiquera une erreur. Le flip marchera quand-même, mais c'est pénible à chaque démarrage, et pourrait du coup faire ignorer un vrai problème.

Il est possible de calculer le checksum à la main mais c'est un peu compliqué, heureusement il existe un outil qui le fait automatiquement et modifie le fichier.

1) Télécharger WPC_TOOl ici: http://www.maddes.net/files/pinball/WPC_Tool14a.zip . Vérifier si il n'existe pas une version plus récente éventuellement sur la page http://www.maddes.net/pinball/wpc_debugging.htm

2) Décompresser le zip dans un répertoire de travail, y mettre la rom originale à modifier.

3) Editer le fichier rom et faire les modifs de texte souhaitées. Utiliser un éditeur hexadécimal pour ce faire, par exemple hexedit, Winhex, etc.. il y en a plein en freeware. Attention, les chaines de caractères sont souvent délimitées par un octet à 0, ne pas les changer ceux-là!

4) Utiliser wpc_tool en ligne de commande dans le répertoire de travail pour ré-écrire le bon checksum dans le fichier. Exemple avec une rom Theatre of Magic 1.3X:

wpc_tool TOM1_3X.ROM -checksum -write

Il génère alors le fichier TOM1_3X.ROM.new.
Il n'y a plus qu'à programmer ce fichier dans une eprom ad hoc. Le flipper ne devrait pas faire d'erreur checksum.
Exemple par l'image: http://crrispy.free.fr/StarTrekHopla.wmv

Pour faire les tests, je recommande fortement de d'abord essayer la rom modifiée dans visual pinball, où ça marche parfaitement bien aussi. Pour ce faire, localiser le fichier zip dans lequel est l'eprom d'origine (répertoire Roms de VP) et le remplacer dans le zip par le fichier modifié avec exactement le même nom. Un utilitaire comme Total Commander qui gère vraiment les zips comme un répertoire est très pratique pour ça, sinon l'explorer Windows doit le faire aussi, même pas essayé :)
Voici ce qu'il doit y avoir dans le zip, toujours l'exemple du Theatre:



Lancer la table comme d'habitude avec Visual Pinball. Si il dit qu'il ne trouve pas la rom c'est que vous l'avez mal renommée ou réincluse dans le zip. Sinon, un panneau de ce type doit apparaître:



C'est normal car il s'agit ici du CRC32 du fichier, différent du CRC calculé par la cpu WPC. Donc cliquer sur "Don't care results, continue anyway" et la table va se lancer normalement. Ceci permet de vérifier les modifs effectuées, et également qu'il n'y a pas d'erreur de checksum au démarrage du flipper (virtuel). Ca fait gagner beaucoup de temps en effaçage et programmation d'eproms :)

Dernière chose: toujours partir d'une rom officielle téléchargée sur ipdb, il y a des fichiers parfois exotiques qui circulent, exemple une pseudo rom 1.3F pour le Theatre où on trouve du texte folklo à l'offset 74730... et qui n'est pas une vraie 1.3F d'ailleurs, qui plus est avec le checksum HS, bref...

Bonne bidouille!

Thierry.
 

David

Big Boos
Membre du personnel
Big Boos
Merci pour l'info
C'est super interessant en fait ;)

Cela ouvre de superbes possibilités
 
Haut Bas