[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[pbsd-mg2] Re: "vrip.c"
鈴木(康)です。
<199906160334.MAA08984@quark.hpc.bs1.fc.nec.co.jp>の記事において
suz@hpc.bs1.fc.nec.co.jpさんは書きました。
| | たとえば、465 行目あたりで、自分が使えるメモリを 初期化すると
| | いうのはどうでしょうか?
| |
| | memset(cp,0x5a,NBPG);
| | *(int *)cp = 0xa5a5a5a5;
| | cp += NBPG;
| | physmem++;
| |
| | こんな感じなら、CE が間違うことはないんじゃないでしょうか。
|
| これで、MG II for DoCoMo の電池抜きリセットしなくて良くなったんですが
| MC-CS12 は、やっぱりダメでした。
|
| ということは、メモリの前の部分が壊れていないからダメなのかなぁ。
|
| カーネルは、-Ttext 0x80030000 でリンクしていますが、
| 前の 0x30000 部分では、どう使っているんでしょうか?
だめもとで、適当にクリアしてみたら、
MC-CS12 でも リセットが効くようになりました。
machdep.c の 460行目あたり
((int *)cp)[4] = j;
bzero(cp,NBPG); <<<<<<<<
cp += NBPG;
physmem++;
}
bzero(KERNBASE+0x400,KERNTEXTOFF-KERNBASE-0x800); <<<<<<
前後 1k バイトだけ外して、クリアしています。
( ループの中の bzero は、おまけ )
--
鈴木 康司 @NEC
suz@hpc.bs1.fc.nec.co.jp
TEL 0423-33-5381