1


TurboGXplus フレームバッファー

この章では、TurboGXplustrademark カードを備えたシステムを設定する方法について説明します。また、画面の解像度に合わせて TurboGXplus の設定を変更する方法や、複数のモニターを使用するための設定方法についても説明します。


TurboGXplus がサポートするモニター

TurboGXplus カードがサポートするモニターの一覧を以下に示します。



注 - 表 1-1 のモニターの機種および仕様は、予告なく変更される場合があります。詳細は、購入先にお問い合わせください。



表 1-1 TurboGXplus がサポートするモニター

モデル

パーツ番号

種類/大きさ/FCC

モニター ID
センスコード

標準の解像度と
リフレッシュレート

X248A

365-1068-01

カラー 21 インチ

2

1280 x 1024、76 Hz (注 1)

GDM-20D10

365-1167-01

カラー 20 インチ

4

1152 x 900、76 Hz (注 1)

1152 x 900、66 Hz

1280 x 1024、67 Hz

1280 x 1024、76 Hz

GDM-1955A15

365-1081-01

カラー 19 インチ

3

1152 x 900、66 Hz

GDM-1962

365-1095-01

カラー 19 インチ

4

1152 x 900、76 Hz (注 1)

1152 x 900、66 Hz

1280 x 1024、67 Hz

GDM-1962B

365-1160-01

カラー 19 インチ

4

1152 x 900、76 Hz (注 1)

1152 x 900、66 Hz

1280 x 1024、67 Hz

GDM-1604A15

365-1079-01

カラー 16 インチ

3

1152 x 900、66 Hz

GDM-1662B

365-11593-01

カラー 16 インチ

6

1152 x 900、76 Hz (注 1)

1152 x 900、66 Hz

CPD-1790

365-1151-01

カラー 16 インチ

3

1152 x 900、66 Hz (注 1)

1024 x 768、77 Hz

X449

365-1286-01

カラー 15 インチ

0

1024 x 768、77 Hz

GDM-20S5

365-1168-01

グレースケール 20 インチ

2 or

4*

1280 x 1024、76 Hz or

1152 x 900、76 Hz (注 2)

1280 x 1024、67 Hz

17SMM4 A

365-1100-01

グレースケール 17 インチ

6

1152 x 900、76 Hz

M20P110

365-1099-01

グレースケール 19 インチ

4

1152 x 900、76 Hz

Non-Sun

--

Unknown

7

1152 x 900、66 Hz

注 1. 電源投入時のデフォルトの解像度です。

注 2. モニター ID センスコードは、背面にあるスイッチで選択することができます。



デフォルトの画面解像度

モニター ID センスコードに対応するデフォルトの画面解像度を、表 1-2 に示します。

表 1-2 TurboGXplus のモニターセンスコード

コード

画面解像度

7

1152 x 900、66 Hz

6

1152 x 900、76 Hz

5

1024 x 768、60 Hz

4

1152 x 900、76 Hz

3

1152 x 900、66 Hz

2

1280 x 1024、76 Hz

1

1600 x 1280、76 Hz

0

1024 x 768、77 Hz



画面解像度の設定

TurboGXplus フレームバッファーに画面解像度を設定する場合には、不揮発性メモリーに格納された PROM スクリプトである nvramrc を実行する必要があります。PROM はデバイスの調査する際に、変数 use-nvramrc? の値を調べ、真の場合はnvramrc 内の FORTH コードを実行します。それ以外の場合は probe-sbus (Ultra 以前のシステムの場合)、probe-all (Ultra システムの場合)、install-consolebanner を呼び出します。

probe-sbus または probe-all ステージと、install-console ステージの間に解像度を初期化する例を、以下に示します。

初めに probe-sbus または probe-all が呼び出されてデバイスを調べます。これによりデバイスツリーが作成され、デバイスが初期化されます。

次の行では、モニターの表示設定値を含む vsetup という FORTH ワードを定義しています。

 

コード例 1-1 probe-sbus ステージと install-console ステージ間の解像度の初期化
#!/bin/sh
eeprom fcode-debug\?=true
eeprom use-nvramrc\?=true
eeprom nvramrc='probe-sbus        (または probe-all)
: vsetup " 117000000,71691,67,16,112,224,1280,2,8,33,1024,COLOR,0OFFSET" ;
vsetup 4
" /sbus/cgsix@1" " override" execute-device-method drop
install-console
banner

以下の行は、モニタービデオの設定値を表しています。表 1-3 では、この行に含まれる設定値について説明しています。

 

" 117000000,71691,67,16,112,224,1280,2,8,33,1024,COLOR,0OFFSET"

表 1-3 ビデオ設定の仕様

説明

117000000

ピクセル周波数、ドットクロック (Hz)

71691

水平周波数 (Hz)

67

垂直周波数 (Hz)

16

水平フロントポーチ (ピクセル数)

112

水平同期幅 (ピクセル数)

224

水平バックポーチ (ピクセル数)

1280

水平表示ピクセル (ピクセル数)

2

垂直フロントポーチ (ライン数)

8

垂直同期幅 (ライン数)

33

垂直バックポーチ (ライン数)

1024

垂直表示ライン (ライン数)

COLOR

カラーモニターフラグ

0OFFSET

同期ペデスタルフラグなし


vsetup 4 の行では、ビデオ文字列をスタック上にプッシュしています。数字の 4 は、解像度を変更するモニターのセンスコードを定義しています。サポートされているモニターコードについては、表 1-4 を参照してください。使用する数値は、TurboGXplus フレームバッファーに装備されたモニターと一致させてください。

その次の行では、解像度を変更するデバイスのパスを示す文字列 /sbus/cgsix@1 を、FORTH のスタックにプッシュしています。cgsix@1 "1" は、SBus スロット番号を表します。

SBus スロット 1 上の cgsix フレームバッファーを変更する例を以下に示します。

 

コード例 1-2 SBus スロット 1 上の cgsix フレームバッファーの変更
ok nvedit
0: probe-sbus                    (または probe-all)
1: : vsetup " 117000000,71691,67,16,112,224,1280,2,8,33,1024,COLOR,0OFFSET" ;
2: vsetup 4
3: " /sbus/cgsix@1" " override" execute-device-method drop
4: install-console
5: banner
6: ^C
ok nvstore
ok setenv use-nvramrc? true
ok setenv fcode-debug? true

"override" 文字列は、FORTH のスタック上にあるデータを使用して解像度を再設定する cgsix の fcode PROM の、実際のエントリポイントです。execute-device-method は、実際に override を呼び出し、成功・失敗フラグを返します。このフラグは、execute-device-method の後に続く drop コマンドでは無視されます。

残りの 2 行 (install-consolebanner) では、表示装置の端末ドライバをインストールして、リセット時または再起動時にバナーを表示します。

UNIX スクリプトによるモニターの設定

UNIX スクリプトを使用して、TurboGXplus を 1280 x 1024、67 Hz の解像度に設定する例を以下に示します。

 

コード例 1-3 UNIX スクリプトの使用例
#!/bin/sh
eeprom fcode-debug\?=true
eeprom use-nvramrc\?=true
eeprom nvramrc='probe-sbus        (または probe-all)
: vsetup " 117000000,71691,67,16,112,224,1280,2,8,33,1024,COLOR,0OFFSET" ;
vsetup 4
" /sbus/cgsix@1" " override" execute-device-method drop
install-console
banner
`

PROM によるモニターの設定

PROM を使用して、TurboGXplus を 1280 x 1024、67 Hz の解像度に設定する例を以下に示します。

 

コード例 1-4 PROM の使用例
ok nvedit
0: probe-sbus                    (または probe-all)
1: : vsetup " 117000000,71691,67,16,112,224,1280,2,8,33,1024,COLOR,0OFFSET" ;
2: vsetup 4
3: " /sbus/cgsix@1" " override" execute-device-method drop
4: install-console
5: banner
6: ^C
ok nvstore
ok setenv use-nvramrc? true
ok setenv fcode-debug? true

TurboGXplus がサポートする解像度のコードを以下に示します。

表 1-4 TurboGXplus の解像度コード

画面解像度

コード

1024 x 768、60 Hz

" 64125000,48286,60,16,128,160,1024,2,6,29,768,COLOR"

1024 x 768、70 Hz

" 74250000,56593,70,16,136,136,1024,2,6,32,768,COLOR"

1024 x 768、77 Hz

" 84375000,62040,77,32,128,176,1024,2,4,31,768,COLOR"

1152 x 900、66 Hz

" 94500000,61845,66,40,128,208,1152,2,4,31,900,COLOR"

1152 x 900、76 Hz

" 108000000,71808,76,32,128,192,1152,2,4,31,900,COLOR,0OFFSET"

1280 x 1024、67 Hz

" 117000000,71691,67,16,112,224,1280,2,8,33,1024,COLOR,0OFFSET"

1280 x 1024、76 Hz

" 135000000,81128,76,32,64,288,1280,2,8,32,1024,COLOR,0OFFSET"

1600 x 1280、76 Hz

" 216000000,101890,76,24,216,280,1600,2,8,50,1280,COLOR,0OFFSE"


PROM による 1 台のモニターの設定

スロット 2 の TurboGXplus カードに 16 インチのモニターを接続して、1024 x 768、60 Hz に設定する例を以下に示します。

 

コード例 1-5 PROM による 1 台のモニターの設定
ok nvedit
   0: probe-sbus                  (または probe-all)
   1: : vsetup " 64125000,48286,60,16,128,160,1024,2,6,29,768,COLOR" ;
   2: vsetup 6
   3: " /sbus/cgsix@2" " override" execute-device-method drop
   4: install-console
   5: banner
   6: ^C
ok nvstore
ok setenv use-nvramrc? true
ok setenv fcode-debug? true

UNIX スクリプトによる 1 台のモニターの設定

UNIX スクリプトを使用して、スロット 2 の TurboGXplus カードを 1024 x 768、60 Hz に設定する例を以下に示します。

 

コード例 1-6 UNIX スクリプトによる 1 台のモニターの設定
#!/bin/sh
eeprom fcode-debug\?=true
eeprom nvramrc='probe-sbus         (または probe-all)
: vsetup " 64125000,48286,60,16,128,160,1024,2,6,29,768,COLOR" ;
vsetup 6
"/sbus/cgsix@2" " override" execute-device-method drop
install-console
banner
`
eeprom use-nvramrc\?=true

UNIX スクリプトによる複数のモニターの設定

スロット 1 の TurboGXplus カードを 1152 x 900、76 Hz に設定し、スロット 3 の TurboGXplus カードを 1280 x 1024、67 Hz に設定して、2 台の 19 インチモニターを使用する UNIX スクリプトの例を以下に示します。

 

コード例 1-7 UNIX スクリプトによる複数のモニターの設定
#!/bin/sh
eeprom fcode-debug\?=true
eeprom nvramrc='probe-sbus       (または probe-all)
: vsetup1 " 108000000,71808,76,32,128,192,1152,2,4,31,900,COLOR,0OFFSET" ;
vsetup1 4 
" /sbus/cgsix@1" " override" execute-device-method drop
: vsetup2 " 117000000,71691,67,16,112,224,1280,2,8,33,1024,COLOR,0OFFSET" ;
vsetup2 4
" /sbus/cgsix@3" " override" execute-device-method drop
install-console
banner
`
eeprom use-nvramrc\?=true

複数のモニターの使用方法についての詳細は、第 12 章を参照してください。