Welcome!

Miscellaneous => Projects => Topic started by: iq_132 on July 31, 2007, 02:50:08 AM

Title: R4DS/M3DSS Firmware Patcher
Post by: iq_132 on July 31, 2007, 02:50:08 AM
Quote
31/07/07
Added M3 1.07 to database
The database now has a version number.
 - If it is isn't current, 'info.dat' is deleted.
 - You will need to re-start the application to write the newer/newest one.
You must press 'enter' to exit the program now.  This makes it easier to see/resolve errors.
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: Buddy on July 31, 2007, 07:16:39 AM
Thanks! How do you find the adresses for the dat before the m3 firmware is available?
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: iq_132 on July 31, 2007, 02:36:03 PM
Well, all of the firmwares have 'generic' patches that are easy to search for and patch. I've written a simple search/patch routine for this. These don't change much, other than where they are located.  They control if the firmware says 'incorrect hardware' or whatever. 

The addresses stored in the dat are changed with every revision and the bytes are almost never the same or even similar. However, it is very easy to find them.  All you need to do is decrypt the English R4 and the Chinese Simplified R4 and compare the last 0x8400 bytes.

There should only be a handful of bytes that are different.  Just record them (make sure that if you're putting them in the dat that address 0 would be (firmware_length-0x8400).

I should probably explain the .dat

The first value 2E866286 is the CRC32 of the firmware
The second value 000D are the 'flags' just copy these from the line for an older version.
The third value 1110 is the version number, 1.11 the 0 is for if there's a beta or alternate version
The last value is the most important, 4, it is the patch number to use.  Without the correct patch
games will not load.
2E866286,000D,1110,4, // r4 1.11  English

Now, for the actual patch,
4 is the patch number,
1380,1474,158C,41B0, are addressees to be patched (starting at firmware_length-0x8400).
The maximum number of patches you can apply is 32
4,1380,1474,158C,41B0,               // 1.11 [R4] / 1.07 [M3]

The main thing to remember for the address patches is that they are all the same for firmwares of the same revision.  So any R4 1.11 / M3 1.07 firmware will generally use the same addresses.
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: Buddy on July 31, 2007, 05:37:40 PM
Thank You for your explanation!  :smilie: I understood.
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: iq_132 on August 01, 2007, 02:59:28 AM
No problem :)
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: iq_132 on November 21, 2007, 05:15:11 AM
x
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: tkbook on November 21, 2007, 06:23:30 AM
there is a new r4 firmware 1.12
2007/11/21
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: iq_132 on November 21, 2007, 06:24:49 AM
Yeah, I know. :) The info.dat I posted above your post has support for the R4 1.12 firmware.
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: tkbook on November 22, 2007, 12:01:25 AM
thanks your file
but i don't know how to use "info.dat"

can u teach?
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: xsnake on November 22, 2007, 01:38:39 AM
Hi.. iq_132

Some attachment for INFO.DAT

r4 korean V1.12         0x6C739C13
r4 french  V1.12         0xA9D1FAB7
m3dss 1.08 french      0x3A4729BD
m3dss 1.08 japan       0xC6DE099C
m3dss 1.08 t-chinese  0x242FE1CC
m3dss 1.08 s-chinese  0x6A73812B
m3dss 1.08 english      0xFAF03B8D


THX for your great work..


thanks your file
but i don't know how to use "info.dat"

can u teach?

INFO.DAT is text file...
You can add your own attachments to INFO.DAT using text file editor ..

THX
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: f0rbidden on November 29, 2007, 11:13:00 PM
Great work IQ, worked:)
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: f0rbidden on November 30, 2007, 12:49:35 AM
BTW, do you mind telling me what do you decrypt them with? I want to learn and actually take a look at those variables.
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: iq_132 on December 02, 2007, 01:33:46 PM
You can use r4denc, which is found on this page:
http://home.usay.jp/pc/etc/nds/index_en.html

I use my own, custom, tools. :)
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: tinng on December 05, 2007, 10:48:36 AM
You are the best of the world ,thank you!!!
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: arsehat on December 07, 2007, 12:13:00 AM
The addresses stored in the dat are changed with every revision and the bytes are almost never the same or even similar. However, it is very easy to find them.  All you need to do is decrypt the English R4 and the Chinese Simplified R4 and compare the last 0x8400 bytes.

Okay, I *think* I got all that. Decrypt, and play spot-the-difference. One slight problem when I look at 1.13, though.

I'm not seeing any difference in the last 0x8400 bytes between the chinese and english versions of 1.13. I suspect that's not good - either I've screwed up in checking, or they've given up on anything other than the stuff the generic patcher can get to, or they've used an entirely different location for that stuff. Can't check right now - I'll have a look this evening. I'm hoping for the second option.

2E866286,000D,1110,4, // r4 1.11  English

Now, for the actual patch,
4 is the patch number,
1380,1474,158C,41B0, are addressees to be patched (starting at firmware_length-0x8400).
The maximum number of patches you can apply is 32
4,1380,1474,158C,41B0,               // 1.11 [R4] / 1.07 [M3]

Unless I've missed something (and I probably have), 1.13 English will need an entry something like this in info.dat:
13288BC6,000D,1113,6, //r4 1.13 English

And a patch line of:
6,                               // 1.13 [R4]

Can't check this right now... anyone care to confirm whether this works, or I've made an arse of myself in public (again...), or the patching method needs to be re-evaluated?

Oh, and iq_132, thanks for the patcher  :cool:
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: iq_132 on December 07, 2007, 11:33:59 AM
You did everything correctly. Believe it or not, they removed the non-generic hardware checks. ^^
You can use:
6,0001,   // R4 1.13 / M3 1.09
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: arsehat on December 07, 2007, 12:52:54 PM
You did everything correctly. Believe it or not, they removed the non-generic hardware checks. ^^

That's what I was hoping to hear, and what my immediate success at loading up a modified 1.13 English on a Chinese card supported too. Oversight? Or perhaps they've given up on that strategy - maybe it's too much effort for no real benefit.

You can use:
6,0001,   // R4 1.13 / M3 1.09

Or, I can use *nothing* - just the latest version of the patcher, with no special entries in the dat. Since there's no non-generic language checks in there, your most recent patcher works perfectly as-is   :biggrin: Just ran it over the top of a 1.13 I'd customised with injektor, and that's on my son's cartridge right now.

Once again, many thanks.
Title: Question for IQ_132
Post by: kingoat on December 19, 2007, 10:38:00 PM
Hi i'm new with this forum sorry if i made any mistakes regarding to posting and stuff...
I'm just wonder if IQ_132 have patch for the R4 card for version 1.14 for using English firmware on Chinese Hardware.
Title: Re: Question for IQ_132
Post by: CaptainCPS on December 19, 2007, 11:01:42 PM
Hi i'm new with this forum sorry if i made any mistakes regarding to posting and stuff...
I'm just wonder if IQ_132 have patch for the R4 card for version 1.14 for using English firmware on Chinese Hardware.

Hi there and welcome to NeoSource  forums :smilie:, I'm not IQ but check the following thread and verify if that is what you're looking for...

http://neo-source.com/index.php?topic=728.0 (R4DS/M3DSS Firmware Patcher)

Hope this help =)

SeeYaa!
 :smilie:

Title: Re: R4DS/M3DSS Firmware Patcher
Post by: kingoat on December 20, 2007, 01:25:39 AM
yea it worked!!! I was able to patch it using the R4 version 1.14. Thank you so much for the fast reply.
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: iq_132 on March 06, 2008, 08:59:32 PM
Quote
06/02/08
Added M3 1.08 to database
Added R4 1.12 to database
Firmwares after these versions should work fine with "detect"
Added support for N5 firmware
Sped up encryption routine
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: tkbook on March 19, 2008, 02:56:23 AM
hello IQ_132

R4DS Firmware 1.17 is released
i try to convert CHINESE Firmware for English R4ds
but i don't know how to decrypt the English R4 and the Chinese Simplified R4 and compare the last 0x8400 bytes.

ultraedit? or other softwaare?
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: iq_132 on March 19, 2008, 09:42:46 PM
You shouldn't need to do that.  It will ask you to detect the firmware type.
It should detect 1.17 and Chinese.
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: VoonZ on April 01, 2008, 11:49:02 PM
i tried the patch on my 1.17 simplified chinese. it didnt work. anyone got in workin gon 1.17?
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: iq_132 on April 02, 2008, 01:24:59 AM
You have an R4 Chinese device and you want what language on it?

If you want English firmware on it, download the English firmware and patch it to Chinese.
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: VoonZ on April 02, 2008, 03:40:09 AM
oh, i thought we have to patch it on the new chinese kernel. thanks iq_132 for creating such wonderrful software :wink:
Title: Re: R4DS/M3DSS Firmware Patcher
Post by: iq_132 on April 02, 2008, 07:38:27 PM
My program doesn't translate the menu, it modifies the English/Chinese/Whatever menu to work on whatever hardware you want.