OSDev
http://www.osdev.ru/

Как использовать SVGA в видеобуфере BIOS?
http://www.osdev.ru/viewtopic.php?f=5&t=3812
Страница 1 из 1

Автор:  mrjbom [ 22 июл 2019, 01:38 ]
Заголовок сообщения:  Как использовать SVGA в видеобуфере BIOS?

Привет. Прошу прощения за этот глупый вопрос.
С выводом текста в текстовом режиме, при работе в защищённом режиме, записывая по 2 бита(символ + цвет) в с 0x000B8000 я разобрался. Но как мне работать в режиме SVGA? Я хочу иметь доступ ко пикселям или к чему-то подобному. Для создания псевдографики. Работать, как я понял, нужно в памяти с 0x000A0000. Как там происходит запись? Где об этом почитать?

Автор:  pavia [ 22 июл 2019, 07:36 ]
Заголовок сообщения:  Re: Как использовать SVGA в видеобуфере BIOS?

Спецификацию multiboot читали? Выставляет бит загрузки в графическом режиме.
GRUB выставляет видео режим и возвращает указатель на LFB и описание видео режима.
https://www.gnu.org/software/grub/manua ... iboot.html

LFB - линейный буфер видео плоскости. Т.е то место где хранится картинка выдоваемая на экран.
Для 24 битных режимов картинка хранится в формате B,G,R,B,G,R... в 32-х бинтом. B,G,R,A,B,G,R,A...
8 бит на компоненту цвета.

А для тех кто пишет свой загрузчик. Те должны использовать VBE и вызывать в реальном режиме. К сожалению консорциум VESA не придусмотрел смены режима в защищённом режиме.

Более подробно тут: там 3 страницы.
http://www.osp.ru/pcworld/1998/08/159480/

Автор:  mrjbom [ 22 июл 2019, 13:11 ]
Заголовок сообщения:  Re: Как использовать SVGA в видеобуфере BIOS?

А в VESA режим я могу загрузиться? Как это сделать с помощью GRUB?

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/