![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Видеорежим устанавливается вызовом прерывания 10h с номером функции 4F02h. В регистр BX нужно код видеорежима:
100h - 640x400 256 цв.,
101h - 640x480 256 цв.,
103h - 800x600 256 цв.,
105h - 1024x768 256 цв.,
107h - 1280x1024 256 цв.,
112h - 640x480 TrueColor,
115h - 800x600 TrueColor,
118h - 1024x768 TrueColor,
11Bh - 1280x1024 TrueColor.
Например, нужно установить режим 640x480 TrueColor:
mov AX,4F02h
mov BX,112h
int 10h
Выбор окна видеопамяти
Вследствие ошибки, допущенной еще при разработке процессора Intel 8086, вся размещенная на видеокарте память оказалась разделенной на кусочки размером по 64 кб - так называемые "окна" или "страницы". Процессору в каждый момент времени доступно только одно такое окно, и для доступа к другому требуется вызвать программу видео-BIOS, переключающую окна (на аппаратном уровне такое переключение выполнить сложно - видеокарты разных фирм используют для этого регистры с разными номерами).
Например, в режиме TrueColor 640x480 при четырехбайтовой кодировке цвета точки одному кадру соответствует 1228800 байт памяти, или 18,75 страниц по 64 кб.
Переключение номера активного (доступного процессору) окна выполняется вызовом прерывания 10h с номером функции 4F05h. В регистр BH нужно записать 0, в регистр DX - номер окна. Само окно будет размещено по адресу A0000h.
Например, нужно обратиться к данным в девятом окне:
mov AX,A000h
mov ES,AX
mov AX,4F05h
mov BH,0
mov DX,9
int 10h
Дата публикования: 2014-12-08; Прочитано: 310 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!