[Research] Action Replay codes for forcing language

Discussion in 'NDS - ROM Hacking and Translations' started by Stremon, Jul 22, 2017.

  1. Stremon
    OP

    Stremon GBAtemp Regular

    Member
    125
    33
    Sep 30, 2014
    France
    Nerima, Tokyo
    Since it doesn't seem possible or easy to modify the Japanese 3DS/DSi to display any other language than Japanese/English, I am now searching a way to force the NDS games I own to another language (French for instance).

    I first tried to unpack the games one by one, swipe the language files, repack them and launching them with my DSTwo, but it rarely works, and it's taking way too long for every game.

    So now I am trying to use the Action Replay code method, which seems more easy and efficient.
    I want to make a list of those codes for everyone to use, with instructions depending of the flashcart and language needed.

    But my problem is that I know close to nothing to NDS RAM cheats, so I really need some advices on how to proceed.

    I saw some instruction posted by FAST6191, who mentions that we need to force the firmware user language setting to the value we want this way:
    Type 0x02
    8-bit
    2XXXXXXX 000000YY Writes byte YY to [XXXXXXX+offset].

    The 2XXXXXXX must be replaced by the address on memory where the language code is, and YY by the language I want (in my case 02 for french).

    So I am wondering how to find the memory address of the language code in every game...
    I am trying to find it with Desmume, but so far I can't find anything.

    Original post from FAST6191 here:
    https://gbatemp.net/threads/advance...rk-conflict-language-mod.254868/#post-4191237

    Edit: Ok so after searching the code in the RAM, I finally understood what FAST6191 meant and managed to create my own code for language forcing! :D

    I will try few other games and try to put the code in my DSTwo, and if I succeed I will do a Tutorial for everyone to use ;)

    Edit: It seems pretty much all games that contains the language needed can be forced with the same AR code!!

    This is the code:
    22FFFCE4 000000XX
    Just replace XX by your language code, and it should work.
    Be careful, some games like Castlevania save the language in the first load and keep it, so you might want to setup the AR code before launching it.
    Here are the language codes you can use:
    00 = Japanese
    01 = English
    02 = French
    03 = German
    04 = Italian
    05 = Spanish
     
    Last edited by Stremon, Jul 22, 2017
    GHANMI likes this.