EGA
EGA (англ. Enhanced Graphics Adapter - Усовершенствованный графический адаптер) в стандарт мониторов и видеоадаптеров для IBM PC, расположенный между CGA и VGA по своим характеристикам (цветовое и пространственное разрешение). Выпущен IBM в августе 1984 года.[1] Видеоадаптер EGA позволяет использовать 16 цветов при разрешении 640×350 пикселов. Видеоадаптер оснащён 16 кБ ПЗУ для расширения графических функций BIOS.
Адаптер EGA при разрешении 640×350 позволяет одновременно использовать 16 цветов из возможных 64-х (по два бита на красную, зелёную и синюю составляющие). EGA также поддерживает 16-цветные варианты графических режимов CGA 640×200 и 320×200; в этом случае можно использовать только цвета из палитры CGA. Исходные режимы CGA также поддерживаются, хотя EGA не полностью аппаратно совместим с CGA. EGA может выводить изображение на MDA-монитор, эта возможность включается с помощью переключателей на плате, при этом доступен только режим 640×350.
Плата EGA подключается к шине ISA, начиная с 8-битной версии. Базовая версия EGA имела 64 кБ видеопамяти, чего было достаточно для монохромной графики высокого разрешения и цветной графики в режимах 640×200 и 320×200. Со временем большая часть плат EGA стала выпускаться с 256 кБ видеопамяти. Некоторые клоны EGA сторонних производителей (в частности, ATI Technologies и Paradise) поддерживают расширенные графические режимы (например, 640×400, 640×480 и 720×540), автоматическое определение типа монитора и, иногда, специальный чересстрочный режим для CGA-мониторов.
Стандарт EGA был замещён стандартом VGA, представленным IBM в апреле 1987 года с моделью компьютера PS/2.
Содержание |
[править] Архитектура и плоскостная видеопамять
Видеопамять EGA физически делилась на 4 плоскости равного размера в от 16К (младшие модели) до 64К (старшие).
Прямое отображение сразу всей видеопамяти в адресное пространство процессора было невозможно, все плоскости всегда отображались по одному и тому же адресу в 0xa0000 для 16цветных графических режимов и 0xb8000 для всех остальных. Таким образом, один и тот же адрес адресовал сразу 4 байта, расположенные как бы «параллельно» друг другу в 4 плоскостях.
Для доступа процессора к такой видеопамяти EGA содержал т. н. секвенсор. Секвенсор поддерживал 3 режима записи в видеопамять и 2 режима чтения, и имел немалое количество управляющих регистров.
При записи использовались регистры:
- маска плоскости. Запись не вносила изменений в те плоскости, биты которых в данном регистре были установлены в 0.
- маска битов. Для каждого байта в каждой плоскости запись не изменяла те биты, которые были установлены в 0 в данном регистре.
- логическая операция. 16 стандартных логических операций, они же используются в Windows GDI. В результате записи бит видеопамяти устанавливался в логическую функцию от бита пришедших от процессора данных и старого значения бита видеопамяти. Код логической операция есть 4 бита, бит данных процессора выбирал между старшими и младшими 2, а старое значение бита видеопамяти в между четными и нечетными. Выбранный бит кода логической операции и являлся новым значением бита видеопамяти. Например, логическая операция 0000b в установить все в чёрное, 1111b в все в белое, 1100b в обычное копирование битовой карты, 0011b в копирование с инвертированием, 1010b в пустая операция, 0101b в инвертирование старого содержимого, 1110b в OR старого содержимого с новым, 1000b в AND старого и нового, 0110b в XOR.
- циклический сдвиг данных, поступивших от процессора (только для режима 0).
В режиме 0 байт, поступивший от процессора, понимался как новое значение для 4 байтов 4 плоскостей. В режиме 2 использовались только 4 бита в байте, поступившем от процессора. Для плоскостей, у которых в этом байте был 1 в использовалось значение 11111111b, для остальных в 00000000b.
В режиме 0 чтения использовался регистр выбора плоскости, чтение читало байт из выбранной плоскости.
В режиме 1 использовался регистр выбора бита, секвенсор извлекал 4 бита, позиция которых была задана регистром выбора, из 4 плоскостей и комбинировал их в 4битное значение (старшие 4 бита обнулялись).
В графических режимах CGA использовалась только плоскость 0, секвенсор всегда находился в состоянии по умолчанию и не использовался.
В текстовых режимах для хранения кодов символов и атрибутов использовалась та же плоскость 0, а плоскость 1 использовалась для хранения таблиц знакогенератора. Секвенсор обычно находился в состоянии по умолчанию, кроме случая загрузки знакогенератора в для этого регистр маски плоскости переключали в 2, писали данные знакогенератора по тому же адресу 0xb8000 и затем переключали маску обратно в 1.
Во всех 16цветных графических режимах использовались все 4 плоскости, каждая из которых хранила монохромную картинку для одного из 4 компонент общего цвета в красного, зелёного, синего и интенсивности (в палитре по умолчанию). Комбинированием битов из 4 плоскостей получалось 4битное значение цвета пиксела (индекса в палитру).
[править] Палитра
4битные значения цветов пропускались через 16 регистров палитры, каждый из которых содержал 64битное значение цвета в по 2 бита на R, G и B. Это же 64битное значение затем выставлялось на кабель, ведущий к монитору.
Регистры палитры были реализованы только на запись без возможности чтения.
[править] Текстовые режимы
В текстовых режимах используется два типа шрифтов. Стандартный шрифт EGA формируется матрицей 7×9 в ячейке 8×14 пикселов. Для совместимости с CGA используется шрифт с матрицей 7×7 в ячейке 8×8 пикселов.
EGA в первый видеоадаптер IBM, позволяющий программно менять шрифты текстовых режимов.
Доступны следующие режимы:[2][3]
- 80×25 символов (ячейка 8×14 пикселов; разрешение 640×350 пикселов).
- 40×25 символов (ячейка 8×8 пикселов; разрешение 320×200 пикселов).
- 80x43 символов (ячейка 8×8 пикселов; разрешение 640×350 пикселов). Данный режим не является стандартным. Для его использования необходимо сначала установить режим 80×25, а затем загрузить шрифт 8×8 с помощью команды BIOS.[4]
[править] Графические режимы
- 320×200 пикселов;
- 640×200 пикселов;
- 640×350 пикселов.
[править] Технические характеристики
EGA всегда использовал частоту кадров в 60Гц, и мог использовать одну из двух частот строк в 21.8 КГц для 350 строк (все текстовые режимы и режим 640x350x16) и 15.7 КГц для 200 строк (все остальные графические режимы).
[править] Разъём
Вид разъёма на видеокарте:[5]
| 5 | 1 |
| 9 | 6 |
| Вывод | Описание |
|---|---|
| 1 | земля |
| 2 | вторичный красный |
| 3 | первичный красный |
| 4 | первичный зелёный |
| 5 | первичный синий |
| 6 | вторичный зелёный / интенсивность |
| 7 | вторичный синий |
| 8 | строчная синхронизация |
| 9 | кадровая синхронизация |
[править] Сигнал
| Тип | Цифровой, ТТЛ[6] |
|---|---|
| Разрешение | 640×350 и др. |
| Горизонтальная частота | 15,7/21,8 кГц |
| Вертикальная частота | 60 Гц |
| Количество цветов | 16/64 |
[править] Конкурирующие видеоадаптеры
В 1984 году IBM также выпустила видеоадаптер Professional Graphics Controller для использования в САПР. Адаптер поддерживал разрешение 640×480 пикселов (немного больше, чем у EGA) и одновременный вывод 256 цветов из 4096 возможных. Увеличенное количество цветов позволяло создавать фотореалистичные изображения. Адаптер имел собственный язык для создания и преобразования двухмерных и трёхмерных изображений. Также адаптер мог эмулировать работу CGA.[7] Впрочем, конкурирующим его можно назвать чисто условно, так как он занимал совершенно другую «экологическую нишу» в фактически PGC был ценой с ещё один топовый ПК, был устроен как специализированный ПК и относился к графическим ускорителям.
[править] Примечания
- в‘ EGA Boards Labeled 'Accepted Standard' // InfoWorld. в 1985. в Т. 7. в в„– 51. в P. 14. в ISSN 0199-6649.
- в‘ Dnes, Walter Nicer console textmodes (англ.). Проверено 28 октября 2006.
- в‘ Музыченко, Евгений Frequently Asked Questions (Часто Задаваемые Вопросы) по видеоаппаратуре для IBM PC (txt). Проверено 28 октября 2006.
- в‘ Int 10/AX=1112h
- в‘ Справочник www.5v.ru. Проверено 24 октября 2006.
- в‘ Kuphaldt, Tony R. Logic signal voltage levels (англ.). All About Circuits. Проверено 14 октября 2006.
- в‘ Duke, Keith A.; Wall, W. Alan A Professional Graphics Controller (англ.). IBM Systems Journal (1985). Проверено 1 ноября 2006.
| Стандарты видеоадаптеров и мониторов | ||
|---|---|---|
| Видеоадаптеры | MDA | Tandy | HGC | CGA | EGA | PGC | VGA | MCGA | 8514 | XGA | |
| Разрешение экрана | QVGA | VGA | SVGA | XGA | XGA+ | SXGA | SXGA+ | UXGA | QXGA | QSXGA | QUXGA | HXGA | HSXGA | HUXGA | |
| Широкоэкранные варианты | WVGA | WXGA | WSXGA/WXGA+ | WSXGA+ | WUXGA | WQXGA | WQSXGA | WHXGA | WHSXGA | WHUXGA | WQUXGA | |
|
|
|
|---|---|
| Для передачи видеосигнала | |
| Проводные | D-sub (VGA) DisplayPort HDMI DVI LVDS S-Video SCART RCA BNC DIN Mini-DIN YPbPr (Component) Mhl |
| Беспроводные | WirelessHD Wireless HDMI Wireless Home Digital Interface |
| Малоиспользуемые проводные | Mini-VGA Mini-DVI Micro-DVI DFP DMS59 D-Terminal Apple Display Connector CGA MDA Tandy HGC EGA DB13W3 SDI |
| Для передачи аудиосигнала | |
| Бытовые | RCA Jack 3,5 мм Jack 2,5 мм DIN |
| Профессиональные | XLR Jack 6,35 мм Speakon |