Enhanced Graphics Adapter

サムネイル|EGA互換カード
Enhanced Graphics Adapter（エンハンスト グラフィックス アダプター、EGA）は、IBMが1984年に開発したディスプレイ規格である。グラフィックモードで640×350 64色中16色が表示可能。

 歴史 
EGAは1984年10月にIBMより発表されたHigh-Resolution Standard Is Latest Step in DOS Graphics Evolution, InfoWorld, June 26, 1989, p. 48News Briefs, Big Blue Turns Colors, InfoWorld, Oct 8, 1984。PC/ATの発売直後だが、PC/AT専用ではない。

EGA規格は1987年にPS/2とともに発表されたMCGAおよびVGAに置き換えられたScott Mueller, Upgrading and Repairing PCs, Tenth Edition, Que,1998, 0-7897-1636-4 page 515。

VGAが発表される少し前に、ジェノア・システムズ (Genoa Systems) がプロプライエタリなチップセットを搭載したハーフサイズのグラフィックカード、Super EGAを発表、後期はSuper VGAと同様にVGAで拡張されたモードをサポートしたHardware, Genoa Systems Ready to Ship $449 Half-Size Graphics Card, InfoWorld, February 23, 1987。

 設計 
EGAは最大640x350ピクセルの画面解像度で64色のパレットから16色を選択して同時に表示する。EGAカードは追加のグラフィック機能をサポートするシステムBIOSの拡張のために16KBのROMを搭載し、旧来のグラフィックコントローラー（MDA、CGA）でビデオタイミング信号を生成するのに使われていたモトローラMC6845チップと後方互換のモードを持つカスタムCRTCを搭載していた。

640x350高解像度モードではピクセルあたり赤、緑、青の各2ビットずつ、それぞれの原色に4階調の輝度を設定でき、それらを組み合わせ可能なパレット（計64色）から16色を選択できた。EGAはCGAの640x200および320x200グラフィックモードのうち16色バージョンを搭載していた。EGA 4ビット（16色）グラフィックモードはCPUのビット演算によるビットプレーンとマスクレジスタComplete Instructions to BLOAD and BSAVE EGA and VGA Screens, マイクロソフトの複雑な使用方法としても知られ、VGAや多くの互換ハードウェアに継承されることになる、早期のグラフィックアクセラレータを構成するものであった。

EGAは350ラインモード時に21.8kHz、200ラインモード時に15.7kHzで駆動するデュアルシンクである。オリジナルのCGAモードも存在するが、EGAはCGAとのハードウェア互換性は完全ではない。EGAはボード上のスイッチの設定を変えることでMDA用モニターを使用できるものの、この設定では640x350高解像度モノクログラフィックと標準MDAテキストモードのみが利用可能である。

EGAカードはISAバスを採用し、当初は8ビット版および16ビット版が用意されていた。オリジナルのIBM製EGAカードは64KBのオンボードRAMを持ち、64KBのEGAカードでは640x350モード時は4色に制限されるため64KBを追加するためにはドーターボードを必要とした。ほとんどのサードパーティー製カードは128KBが実装済みで、一部は256KBを搭載して複数のグラフィックページをサポートした。ATIテクノロジーズやパラダイス（現・ウェスタン・ディジタルなどいくつかのサードパーティー製EGA互換品は640x400、640x480、720x540などの拡張されたグラフィックモード、モニター種別の自動検出、CGAモニターを使うための400ラインインターレースモードをサポートしていた。

 表示機能 
サムネイル|カーソル付きテキストモードの例
サムネイル|EGA 640×350×16の模擬イメージ、縦横比補正
テキストモード
40x25、8x8ピクセルフォント（有効解像度は320x200）
80x25、8x8ピクセルフォント（有効解像度は640x200）
80x25、8x14ピクセルフォント（有効解像度は640x350）
80x43、8x8ピクセルフォント（有効解像度は640x344）
EGA グラフィックモード
640x350、16色（64色の6ビットパレット）、ピクセル縦横比は1:1.37
640x350、2色、ピクセル縦横比は1:1.37
640x200、16色、ピクセル縦横比は1:2.4
320x200、16色、ピクセル縦横比は1:1.2
サードパーティー製ボードの拡張グラフィックモード
640x400
640x480
720x540

 カラーパレット 
サムネイル|EGAカラーテーブル
サムネイル|全64色EGAパレット
サムネイル|EGA 16色の色表示テスト
サムネイル|CGA16色パレットによるEGAの色表示テスト
EGAパレットは全ての16色CGAカラーを同時に使用することができ、これらの色はそれぞれ計64色から選んで置き換えることができた。これは追加のディスプレイハードウェア無しでCGA特有の茶色を表示させることも可能にした。後のVGA規格では64色をさらにカスタマイズすることができた。拡張カラーパレットは200ラインモードでは使用できなかった。

EGAパレットから色を選択するとき、赤、緑、青チャンネルに2ビットが使用される。これは各チャンネルが0、1、2、3の値を設定できることを意味する。マゼンタカラーを選択するには、赤と青の値を中輝度（十進数で2またはバイナリ値で10）として、緑の値をオフ（0）にセットする。64色EGAパレットで指定値を計算するとき、指定するバイナリ値の書式は"rgbRGB"、小文字をチャンネル輝度の最下位ビット、大文字を最上位ビットとする。マゼンタであれば、赤と青の最上位ビットは1なので、大文字のRとBの場所が1になる。残りの桁は全て0となり、マゼンタカラーを表すバイナリ値は"000101"となる。これは10進数で5となるから、パレット指定に5をセットすることでマゼンタが選択されたことになる。全てのデフォルト色のカラー値を次の表に記述する。

+ EGA 16色パレット（標準CGAカラーに設定した場合） 番号色 16進数 rgbRGB 10進数 0  Black  #000000  000000  0 1  Blue  #0000aa  000001  1 2  Green  #00aa00  000010  2 3  Cyan  #00aaaa  000011  3 4  Red  #aa0000  000100  4 5  Magenta  #aa00aa  000101  5 6  Brown  #aa5500  010100  20 7  White / light gray  #aaaaaa  000111  7 8  Dark gray / bright black  #555555  111000  56 9  Bright blue  #5555ff  111001  57 10  Bright green  #55ff55  111010  58 11  Bright cyan  #55ffff  111011  59 12  Bright red  #ff5555  111100  60 13  Bright magenta  #ff55ff  111101  61 14  Bright yellow  #ffff55  111110  62 15  Bright white  #ffffff  111111  63

仕様
EGAはCGA端子と同じ9ピンメスのDサブ端子を使用する。ピン割り当てを含むハードウェア信号インターフェースはCGAとほぼ互換性がある。その違いは3つのピンがEGAのセカンダリRGB信号となっていること。詳しくは、CGAではピンとされていたのが、ピンとされていたのが、予約ピンとされていたのがに変更されている。EGAがCGAと同じ走査レートのモードで動作している場合、CGAモニターへの接続は正常に動作するが、モニターが2ピンをグラウンドに接続している場合はEGAの出力をグラウンドに短絡させることになり、EGAアダプターの損傷に繋がる恐れがある。

ほとんどのEGAカードはカード背面にモニター種別を選択するためのディップスイッチを持っており、CGAが選択されていると、カードは200ラインモードで動作し、テキストモードでは8x8ピクセルフォントが使用される。350ラインモードには切り替えることができず、拡張カラーパレットも使用できない。EGAが選択されると、カードは350ラインモードで動作し、8x14ピクセルフォントが使用される。しかし、グラフィックモードは640x350x2のみが使用できる。

IBM 5154 EGAモニターは特殊なIBM 5153 CGA互換モードを備えていて、CGA相当の同期信号で動作しているときは自動でCGAのピン割り当てに切り替え、先に述べた問題を回避するようになっているIBM Options and Adapters, Volume 1, "Enhanced Color Display", Page 4: "When operating in Mode 1, the display maps the 4 input bits into 16 of the possible 64 colors as shown in the following chart.". August 2nd, 1984.。

メモリ割り当て
EGAグラフィックモードはプレーンアクセス方式で、これはCGAやHerculesモードとは対照的である。ビデオメモリは4ページに分割され（2ページを持つ530x350x2を除く）、それぞれRGBI色空間を持つ1ページあたりにRGBI（赤、緑、青、輝度）の4プレーンを持つ。このうち、同時には1プレーンのみをCPUのアドレス空間に割り当てることができる。。各ビットは1ピクセルを表す。赤ページの1ビットが有効にされると、他のページの同等のビットがセットされていなくても、画面上の指定位置に赤色のドットが現れる。同じピクセルの他のプレーン全てのビットも有効にすると、それは白色になる。各プレーンのサイズは、8KB（200ラインモードと640x350ピクセル2色）、16KB（64KBビデオRAMでの640x350ピクセル）、32KB（128KBビデオRAMでの640x350）となり、CPUアドレス空間のセグメントA000に割り当てられる。それらはバンク切り替え方式で、一度に1プレーンのみ読むことができるのだが、プログラマーは書き込み先のプレーンをEGAカードのコントロールレジスタにセットする手法をとっていた。したがって、読み込みは常に1プレーンのみだが、書き込みは全てのプレーンに一度に行うことができた。

後方互換性を確保するため、カラーテキストとCGAモードはセグメントB800、モノクロテキストはB000に割り当てられた。

コネクタ
EGAではDE-9メスコネクタが使われている。ピン番号は上段が1-5、下段が6-9で、どちらも右から左に番号を割り当てた状態のピン割り当てを次に示す。

177px

+ ピン割り当て ピン 名称 役割1 GND  GND2 SR  二次赤 (強度)3 PR  主要な赤4 PG  主要な緑5 PB  主要な青6 SG  二次緑 (強度)7 SB  二次青 (強度)8 H  水平同期9 V  垂直同期

信号
種別デジタル、TTLレベル 640×350、他 水平同期周波数 15.7kHzまたは21.8 kHz 垂直同期周波数 60 Hz 表現可能色数 6ビット（64色）

脚注
注釈

出典

参考文献
 (IBM Part Number 6322509)


外部リンク

Category:グラフィックカード