Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.218.218.230] |
|
Сообщ.
#1
,
|
|
|
Как работать с SVGA режимом.
В каких адресах находится видео память при разрешении 320x480 и выше |
Сообщ.
#2
,
|
|
|
Почитай о функциях 4Fxxh int10h ...
Адреса те, же, как и при работе с режимом, например, 13h - A000:0 (хотя у bios есть функция, которая возвращает адрес). Только для доступа ко всей видео памяти нужно переключать банки. Размер банка обычно (а может и всегда) 65536 байт. Т.е, например, при 1024x768x256 для чтения перхней строки нужно переключиться на нулевой банк, для чтения 150-й - на второй ( int(150*1024*1/65536) = 2 ) . Здесь 1 - это количество байт на пиксель. В режиме, например, 800x600x256 часть строки номер 81 будет находиться в нулевом, часть - в первом банке. Банки переключаются с помощью функции 4F05h: mov ax,4F05h xor bx,bx (bh - подфункция "установить", bl - id окна) mov dx,Номер_банка int 10h Если всё Ok, на выходе будет AX=004Fh |
Сообщ.
#3
,
|
|
|
копай в сторону VESA (VBE).
почитай Финогенова ® скачай с инета списки прерываний Брауна если хочешь могу кинуть часть с VBE... а адреса памяти... хер знает там по моему интерливинг или какая-то байда с банками... не помню.. всю жизнь юзал графику под VGA 0x13-ый. кстати VESA - это не единый стандарт, так что у соседа твоя прога может не заработать. |
Сообщ.
#4
,
|
|
|
Про VESA вкурсях ,а по поводу VBE
скинь пожалуйста : Е-мыло: dima@madisoft.com И ещё вопрос , а чё такое прерывания Брауна ? |
Сообщ.
#5
,
|
|
|
Прерывания Брауна - это...
ftp://ftp.cs.cmu.edu/afs/cs.cmu.edu/user/ralf/pub/interrupt-list/ Там и VBE найдёшь... |