Enhanced Graphics Adapter (EGA) の詳細解説
Enhanced Graphics Adapter(EGA)は、
IBMが
1984年10月に発表したディスプレイ規格です。PC/ATの登場直後に発表されましたが、PC/AT専用ではなく、幅広い機種で使用されました。最大640×350ピクセルの解像度で、64色の中から16色を選択して表示することが可能でした。これは、それまでのCGAよりも大幅な進化であり、当時のパーソナルコンピュータにおいて高画質のグラフィック表示を可能にした画期的な規格でした。
EGA の歴史
EGAは、
1984年10月の発表以降、しばらくの間標準的なグラフィック規格として広く利用されました。しかし、1987年には
IBMからより高機能なMCGA、そしてVGAが発表され、EGAは徐々にその地位を譲ることになります。VGAの登場直前には、Genoa Systemsが独自のチップセットを搭載したSuper EGAを発表し、VGAとの互換性も一部でサポートしていましたが、EGA自体の改良は限定的でした。
EGA の設計
EGAは、640×350ピクセルの解像度で、64色から16色を選択して表示する機能を持っていました。各ピクセルは赤、緑、青の各色に対して2ビットずつ割り当てられ、4段階の輝度レベルを表現することが可能でした。この64色のパレットから16色を選択して画面に表示する仕組みでした。
EGAカードには、16KBのROMが搭載されており、システムBIOSの拡張や、従来のグラフィックコントローラー(MDA、CGA)との後方互換性のための機能が含まれていました。また、カスタムCRTC(Cathode Ray Tube Controller)を搭載し、ビデオタイミング信号の生成を制御していました。
640×350の高解像度モードでは、ピクセルあたり赤、緑、青の各2ビットを使用し、4階調の輝度表現が可能でした。これは、複雑なビットプレーンとマスクレジスタの操作を
CPUで行うことで実現されており、後のVGAや多くの互換ハードウェアでも継承される重要な技術でした。
EGAは、350ラインモードで21.8kHz、200ラインモードで15.7kHzのデュアルシンクを採用していました。CGAとのハードウェア互換性は完全ではありませんでしたが、CGAの640×200および320×200の16色モードもサポートしていました。また、ボード上のスイッチの設定を変更することで、MDA用モニターにも対応していましたが、その場合は640×350の高解像度モノクログラフィックと標準MDAテキストモードのみが利用可能でした。
EGAカードはISAバスを採用しており、初期のカードには
8ビット版と
16ビット版が存在しました。
IBM製のオリジナルカードは64KBのオンボードRAMを搭載していましたが、640×350モードでは4色に制限されたため、より多くの色を表示するには追加のメモリが必要でした。サードパーティ製カードの中には、128KBや256KBのRAMを搭載し、複数のグラフィックページをサポートするものもありました。さらに、一部のサードパーティ製カードでは640×400、640×480、720×540などの拡張モードや、モニターの自動検出機能、CGAモニターに対応した400ライン
インターレースモードなどがサポートされていました。
表示機能
EGAは、テキストモードとグラフィックモードの両方をサポートしていました。テキストモードでは、40×25、80×25、80×43などの文字表示モードが用意されていました。グラフィックモードでは、640×350ピクセルの16色表示が主なモードでしたが、サードパーティ製カードによっては、さらに高解像度・高色数のモードがサポートされていました。
EGAのパレットは、すべての16色CGAカラーを同時に使用することができ、これらの色は64色から自由に選択して置き換えることができました。これは、追加のハードウェアなしでCGA特有の茶色を表示することも可能にした重要な点でした。
色の選択は、赤、緑、青の各チャンネルに2ビットを使用することで行われ、各チャンネルは0~3の値を取ることができました。例えば、
マゼンタの色を選択するには、赤と青の値を2に、緑の値を0に設定する必要がありました。
仕様
EGAは、CGAと同じDE-9メスのD-subコネクタを使用していましたが、ピン割り当ての一部は異なっていました。CGAとの互換性を維持しつつ、EGA独自の機能をサポートするためです。このため、CGAモニターをEGAカードに接続する際は注意が必要でした。
ほとんどのEGAカードには、モニターの種類を選択するための
ディップスイッチが搭載されていました。CGAを選択すると200ラインモードで動作し、350ラインモードでは動作しませんでした。
IBMの5154 EGAモニターは、CGA互換モードを備えており、CGA相当の同期信号で動作しているときは自動的にCGAのピン割り当てに切り替わることで、モニターの損傷を防いでいました。
メモリ割り当て
EGAのビデオメモリは、4ページに分割され(530x350x2の2ページを持つモードを除く)、それぞれRGBI色空間を持っていました。各ビットは1ピクセルを表し、プレーンアクセス方式でメモリにアクセスします。これはCGAやHerculesモードとは異なっていました。
後方互換性のため、カラーテキストとCGAモードはセグメントB800、モノクロテキストはB000に割り当てられていました。
コネクタと信号
EGAはDE-9メスコネクタを使用し、ピン割り当てはCGAとほぼ互換性がありましたが、3つのピンがEGAのセカンダリRGB信号に割り当てられていました。
まとめ
EGAは、1980年代後半のパーソナルコンピュータにおいて、グラフィック表示の飛躍的な向上に貢献した重要な規格でした。その設計、機能、そして互換性に関する詳細な理解は、コンピュータの歴史を学ぶ上で重要な要素となります。