Есть ли у кого-нибудь !!современная!! информация о VGA регистрах. В часности о шаге пропуска памяти между строками при выводе на экран и о том как определить текущее число бит цвета при выводе на экран. А то адрес вывода на экран можно определить через PCI конфгурационную область, ну про тип вывода (текс/графика) я уже не говорю тут проблем нет, а с шагом пропуска и цветом пока не разобрался.
Я думаю на современных картах (GeForceFX, GeForce 6, Radeon) вывод на экран будет зависить от самой карты... Хотя, это конечно догадка
_DEN_ Даже в современных картах, я используя данные PCI области карты (любой!!) я могу закрасить экран скажем в черный цвет, суть в том что при выводе букв, необходимо знать сколько бит имеет точка экрана. vinnie_pooh Я пишу отладчик, который может производить вывод на экран даже при отсутсвии VIDEO BIOS. Кроме того, информацию о текущем режиме VIDEO BIOS хранит в памяти, а кто даст гарантию, что операционная система обходя BIOS драйверами не будет использовать эту память по своим нуждам. Другое дело регистры контролера CRT. Например, можно безошибочно определить что текущий режим текстовый и попытаться вывести на экран что-нибудь допустим по адресу B8000h. Да, этот адрес может быть и E0000000h, все зависит от PCI конфигурационной области.
Так ты недалеко уедешь. Графических режимов такая уйма и вариаций для разных типов карт, что твой вывод выльется в маленькую "Нобелевку". Токо тебе ее никто не даст Даже гигантская корпорация Микрософт поддерживает от силы 20-30% возможностей видео-карт и только те, которые соответствуют стандартам.
Я как-то довольно много занимался этой фигней, потом бросил. Я даже смог установить свой видеорежимы hi-res на Geforce 4 без видеобиос. 1. Регистры у разных видях - разные. Даже Geforce2 отличается от Geforce3 (в плане регистров управляющих генератором и всякими Crtc). 2. Любая документация по железу глухо закрыта. Единственная альтернатива для твоего отладчика - это использовать стандартный VGA clock, правда максимум добьешся 640x200 16 цветов. Либо отладчик запустится только на жестко конкретной видяхе. Инфы нет нигде, блин.
Ole. Не знаю, как насчет нестандартных регистров, я их не использую, а вот PCI конфигурационная область и 01-15h регистры одинаковые на всех картах, и в 13h (по-мойму не вспомню) задается пропуск между строками вывода. А заполнить экран допустим черным или белым я могу на !!любой!! видеокарте. У кого есть толковая информация о стандартных видеорегистрах - поделитесь пожалуйста.
На самом деле есть стандарт VESA и его поддерживают все современные видео-карты. Я бы все-таки взял его за основу. А про регистры боюсь надо далеко в прошлом искать. Я помню только книжку Wilson-а. Возможно, что у Линуксоид-ов больше информации можно найти и достаточно современной.
valterg, я так понял что PROFi хочет обойти биос, ни о каком VESA тут и речи быть не может. PROFi я тебе могу скинуть на мэйл любую инфу, но о СТАНДАРТНЫХ !V G A! регистрах. Если устраивает - скажи.
Я подумал, может это понадобится не только PROFi. Ловите. 1. Скудная инфа по регистрам Riva128, (подходит к Geforce FX, но начиная с Geforce3 clock программируется немного по другому) _2110748830__RIVA128.rar