Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Пт авг 18, 2017 7:46 am

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 58 сообщений ]  На страницу Пред. 1 2 3 4 След.
Автор Сообщение
 Заголовок сообщения: Re: 2D с аппаратной акселерацией
СообщениеДобавлено: Пн окт 20, 2008 7:23 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3928
Была путаница с SVN.

svn://kolibrios.org/programs/develop/libraries/pixlib исходники pixlib
компилируется mingw32
gcc -c -mmmx -O2 -fno-builtin -fomit-frame-pointer -o pixlib.obj pixlib.c

svn://kolibrios.org/programs/develop/sdk/trunk/pixlib примеры и заголовочный файл.

Драйвер грузит библиотека при инициализации.
Код:
     srv_hw2d = get_service("HDRAW");
       if(srv_hw2d == 0)
         srv_hw2d = load_service("/rd/1/drivers/ati2d.drv");
get_service не умеет грузить PE DLL и при первом запуске вернёт 0. Тогда либа загрузит драйвер сама.
Код:
extern inline u32_t load_service(char *name)
{
  u32_t retval;
  asm("int $0x40"
      :"=a"(retval)
      :"a"(68),"b"(21),"c"(name));  //функция для загрузки PE драйверов
  return retval;
};
Все драйверы резидентные. При втором запуске get_service вернёт логический номер драйвера. Если драйвера нет или устройство не поддерживается srv_hw2d = 0 и всё рисуется программно.


Вернуться к началу
 Заголовок сообщения: Re: 2D с аппаратной акселерацией
СообщениеДобавлено: Пн окт 20, 2008 7:59 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Чт мар 01, 2007 4:16 pm
Сообщения: 426
Мммм. Здорово. Получается теперь ядру не нужно знать про дрова заранее, а они могут подгружаться по ходу дела. А что, если бы дрова брались всегда из одной и той же папки (или из некоторого предопределенного набора), а в "load_service" передавалось бы только имя драйвера? Так было бы несколько безопаснее. Точнее это стало бы некоторым заделом безопасности, а в будущем просто ограничим доступ пользователей к директории "drivers".

Спасибо. Попробую чего-нибудь такого пописать :-). Может bt8x8 займусь, было бы забавно ТВ на KolibriOS посмотреть.

p.s. Я не нашел в документации описание этой функции (68.21).

..bw


Последний раз редактировалось bw Пн окт 20, 2008 10:31 pm, всего редактировалось 1 раз.

Вернуться к началу
 Заголовок сообщения: Re: 2D с аппаратной акселерацией
СообщениеДобавлено: Пн окт 20, 2008 8:08 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3928
bw

Одну папку для дров можно. Только есть такие дрова что на дискету не влезут...


Вернуться к началу
 Заголовок сообщения: Re: 2D с аппаратной акселерацией
СообщениеДобавлено: Пн окт 20, 2008 9:39 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Пн ноя 05, 2007 12:09 am
Сообщения: 32
Serge писал(а):
Никто не пишет. Если возьмешся будет здорово.

Спасибо за информацию. Работаю.


Вернуться к началу
 Заголовок сообщения: Re: 2D с аппаратной акселерацией
СообщениеДобавлено: Вт ноя 11, 2008 5:35 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3928
Прозрачное окошко. Для полноценных перекрывающихся окон такой способ
подходит плохо но для модальных окон или меню годится.

На R300-R500 работает точно. На R200+ должен работать. На R100+ пока нет.


Вложения:
pixlib_03.7z [36.59 КБ]
135 скачиваний
Вернуться к началу
 Заголовок сообщения: Re: 2D с аппаратной акселерацией
СообщениеДобавлено: Чт ноя 13, 2008 4:03 am 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4092
Работает на NVidea 8800 GTS 512, медленно правда. Было бы быстрее, если бы не выводилось вначале окно, а потом делалось прозрачным, а сразу б выводилось прозрачным. Но всё это, я думаю, поправимо :)
Вообще, классно :) Не передать как я удивился и порадовался когда увидел нормальное прозрачное окошко в Колибри)

_________________
Через тернии к звездам


Вернуться к началу
 Заголовок сообщения: Re: 2D с аппаратной акселерацией
СообщениеДобавлено: Чт ноя 13, 2008 10:40 am 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3928
На NV всё работает в режиме эмуляции, через процессор. Поэтому медленно.

Кто-нибудь проверял на R200 ? У меня такой возможности нет.


Вернуться к началу
 Заголовок сообщения: Re: 2D с аппаратной акселерацией
СообщениеДобавлено: Пн дек 01, 2008 8:32 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Пн апр 16, 2007 6:38 pm
Сообщения: 1222
я правильно понимаю что у меня работать не должно? (конфигурация в профиле) А то проверил, и правда не работает =)

_________________
И мы уже давно не пешки,
Мы пули, мы орлы, и решки!
Война ютит бинарный код,
Умри, или иди вперед!


Вернуться к началу
 Заголовок сообщения: Re: 2D с аппаратной акселерацией
СообщениеДобавлено: Пн дек 01, 2008 9:23 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3928
Gluk

Должно работать. У меня х1600.
Если чип определился будет иформация на доске отладки и в логе.


Вернуться к началу
 Заголовок сообщения: Re: 2D с аппаратной акселерацией
СообщениеДобавлено: Пн дек 01, 2008 11:20 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Пн апр 16, 2007 6:38 pm
Сообщения: 1222
вообще-то, после запуска эктан стал серым.. сплошная заливка такая.. потом я обновил pixlib, на ту что в архиве, и экран перестал после запуска примера заливаться серым.. вместо этого он стал заливаться вертикальными черными и белыми полосками шириной в 5-10 пикселей (визуально) каждая.. так что доску отладки было видно мягко говоря не очень хорошо.. а лог не смог сохранить ввиду сложности работы с файловыми менеджерами и rdsave вслепую..

_________________
И мы уже давно не пешки,
Мы пули, мы орлы, и решки!
Война ютит бинарный код,
Умри, или иди вперед!


Последний раз редактировалось Gluk Ср дек 03, 2008 1:53 am, всего редактировалось 1 раз.

Вернуться к началу
 Заголовок сообщения: Re: 2D с аппаратной акселерацией
СообщениеДобавлено: Вт дек 02, 2008 8:23 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3928
Gluk

Интересно. У тебя есть раздел hd куда можно писать ?


Вернуться к началу
 Заголовок сообщения: Re: 2D с аппаратной акселерацией
СообщениеДобавлено: Ср дек 03, 2008 1:52 am 
Не в сети
Аватара пользователя

Зарегистрирован: Пн апр 16, 2007 6:38 pm
Сообщения: 1222
есть bd

_________________
И мы уже давно не пешки,
Мы пули, мы орлы, и решки!
Война ютит бинарный код,
Умри, или иди вперед!


Вернуться к началу
 Заголовок сообщения: Re: 2D с аппаратной акселерацией
СообщениеДобавлено: Ср дек 03, 2008 10:34 am 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3928
Gluk

А куда именно ? Сделаю специальную версию драйвера.


Вернуться к началу
 Заголовок сообщения: Re: 2D с аппаратной акселерацией
СообщениеДобавлено: Ср июл 15, 2009 12:46 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Чт май 19, 2005 4:43 pm
Сообщения: 896
Решил проверить библиотеку Pixlib в действии.

Взял самую последнюю версию с SVN. Скомпилировал как описано выше. Также взял самую последнюю версию ядра и драйверов. Всё установил куда нужно. При запуске демок на доске отладки пишет:
Вложение:
pixlib_bug.PNG
pixlib_bug.PNG [ 4.24 КБ | 2966 просмотров ]


У меня видеокарта ATI Radeon Xpress 200M. Аппаратный курсор работает.

_________________
KolibriOS-перспективная ос!
Kolibri is best operation system in the world!


Вернуться к началу
 Заголовок сообщения: Re: 2D с аппаратной акселерацией
СообщениеДобавлено: Ср июл 15, 2009 4:13 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3928
andrew_programmer

Ничего страшного.
Компиляторы ЯВУ пишут в объектники дополнительную информацию. Fasm этого не делает, а загрузчик писался в расчёте на fasm. Главное чтобы демки работали.

P.S. Скоро будет новый драйвер для смены видеорежимов (kms - kernel modesetting), курсоров и 2D и хорошие шансы на портирование mesa с акселерацией на Радеонах.


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 58 сообщений ]  На страницу Пред. 1 2 3 4 След.

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB