スポンサーリンク

VIDCONTROL(1) FreeBSD 一般コマンドマニュアル VIDCONTROL(1)

名称

vidcontrol − システムコンソールの制御と設定のユーティリティ

書式

vidcontrol [−CdLHPpx] [−b color] [−c appearance] [

                                                         −f [size] file][−g geometry] [−h size] [−i adapter | mode] [−l screen_map][−M char] [−m on | off] [−r foreground background][−S on | off] [−s number] [−t N | off] [mode][foreground [background]] [show]

解説

vidcontrol コマンドを用いて syscons(4) コンソールドライバの様々なオプショ ン、例えば、画面モード、色、カーソル形状、画面出力マップ、フォント、スク リーンセーバタイムアウトを設定できます。

以下のコマンドラインオプションをサポートしています:

       mode

新しいビデオモードを選択します。現在サポートしているモードは次の 通りです: 80x25, 80x30, 80x43, 80x50, 80x60, 132x25, 132x30, 132x43, 132x50, 132x60, VGA_40x25, VGA_80x25, VGA_80x50, VGA_90x25, VGA_90x30, VGA_90x43, VGA_90x50, VGA_90x60, EGA_80x25, EGA_80x43, VESA_132x25, VESA_132x43, VESA_132x50, VESA_132x60 。 ラスタテキストモード VGA_800x600 も選択できます。後述の ビデオ モードサポートを参照してください。

foreground [background]
テキストを表示する際の色を変更します。前景色 (例: ‘‘vidcontrol white’’) 、あるいは前景色および背景色 (例: ‘‘vidcontrol yellow blue’’) を指定することにより変更できます。後述の show コマンドを 使用して、使用可能な色を見られます。

show
指定したプラットフォームでサポートされている色を表示します。

−b color
ボーダ色を color に設定します。本オプションをビデオドライバが常に サポートしているのではないかもしれません。

−C
ヒストリバッファをクリアします。

−c normal | blink | destructive
カーソルの外観を変更します。カーソルは、反転ブロック (normal) あ るいは古いハードウェアカーソル様のもの (destructive) のいずれかで す。前者は、オプションで blink にできます。後者は実際にはシミュ レートしています。

−d
現在の画面出力マップを表示します。

−f [size] file
サイズ size 用のフォントをファイル file から読み込みます。 (現在 のところ size には 8x8, 8x14, 8x16 のみが指定できます)。フォント ファイルは uuencode された形式でも生のバイナリフォーマットでも構 いません。メニューによる vidfont(1) コマンドを使用して、好きな フォントをロード可能です。

size は省略可能です。この場合、 vidcontrol はフォントファイルの大 きさから、推測します。

MDA や CGA のような古いビデオカードはソフトウェアフォントをサポー トしないことに注意してください。後述の ビデオモードサポートと 使 用例と syscons(4) のマニュアルページも参照してください。

−g geometry
テキストモードの geometry を、選択可能なジオメトリに設定します。 現在、 VESA_800x600 等のラスタモードのみが、本オプションをサポー トします。後述の、 ビデオモードサポートと 使用例を参照してくださ い。

−h size
ヒストリ (スクロールバック) バッファを size 行に設定します。

−i adapter
現在のビデオアダプタに関する情報を表示します。

−i mode
現在のビデオハードウェアにて使用可能なビデオモードを表示します。

−l screen_map
画面出力マップをファイル screen_map から読み込んで設定します。 syscons(4) も参照してください。

−L
出力画面マップをデフォルトに設定します。

−M char
マウスポインタを描く基本となる文字を char にします。

−m on | off
マウスポインタを on または off します。テキストモードでのカット & ペースト機能を利用するために moused(8) デーモンと共に使用します。

−p
標準入力として参照される端末デバイスに対応する、ビデオバッファの 現在の内容をキャプチャします。 vidcontrol ユーティリティは、ビデ オバッファの内容を標準出力に対し、生のバイナリフォーマットで出力 します。このフォーマットに関する詳細は、後述の ビデオバッファダン プのフォーマットを参照してください。

−P
−p
と同じですが、ビデオバッファの内容をプレインテキストでダンプ し、印字不可の文字とテキスト属性情報を無視します。

−H
−p
または −P と共に使用すると、ビデオバッファの見える範囲だけでは なくすべてのヒストリバッファをダンプするよう vidcontrol に指示す ることになります。

−r foreground background
反転表示モードで用いる色を前景色 foreground および背景色 background に変更します。

−S on | off
vty の切り替えをオンまたはオフにします。 vty の切り替えがオフの場 合、別の仮想端末への切り替えの試みは失敗します (デフォルトは、vty の切り替えが可能です)。この保護は、カーネルが DDB オプション付き でコンパイルされているときには簡単にバイパスされてしまいます。物 理的に安全であるとみなされるマシン上では、おそらくカーネルデバッ ガを組み込むべきではないでしょう。

−s number
現在の vty を number に設定します。

−t N | off
スクリーンセーバのタイムアウト値を N 秒に設定、あるいはスクリーン セーバを無効 ( off )にします。

−x
出力に 16 進数を用います。

ビデオモードサポート
前記の全モードをビデオカードがサポートしているとは限らないことに注意して ください。 −i mode オプションを使用することにより、ビデオカードがサポート しているモードを調べることが可能です。

VESA ビデオモードもしくは 132 桁モードを使用する場合には、 VESA BIOS サ ポートをカーネルにリンクするか KLD にてロードする必要があることにも注意し てください ( vga(4) を参照してください)。

VGA 90 桁モードを使用する場合には、カーネルを VGA_WIDTH90 オプション付き でコンパイルする必要があります ( vga(4) を参照してください)。

25 または 30 行モード以外のビデオモードは、特定の大きさのフォントが必要と なるかもしれません。前述の −f オプションを使用し、フォントファイルをカー ネルにロードしてください。必要な大きさのフォントがカーネルにロードされて いないと、ユーザが新規ビデオモードを設定しようとした場合に vidcontrol は 失敗します。

モード フォントの大きさ

25 行モード

8x16 (VGA), 8x14 (EGA)

30 行モード

8x16

43 行モード

8x8

50 行モード

8x8

60 行モード

8x8

同じフォントの 3 つの大きさすべて (8x8, 8x14, 8x16) を常にロードすること が望ましいです。

/etc/rc.conf または /etc/rc.conf.local 中の変数を希望のフォントファイルに 設定できます。これにより、システム起動時にこれらのフォントが自動的にロー ドされます。後述を参照してください。

ラスタテキストモード VESA_800x600 を使用したい場合、 SC_PIXEL_MODE オプ ション付きでカーネルを再コンパイルする必要があります。このカーネルオプ ションについての詳細は、 syscons(4) を参照してください。

ビデオバッファダンプのフォーマット

vidcontrol ユーティリティは、 syscons(4) CONS_SCRSHOT ioctl(2) を使用し、 ビデオバッファの現在の内容をキャプチャします。 vidcontrol ユーティリティ は、バージョンと追加情報を標準出力に書き出し、その後に端末デバイスの内容 を続けて書き出します。

VGA ビデオメモリは、典型的には 2 バイトタプルの並びであり、 1 タプルが各 文字位置に対応します。各タプルでは、最初のバイトが文字コードであり、 2 番 目のバイトが文字の色属性です。

VGA の色属性バイトは次のように見えます:

ビット#                    幅            意味

7

<X0000000>

1

文字のブリンク

6:4

<0XXX0000>

3

背景色

3

<0000X000>

1

明い前景色

2:0

<00000XXX>

3

前景色

以下は、3 ビット幅の基本色のリストです:

             0     黒

1 青
2 緑
3 シアン
4 赤
5 マゼンタ
6 茶
7 明るい灰

ビット 3 (明い前景色フラグ) セット時の基本色は次の通りです:
0 暗い灰
1 明い青
2 明い緑
3 明いシアン
4 明い赤
5 明いマゼンタ
6 黄
7 白

例えば、2 バイト

65 158

は、大文字 A (文字コード 65) を、ブリンクさせ (ビット 7 セット)、明い青の 背景 (ビット 6:4) に黄色 (ビット 3:0) という指定です。

vidcontrol の出力には小さなヘッダがあり、そこには、出力を処理するユーティ リティに有用な追加情報が含まれます。

最初の 10 バイトは、常に次の並びです。

バイト範囲 内容

1 から 8 リテラルテキスト ‘‘SCRSHOT_’’

9 ファイルフォーマットバージョン番号

10 ヘッダの残りバイト数

これに続くバイトは、バージョン番号依存です。

バージョン バイト 意味
1 11 文字数単位の端末幅
12 文字数単位の端末の深さ
13 以降 スナップショットデータ

80x25 画面のダンプは (16 進数で) 次のように開始します。

53 43 52 53 48 4f 54 5f 01 02 50 19
----------------------- -- -- -- --
          |              |  |  |  ‘ 10 進数の 25
          |              |  |  ‘--- 10 進数の 80
          |              |  ‘------ 残りのヘッダデータのバイト数 2
          |              ‘--------- ファイルフォーマットバージョン 1
          ‘------------------------ リテラル "SCRSHOT_"

ビデオ出力設定

ブート時の設定

次の変数を /etc/rc.conf または /etc/rc.conf.local に設定することにより、 ブート時にビデオ出力を設定可能です。

       blanktime

−t オプション用のタイムアウトを設定します。
font8x16
, font8x14, font8x8
−f
オプション用のフォントファイルを指定します。
scrnmap

−l
オプション用の画面出力マップファイルを指定します。

更なる詳細は rc.conf(5) を参照してください。

ドライバの設定
デフォルトフォントなどのデフォルト設定オプションの変更を、ビデオカードド ライバが許す場合があります。その場合、ブート時のオプション設定の必要はな くなります。詳細はビデオカードドライバマニュアル (例えば vga(4)) を参照し てください。

関連ファイル

       /usr/share/syscons/fonts/*

フォントファイル。
/usr/share/syscons/scrnmaps/*
画面出力マップファイル。

使用例

カーネルに /usr/share/syscons/fonts/iso-8x16.fnt をロードしたい場合、 vidcontrol を次のように実行します。

vidcontrol -f 8x16 /usr/share/syscons/fonts/iso-8x16.fnt

フォントファイルが /usr/share/syscons/fonts にある場合、ファイル名を iso-8x16 のように短縮可能です。

vidcontrol -f 8x16 iso-8x16

更に、フォントの大きさ ‘‘8x16’’ を省略可能です。

vidcontrol -f iso-8x16

更に、フォントの大きさを指定するサフィックスも省略可能です。この場合、 vidcontrol は、現在表示されているフォントの大きさを使用してサフィックスを 作成します。

vidcontrol -f iso

同様に、画面出力マップファイルが /usr/share/syscons/scrnmaps にある場合、 −l オプション用のファイル名を短縮可能です。

vidcontrol -l iso-8859-1_to_cp437

このコマンドは /usr/share/syscons/scrnmaps/iso-8859-1_to_cp437.scm をロー ドします。

次のコマンドは、100x37 のラスタテキストモードを設定します (LCD モデルに よっては有用です):

vidcontrol -g 100x37 VESA_800x600

次のコマンドは、最初の仮想端末の内容をキャプチャし、出力を shot.scr ファ イルへ向けます。

vidcontrol -p < /dev/ttyv0 > shot.scr

次のコマンドは、4 番目の仮想端末の内容を、人間が読めるフォーマットで標準 出力へダンプします。

vidcontrol -P < /dev/ttyv3

関連項目

kbdcontrol(1), vidfont(1), keyboard(4), screen(4), syscons(4), vga(4), rc.conf(5), kldload(8), moused(8), watch(8)

様々な scr2* ユーティリティが、 Ports Collection の graphics と textproc のカテゴリにあります。

作者

Søren Schmidt ⟨sos@FreeBSD.org⟩

寄与者

Maxim Sobolev ⟨sobomax@FreeBSD.org⟩, Nik Clayton ⟨nik@FreeBSD.org⟩

FreeBSD 10.0 May 27, 2002 FreeBSD 10.0

スポンサーリンク