Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > SVGA32K.BGI как подключить


Автор: Throne 3.11.2007, 13:38
Как подключить нестандартный графический драйвер?
не в тему: можно ли сделать так чтобы драйвер вшивался в программу (или оно так и происходит)?

Автор: Throne 3.11.2007, 21:08
ну что же ни кто не знает ответа на этот казалось простой вопрос?!

Автор: JackYF 3.11.2007, 22:31
Цитата(Throne @  3.11.2007,  21:08 Найти цитируемый пост)
ну что же ни кто не знает ответа на этот казалось простой вопрос?! 

Вполне возможно, потому как никому это не надо - работать под де-факто мёртвыми компилятором/средой.

Автор: Throne 4.11.2007, 00:14
Это конечно верное замечание, но раз появляются вопросы значит кому то это надо, к тому же это 100% просто делается (подключение драйвера), а вторую часть вопроса уже я и сам узнал.

Автор: xvr 4.11.2007, 09:26
Цитата(Throne @ 3.11.2007,  13:38)
Как подключить нестандартный графический драйвер?
не в тему: можно ли сделать так чтобы драйвер вшивался в программу (или оно так и происходит)?

Регистрация своего драйвера - int far installuserdriver(char far *name, int huge (*detect)(void));
Линковка драйвера в программу: int registerbgidriver(void (*driver)(void)); и int far registerfarbgidriver(void far *driver);

Автор: Throne 4.11.2007, 11:04
пасибо иду проверять

Автор: Throne 4.11.2007, 14:20
Хоть и прочитал хелп но всеравно не догнал что должно быть во фтором параметре функции Installuserdriver().
В примере, в хелпе, описана функция с таким же именем, которое находится во втором параметре без (). я в растерянности....

Автор: xvr 4.11.2007, 15:06
Цитата(Throne @ 4.11.2007,  14:20)
Хоть и прочитал хелп но всеравно не догнал что должно быть во фтором параметре функции Installuserdriver().
В примере, в хелпе, описана функция с таким же именем, которое находится во втором параметре без (). я в растерянности....

Во втором параметре находится указатель на процедуру тестирования наличия hardware.

Прототип:
Код

int huge DetectHardware(void);


Эта функция будет вызываться графической системой TC (если задана) перед тем, как она (граф. система) будет пытаться опознать известные ей гр. адаптеры. Если эта функция вернет нечто положительное, то система считает, что оотвествующая пользовательская аппаратура имеется и подгружает заданный (в installuserdriver) BGI драйвер, иначе будет использован один из стандартных драйверов.
Это все происходит если пользователь позвал initgraph с DETECT

Автор: Throne 5.11.2007, 13:07
Все после долгих экспериментов допер что к чему, но драйвер всеравно не подключается, точнее подключается но как-то странно. Есть два варианта выполнения, либо подключает драйвер с максимальным разрешением 640 на 480, но ни одна графическая функция не пашет, либо при компиляции (ctrl+F9) выдает "не хватает памяти" и пока не перезагрузишь комп компилятор в ауте.

Автор: Throne 5.11.2007, 16:04
Окончательно разобрался, если не считать то, что на 1024*768 монитор просто гаснет. 
В описании к драйверам подобного типа написано, что под виндой так и должно быть, в другом источнике написано, что подобный тип драйверов на таком разрешении не поддерживается GeForce'ом. Т.к. я работаю на винде под GeForce'ом то впринципе так и должно быть. спасибо большое за помощь xvr'у (ставлю +)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)