VGA出力はフレームバッファドライバが用意されており、コンソール画面として使用することができます。初期状態ではSVGAサイズ(解像度:800x600)の24ビットカラー設定となっていますが、VGAサイズ(640x480)及びXGAサイズ(1024x768)や8/16ビットカラーにも対応しています。ここでは、この設定の変更方法について説明します。
デフォルト設定の変更には、カーネルのリコンパイルが必要となります。
まず、コンフィギュレーションします。
[PC ~/atmark-dist]$
make menuconfig
メニューが表示されるので、
Kernel/Library/Defaults Selection --->
--- Kernel is linux-2.4.x
(None)Libc Version
[ ] Default all settings
[*] Customize Kernel Settings
[ ] Customize Vendor/User Settings
[ ] Update Default Vendor Settings
とします。続いてKernel Configurationのメニューが表示されるので、
Device drivers --->
Graphics support --->
[*] EP93xx frame buffer support
EP93xx frame buffer display(CRT display) --->
EP93xx frame buffer resolution(SVGA(60Hz)) --->
EP93xx frame buffer depth(24bpp true color) --->
上記の項目を変更した後、コンフィギュレーションを終了させます。
続いて、ビルドします。
[PC ~/atmark-dist]$
make all
ビルドしてできたカーネルイメージ(linux.bin.gz)をArmadillo-240へ書き込み、VGAのデフォルトの設定は完了です。
デフォルトの解像度・色深度以外でVGAを動作させるときは、Linuxブートオプションに設定を追加するだけで変更ができます。
7章Linuxブートオプションを参考にhermitを起動させます。ブートオプションに" video=ep93xxfb:???"を追加します。"???"には、表10.6「解像度一覧」表10.7「色深度一覧」からモード名を挿入してください。
表10.6 解像度一覧
モード名 | 解像度 | 水平周波数(kHz) | 垂直周波数(Hz) | ドットクロック(MHz) |
---|
CRT-640x480 | 640x480 | 24.998 | 31.248 | 59.519 |
CRT-640x480@75 | 640x480 | 31.998 | 38.093 | 76.186 |
CRT-800x600 | 800x600 | 38.401 | 37.501 | 60.002 |
CRT-800x600@75 | 800x600 | 49.998 | 47.346 | 75.754 |
CRT-1024x768 | 1024x768 | 66.662 | 49.600 | 61.538 |
CRT-1024x768@75 | 1024x768 | 80.000 | 60.976 | 76.220 |
表10.7 色深度一覧
モード名 | 色深度 |
---|
8bpp | 8ビットカラー |
16bpp | 16ビットカラー |
24bpp | 24ビットカラー |
32bpp | 32ビットカラー |
以下は800x600 60Hz, 8ビットカラーの設定例です。
hermit>
setenv video=ep93xxfb:CRT-800x600,8bpp