元ネタ、OSASKのページはこちら。
その通りです。ベタベタに某双子をパクッています。 (ファンなんですよこれが・・・)
某双子の公式ファンクラブページはこちら

OSASKをコンパイルしてみよう。




OSASKはオープンソースなので、当然ソースがあります。わざわざ自分でコンパイルしなくてもいいのですが、おもしろそうなのでやってみました。




用意するもの

環境を整える

コンパイル

起動ディスクの作成





用意する物

まず、OSASKのコンパイルに必要なものをそろえます。これらはみなネットでダウンロード出来ます。

●OSASK界の巨人、小柳さんのページにいって、 以下をダウンロード

OSASK version 2.8 用パッケージ(297KB) と書かれているところから、 make28.lzh
GNU Make for Win32 のコンパイル済バイナリ(113KB) と書かれているところから、 gnumakew.lzh

●次に、元祖 OSASK計画 のページの 開発者向けページ から、以下をダウンロード

aska10b19.lzh
naskset0.lzh
introa09.lzh
bs3_v03.lzh

LCC-Win32のページ から、LCC-Win32をダウンロードします。

LCC-Win32 compiler system. ( size: 3.2M last updated: Sunday, 08-Sep-2002 17:13:03 EDT) という所から、 lccwin32.exe

以下がそろったら、環境構築開始です。
  • aska10b19.lzh
  • bs3_v03.lzh
  • gnumakew.lzh
  • introa09.lzh
  • naskset0.lzh
  • lccwin32.exe

環境を整える

●LCC-Win32

まずは LCC-Win32 のインストールです。
こういうセットアップ型のソフトはおかしなことしないか心配がありますが、私が試した限りでは大丈夫だと思います。ちゃんとアンインストールもできます。

lccwin32.exeをダブルクリックしてインストーラを起動します。
途中、LCCをどこにインストールするか聞いてきます。



通常、Windowsのソフトは C:\Program Files 以下にインストールするのが定石ですが、ここでは C:\ 以下にインストールしておいたほうが後々楽です。
(理由は後で。なに、邪魔だったら使い終わった後にアンインストールすればいいんですから)
lcc」と書かれているところを「 C:\lcc 」と書き換えてインストールを続けます。
このLCCはファイルをコピーした後、以下のような画面がでて、しばらく時間がかかります。



たぶん、内部でなにかコンパイルしているのでしょう。しばらくほっときましょう。で、



この画面が出てくれれば、インストール終了です。

●OSASKのソース

次は、OSASKのソース、 make28.lzh を解凍します。すると、「 src28 」というフォルダが出てきます。
C:\ に、osask_m というフォルダを作り、ここに展開した「 src28 」コピーしておきます。
(この osask_m というフォルダ名は別になんでもいいんですが、8文字以下にしておかないと後で面倒になりますのでご注意を。)

●introa09

introa09.lzh を解凍します。
C:\osask_m 以下に、 「 inrto 」という名前のフォルダを作り、ここに出てきたファイルをすべてコピーしておきます。

●make

gnumakew.lzh を解凍します。以下の5個のファイルが出てきます。
  1. Copying
  2. gnumake.exe
  3. Readme
  4. Readme.w32
  5. source
この中の、「 gnumake.exe 」 を 「 make.exe 」に変名しておきます。

C:\osask_m 以下に、 「 bin 」という名前のフォルダを作り、ここに「 make.exe 」をコピーしておきます。

●NASK

naskset0.lzh を解凍します。以下の6つのファイルが出てきます。
  1. document
  2. hello.nas
  3. License
  4. nask.exe
  5. naskconv0.exe
  6. osalink0.exe
この中の3つのexe、 nask.exe・naskconv0.exe・osalink0.exe を、先ほど作っておいた C:\osask_m\bin にコピーしておきます。

●ASKA

aska10b19.lzh を解凍します。以下の6つのファイルが出てきます。
  1. a10b19e0.lzh
  2. ask2bin.bat
  3. document.txt
  4. Guigui00.ask
  5. Hello.ask
  6. hellok0.ask
この中の「 a10b19e0.lzh 」 をさらに解凍すると、以下の6つのファイルとフォルダが出てきます。
  1. ensrc (フォルダ)
  2. aska
  3. aska.exe
  4. copyrigh
  5. history
  6. readme
この中の、「aska.exe」を C:\osask_m\bin にコピーしておきます。

●コンパイル用バッチファイル

最後に、メイクやパスを通る作業が必要なんですが、これが意外と面倒臭いんですよね。そこで、以下のようなバッチファイルを C:\osask_m に作っておきます。
osam.bat
rem トップ
set OSASK_Home=c:\osask_m

rem LCCをインストールした場所
set LCC_Path=c:\LCC\bin

rem OSASKのソースを展開した場所
set OSA_SRC=src28

rem 各ツールの格納場所
set Bin_Path=bin

rem inrtoを展開した場所
set Intro_Path=intro

rem 作るOSASKのプラットホーム(以下はPC/AT用)
set P_Type=pcat




set Bak_Path=%PATH%

set PATH=%OSASK_Home%\%Bin_Path%;%LCC_Path%;%OSASK_Home%\%Intro_Path%;%PATH%;

cd %OSASK_Home%
cd %OSA_SRC%
make clean
make %P_Type%
cd %OSASK_Home%
set path=%Bak_Path%


●さあ、これで準備はできました。ちなみに、現在 C:\osask_m は以下のようになっています。

C:\osask_m\ ──┬── bin\ ┬─ aska.exe
                │     ├─ make.exe
             │     ├─ nask.exe
             │     ├─ naskcnv0.exe
        │     └─ osalink0.exe
        │
        │
        ├── intro\ ┬─ bim2bin2.exe
        │            ├─ colorc1.txt  
                │            ├─ guigui00.h 
                │            ├─ helloc4.txt 
                │                    ・
                │                    ・
                │                    ・
        │           ├─ obj2bim2.exe
                │            ├─ helloc4.c 
                │            ├─ license.txt 
                │            └─ stdlib.h
                │ 
                │ 
        ├── src28\ ┬─ CVS\
        │            ├─ ankfont\  
                │            ├─ ankfont0\ 
                │            ├─ papi0.ask 
                │            ├─ tapi0.ask
                │            ├─ papi0.ask
                │            ├─ makefile
                │                    ・
                │                    ・
                │                    ・
        │           ├─ nec98\
                │            ├─ pcat\ 
                │            ├─ towns 
                │            └─ document.txt
                │
                └── osam.bat
       

コンパイル

あとは DOS窓を開いて C:\osask_m に移動し、さっきの osam.bat を実行すれば、 src28OSASK.EXE が出来上がるはずです。
よくあるエラーに、「 ・・・・ 指定されたファイルが見つかりません 」というのがあります。大抵はパスがとっていないか、bin の中のファイルがたりないので、もう一度確認し、またご自分の環境とosam.bat の中の場所の指定がずれていないか確かめてください。

ちなみにこれは PC/AT 用です。ほかのプラットホーム用のものを作る場合は、osam.bat の 「set P_Type= 」の部分を書き換えてください。
(1) PC/AT 互換機
set P_Type=pcat
(2) VMware
set P_Type=vmware
(3) Bochs ver 1.3
set P_Type=bochs
(4) Bochs ver 1.2.1
set P_Type=bochs12
(5) FM-TOWNS
set P_Type=towns
(6) NEC PC-98x1
set P_Type=nec98
その他詳しいことは、src28 の中の document.txtmake.txt に書かれていますので、一度目を通しておくといいでしょう。

起動ディスクの作成

さて、できあがった OSASK.EXE ですが、くれぐれもこれをWindows上で実行しないでください!!

●ディスクの作成

  • まず、内容が消えてしまってもかまわない、健康なFDを2枚用意します。
  • これを「起動専用」でフォーマットしてください。
  • 出来たFDに OSASK.EXE をコピーします。
  • 次に、 bs3_v03.lzh を解凍します。すると、以下の5つのファイルが出てきます。
    1. Copyrigh.txt
    2. LICENSE.txt
    3. OSASKBS3.ask
    4. osaskbs3.bin
    5. README.txt
  • この中の、 osaskbs3.bin もFDにコピーしておきます。
これで準備完了です。マシンをリセットして、このFDから起動を行います。

●起動

ほぼまっさらなMS-DOSが起動したら、ここで OSASK.EXE を実行すると、自作したOSASKが起動します。

●OSASK単体の実行ディスクの作成

上記の状態だと、まるでOSASKが いちMS-DOSアプリみたいでちょっといやですね。OSASKの単体の起動ディスクを作ります。

さきほど用意しておいたもう一枚のフォーマット済みFDを用意してください。
OSASKの pokon をマウスでクリックした後、Ctrl + F を押します。



このように、イメージを聞いてきますので、OSASK.EXEを選択してEnterを押します。



FDを入れ替え、 Enter を押します。しばらく処理が続いて・・・・・・・



これで全ての処理が終了です。

これで、新しいFDはOSASK起動ディスクになりました。このままリセットしちゃいましょう。



アプリが何にもないので、こうなっていますが。

以上で、全ての作業が終わりました。おつかれさまでした。
コンパイル環境ができあがったので、そのうちちょっとした改造やいたずらもやってみようと思います。
なにか間違いがありましたら、ご一報くだされば幸いです。
※なお、このページは 村上さんのOSASKページ をかなり参考にさせていただきました。ありがとうございます。