【PSP】GOD EATER 起動解析スレ Part 3
901 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2010/02/11(木) 03:45:12 ID:coI8ZqVd
あー無限ループってこれか?
0x08845EE4: 0x0000000F '....' - sync
0x08845EE8: 0x0000000D '....' - break 0x0
0x08845EEC: 0x0A2116CA '..!.' - j 0x08845B28
0x08845EF0: 0x8E040004 '....' - lw $a0, 4($s0)
0x08845EF4: 0x3C0408A0 '...<' - lui $a0, 0x8A0
0x08845EF8: 0x3C0508A0 '...<' - lui $a1, 0x8A0
0x08845EFC: 0x3C07089F '...<' - lui $a3, 0x89F
0x08845F00: 0x3C0808A0 '...<' - lui $t0, 0x8A0
0x08845F04: 0x2484E610 '...$' - addiu $a0, $a0, -6640
0x08845F08: 0x24A5E62C ',..$' - addiu $a1, $a1, -6612
0x08845F0C: 0x24E7E080 '...$' - addiu $a3, $a3, -8064
0x08845F10: 0x2508E648 'H..%' - addiu $t0, $t0, -6584
0x08845F14: 0x0E203F62 'b? .' - jal 0x0880FD88
0x08845F18: 0x24060100 '...$' - li $a2, 256
0x08845F1C: 0x0000000F '....' - sync
0x08845F20: 0x0000000D '....' - break 0x0
このsyncに行く前の処理を潰せばOKってことなんかね?
あぁ俺の恥の結晶が次スレにまでwww
>>6 根本的に探し方間違ってたんでこれは参考にしないように
はいはいsageご苦労っすね〜
それもここまでageますか
だが断る
はいはいsageご苦労っすね〜
それもここまでageますよない
では早速
バイナリ位置 = メモリ上アドレス - 0x08804000 + 0x000000A0;
って事はメモリ上アドレス0x08804000未満の処理はアウトオブ眼中でおk?
MHP2G
0x088001F8: 0xC08A0004 '....' - ll $t2, 0x0880020C
0x088001FC: 0x1540000D '..@.' - bnez $t2, 0x08800234
0x08800200: 0x01204021 '!@ .' - move $t0, $t1
0x08800204: 0xE0880004 '....' - Unknown
0x08800208: 0x1100FFFB '....' - beqz $t0, 0x088001F8
GE
0x088001F8: 0xC08A0004 '....' - ll $t2, 0x0880020C
0x088001FC: 0x1540000D '..@.' - bnez $t2, 0x08800234
0x08800200: 0x01204021 '!@ .' - move $t0, $t1
0x08800204: 0xE0880004 '....' - Unknown
0x08800208: 0x1100FFFB '....' - beqz $t0, 0x088001F8
という同じ処理がMHP2Gにも有った
上記の式でバイナリ書き換え位置が算出されるならここは書き換え不可能という事になる
というか書き換え不要?
もし書き換えるなら0x08804000以上のこの近くへ飛んで来る部分だな
この先の
0x08800210: 0x03E00008 '....' - jr $ra
でbpしても来れるみたいだし、
俺の中ではここはもうstepで入るとループする物だと思って考えないようにしようと思う
本来は前スレ埋めてから書くべきだけど興味深いので
>>15 たしかにバイナリ位置 = メモリ上アドレス - 0x08804000 + 0x000000A0;
って見たときに違和感はあったんだよね
つまり0x08804000以前の処理は各ゲームのEBOOT.BINとは関係ない部分にある処理なわけだ
ためしに手元にあった「勇者のくせになまいきだ」で調べてみたが
0x088001F8: 0xC08A0004 '....' - ll $t2, 0x0880020C
0x088001FC: 0x1540000D '..@.' - bnez $t2, 0x08800234
0x08800200: 0x01204021 '!@ .' - move $t0, $t1
0x08800204: 0xE0880004 '....' - Unknown
0x08800208: 0x1100FFFB '....' - beqz $t0, 0x088001F8
この辺の処理はどのゲームだろうと共通っぽいね
本体にある処理とかなのか??
まぁとりあえずゆうなまの場合はどう通ってここのループに入らないようになってるか調べてみるわー