#99 Article 89 Posted at 1991/08/06 14:45:07 by 偽御使安爺 (MAP386) [A.TCPP]
Subject: Re: Re: 謎のツールの謎の動き /88 /87
何とか先へ進めました。
方針として関係なさそうなところあちこちに/**/を付けて実行して
みる。特定の条件で動く場合があったのでそれをTDで調べる。
圧縮しているところを調べるがほとんど何もない状態なので無事動
く。しかし今回ポインタが0000:0000 をさしている事に気が付く。こ
れに触れた途端に飛ぶらしい。そりゃそうだ。
このポインタのインスペクトしたまま最初に戻ってみる。ML1の
ヘッダを登録した後にポインタが書き換えられている。ポインタを書
き換える部分を発見。
シェルに戻って作られたML1のヘッダを調べると16文字入るエ
ディタを記す部分がいっぱいまで使われている。再びTDに入りヘッダ
周辺を見る。
原因はmemsetの第三引数が負になってしまったことらしい。それに
よって同じセグメントにあったポインタがほとんど0000:0000 に書き
換えられた。
そのmemset周辺を改めて定数を引数にするようにしておく。結果と
してかなりきれいな形にまとまった。
ってなところです。ソースとにらめっこしてもわからない分かり得な
いバグでした。江戸の敵を長崎で打つ、ってなとこですか(笑)
偽