ページへ戻る
印刷
debug_NASK
をテンプレートにして作成 ::
OSASK計画
osaskwiki
:debug_NASK をテンプレートにして作成
開始行:
* NASKをデバッグするための一発企画ページ
-for hideyosiさん
-なんでRed Hatで保護例外が出るのか。これは恥だ。
-対象ソースは、win32で作ったpcat版のfdcdrv.nasに限定(限...
* 第一回試験
-まずgo_0015のnaskのgcc版をwin32で作って、正常に生成でき...
-COLOR(#ff0000){ぐはぁ!! nask はコンパイルはできますが...
-それがうまくいったら、以下に進みます。go_0015のdrv_stdc/...
-104行目を次のように書き換えてみる(書き足す)。
list1 = nask(src0, src1, list0, list0 + MAX_LSTSIZ); ex...
--この場合何も出力されません。問題は例外が起きて終了か、...
-もし上記で例外が起きなければ104行目を元に戻して、今度は1...
tmp1 = LL(list0, list1, tmp0, tmp0 + MAX_TMPSIZ); exit(...
--この場合も何も出力されません。問題は例外が起きて終了か...
-もし上記で例外が起きなければ111行目を元に戻して、今度は1...
dest1 = output(tmp0, tmp1, dest0, dest0 + MAX_BINSIZ, l...
--この場合も何も出力されません。問題は例外が起きて終了か...
--COLOR(#ff0000){ここでエラーが起きました。 by hideyosi}
-これらがどういう結果になるかを聞いて、それからまた考えま...
-結果がどうであれ、テストが終わったらソースを元どおりにし...
*小柳レポートを当ててみる・・・
-えーと・・・小柳さん、ご指南感謝です。・・・ですが、私の...
-こういうことでいいんでしょうか?
2490行目 UCHAR *srcp, *file_p, *string0 = NULL, ...
・
・
・
void put4b(unsigned int i, UCHAR *p)
{
3812行目 if (p == NULL) return;
p[0] = i & 0xff;
・
・
・
-一応これで、OSASKのコンパイルは通ったのですが・・・・(...
-テストしました。Linuxで作ったOSASKは、正常に起動できるよ...
* 第二回試験
-修正個所は、go_0015のnask.cの2823~2824行目です。
--修正前の状態:
}
put4b(dest - string0, string0);
--修正後の状態:
put4b(dest - string0, string0);
}
--これだけで直ると思いますが、いかがでしょうか?>hideyos...
--この修正をすれば、もちろん小柳さんパッチはいりません。
* hideyosiさんからのレス欄
-RedHat上ですが、エラーは、どんなファイルを食わせても起こ...
-あ、ちなみに、 ↑ が文法的にあってないのはわかっています...
-また、念のため、改行コードもいろいろ試してみたのですが、...
-あ!! いけね! 前後しちゃった。Win32まだやってません...
-ちなみに、家ではOSASKをメイクしている場合、飛ぶのは base...
-win32でも飛びますか・・・。あれえ、じゃあ、うちで飛ばな...
-とりあえず、outputにバグがあるみたいですね。base.nasで落...
-gdb で追いました。 output() の string0 に値が設定されな...
-小柳さんありがとうございます。たしかに、やばいところを見...
-どうもput4bを入れる場所を1行下にしてしまったのが、バグの...
-いけました!!! RedHatとWin32、両方とも正常なOSASK(つ...
-(´_ゝ`)キター!!!!感謝!!! -- [[(´_ゝ`)]] SIZE(10){2...
-さっとく、GOのページのリニューアルと、Vineでの実験にとり...
-2chで報告したいけどplalaなのでできません。。。 -- [[(´_...
-うわ!! ちょうどかさなった? 顔文字さん、たぶんこれで...
-とりあえず、僕は自分の作ったソフトのバグが減ってうれしい...
-キター!!!!=>デキター!!!!(hideyosiさんじゃないのにここか...
-っていうか、hideyosiさんと顔文字さんは登場頻度が高いので...
#comment
終了行:
* NASKをデバッグするための一発企画ページ
-for hideyosiさん
-なんでRed Hatで保護例外が出るのか。これは恥だ。
-対象ソースは、win32で作ったpcat版のfdcdrv.nasに限定(限...
* 第一回試験
-まずgo_0015のnaskのgcc版をwin32で作って、正常に生成でき...
-COLOR(#ff0000){ぐはぁ!! nask はコンパイルはできますが...
-それがうまくいったら、以下に進みます。go_0015のdrv_stdc/...
-104行目を次のように書き換えてみる(書き足す)。
list1 = nask(src0, src1, list0, list0 + MAX_LSTSIZ); ex...
--この場合何も出力されません。問題は例外が起きて終了か、...
-もし上記で例外が起きなければ104行目を元に戻して、今度は1...
tmp1 = LL(list0, list1, tmp0, tmp0 + MAX_TMPSIZ); exit(...
--この場合も何も出力されません。問題は例外が起きて終了か...
-もし上記で例外が起きなければ111行目を元に戻して、今度は1...
dest1 = output(tmp0, tmp1, dest0, dest0 + MAX_BINSIZ, l...
--この場合も何も出力されません。問題は例外が起きて終了か...
--COLOR(#ff0000){ここでエラーが起きました。 by hideyosi}
-これらがどういう結果になるかを聞いて、それからまた考えま...
-結果がどうであれ、テストが終わったらソースを元どおりにし...
*小柳レポートを当ててみる・・・
-えーと・・・小柳さん、ご指南感謝です。・・・ですが、私の...
-こういうことでいいんでしょうか?
2490行目 UCHAR *srcp, *file_p, *string0 = NULL, ...
・
・
・
void put4b(unsigned int i, UCHAR *p)
{
3812行目 if (p == NULL) return;
p[0] = i & 0xff;
・
・
・
-一応これで、OSASKのコンパイルは通ったのですが・・・・(...
-テストしました。Linuxで作ったOSASKは、正常に起動できるよ...
* 第二回試験
-修正個所は、go_0015のnask.cの2823~2824行目です。
--修正前の状態:
}
put4b(dest - string0, string0);
--修正後の状態:
put4b(dest - string0, string0);
}
--これだけで直ると思いますが、いかがでしょうか?>hideyos...
--この修正をすれば、もちろん小柳さんパッチはいりません。
* hideyosiさんからのレス欄
-RedHat上ですが、エラーは、どんなファイルを食わせても起こ...
-あ、ちなみに、 ↑ が文法的にあってないのはわかっています...
-また、念のため、改行コードもいろいろ試してみたのですが、...
-あ!! いけね! 前後しちゃった。Win32まだやってません...
-ちなみに、家ではOSASKをメイクしている場合、飛ぶのは base...
-win32でも飛びますか・・・。あれえ、じゃあ、うちで飛ばな...
-とりあえず、outputにバグがあるみたいですね。base.nasで落...
-gdb で追いました。 output() の string0 に値が設定されな...
-小柳さんありがとうございます。たしかに、やばいところを見...
-どうもput4bを入れる場所を1行下にしてしまったのが、バグの...
-いけました!!! RedHatとWin32、両方とも正常なOSASK(つ...
-(´_ゝ`)キター!!!!感謝!!! -- [[(´_ゝ`)]] SIZE(10){2...
-さっとく、GOのページのリニューアルと、Vineでの実験にとり...
-2chで報告したいけどplalaなのでできません。。。 -- [[(´_...
-うわ!! ちょうどかさなった? 顔文字さん、たぶんこれで...
-とりあえず、僕は自分の作ったソフトのバグが減ってうれしい...
-キター!!!!=>デキター!!!!(hideyosiさんじゃないのにここか...
-っていうか、hideyosiさんと顔文字さんは登場頻度が高いので...
#comment
ページ名: