Page 45 - 4875
P. 45
- 03h: регістр циклічного зсуву даних
- 04h: регістр вибору площини, що читається
- 05h: регістр вибору режиму роботи
- 06h: багатоцільовий регістр графічного контролера
- 07h: регістр ігнорування палітр кольору
- 08h: регістр бітової маски
Для звертання до регістрів графічного контролера варто
записати індекс потрібного регістра в порт 03CEh, після чого можна
буде читати і писати дані для обраного регістра в порт 03CFh. Якщо
потрібно тільки запис у регістри, можна просто помістити індекс у AL,
байт що посилається – в АН і виконати команду виводу слова в порт
03CEh. Цей контролер, у першу чергу, призначений для забезпечення
передачі даних між процесором і відеопам'яттю в режимах, що
використовують кольорові палітри, як, наприклад, режим 12h
(640x480x16).
4 Регістри контролера CRT (03D4h – 03D4h):
Контролер CRT керує розгорткою і формуванням кадрів на
дисплеї. Як і для графічного контролера, для звертання до регістрів
контролера CRT варто записати індекс потрібного регістра в порт
03D4h, після чого можна буде читати і писати дані для обраного
регістра в порт 03D5h. Якщо потрібно тільки запис у регістри, можна
просто помістити індекс у AL, що посилається байт – в АН і виконати
команду виводу слова в порт 03D4h.
5 Регістри синхронізатора (03С4h – 03C5h):
Для звертання до регістрів синхронізатора варто записати
індекс потрібного регістра в порт 03C4h, після чого можна буде читати
і писати дані для обраного регістра в порт 03C5h. Аналогічно, якщо
потрібно тільки запис у регістри, можна просто помістити індекс у AL,
байт що посилається – в АН і виконати команду виклику слова в порт
03CEh.
Хоча BIOS і дозволяє використовувати деякі можливості цих
регістрів, зокрема роботу зі шрифтами (INT 10h АН = 11h) і
виключення обміну даними між відеопам'яттю і дисплеєм (INT 10h,
АН = 12h, BL = 32h), пряме програмування регістрів синхронізатора
разом з регістрами контролера CRT дозволяє значно змінювати
характеристики відеорежимів VGA, аж до установки нестандартних
44