NDS Disassembler 2nd [NDSDIS2] }jA

NDSDIS2Ƃ́H
Nintendo DS ROM DumperŋzoROMC[WtAZuA
CCPU(ARM9)ETuCPU(ARM7)̃R[hf܂B

LARMtAZu"DISARM"JLbgDevKitProɊ܂܂
arm-elf-objdump.exeȂǂłlɋtAZu\łA
ENDSp(ɎgƂ)
EzWX^͋@\(זȂȋC)
Ewb_ƃAAhX\(B̔?)
Ƃ܂B

g
"NDSDIS2"Win32R\[x[XAvP[VłB
uNbNǂIĂ܂vȂĎ͂ȂłB
igROMzolłΐ΂ɖƂ͂܂jB
R}h͈1NDSROMC[Ww肵AtAZuXg
t@C֏o͂ꍇ́A_CNgpĂB

() 升tIohuU[YtAZuăXgo
ndsdis2.exe bandbros.nds > bandbros.txt

܂ANDSDIS2ɂ͂̃R}hIvV܂B

-R .. zWX^͋@\𖳌ɂ܂B
-9 .. ARM9̋tAZus܂B
-7 .. ARM7̋tAZus܂B
-T .. thumb(16bit)R[hŋtAZus܂(Ver2.00Œǉ)

Ⴆ΁A
uzWX^͋@\Ǝזx`
@cARM7R[hKvȂ`vƂꍇ
ndsdis2.exe -R -7 bandbros.nds > bandbros.txt

ȊłˁB
AzWX^͖ł̓[hEXgÅԐڎQƂ̒l
ǐՂ̂ɖʓ|Ȃ̂ŁAזłLɂقǂȂƁB

`Ver1.06Œǉuwb_R[h́v`
VNH9(ARM9)NH7(ARM7)ƂIvVǉ܂B
ndsdis2.exe -NH9 {JnAhX} dumpdata.bin > dumpdata.txt
ndsdis2.exe -NH7 {JnAhX} dumpdata.bin > dumpdata.txt

p邱ƂŃwb_ȂARMR[h̋tAZu\łB
Ⴆ΁AٍDSc[uProject-DipStar-v
(http://hp.vector.co.jp/authors/VA018359/nds/ndshack.html#EXP)
ɓĂT[`c[ hasteDS ̃_v@\pāA
G~[^̉z4MBt@Cɒo(dumpdata.bin)A
ndsdis2 -NH9 2000000 dumpdata.bin > dumpdata.txt
̃R}hs邱ƂŋtAZu\łB

u`DSvłARM9R[h̑唼ɈÍ{Ă邽߁A
̂܂܂ł̓f^ȋtAZuXgfĂ܂̂łA
̋@\p邱ƂŁAXg𓾂邱Ƃł܂B

hasteDŠpemuhasteœl̂Ƃ\łB
http://hp.vector.co.jp/authors/VA018359/download.html

`Ver1.21betaŒǉuMixed Modev`
ÍROM͂̌グ邽߁AMixed Mode܂B
uwb_͌NDSROM(ÍĂ)ǂݍ݁v
utAZu4MB_vt@Cɑ΂čsv
Ƃs܂B
ndsdis2.exe -MIX1 dumpdata.bin encrypted.nds ܂
ndsdis2.exe -MIX2 dumpdata.bin encrypted.nds

̃R}h̏ꍇAencrypted.ndswb_݂̂QƂA
ۂ̋tAZudumpdata.binɑ΂čs܂B

܂Ał̃p[^͈ȉ̂悤ɈĂ܂B
E-MIX1w̏ꍇ
@ARM9TCY = ARM7addr(ʏ0x02380000) - ARM9addr(ʏ0x02000000) - 1
@ARM9JnItZbg = ARM9addr(ʏ0x02000000) - 0x02000000
@ARM7TCY = 0x02400000 - ARM7addr(ʏ0x02380000)
@ARM7JnItZbg = ARM7addr(ʏ0x02380000) - 0x02000000

E-MIX2w̏ꍇ
@ARM9TCY = IWiencrypted.ndsƓB
@ARM9JnItZbg = ARM9addr(ʏ0x02000000) - 0x02000000
@ARM7TCY = IWiencrypted.ndsƓB
@ARM7JnItZbg = ARM7addr(ʏ0x02380000) - 0x02000000

O҂40MB̋ȃt@CɂȂɓWJ̑SGA
tAZuR[hɓ܂B
҂̓IWiROMƓ傫ƂăR[ho͂邽߁A
[NGA܂܂ȂȕR[hɓ܂B
ikWJASY̎dlɂĂ͐K؂܂jB

[EOF]