最新の10件
ページ | 日付 |
---|---|
en:guid:febuildergba:work_support | 2023/06/08 20:25 |
guide:febuildergba:作品支援 | 2023/06/08 20:24 |
最新の10件
ページ | 日付 |
---|---|
en:guid:febuildergba:work_support | 2023/06/08 20:25 |
guide:febuildergba:作品支援 | 2023/06/08 20:24 |
改造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
↓
副作用なし。バグ修正完了。
やったぜ
こんな感じでやれば、プログラムとか一切関係無しに
だいたい数時間ぐらいあれば、
たいていのバグは直せます。