FreeBSD(98) 30行モード 平成18年(2006年)06月03日 (土) FreeBSD(98) には、テキスト画面で 30 行表示を行なう機能があります。このドキ ュメントでは 30 行表示を行なうための手順を解説します。 注) この機能は最近メンテナンスされていません。動作報告をお待ちしています。 FreeBSD(98) で 30 行表示を行う方法は、次の2通りあります。 o 24KHz ディスプレイで MS-DOS 上の「30 行計画」と同様の方法 o PC-9821 と 31KHz 対応ディスプレイの組合わせで 31KHz モードを使う方法 それぞれを以下に説明します。 なお、386BSD(98)-C2 にあったビットマップコンソール (グラフィック画面を用い て 80x44 行表示を行なう) はサポートしていません。 1. 24KHz ディスプレイで MS-DOS 上の「30 行計画」と同様の方法 30 行表示を有効にするためには 30 行表示対応のカーネルを作成する必要 があります。そのためには、 /sys/pc98/pc98/module.h (30 行表示のパラメータ) /sys/pc98/conf/XXX (カーネル config ファイル) を編集しなければなりません。 1.1. module.h の編集 /sys/pc98/pc98/module.h を適当なエディタを用いて編集します。変更する のは、 #define LINE30_ROW 30 #define _HS 1 + 1 #define _VS 2 #define _HFP 3 + 1 #define _HBP 14 + 1 #define _VFP 11 #define _VBP 44 の部分です。これ以外のところを書き換えてはいけません。 ・ LINE30_ROW は、一画面の行数です。 ・ _VS は、垂直同期信号の幅です。 ・ _HS は、水平同期信号の幅です。 ・ _HFP は、CRT右側の非表示区間です。 ・ _HBP は、CRT左側の非表示区間です。 ・ _VFP は、CRT下側の非表示区間です。 ・ _VBP は、CRT上側の非表示区間です。 これらの値は、DOS 上の 30bios シリーズの mkmodule.com の表示する値 を使うことができます。あらかじめ DOS 上で確認しておくと便利です。ま た、mkmodule の出力から半自動的に作成することもできます。 1.2. module.h の半自動作成 module.h の作成ですが、mkmodule を使用できる場合は、その出力から半 自動的に作成することができます。手順は以下の通りです。 1. 2HC ディスクを用意する。 2. MS-DOS 上で mkmodule.com を実行する。 3. 適当な状態になったらリターンキーを押す。 4. SHIFT+F10 を押し、module??.inc というファイルを作成する。 5. 1 画面の行数をメモする。 6. ESC キーを押し、mkmodule を終了する。 7. 4 で作成した module??.inc を 2HC ディスクにコピーする。 8. FreeBSD(98) を起動する。 9. 2HC ディスク上の module??.inc を適当なディレクトリーにコピーす る。 10. mk30line を実行する。 11. "Enter module file name: "と聞いてくるので、module??.inc の正 しいファイル名を入力し、リターンキーを押す。 12. "Enter number of lines: "と聞いてくるので、1 行の行数を入力す る。 これにより、module??.inc にしたがって /sys/pc98/pc98/module.h が作 成されます。 注意 /sys/pc98/pc98/module.h の書き込みパーミッションが無いと実行で きません。 1.3. config ファイルの設定 /sys/pc98/conf の下のカーネルの config ファイルに、 options LINE30 を加えて下さい。もし、すでにある場合は変更する必要はありません。ま た、コメントアウトされている場合は、`#' を外して下さい。 1.4. カーネルの再構築 いつものように(?)カーネルを再構築して下さい。カーネルの再構築の解説 は「カーネルの再構築」 (Config98.txt 参照) にあります。 2. PC-9821 と 31KHz 対応ディスプレイの組合わせで 31KHz モードを使う方法 PC-9821 と 31KHz 対応ディスプレイを組み合わせて使用した場合、元々 30 行 (480 ライン) の表示能力があるので、特別な設定は不要です。単に、 カーネルを「options LINE30」を有効にして再構築するだけです。上記 1.3. と 1.4. を参照してください。 また、この環境では options LINE30 の有無が、スプラッシュスクリーン やスクリーンセーバでの 640x480 ドットの画像表示の可否も兼ねています。 3. 30 行表示の使用 上記 1 あるいは 2 の方法で準備をしたあと、実際の画面表示の制御は vidcontrol を使用します。詳しくはマニュアルページを参照して下さい。 FreeBSD(98) では、以下のオプションは使用できません。 VGA_40x25 VGA_80x25 VGA_80x50 VGA_320x200 EGA_80x25 EGA_80x43 かわりに以下のオプションが追加されています。 PC98_80x25 (80x25モードにする) PC98_80x30 (80x30モードにする) ---- FreeBSD(98) 移植チーム