|
16М цветная графика под DOS, Как правильно инициализировать VESA? |
|
|
|
 |
Ответов
|
Feb 23 2014, 21:13
|
Группа: Участник
Сообщений: 12
Регистрация: 20-08-10
Пользователь №: 59 023

|
Любой HiColor или TrueColor режим. При линейном доступе разница лишь в адресации. Адрес пиксела задается как (byte*)base_addr+Y*stride+X*byteperpix, где byteperpix - количество байт на один пиксел. TrueColor в использовании проще, да и цветов больше (по байту на каждый цвет).
И если вы полностью формируете новый кадр заново, разумнее строить его в оперативной памяти и уже потом копировать его в видеопамять блочными операциями (двойными словами, выровненными по границе двойного слова).
Если работаете со спрайтами, пишите простенькую процедуру на асме, которая вначале равняет адрес назначения до границы двойного слова (копирует байтами), потом основной блок двойными словами и остаток снова байтами...
Есть еще всякие средства ускорения типа VBE/AF, но вам это не нужно. Сложности добавит, а на результате не особо скажется.
В общем, если откажетесь от работы через БИОС - раз в 20 как минимум быстрее будет.
|
|
|
|
|
Feb 24 2014, 06:42
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(mantech @ Feb 24 2014, 09:14)  Видимо так и нужно. Посмотрел демки, там почти всепод старую винду, но есть одна под дос, и там как раз то, что нужно - работа с 16м цветов через linear frame buffer по времени укладывается в задачу. Будем копать в эту сторону  PS. Посмотрел я на эти исходники есть одно НО - Can also be compiled to use the UVBELib linkable library * version of UniVBE for direct device support. Contact * SciTech Software for licensing information on this library. И где брать эти либы?
|
|
|
|
Сообщений в этой теме
mantech 16М цветная графика под DOS Feb 21 2014, 18:04 garlands странно. гугл выдает на первом месте: http://sourc... Feb 21 2014, 18:09 mantech Цитата(garlands @ Feb 21 2014, 22:09) стр... Feb 21 2014, 18:34 _pv а для чего?
правда очень интересно. Feb 21 2014, 23:18 Paviaa Тоже интересно для чего?
Ведь гораздо проще писат... Feb 22 2014, 06:59 mantech Цитата(Paviaa @ Feb 22 2014, 10:59) Тоже ... Feb 22 2014, 16:30  sasamy Цитата(mantech @ Feb 22 2014, 20:30) Всео... Feb 23 2014, 07:28 _pv была библиотека allegro, что-то вроде SDL, старые ... Feb 22 2014, 22:13 mantech Цитата(_pv @ Feb 23 2014, 02:13) на решен... Feb 23 2014, 07:31 fowler Была такая контора SciTech, делала SVGAKIT - эту б... Feb 23 2014, 10:43 mantech Цитата(fowler @ Feb 23 2014, 14:43) У мен... Feb 23 2014, 14:33 fowler Если будете рисовать через БИОС - и должно быть жу... Feb 23 2014, 17:42 mantech Цитата(fowler @ Feb 23 2014, 21:42) Вам п... Feb 23 2014, 19:05 fowler Исходники SVGAKIT были в моем первом посте.
Непоср... Feb 24 2014, 07:54 mantech Цитата(fowler @ Feb 24 2014, 11:54) Исход... Feb 24 2014, 17:51  Iptash Цитата(mantech @ Feb 24 2014, 21:51) Спас... Apr 14 2014, 05:41 LightElf Да, и не забудьте для видеобуфера включить режим к... Apr 15 2014, 04:05 Kopa Вместо ДОС предлагаю рассмотреть Kolibri OS долж... Apr 15 2014, 14:27
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|