dポイントプレゼントキャンペーン実施中!

ネットをしているとこういう形式のパッチの当て方を見かけます。

0005A876: 02 05
000B8EFF: 00 57

バイナリエディッタで1行1行直していく方法は知っているのですが
量があると大変なので自動で一気に処理してくれる
便利なフリーソフトはあるのでしょうか?
有りましたら教えてください、よろしくおねがいします。

A 回答 (3件)

出来合いのツールはさすがに無いと思うのでperlでちょっと作ってみました


※面倒なのでコピペ用の元データとOTLに与えるiniファイルは名前固定にします

#otl_cng.pl
###ここから
open(IN, "patch.txt");#入力ファイル
open(OUT, ">patch.ini");#出力ファイル
$cnt=1;
while(<IN>){
if(/0*([0-9A-F]+):\s+([0-9A-F]+)\s+([0-9A-F]+)/i){
printf OUT "ADDRESS%d=%s\nDATA%d=%s,%s\n",$cnt,$1,$cnt,$2,$3;
$cnt++;
}
}
close IN,OUT;
###ここまで

ActivePerlをインストール後、これを~.plというファイル名で保存
同じフォルダに
patch.txtを用意し、中身は
0005A876: 02 05
000B8EFF: 00 57
と、します。

後は~.plをダブルクリックするだけで
patch.iniが作成され、中身は
ADDRESS1=5A876
DATA1=02,05
ADDRESS2=B8EFF
DATA2=00,57
になります

※OTLのパッチファイル作成方法.txtを読むと
DATA1=0000,FFFF
と書かれていますが、その下には
"データは1バイト単位(16進数2ケタ)で、16進数で記述します。"
と説明されていますので、
DATA1=00,FF
が正解だと思います^^;
    • good
    • 0
この回答へのお礼

帰省していてお礼が遅くなって申し訳ありませんでした
時間を作って挑戦してみようと思います。
プログラムをわざわざ作ってくださってありがとうございました。

お礼日時:2006/08/18 18:00

>量が有るとヘタレな私にはちょっと大変です


そんな場合はテキストを整形するツールを使います
私の場合はperl(http://pocketstudio.jp/win/activeperl/)という言語で
ちょこちょっとスクリプトを作ったりするのですが…
    • good
    • 0
この回答へのお礼

勉強したいとは思ってるのですがプログラムとかはできないので・・・。
今回の場合で使えそうなできあいのテキスト整形ツールありますでしょうか?

お礼日時:2006/08/10 21:59

使ったことがありませんがぱっと見でこれとか?


http://www.vector.co.jp/soft/win95/util/se385242 …
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
紹介してもらったソフトを少し触ってみたのですが
ADDRESS1=2DF0
DATA1=0000,FFFF
この形にしないといけないようですね
量が有るとヘタレな私にはちょっと大変です
形を変えないままパッチ適用できるソフトはないものでしょうか?

お礼日時:2006/08/09 23:51

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!