スポンサーリンク

SPLASH(4) FreeBSD/i386 カーネルインタフェースマニュアル SPLASH(4)

名称

splash − 起動画面 (splash screen) とスクリーンセーバのインタフェース

書式

pseudo-device splash

解説

splash 疑似デバイスドライバは、カーネルに起動画面とスクリーンセーバのサ ポートを加えます。このドライバは起動画面のビットマップイメージを読み込み たい時や、スクリーンセーバを使いたい時に必要です。

起動画面 (SPLASH SCREEN)

システムが起動しようとしている時に、任意のビットマップイメージを画面上に 表示できます。この画像はカーネルの初期化プロセスの間じゅう画面に表示さ れ、 ‘‘Login’’ プロンプトが画面に現れるか、スクリーンセーバが読み込まれて 初期化されるまで残ります。また、この画像はキーを打つと消えますが、カーネ ルがまだデバイスを検出している間はすぐには消えないかもしれません。

もしカーネルを読み込む際に −c ないし −v ブートオプションを指定すると、起 動画面の画像は表示されません。ただしそれでも画像は読み込まれていて、後で スクリーンセーバとして使えます。下記を参照してください。

ビットマップを表示するためには、ビットマップファイルと、それに対応した起 動画面イメージ復号モジュールがブートローダによって読み込まれていることが 必要です。現在、以下の復号モジュールが利用可能です:

       splash_bmp.ko

W*ndows BMP ファイル復号器。 BMP ファイルフォーマットには さまざまな色数のものがありますが、この復号器は現在のとこ ろ 256 色のビットマップのみを扱えます。それ以外の色数の ビットマップは表示できません。

使用例の節で起動画面の設定法を詳しく説明しています。

VGA の標準的なビデオモードを使う場合にはビットマップのサイズは 320x200 以 下であることが必要です。 VESA モジュールを静的にリンクするかもしくは VESA モジュールを読み込むかして、カーネルの VESA モードサポートを有効にしてい るのなら (vga(4) 参照) 、VESA BIOS とビデオカード上のビデオメモリの量にも よりますが、最大で 1024x768 の解像度のビットマップを読み込むことができま す。

スクリーンセーバ

スクリーンセーバはシステムがアイドル状態だと考えられる時に起動されます。 アイドル状態とは、指定した時間の間、ユーザがキーを打たず、マウスも動かさ なかった時です。スクリーンセーバは選択可能なモジュールですので、明示的に メモリに読み込まれている必要があります。現在、以下のスクリーンセーバモ ジュールが利用可能です:

       blank_saver.ko

これは単に画面を空白にするだけです。
daemon_saver.ko

BSD デーモンのアニメーション。
fade_saver.ko

画面が徐々に消えてゆきます。
green_saver.ko

モニタが省電力モードを備えていれば、電源を切ります。
logo_saver.ko

グラフィックによる BSD デーモンのアニメーション。
rain_saver.ko

画面に夕立を描きます。
snake_saver.ko

文字列でできた蛇を描きます。
star_saver.ko

星が瞬きます。
warp_saver.ko

星が素早く流れます。

スクリーンセーバモジュールは kldload(1) を使って読み込みます:

kldload logo_saver

以下のようにしてタイムアウトの秒数を指定できます:

vidcontrol -t N

また /etc/rc.conf ファイルの saver 変数をあなたの選んだスクリーンセーバに 設定しタイムアウトを blanktime 変数に設定できます。これによりシステム起動 時に、自動的にスクリーンセーバを読み込み、タイムアウトを設定できます。

saver キーを押すことでスクリーンセーバを直ちに起動できます。デフォルトは AT 拡張キーボードでは Shift-Pause 、AT 84 キーボードでは Shift-Ctrl-NumLock/Pause です。キーマップ (kbdcontrol(1、) keymap(5) 参 照) を書き換えて saver 機能をお好みのキーに割り当てることで、 saver キー を変更できます。

画面がテキストモードでない時にはスクリーンセーバは機能しません。

起動画面をスクリーンセーバとして使う

起動画面の画像を読み込んでいてスクリーンセーバを読み込んでいない場合、起 動画面の画像をスクリーンセーバとして使い続けることができます。画面を切り 替えるまでの間隔は、上の スクリーンセーバの節にあるやりかたで指定できま す。

関連ファイル

       /boot/loader.rc

ブートローダが読み込むスクリプト
/etc/rc.conf
システムの設定情報
/modules/splash_*.ko
起動画面イメージ復号モジュール
/modules/*_saver.ko
スクリーンセーバモジュール
/modules/vesa.ko
VESA サポートモジュール

使用例

起動画面やスクリーンセーバを読み込むためには、カーネル設定ファイルに以下 の行があることが必要です。

pseudo-device splash

以下の例は、ブートローダのプロンプトから起動画面の画像を読み込む方法を示 しています。これらはプロンプトのところで手で打っても良いですし、ブート ローダのスクリプト /boot/loader.rc (loader.rc(5) 参照) に書いてもかまいま せん。

      load kernel
      load -t splash_image_data chuck.bmp
      load splash_bmp

2 行目で起動画面に使うビットマップイメージファイルを読み込みます。上の例 では、ファイル chuck.bmp が読み込まれます。この行に −t splash_image_data というオプションを含めることが非常に重要です。起動画面イメージ復号モ ジュールは、既に読み込まれているはずのビットマップデータを探す時にこのタ グ名を探すからです。 3 行目で起動画面イメージ復号モジュール splash_bmp を 読み込んでいます。

以下の例では、VESA モジュールを読み込んでいるので、標準の VGA モードでは 表示できないビットマップファイルも、 VESA ビデオモードを使って表示される はずです。

      load kernel
      load vesa
      load -t splash_image_data chuck.bmp
      load splash_bmp

もし VESA サポートがカーネルに静的にリンクされているなら、 VESA モジュー ルを読み込む必要はありません。上の最初の例のように、ただビットマップファ イルと起動画面イメージ復号モジュールを読み込むだけで良いです。

警告

起動画面もスクリーンセーバも、コンソールドライバとして syscons(4) を用い る場合にのみ有効です。もうひとつのコンソールドライバ pcvt(4) では利用でき ません。

バグ

スクリーンセーバが既に読み込まれている時に他のスクリーンセーバを読み込ん だ場合、最初のスクリーンセーバは自動的には取り除かれずにメモリに残り、 カーネルのメモリを無駄に消費します。

関連項目

vidcontrol(1), syscons(4), vga(4), rc.conf(5), kldload(8), kldunload(8)

歴史

splash ドライバは FreeBSD 3.1 に初めて登場しました。

作者

splash ドライバとこのマニュアルページは Kazutaka Yokota ⟨yokota@FreeBSD.org⟩ が書きました。 splash_bmp モジュールは
Michael Smith ⟨msmith@FreeBSD.org⟩ と
Kazutaka Yokota が書きました。

FreeBSD February 9, 1999 FreeBSD

スポンサーリンク