====== 改造FEでどんなバグも数時間で直せるかもしれないデバッグ方法 ====== 改造feを作っていく時に、\\ 過去ロムのバックアップをちゃんと取っていれば、\\ 過去ロムとのバイナリ比較を使い、\\ 原因はよくわからんがバグ修正できることがあります。\\ \\ まず、今のバグありrom(ng rom)が壊れちゃうので必ずバックアップを取る\\ ↓\\ バックアップをとっている過去ロムから、\\ このバグがおきなくなるバージョンまで遡る。\\ ↓\\ 起きないバージョンを見つけたらok romと命名。\\ ↓\\ ok romと、バグありng romの差分を\\ WinMargeU(バイナリ比較)とかで取る。\\ ↓\\ loop1:\\ ok romから、ng romに\\ 適当に差分をコピーして当てていく。\\ ↓\\ 動作確認。このバグが起きるのか?\\ Yes->バグが起きなくなるまで差分をコピーしていく loop1:に戻る\\ No\\ ↓\\ loop2:\\ バグが起きなくなったので、\\ 次は、Undoをつかって、バグが起きるまで戻す\\ ↓\\ 動作確認。このバグが起きるのか?\\ No->さらにUndoして、バグが起きるまで戻る loop2:に戻る\\ Yes\\ ↓\\ 今undoしたところがバグを生み出している箇所だ!\\ アドレスと、バグらないok romのコードをメモる。\\ (救済コードと命名)\\ \\ \\ バックアップを取った一切手を入れていないng romに\\ 救済コードを注入する。\\ (救済コードを入れ前にもバックアップ取って)\\ ↓\\ 動作確認。このバグが起きるのか?\\ Yes->残念。救済コードが足りないらしい。このromとOK romを比較してloop1:からやり直そう。\\ No\\ ↓\\ バグを直した!\\ 副作用がないか確認する\\ ↓\\ 動作確認。副作用があるか?\\ Yes->残念。救済コードが過剰だったらしい。救済コードの周りのアドレスを含めてコピペしてみるか、\\ この方法を諦めて逆汗を交えながら根本解決をするしかない。\\ No\\ ↓\\ 副作用なし。バグ修正完了。\\ やったぜ\\ \\ こんな感じでやれば、プログラムとか一切関係無しに\\ だいたい数時間ぐらいあれば、\\ たいていのバグは直せます。\\