「LOADLIN & Multi-Config in MS-DOS 6 (or so)」 佐野武俊 / Taketoshi Sano, (kgh12351@nifty.ne.jp) $Date: 1999/12/06 15:34:58 $, ($Revision: 1.3 $) `LOADLIN' を使って Linux を起動する場合、 DOS のマルチコンフィグ機能を 使うと、起動時にメニューで OS を選択できて結構便利です。 config.sys と autoexec.bat のサンプルを示すものです。 私も config.sys の書き方について詳しく知っているわけではないのですが、 一応の御参考になるかもしれません。 なお、Windows95/98 でも似たような方法でマルチコンフィグの機能を使える らしいという話を聞いています。 もし間違いを見つけたり、より良いアイデアを考えついたりした場合は、そっ と教えて下さいね。連絡先は著者のメールアドレス (kgh12351@nifty.ne.jp) でも、 JF の連絡先 (そのうちきっと専用の窓口ができるでしょう) でも結構 です。 ______________________________________________________________________ 目次 1. 「config.sys の例」 2. 「config.sys の内容説明」 2.1 「選択メニュー」 2.2 「共通設定」 2.3 「共通設定 (DOS のみ: 1)」 2.4 「DOS の起動: 1」 2.5 「DOS の起動: 2 (+InterLink)」 2.6 「Linux の起動」 2.7 「共通設定 (DOS のみ: 2)」 2.8 「共通設定 (DOS 用日本語表示)」 2.9 「共通設定 (DOS 用日本語入力)」 2.10 「その他」 3. 「autoexec.bat の例」 4. 「autoexec.bat の内容説明」 4.1 「初期化」 4.2 「Linux への分岐」 4.3 「ディスクキャッシュ、マウスドライバ、その他」 4.4 「InterLink への分岐」 4.5 「LOADLIN 実行」 4.6 「DOS の起動処理」 5. 「おわり」 6. この文書の配布について ______________________________________________________________________ 1. 「config.sys の例」 ではさっそく、まずは config.sys の例からです。 [menu] menuitem=Dos, Stand-Alone menuitem=Interlink, InterLink & InterServer menuitem=Linux, Load Linux ;menudefault=Dos, 3 ;menudefault=Interlink, 3 menudefault=Linux, 3 [common] files=80 buffers=10,0 stacks=9,256 break=on FCBS=1 shell=c:\dos\command.com c:\ /e:1024 /p lastdrive=g [doscom1] DOS=HIGH,UMB device=c:\dos\himem.sys /testmem:off device=c:\dos\emm386.exe highscan ram [Dos] include=doscom1 include=jp-k include=doscom2 [Interlink] include=Dos device=c:\dos\interlnk.exe /noprinter /lpt /noscan [Linux] [doscom2] device=c:\dos\power.exe std device=c:\dos\setver.exe devicehigh=c:\dos\ansi.sys [jp-disp] devicehigh=c:\dos\biling.sys devicehigh=c:\dos\jfont.sys /p=c:\dos\ devicehigh=c:\dos\jdisp.sys [jp-k] include=jp-disp device=c:\dos\kkcfunc.sys device=c:\dos\msimek.sys /A1 device=c:\dos\msime.sys /d*c:\dos\msimer.dic /dc:\dos\msime.dic /c1 /n /a1 2. 「config.sys の内容説明」 参考のために、上で例に挙げた config.sys についての説明を書いておきま す。詳しくは、MS-DOS なり PC-DOS なりのオンラインヘルプを参照下さい。 IBM の PC-DOS だとすこし違うところがあるかもしれません。私の使用したの は MS-DOS J6.02/V です。 2.1. 「選択メニュー」 最初に、起動時に選択メニューを表示するための設定です。 [menu] menuitem=Dos, Stand-Alone menuitem=Interlink, InterLink & InterServer menuitem=Linux, Load Linux ここの [menu] で、メニュー選択を使用する宣言をします。 menuitem= で autoexec.bat で使用する %config% 変数への値の設定と、メニュー画面に表 示する文字列を用意します。ここに書いた "Stand-Alone" とか "Load Linux" とかの文字がメニュー画面に表示されます。 ;menudefault=Dos, 3 ;menudefault=Interlink, 3 menudefault=Linux, 3 menudefault= でデフォルトの起動選択肢を設定します。 menuitem で設定し た %config% 変数の値のひとつを指定します。後の数字は、Wait の秒数で す。私の場合は 3秒待って何も入力が無ければデフォルトで起動するように設 定しています。メニュー画面での選択は数字でも矢印キーでも可能です。選択 してからリターンキーを押せば、その設定で起動できます。 2.2. 「共通設定」 [common] files=80 buffers=10,0 stacks=9,256 break=on FCBS=1 shell=c:\dos\command.com c:\ /e:1024 /p lastdrive=g ここ [common] はすべてに共通で設定する項目です。上にある項目はほとんど 時間がかからないので、そのまま入れてあります。 2.3. 「共通設定 (DOS のみ: 1)」 [doscom1] DOS=HIGH,UMB device=c:\dos\himem.sys /testmem:off device=c:\dos\emm386.exe highscan ram ここ [doscom1] は DOS で使用する場合に共通で設定する初期化項目で す。himem.sys とか emm386.exe とかをロードする時間がもったいないの で、Linux を起動する時は外すために [common] から分けました。 2.4. 「DOS の起動: 1」 [Dos] include=doscom1 include=jp-k include=doscom2 ここ [Dos] は DOS で使用する場合の設定のひとつです。 [doscom1], [jp- k], [doscom2] の順に実行します。 2.5. 「DOS の起動: 2 (+InterLink)」 [Interlink] include=Dos device=c:\dos\interlnk.exe /noprinter /lpt /noscan ここ [Interlink] は パラレルポートを使って Interlink でファイル転送を する場合のための DOS 用の設定です。 [Dos] の設定をしたあと で、interlnk.exe をロードします。 2.6. 「Linux の起動」 [Linux] ここ [Linux] は何もロードせずに autoexec.bat へ飛ばすためラベルだけで 何も書きません。 2.7. 「共通設定 (DOS のみ: 2)」 [doscom2] device=c:\dos\power.exe std device=c:\dos\setver.exe devicehigh=c:\dos\ansi.sys ここ [doscom2] は DOS 用の共通設定項目として後処理のものを入れておきま す。 2.8. 「共通設定 (DOS 用日本語表示)」 [jp-disp] devicehigh=c:\dos\biling.sys devicehigh=c:\dos\jfont.sys /p=c:\dos\ devicehigh=c:\dos\jdisp.sys ここ [jp-disp] は日本語表示関係のものだけを入れてあります。ここは PC- DOS ではドライバーの名前が異なると思います。 2.9. 「共通設定 (DOS 用日本語入力)」 [jp-k] include=jp-disp device=c:\dos\kkcfunc.sys device=c:\dos\msimek.sys /A1 device=c:\dos\msime.sys /d*c:\dos\msimer.dic /dc:\dos\msime.dic /c1 /n /a1 DOS 用の MS-IME のロードです。Windows でしか使わないなら、これは不要で す。私は Demacs-J で日本語入力をしたい場合があるという理由で入れてあり ます。 2.10. 「その他」 この他にも、 PCMCIA の SocketService, CardService を使う場合には設定が 必要ですが、省略します。[Interlink] のラベルを参考に追加していけ ば、[PCMCIA] の menuitem を作成することもそれほど困難では無いと思いま す。 3. 「autoexec.bat の例」 @ECHO OFF prompt $p$g if "%config%" == "Linux" goto linux loadhigh c:\dos\smartdrv.exe /x a b- c+ d- e- f- g- h- 1024 /B:4096 > nul loadhigh c:\dos\mouse.com > nul c:\dos\nlsfunc.exe c:\dos\country.sys c:\dos\chev.com jp path c:\dos;c:\tools\bin; set temp=c:\temp set tmp=c:\temp if "%config%"=="Interlink" goto interlink goto start :interlink set path=%PATH%;c:\Win31J loadhigh c:\dos\share.exe goto start :linux c:\loadlin\b_linux :start c: c:\dos\doskey > nul 4. 「autoexec.bat の内容説明」 上で例に挙げた autoexec.bat の内容を説明します。 4.1. 「初期化」 @ECHO OFF prompt $p$g この 2 つは autoexec.bat で行なうバッチ処理の内容表示をしないという指 定と、 使用する DOS Prompt の設定です。 4.2. 「Linux への分岐」 if "%config%" == "Linux" goto linux ここで、config.sys で設定した %config% 変数の値を見て、 Linux の起動の 場合は :linux のラベルまで飛ばします。 4.3. 「ディスクキャッシュ、マウスドライバ、その他」 loadhigh c:\dos\smartdrv.exe /x a b- c+ d- e- f- g- h- 1024 /B:4096 > nul loadhigh c:\dos\mouse.com > nul c:\dos\nlsfunc.exe c:\dos\country.sys c:\dos\chev.com jp path c:\dos;c:\tools\bin set path=%PATH%;c:\Win31J DOS 用のディスクキャッシュドライバとマウスドライバの起動/設定、それか ら日本語表示用の設定、パスの指定です。 4.4. 「InterLink への分岐」 if "%config%"=="Interlink" goto interlink goto start :interlink loadhigh c:\dos\share.exe goto start ここで、 InterLink を使う場合にのみ、share.exe をロードするよう設定し ています。 4.5. 「LOADLIN 実行」 :linux c:\loadlin\b_linux ここで、LOADLIN を実行するよう指定しています。私の環境では、 c:\\loadlin\\b_linux.bat に LOADLIN のコマンドを書いて、バッチファイル で LOADLIN を実行するようにしてあります。LOADLIN についての詳細 は、LOADLIN のパッケージを展開してできる Readme を参照してください。こ こから先はもう Linux が起動してしまいますので、以後の記述は Linux 起動 時には関係ありません。 あと、重要な注意として、ディスプレイが日本語表示モードだと LOADLIN の 起動後、Linux の起動メッセージが画面に表示されません。 これを防ぐために、LOADLIN の起動用バッチファイルの先頭、サンプルにある smartdrv /C の後に、 chev us という行を追加しておくと良いでしょう。 これで、日本語表示モードからでも、バッチファイルの実行で Linux を起動 できます。 お試しください。 4.6. 「DOS の起動処理」 :start c: c:\dos\doskey > nul ここは DOS 用の共通設定を指定しています。ちなみに上はドライブの指定と doskey のロードを実行しています。 5. 「おわり」 以上で、LOADLIN と組み合わせるためのマルチコンフィグの機能の設定方法の 紹介を終ります。 なお、著者がこの文章を書いた当時はまだまだ DOS/Windows に頼っていたた め、ここで紹介した情報がけっこう役に立ったのですが、最近ではほとんど Linux だけで用が足りるようになってしまったのと、 Windows98 の浪費する ディスクスペースが巨大なために Windows を削除してしまったので、今後こ れについての情報が更新される予定は当面ありません。 もし「俺が最新の情報に更新してやる!」という方が現われたなら、喜んでこ の文書の担当を交代しますので、是非御連絡下さい。 6. この文書の配布について copyrighted (c) 1999 Taketoshi Sano この文書は GNU パブリックライセンス (GPL) バージョン 2 かそれ以降の条 件、あるいは標準的な Linux ドキュメントプロジェクト (LDP) の条件に基づ いた配布ならば自由にしていただいてかまいません。これらのライセンスはこ のドキュメントが入手できるようなサイトから入手できます。LDP の条件は (翻訳をのぞく) いかなる修正も許可していません。修正されたバージョンは GPL の基でのみ配布されるものとすることが可能です。