реклама на сайте
подробности

 
 
> 16М цветная графика под DOS, Как правильно инициализировать VESA?
mantech
сообщение Feb 21 2014, 18:04
Сообщение #1


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Приветствую. Собственно встал вопрос, как правильно работать с весовскими режимами(0х112, 0х115 и 0х118) под чистым досом?

Пользуюсь watcom C под98й виндой (в ХР он не работает), работают все 256и цветные режимы, на остальных пишет неверный видеоконтроллер. Сначала думал, что эти режимы просто не работают, но в инете нашел прогу VESA16M, в которой все прекрасно работает. Ответ - сам дурак! Может у кого есть какие-нить исходники под это дело?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
fowler
сообщение Feb 23 2014, 21:13
Сообщение #2





Группа: Участник
Сообщений: 12
Регистрация: 20-08-10
Пользователь №: 59 023



Любой HiColor или TrueColor режим. При линейном доступе разница лишь в адресации.
Адрес пиксела задается как (byte*)base_addr+Y*stride+X*byteperpix, где byteperpix - количество байт на один пиксел.
TrueColor в использовании проще, да и цветов больше (по байту на каждый цвет).

И если вы полностью формируете новый кадр заново, разумнее строить его в оперативной памяти и уже потом
копировать его в видеопамять блочными операциями (двойными словами, выровненными по границе двойного слова).

Если работаете со спрайтами, пишите простенькую процедуру на асме, которая вначале равняет адрес назначения до
границы двойного слова (копирует байтами), потом основной блок двойными словами и остаток снова байтами...

Есть еще всякие средства ускорения типа VBE/AF, но вам это не нужно. Сложности добавит, а на результате не особо скажется.

В общем, если откажетесь от работы через БИОС - раз в 20 как минимум быстрее будет.

Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- 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
|- - mantech   Цитата(fowler @ Feb 24 2014, 01:13) В общ...   Feb 24 2014, 05:14
|- - mantech   Цитата(mantech @ Feb 24 2014, 09:14) Види...   Feb 24 2014, 06:42
- - 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


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 31st July 2025 - 23:40
Рейтинг@Mail.ru


Страница сгенерированна за 0.01394 секунд с 7
ELECTRONIX ©2004-2016