Вывод в графическом режиме, используя функции bios
Вид материала | Литература |
Режимы работы видеоадаптеров Страницы видеопамяти Режимы 4 и 5 Режим 0Dh Режим 0Eh Режим 0Fh Режим 10h Режим 11h Режим 12h Режим 13h |
- Назначение программы для обучения работе в графическом режиме Роль ЭВМ в учебном процессе, 3479.23kb.
- Конспект по теме: "Графика в Турбо Паскале", 279.38kb.
- Опции стандартного bios setuр, 249.86kb.
- Справочник по настройкам bios 0-9, 752.94kb.
- Курсовая работа по информатике, 20.84kb.
- Назначение программы. Данная программа предназначена для исследования функции. Всостав, 270.6kb.
- Программы разрабатывать как консольные приложения!! Все программы будут проверяться, 232.61kb.
- Bios (award). Чтобы войти в bios, 23.13kb.
- Конструктивное исполнение бэвм; Многочиповый модуль mcm. Технические х-ки; Функции, 34.36kb.
- План сочинения: Осебе. Всего три буквы з о ж. Мой зож, 36.77kb.
Режимы работы видеоадаптеров
Режимы работы видеоадаптеров характеризуются типом информации, которую они отображают – текстовая или графическая, количеством используемых цветов, разрешающей способностью и размерами символов.
Существуют несколько стандартных режимов работы видеоадаптеров, поддерживаемых практически всеми адаптерами. Список стандартных режимов работы видеоадаптеров представлен в следующей таблице:
Режим работы | Тип информации | Количество цветов | Разрешение, пиксел x пиксел | Размер символов, пиксел x пиксел | |
0, 1 | Текстовый цветной | 16 | 40x25 | 8x8 | |
0*, 1* | Текстовый цветной | 16 | 40x25 | 8x14 | |
0+, 1+ | Текстовый цветной | 16 | 40x25 | 9x16 | |
2, 3 | Текстовый цветной | 16 | 80x25 | 8x8 | |
2*, 3* | Текстовый цветной | 16 | 80x25 | 8x14 | |
2+, 3+ | Текстовый цветной | 16 | 80x25 | 9x16 | |
4, 5 | Графический цветной | 4 | 320x200 | | |
6 | Графический цветной | 2 | 640x200 | | |
7 | Текстовый монохромный | 2 | 80x25 | 9x14 | |
7+ | Текстовый монохромный | 2 | 80x25 | 9x16 | |
8, 9, 0Ah | Используются видеоадаптерами компьютера PC jr, и в настоящее время интереса не представляют | | |||
0Bh, 0Ch | Зарезервировано | | |||
0Dh | Графический цветной | 16 | 320x200 | | |
0Eh | Графический цветной | 16 | 640x200 | | |
0Fh | Графический монохромный | 2 | 640x350 | | |
10h | Графический цветной | 16 | 640x350 | | |
11h | Графический цветной | 2 | 640x480 | | |
12h | Графический цветной | 16 | 640x480 | | |
13h | Графический цветной | 256 | 320x200 | |
Для видеоадаптеров EGA, VGA и SVGA режимы 0 и 1, 2 и 3, 4 и 5 не различаются. Отличие этих режимов существенно только для видеоадаптера CGA. В режимах 0, 2 и 5 не выполняется разбивка цветов (color burst) для композитного видеосигнала. В результате изображение на монохромных мониторах становиться более качественным.
Стандартные режимы работы не включают в себя все режимы, в которых могут работать видеоадаптеры. Видеоадаптеры SVGA могут также работать в режимах, имеющих улучшенные характеристики. Характеристики этих режимов отличаются у видеоадаптеров разных фирм.
Такие различия значительно усложняют программирование видеоадаптеров в режимах с высоким разрешением и большим количеством цветов. Программа должна распознавать тип видеоадаптера и использовать соответствующие методы работы с видеоадаптером. Примером может служить графический пакет CompuShow. Он содержит специальные драйверы для каждого типа видеоадаптеров. Во время установки пакета он определяет тип видеоадаптера и подключает соответствующий драйвер.
Чтобы преодолеть несовместимость и избавить разработчиков программного обеспечения от необходимости создания собственных драйверов, ассоциация VESA (Video Electronics Standards Association) разработала одноименный стандарт VESA.
Режимы работы видеоадаптеров, соответствующих стандарту VESA, имеют номера 100h, 101h, …, 11Ah. Количество цветов может быть равным 16, 256, 32768, 65536, 16777216, разрешение – 80x60, 132x25, 132x43, 132x50, 132x60 для текстовых режимов и 640x400, 640x480, 800x600, 1024x768, 1280x1024 для графических режимов. Подробности см., например, в книге [1].
Страницы видеопамяти
Страницей называется часть видеопамяти, полностью определяющая содержимое одного экрана монитора. Одна из страниц является активной. Ее содержимое отображается на экране. Для изменения активной страницы можно вызвать соответствующую функцию BIOS или непосредственно изменить содержимое регистра начального адреса, расположенного в контроллере электронно-лучевой трубки.
К каждой странице видеопамяти можно обратиться как через функции BIOS, так и напрямую. Во втором случае процессор записывает необходимую информацию непосредственно в видеопамять.
Видеоадаптеры VGA и SVGA в режимах с низким разрешением используют двойное сканирование. Двойное сканирование заключается в том, что при работе видеоадаптера в режимах с разрешением 200 строк, каждая из строк отображается на экране дважды, увеличивая разрешение по вертикали до 400 строк. В результате улучшается восприятие текста на экране, так как фактически увеличивается разрешающая способность. Двойное сканирование реализуется в режимах 0, 1, 2, 3, 4, 5, 6, 0Dh и 0Eh.
Режимы 4 и 5
В этих режимах отображается цветная графическая информация. Экран монитора имеет разрешение 320 пикселов по горизонтали и 200 пикселов по вертикали. При отображении могут использоваться либо четыре основных, либо четыре альтернативных цвета:
Стандартные цвета | Альтернативные цвета |
Черный | Черный |
Светло-синий | Зеленый |
Малиновый | Красный |
Белый | Коричневый |
В режимах 4 и 5 поддерживается только одна страница видеопамяти. Ее начальный адрес равен B800:0000h.
Режим 6
В этом режиме отображается графическая информация. Экран монитора имеет разрешение 640 пикселов по горизонтали и 200 пикселов по вертикали. Поддерживаются только два цвета. Для видеоадаптера CGA режим 6 является режимом с максимальным разрешением.
Определена только одна страница видеопамяти, имеющая начальный адрес B800:0000h. Если видеоадаптеры VGA или SVGA работают в режиме 6, то они используют двойное сканирование.
Режим 0Dh
Режим 0Dh используется для отображения графической информации. При этом разрешающая способность составляет 320 пикселов по горизонтали и 200 пикселов по вертикали. Данный режим похож на режим 4, но в нем видеоадаптер может отображать 16 цветов.
В зависимости от объема памяти видеоадаптера, поддерживается различное количество страниц видеопамяти:
Объем видеопамяти | Количество страниц видеопамяти |
256 Кбайт | 8 |
128 Кбайт | 4 |
64 Кбайт | 2 |
Страницы видеопамяти располагаются по следующим адресам:
Страница 0 - B800:0000h | Страница 1 – B800:1000h |
Страница 2 - B800:2000h | Страница 3 – B800:3000h |
Страница 4 - B800:3000h | Страница 5 – B800:5000h |
Страница 6 - B800:4000h | Страница 7 – B800:7000h |
Если видеоадаптеры VGA и SVGA работают в режиме 0Dh, то для увеличения разрешающей способности они используют двойное сканирование.
Режим 0Eh
Режим 0Eh используется для отображения графической информации. Разрешающая способность составляет 640 пикселов по горизонтали и 200 пикселов по вертикали. В данном режиме видеоадаптер может одновременно отображать 16 различных цветов.
В зависимости от объема видеопамяти поддерживается различное количество страниц видеопамяти:
Объем видеопамяти | Количество страниц видеопамяти |
256 Кбайт | 4 |
128 Кбайт | 2 |
64 Кбайт | 1 |
Страницы видеопамяти располагаются по следующим адресам:
Страница 0 - A000:0000h | Страница 1 - A000:4000h |
Страница 2 - A000:8000h | Страница 3 - A000:C000h |
Если видеоадаптеры VGA и SVGA работают в режиме 0Eh, то они используют двойное сканирование.
Режим 0Fh
Монохромный графический режим с разрешением 640 пикселов по горизонтали и 350 пикселов по вертикали.
Видеоадаптер EGA поддерживает две страницы экрана за исключением того случая, когда видеопамять ограничена 64 Кбайт. В этом случае доступна только одна страница.
Страницы видеопамяти располагаются по следующим адресам:
Страница 0 - A000:0000h | Страница 1 - A000:8000h |
Каждый пиксел определяется двумя битами. Пикселы могут быть черного цвета, белого цвета, интенсивно белого цвета или могут отображаться постоянно мигающими.
Режим 10h
Цветной графический режим с разрешением 640 пикселов по горизонтали и 350 пикселов по вертикали. Данный режим обеспечивает отображение 16 цветов, кроме конфигураций, в которых видеоадаптер EGA укомплектован только 64 Кбайт видеопамяти. Адаптер EGA с 64 Кбайт видеопамяти обеспечивает отображение только четырех цветов.
Стандартная цветовая палитра для данного режима представлена в следующей таблице:
Полная палитра (объем видеопамяти не меньше 128 Кбайт) | Неполная палитра (64 Кбайт видеопамяти) |
Черный | Черный |
Голубой | Голубой |
Зеленый | Черный |
Синий | Голубой |
Красный | Красный |
Фиолетовый | Белый |
Коричневый | Красный |
Белый | Белый |
Темно-серый | Черный |
Светло-голубой | Голубой |
Светло-зеленый | Черный |
Светло-синий | Голубой |
Светло-красный | Красный |
Светло-малиновый | Белый |
Желтый | Красный |
Интенсивно-белый | Белый |
Можно изменить цветовую палитру, переустановив регистры палитры в контроллере атрибутов.
Режим 11h
Цветной графический режим с разрешением 640 пикселов по горизонтали и 480 пикселов по вертикали. Данный режим обеспечивает отображение только двух цветов.
Видеопамять образует одну страницу. Начальный адрес видеопамяти A000:0000h.
Режим 12h
Цветной графический режим с разрешением 640 пикселов по горизонтали и 480 пикселов по вертикали. Данный режим обеспечивает отображение 16 цветов. Видеопамять образует одну страницу. Начальный адрес видеопамяти A000:0000h.
Режим 13h
Цветной графический режим с разрешением 320 пикселов по горизонтали и 200 пикселов по вертикали. Данный режим обеспечивает возможность одновременного отображения 256 цветов.
Несмотря на низкую разрешающую способность монитора в этом режиме, изображение кажется более реалистичным, так как появляется возможность отображать мелкие детали другим цветом.
Видеопамять образует одну страницу. Начальный адрес видеопамяти A000:0000h.