OSDev http://osdev.su/ |
|
Как работает биус http://osdev.su/viewtopic.php?f=5&t=456 |
Страница 1 из 3 |
Автор: | Станислав [ 28 окт 2011, 14:04 ] |
Заголовок сообщения: | Как работает биус |
Кто нибудь знает? Адреса функций биуса как мне известно постоянны. Мы посылаем данные в регистры и вызывая функции биуса через прирывания. Если послать данные и вызвать функцию биус по её адресу jmp (адрес функции), а по её завершении вернуться назад Такое будет работать? Биус писался очень давно, ни кто не хочет его переделывать. Если б биус загрузил бы нормальные драйвера для клавиатуры, мышки, дисков, юсб и видео, то простой загрузчик мог б делать очень многое пользуясь этими функциями. Вместо текстового режима можно рисовать шрифты. Может быть я чегото не понимаю? |
Автор: | pavia [ 28 окт 2011, 14:15 ] |
Заголовок сообщения: | Re: Как работает биус |
Цитата: Кто нибудь знает? Аха! :-) Цитата: Если послать данные и вызвать функцию биус по её адресу jmp (адрес функции), а по её завершении вернуться назад Такое будет работать? Чтобы вернуться надо поместить адрес возврата в стек. Тогда переход и возврат будут работать. Подробнее смотри второй том руководства интела на процессор IA-32 и x86. И третий том главу по прерывания и реальный режим. Цитата: Биус писался очень давно, ни кто не хочет его переделывать. Если б биус загрузил бы нормальные драйвера для клавиатуры, мышки, дисков, юсб и видео, то простой загрузчик мог б делать очень многое пользуясь этими функциями. Вместо текстового режима можно рисовать шрифты. Может быть я чегото не понимаю? Биос постоянно переписывается. В последнем (UEFI) и рисованные шрифты можно использовать. Только это не требуется ОС загружает свои драйвера. Во вторых набор функций ibm ps/2 совместимого биоса хватает для всего с головой. Тежи шрифты там тоже можно загружать и ими пользоваться. |
Автор: | Станислав [ 28 окт 2011, 14:29 ] |
Заголовок сообщения: | Re: Как работает биус |
А есть нормальные функции с видео? Если записывать в биус функции для конкретной видеокарты, т.е. перепрошивать под конкретную видеокарту. |
Автор: | pavia [ 28 окт 2011, 14:34 ] |
Заголовок сообщения: | Re: Как работает биус |
Цитата: А есть нормальные функции с видео? А по русски? Цитата: Если записывать в биус функции для конкретной видеокарты, т.е. перепрошивать под конкретную видеокарту. У каждой видео карты и так свой биос.
|
Автор: | Станислав [ 28 окт 2011, 14:48 ] |
Заголовок сообщения: | Re: Как работает биус |
У каждой видео карты и так свой биос. А как им воспользоваться чтобы включить видео режим 800*600 32бит и рисовать пиксели |
Автор: | SII [ 28 окт 2011, 14:51 ] |
Заголовок сообщения: | Re: Как работает биус |
Найти документацию на VESA и посмотреть, есть ли там необходимое. Вроде как должно быть -- разрешение стандартное, глубина цвета -- тоже. А вообще, не стараться охватить сразу всё и разбираться постепенно, шаг за шагом. Иначе потонете в куче проблем и новой информации (чтобы понять которую, может банально не хватать имеющихся на данный момент знаний). |
Автор: | pavia [ 28 окт 2011, 14:55 ] |
Заголовок сообщения: | Re: Как работает биус |
Для этого надо изучить VBE Standard Version: 3.0 и 2.0 выпущенного в VESA Примеры есть у Зубкова в его книге ассемблер для дос, виндоус и юникс. |
Автор: | Станислав [ 28 окт 2011, 15:03 ] |
Заголовок сообщения: | Re: Как работает биус |
pavia писал(а): Для этого надо изучить VBE Standard Version: 3.0 и 2.0 выпущенного в VESA Примеры есть у Зубкова в его книге ассемблер для дос, виндоус и юникс. у VESA неплохие режимы их устанавливает функция биус int 10H 100h 640 x 400 256 101h 640 x 480 256 102h 800 x 600 16 103h 800 x 600 256 104h 1024 x 768 16 105h 1024 x 768 256 106h 1280 x 1024 16 107h 1280 x 1024 256 10Dh 320 x 200 32768 (32K) 10Eh 320 x 200 65536 (64K) 10Fh 320 x 200 16777216 (16M) 110h 640 x 480 32768 (32K) 111h 640 x 480 65536 (64K) 112h 640 x 480 16777216 (16M) 113h 800 x 600 32768 (32K) 114h 800 x 600 65536 (64K) 115h 800 x 600 16777216 (16M) 116h 1024 x 768 32768 (32K) 117h 1024 x 768 65536 (64K) 118h 1024 x 768 16777216 (16M) 119h 1280 x 1024 32768 (32K) 11Ah 1280 x 1024 65536 (64K) 11Bh 1280 x 1024 16777216 (16M) но работа с видео памятью блоками(окнами) хочется работать напрямую со всем объёмом |
Автор: | Yoda [ 28 окт 2011, 15:06 ] |
Заголовок сообщения: | Re: Как работает биус |
Станислав, разберитесь для начала с начальным загрузчиком и вызовом простых функций BIOS. Со всем объёмом будете работать, когда переведёте процессор в защищённый режим. |
Автор: | Станислав [ 28 окт 2011, 16:08 ] |
Заголовок сообщения: | Re: Как работает биус |
Прочитал про (UEFI) это то что нужно |
Страница 1 из 3 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |