Board.KolibriOS.org

Official KolibriOS board
It is currently Wed Oct 21, 2020 4:28 am

All times are UTC+03:00




Post new topic  Reply to topic  [ 58 posts ]  Go to page Previous 1 2 3 4 Next
Author Message
PostPosted: Mon Oct 20, 2008 7:23 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Была путаница с 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 примеры и заголовочный файл.

Драйвер грузит библиотека при инициализации.
Code:
     srv_hw2d = get_service("HDRAW");
       if(srv_hw2d == 0)
         srv_hw2d = load_service("/rd/1/drivers/ati2d.drv");
get_service не умеет грузить PE DLL и при первом запуске вернёт 0. Тогда либа загрузит драйвер сама.
Code:
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 и всё рисуется программно.


Top
   
PostPosted: Mon Oct 20, 2008 7:59 pm 
Offline
User avatar

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

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

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

..bw


Last edited by bw on Mon Oct 20, 2008 10:31 pm, edited 1 time in total.

Top
   
PostPosted: Mon Oct 20, 2008 8:08 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
bw

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


Top
   
PostPosted: Mon Oct 20, 2008 9:39 pm 
Offline
User avatar

Joined: Mon Nov 05, 2007 12:09 am
Posts: 32
Serge wrote:
Никто не пишет. Если возьмешся будет здорово.

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


Top
   
PostPosted: Tue Nov 11, 2008 5:35 pm 
Offline
Kernel Developer

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

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


Attachments:
pixlib_03.7z [36.59 KiB]
Downloaded 215 times
Top
   
PostPosted: Thu Nov 13, 2008 4:03 am 
Offline
Designer
User avatar

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

_________________
Звиздеть не мешки ворочать


Top
   
PostPosted: Thu Nov 13, 2008 10:40 am 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
На NV всё работает в режиме эмуляции, через процессор. Поэтому медленно.

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


Top
   
PostPosted: Mon Dec 01, 2008 8:32 pm 
Offline
User avatar

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

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


Top
   
PostPosted: Mon Dec 01, 2008 9:23 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Gluk

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


Top
   
PostPosted: Mon Dec 01, 2008 11:20 pm 
Offline
User avatar

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

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


Last edited by Gluk on Wed Dec 03, 2008 1:53 am, edited 1 time in total.

Top
   
PostPosted: Tue Dec 02, 2008 8:23 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Gluk

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


Top
   
PostPosted: Wed Dec 03, 2008 1:52 am 
Offline
User avatar

Joined: Mon Apr 16, 2007 6:38 pm
Posts: 1222
есть bd

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


Top
   
PostPosted: Wed Dec 03, 2008 10:34 am 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Gluk

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


Top
   
PostPosted: Wed Jul 15, 2009 12:46 pm 
Offline
User avatar

Joined: Thu May 19, 2005 4:43 pm
Posts: 896
Решил проверить библиотеку Pixlib в действии.

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


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

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


Top
   
PostPosted: Wed Jul 15, 2009 4:13 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
andrew_programmer

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

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


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 58 posts ]  Go to page Previous 1 2 3 4 Next

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited