ページへ戻る

+ Links

 印刷 

hideyosi​/OLD​/LinuxでOSASKをビルド! :: OSASK計画

osaskwiki:hideyosi/OLD/LinuxでOSASKをビルド!

Page Top

FreeBSDでもOSASKをビルド!


  • 現時点で、RedHat9J・VineLinux2.6・VineLinux3.0・Debian3.0・FreeBSD4.9 上で正常なOSASKが生成できることを確認しています。
  • 現時点では、出来上がったOSASKの動作実験は、pcat版しか行っていません。
  • OSASK Ver4.6 (make46.lzh)が対象です。
Page Top

手順 (RedHat9J、Vine2.6、Debian3.0、FreeBSD4.9 で確認)

Page Top

用意するもの

  • まず、小柳さんのページ保管庫から、ソースファイルのmake46.lzhをダウンロードします。
  • 当WikiのGOをLinuxに!編集から、
      • Linux  goset-006.tgz をダウンロードします。
      • FreeBSD goset-006freebsd.tgz をダウンロードします。
      • VineLinux3.0  ノラRPMをご用意しました。

w3mでパッチをダウンする時は、改行コードが変わってしまうとまずいので、 -dump_source オプションを使うといいでしょう

Page Top

設置

  • まず、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です。)
  • なんと!! 以上です。
Page Top

メイク

  • あとは、make pcat でOK。あ、make nec98、make towns も、ちゃんと通ります。
  • さあさあ、ちょっとそこ行くLinuxなおにいさん!(おねえさんでも可)OSASKをハックしてみませんかぁ? (^^)
Page Top

意味ないこと by (´_ゝ`)

$ make bochsする。

ipl4ffをダウンロードして、`lha -x`で展開。

$ nasm -o ipl4ff.ipl  ipl4ff04.asm 

#気持ちの問題。生成したバイナリは付属品と同じ。

$ nasm fat.asm 

#同上。

$ cat ipl4ff.ipl fat /dev/zero | dd count=2880 > a.img        

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

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

お好みでこちらも。

$ ln -s どっか/src39/OSASK.EXE ./

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
Page Top

ちなみに・・・

  • OSASKは現在、Kタンを中心とするメンバーで開発が続けられています。彼らの環境は、基本的にWin32です。これは特に意味はなく、ただ単純に使い慣れていて効率がいいからです。
  • Linuxなどでビルドできるようにしたのは、ただ単純に「おもしろそう」だからです。特に必然性はありません。
  • 今後も、元となるOSASKのソースは中心メンバーの環境に則したものになりますし、それが一番効率がよく、スピードも速いでしょう。
  • そういうわけなので、「原則的には」OSASKコミュニティに対して、「Linux等でコンパイルするのに不便だから、xxxをxxxしてください」という手の要望はご遠慮ください。開発の中心メンバーは、あくまでも「動くOSASKの開発」が最優先であり、コンパイルする環境や移植性は二次的なものに過ぎないからです。
  • もちろん、「聞く耳もたん!」って意味ではありませんよ。
  • あくまで二次活動なので、ご提案やご指南、お前アホだにょ! などは、こちらWikiのほうに、ということでよろしくお願いいたします。(中心メンバーの多くも、当Wikiを読んでいますので、要望が多いことには関心を示してくれるかもしれませんよ)

  • このページの前身へのリンク:LinuxでOSASKをビルド!(秒読み)編集。 -- K 2003-09-22 (月) 19:41:25

Last-modified: 2009-11-17 (火) 00:00:00 (JST) (110d) by lina