Comment vérifier la langue d’une NDS ROM Pokemon HeartGold ?

Quand on récupère une ROM Pokemon HeartGold et qu’on la lance dans un émulateur, le jeu peut démarrer dans une langue inattendue. Le problème vient rarement de l’émulateur lui-même : il vient de ce qu’on ne sait pas exactement quelle édition linguistique on a téléchargée. Vérifier la langue d’une ROM NDS demande de distinguer trois choses qui n’ont rien à voir entre elles : le nom du fichier, les réglages de l’émulateur, et le contenu réel du fichier ROM.

Le nom du fichier ROM ne prouve rien sur la langue du jeu

Un fichier nommé « Pokemon HeartGold (FR).nds » ne garantit pas qu’il contient bien la version française. Les ROMs circulent depuis des années, renommées, repackagées, parfois modifiées. se fier uniquement au nom affiché est la première source d’erreur dans ce type de vérification.

A lire en complément : Le rôle clé du numérique dans la société d'aujourd'hui

La vraie information se trouve dans l’en-tête du fichier NDS, un bloc de données au début du fichier qui contient notamment le code de jeu et la région. Ce code, appelé Game Code, est une chaîne de caractères définie par Nintendo au moment du développement. Pour HeartGold, le code varie selon l’édition : la version japonaise, les versions PAL européennes multilingues et la version nord-américaine ont chacune un code distinct.

Lire ce code est plus fiable que lire le nom du fichier. Mais un code seul ne suffit pas toujours : certaines révisions partagent des codes proches, et une ROM modifiée (patch de traduction, par exemple) peut conserver le code d’origine tout en ayant un contenu différent. croiser le code avec le texte affiché en jeu reste la méthode la plus sûre.

Lire également : Maîtriser la création d'une feuille de style avec des conseils pratiques

Comment lire le code de jeu d’une ROM HeartGold sans l’ouvrir dans un éditeur hex

La méthode la plus rapide passe par un outil de gestion de ROMs NDS. Des logiciels comme NDSToky ou des visionneuses de métadonnées NDS lisent l’en-tête du fichier et affichent directement le Game Code, le titre interne et parfois la région sans avoir à décompresser ou modifier le fichier.

Si on veut éviter d’installer un outil supplémentaire, on peut aussi lancer la ROM directement dans DeSmuME ou RetroArch et observer l’écran-titre : la langue du texte affiché au démarrage correspond à la langue de la ROM, pas aux réglages de l’émulateur. C’est un indicateur simple et immédiat.

  • Écran-titre en japonais : ROM de l’édition japonaise originale, qui ne propose qu’une seule langue et n’est pas affectée par les réglages de l’émulateur.
  • Écran-titre en anglais avec menu de langue absent : probablement la version nord-américaine, qui ne propose que l’anglais.
  • Menu de sélection de langue au premier démarrage : version européenne PAL, qui inclut plusieurs langues dont le français, l’allemand, l’espagnol et l’italien.

Ce menu de sélection n’apparaît qu’à la première initialisation. Si la ROM a déjà été lancée et qu’une sauvegarde existe, la langue est déjà fixée dans le fichier de sauvegarde et ce menu ne s’affiche plus.

Jeune femme vérifiant la langue d'une ROM Pokemon HeartGold sur un logiciel informatique avec une cartouche NDS posée à côté

Réglage de langue dans DeSmuME : ce que ça change vraiment

DeSmuME dispose d’un paramètre de langue système dans ses options de configuration. C’est ici que beaucoup font une confusion : ce réglage simule la langue du firmware Nintendo DS, pas la langue de la ROM elle-même.

Pour les jeux qui lisent la langue système du DS pour choisir leur langue de démarrage, ce paramètre a un effet direct. HeartGold version européenne fonctionne exactement ainsi : si DeSmuME est configuré en français, la ROM PAL démarre en français sans demander de confirmation. Si DeSmuME est configuré en anglais et que vous avez la ROM PAL, le jeu démarrera en anglais même si votre système d’exploitation est en français.

En revanche, si vous avez la ROM nord-américaine, changer la langue système de DeSmuME en français ne changera rien : cette édition ne contient tout simplement pas les fichiers de texte français. L’émulateur ne traduit pas le jeu, il transmet juste une information de langue à la ROM, qui l’ignore si elle n’a pas prévu cette langue.

Dans RetroArch avec le core melonDS ou DeSmuME, le principe est identique. Le réglage de langue du core ou du frontend concerne l’interface de RetroArch, pas le contenu du jeu.

Identifier une ROM modifiée ou patchée pour la langue

Une ROM peut avoir été modifiée par un patch de traduction. C’est fréquent pour les jeux japonais traduits en anglais ou en français par des équipes indépendantes. Dans ce cas, le code de jeu dans l’en-tête peut correspondre à l’édition japonaise alors que le texte est en anglais ou en français.

Pour détecter ce cas, on peut comparer la taille du fichier et son checksum avec les références connues. Les bases de données de ROMs comme No-Intro maintiennent des listes de hash MD5 et SHA-1 pour chaque édition officielle. Si le hash de votre fichier ne correspond à aucune entrée officielle, la ROM a probablement été modifiée.

  • Télécharger un outil de calcul de hash (HashCalc, md5sum en ligne de commande ou équivalent).
  • Calculer le MD5 ou SHA-1 de votre fichier .nds.
  • Comparer avec les entrées de la base No-Intro pour Pokemon HeartGold.
  • Une correspondance confirme une ROM non modifiée ; une absence de correspondance indique une modification ou un dump non standard.

Cette méthode a une limite propre à ce type de vérification : elle ne fonctionne que pour les ROMs dont les hash officiels sont documentés dans la base que vous consultez. Pour des dumps récents ou des éditions peu courantes, la couverture peut être incomplète.

Résumé des méthodes pour confirmer la langue d’une ROM HeartGold

Trois approches complémentaires permettent de vérifier la langue sans ambiguïté. La première, la plus rapide, est d’observer le texte à l’écran-titre au premier démarrage. La deuxième est de lire le Game Code dans l’en-tête du fichier avec un outil de métadonnées NDS. La troisième, la plus rigoureuse, est de comparer le hash du fichier avec une base de référence comme No-Intro.

Si le jeu démarre dans la mauvaise langue malgré une ROM PAL correctement identifiée, le premier réglage à vérifier est la langue système dans DeSmuME (menu Config > Firmware Settings). Un réglage en anglais donnera un jeu en anglais, même avec une ROM qui contient le français. Modifier ce paramètre et relancer la ROM sans sauvegarde existante déclenche à nouveau le menu de sélection de langue au démarrage.