ここではC言語で書かれたプログラムをLinux上でクロスコンパイルし
OSASK用の実行ファイルを生成する為の環境を構築する手順を説明します。
Solarisや*BSD等、他のUNIX系OSでも同様の手順で上手く行くと思いますが、
確かめてはいません。
GOをLinuxに![1]で、最新の開発環境を入手することができます。(03/08/23現在。)
古い情報は勝手ながら消させていただきました。問題があったら済みません。by (´_ゝ`)[2]
introa11.lzhを例にとって説明します。
(introa11.lzh はhttp://www.imasy.org/~kawai/osask/developers.html[3]
にあります。)
introa11.lzhを展開します。
makefile 内の SJISCONVのところを
SJISCONV = ln
と置き換えます。(笑
makefile を Makefile にリネームします。
(何故その必要があるのかは、makefileの中を見れば分かります。)
$ make
でhelloc4.binが生成されます。
小柳さんのページ( http://homepage1.nifty.com/dreaming/osask/[4] )から
「OSASK/AT ver.3.6 簡単おすすめパックの VMware 用 イメージ(osvmw36.lzh)」
をとってきて展開すると osask36.flpが出来ます。
VMWareの設定のfloppy deviceの所で
Type: File
Path: <osask36.flpのパス>
とします。
まずosask36.flpを適当なディレクトリにマウントしておきます。(スーパーユーザで)
# mkdir /mnt/osask # mount -o loop -o uid=wq osask36.flp /mnt/osask
マウントできたら次のようにします。
(helloc4.binを送りたいときの例)
$ cp helloc4.bin /mnt/osask $ sync OSASKのPOKONで[Shift]-[Insert]
syncはlinuxが遅延書き込みしていた分を実際に書き込ませます。
POKONで[Shift]-[Insert]とするとOSASKはフロッピィを再度読み直します。
OSASKを動かしている間 osask36.flpをマウントしっぱなしにするのは特に問題ないようです。
つまりMakefileの後ろに
cp $*.bin /mnt/osask sync
等と書いておくととても便利です。
(This host) = http://osask.net