i386ポート
やってられねぇと言いつつ、あれこれつつきまわしています。どんどん時間が流れていきますが、知りたがり屋のサガというか、弱みというか。嫌ならいっぺん死ぬしかないようです。
死ぬのは嫌だな。
TOPPERS/JSP 1.4.xでは落とされているのですが、1.3系列にはi386依存部があります。で、ドキュメントやMLの過去ログを読むとGRUB*1に対応しています。これはラッキー。
早速ダウンロードしてみましたが、コンフィグレータのビルドすらできません。やれやれ。
仕方ないので、1.4.2のソースツリーに無理やり1.3のi386対応部を持ってきました。makeoffset.cを作るためのルールがないといってきます。いや、このファイルは存在するから作る必要はありませんよ。こういうエラーが出るときには、$(CPU)/Makefile.configがミスマッチしています。1.3から1.4で大きな変化があったのでしょう。
1.4.2のm68k/Makefile.configを持ってきてi386に置き、それっぽく修正します。ついでに1.4.2のblackfin/makeoffset.cを持ってきてi386におきます。
で、configureとビルド。
こんどはi386-elf-gccが見つからないといってきます。そうかぁ、そのコマンドはないです。システムのgccはi386-linux-gccのはずなので、リネームしても使えません。ツールのビルドからですか。ちょっと重いです。
トラバがきた
JSP1.3のdoc/i386.txtを読んだら著作者に存じ上げている名前が。聞こうかどうしようかと考えながら焼肉を食べている間にトラバが飛んできていろいろ解決しました。ありがとうございます。
さて、
JSP 1.3の公式カーネルはその通りでした。あまり問題視していません。幸い、JSPの骨格は理解しているつもりですし、x86については20年ほど前にずいぶん勉強したものです。1.4系列のi386コードがあればいじってみようかなという気分になってます。
ただ、ただいまgccのビルドで難航中。つーか、ビルドできません。
話は違うけど
TOPPERS/JSP for i386って32bit プロテクトモードで動くんですよね。シリアル越しに端末から操作できるし、プロテクトモードとかPCアーキテクチャの勉強をしたい人にはうってつけだと思います。
…そんな需要は皆無に近そうですが。
*1:というか、multiboot仕様