*LinuxでOSASKをビルド! *FreeBSDでもOSASKをビルド! ~ -現時点で、RedHat9J・VineLinux2.6・VineLinux3.0・Debian3.0・FreeBSD4.9 上で正常なOSASKが生成できることを確認しています。 -現時点では、出来上がったOSASKの動作実験は、pcat版しか行っていません。 -OSASK Ver4.6 (make46.lzh)が対象です。 *手順 (RedHat9J、Vine2.6、Debian3.0、FreeBSD4.9 で確認) **用意するもの -まず、[[小柳さんのページ:http://homepage1.nifty.com/dreaming/osask/]] か [[保管庫:http://arc.osask.jp/osask_src/]]から、ソースファイルのmake46.lzhをダウンロードします。 -当Wikiの[[GOをLinuxに!]]から、 ---''Linux'' goset-006.tgz をダウンロードします。 ---''FreeBSD'' goset-006freebsd.tgz をダウンロードします。 ---''VineLinux3.0'' ノラRPMをご用意しました。 -[[パッチ(src46linux1.patch):http://www2.hideyosi.com/~hideyosi/age/osapatch/src46linux1.patch]]をダウンロードします。 COLOR(red){''※'' w3mでパッチをダウンする時は、改行コードが変わってしまうとまずいので、 -dump_source オプションを使うといいでしょう} **設置 -まず、gosetを設置しておきます。置く場所はどこでもかまいませんが、とりあえず /usr/local/bin にでもしておけばいいでしょう。 ~/$ tar xzvf goset-006.tgz ~/$ su ~/# mv goset006 /usr/local/bin/ ~/# exit ~/$ -次に、適当な場所にソースを解凍して、パッチを当てます ~/$ lha -x make46.lzh ~/$ cd src46 ~/src46/$ patch -p1 < ../src46linux1.patch -最後に、rules.mak のはじめの方にある、「BIN_PATH」というところを、ご自分が goset を設置した場所に調整しておきます。(初期値は /usr/local/bin/goset006/ になっていますので、ここにgosetを設置した方は、そのままでOKです。) -なんと!! 以上です。 **メイク -あとは、make pcat でOK。あ、make nec98、make towns も、ちゃんと通ります。 -さあさあ、ちょっとそこ行くLinuxなおにいさん!(おねえさんでも可)OSASKをハックしてみませんかぁ? (^^) **意味ないこと by (´_ゝ`) $ make bochsする。 COLOR(blue){[[ipl4ff]]をダウンロードして、`lha -x`で展開。} $ nasm -o ipl4ff.ipl ipl4ff04.asm COLOR(blue){#気持ちの問題。生成したバイナリは付属品と同じ。} $ nasm fat.asm COLOR(blue){#同上。} $ cat ipl4ff.ipl fat /dev/zero | dd count=2880 > a.img COLOR(blue){2003/08/23以降はこのおまけが付いてます I.Tak.} # mkdir /mnt/tmp # mount -o loop a.img /mnt/tmp # cp どっか/src40/OSASK.EXE /mnt/tmp/OSASK_AT.EXE # umount /mnt/tmp COLOR(blue){bochsrcの名前でこんなファイル作成}~ ---- megs: 32 romimage: file=$BXSHARE/BIOS-bochs-latest, address=0xf0000 vgaromimage: $BXSHARE/VGABIOS-lgpl-latest floppya: 1_44=ipl4ff.img, status=inserted boot:a log: bochsout.txt keyboard_mapping: enabled=1, map=/usr/share/bochs/keymaps/x11-pc-us.map pit: realtime=1 ---- $ bochs -q COLOR(blue){お好みでこちらも。}~ $ ln -s どっか/src39/OSASK.EXE ./ COLOR(blue){mount.shの名前でこんなファイル作成}~ ---- #!/bin/sh if [ -z "$IMG" ];then IMG=ipl4ff.img fi case $1 in "-m") sudo mount -o loop,uid=誰か $FD /mnt/tmp;; "-u") sudo umount /mnt/tmp;; "-c") sudo mount -o loop,uid=誰か $FD /mnt/tmp cp $2 /mnt/tmp #←しょぼい。複数のファイルの一般的な書式でのコピー不能。 sudo umount /mnt/tmp;; *) echo "Option:" echo "-m :Mount floppy image." echo "-u :Unmount floppy image." echo "-c [filename] :Copy File." esac ---- $ chmod 755 mount.sh *ちなみに・・・ -OSASKは現在、Kタンを中心とするメンバーで開発が続けられています。彼らの環境は、基本的にWin32です。これは特に意味はなく、ただ単純に使い慣れていて効率がいいからです。 -Linuxなどでビルドできるようにしたのは、ただ単純に「おもしろそう」だからです。特に必然性はありません。 -今後も、元となるOSASKのソースは中心メンバーの環境に則したものになりますし、それが一番効率がよく、スピードも速いでしょう。 -そういうわけなので、「原則的には」OSASKコミュニティに対して、「Linux等でコンパイルするのに不便だから、xxxをxxxしてください」という手の要望はご遠慮ください。開発の中心メンバーは、あくまでも「動くOSASKの開発」が最優先であり、コンパイルする環境や移植性は二次的なものに過ぎないからです。 -もちろん、「聞く耳もたん!」って意味ではありませんよ。 -あくまで二次活動なので、ご提案やご指南、お前アホだにょ! などは、こちらWikiのほうに、ということでよろしくお願いいたします。(中心メンバーの多くも、当Wikiを読んでいますので、要望が多いことには関心を示してくれるかもしれませんよ) ---- -このページの前身へのリンク:[[LinuxでOSASKをビルド!(秒読み)]]。 -- [[K]] SIZE(10){2003-09-22 (月) 19:41:25} #comment