Особенности работы в режимах VESA
Проверка поддержки видеорежима
Стандарт VESA создавался для того, чтобы графические задачи могли самостоятельно, или при минимальном вмешательстве оператора, настроиться на работу с установленной на ПК видеокартой. В этой главе описано, как производится такая настройка.Обработка информации о режиме
При программировании графики надо знать количество-точек на экране по горизонтали и вертикали, способ кодирования цвета, расположение базовых цветов, способ переключения окон видеопамяти, значение сегмента для доступа к видеопамяти и некоторые другие данные.Процедуры для работы с одним окном видеопамяти
На видеокарте обязательно расположена оперативная память, которую принято называть видеопамятью (video memory). Видеоконтроллер непрерывно выводит содержимое части видеопамяти на экран монитора, причем размер этой части зависит от установленного видеорежима.Работа с двумя окнами видеопамяти
Большинство исследованных автором видеокарт поддерживало работу только с одним окном А. Исключением явился акселератор mach64 фирмы ATI Technologies Inc., у которого для доступа к видеопамяти используется два окна. Запись данных в видеопамять осуществляется через окно А, а чтение – через окно в.Страничная организация видеопамяти
Одним из традиционных приемов при работе с видеопамятью является ее деление на страницы. Из нескольких страниц только одна отображается на экране монитора, а остальные не видны. Видимую (отображаемую на экране) страницу называют активной, а невидимые – пассивными.Часто используемые в примерах имена
В примерах, приводимых в данной и последующих главах книги, многократно повторяются имена переменных, подпрограмм для работы с окнами видеопамяти и макроопределений, предназначенных для записи в стек или выталкивания из него содержимого регистров.Раздел для начинающих
В данной главе приведены первые примеры программ, поэтому имеет смысл поговорить о принятом в книге оформлении текстов примеров, об описании используемых в них переменных и о некоторых общих вопросах, связанных с оформлением программ на языке ассемблера.