[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[b-free: 1381] Re: HDからのブート



林です。

In message <19980417100916O.night@soft.hitachi.co.jp>
   "[b-free: 1377] Re: HDからのブート (Re: Re^2: FD      で bootする方法を教えてください)"
   "Ryuichi Naitoh <naitoh_r@soft.hitachi.co.jp>" wrote:
naitoh_r> > BIOSのジオメトリの方が取得が難しいのでしょうか。
naitoh_r> > INT13に何かなかったでしょうか?
naitoh_r> > # INT13が使えない?
naitoh_r> 
naitoh_r> INT 13 は、16 bit mode 動作時しか使えないので、32bit mode で動いている 
naitoh_r> 2nd boot では使えないんです。
naitoh_r> 1st boot は INT 13 を使って 2nd boot を HD からロードしているので、
naitoh_r> INT 13 は使えるんですがこちらは 512 bytes しかないし。。。

32bitコードからINT13をコールするルーティングを2nd bootに実装する
ってのは手間かけ過ぎですね(^_^;)。あるいはBIOS32を使うか。
# BIOS32 32bitコードから使えるBIOSインタフェース規格です。
# しかしBIOS32の使えるBIOSがどれだけあるのか・・・それが問題だ(^^;)

naitoh_r> calc_N (int cylinder)
naitoh_r> {
naitoh_r>   int	N, N2;
naitoh_r> 
naitoh_r>   cylinder = ROUNDUP (cylinder, 1024);
naitoh_r>   N = (cylinder - 1) / 1024;
naitoh_r> 
naitoh_r>   for (N2 = 1; N2 < N; N2 = N2 * 2)
naitoh_r>     {
naitoh_r>       ;
naitoh_r>     }
naitoh_r> 
naitoh_r>   return (N + 1);
naitoh_r> }

これじゃforループの意味が…???
# 単にゴミが残ってるだけ?


--
Takanori Hayashi
takanori@ohsaki.meidensha.co.jp