Board.KolibriOS.org

Official KolibriOS board
It is currently Thu Oct 17, 2019 9:37 pm

All times are UTC+03:00




Post new topic  Reply to topic  [ 33 posts ]  Go to page Previous 1 2 3 Next
Author Message
 Post subject:
PostPosted: Fri May 11, 2007 5:56 pm 
Offline

Joined: Wed Feb 21, 2007 3:03 pm
Posts: 188
Правильно.
Внимательней читай статью. Ты должен зарегистрировать сервис (в статье stdcall RegService, my_service, service_proc)
Вот тут я не знаю, что произойдет если не регистрировать сервис....

Кстати:
version dd 0x00030003
текущая 0x00050005!!!!!

и еще:
jmp $
насчет этого не уверен, некорректно как-то...


Top
   
 Post subject:
PostPosted: Fri May 11, 2007 6:01 pm 
Offline
Kernel Developer

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

Значит твоя видеокарта не поддерживается. Драйвер работает на ATI 7500 - x800


Top
   
 Post subject:
PostPosted: Fri May 11, 2007 6:25 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Драйвер должен зарегистрировать себя RegService и вернуть хэндл ядру в еах. Если еах=0 то ядро считает что усторойство не поддерживается или его не удаётся настроить и освобождает память которую драйвер занимает. Никаких дополнительных проверок хэндла не производится хотя надо их добавить.


Top
   
 Post subject:
PostPosted: Fri May 11, 2007 7:16 pm 
Offline

Joined: Fri Mar 03, 2006 1:53 pm
Posts: 42
k@sTIg@r wrote:
Правильно.
Внимательней читай статью. Ты должен зарегистрировать сервис (в статье stdcall RegService, my_service, service_proc)

Я полагаю что START вообще не запускается.
Quote:
version dd 0x00030003
текущая 0x00050005!!!!!

В http://kolibrios.org/files/download/k_0.6.5.0_src.7z
k_0.6.5.0_src\kernel\drivers
везде 00030003
Quote:
и еще:
jmp $

Как я понимаю, возвав load_driver до
; START MULTITASKING
с jmp $ после START система должна зависнуть.
Но этого не происходит, работает как ни в чем не бывало.

Если не трудно пришли мне образ загрузочной дискеты
и исходники драйвера. fpauk@mail.ru


Top
   
 Post subject:
PostPosted: Fri May 11, 2007 7:25 pm 
Offline

Joined: Fri Mar 03, 2006 1:53 pm
Posts: 42
Serge wrote:
Mihail

Значит твоя видеокарта не поддерживается. Драйвер работает на ATI 7500 - x800


Я запускаю под Bochs-2.3

После
proc START stdcall, state:dword
в kernel\drivers\ati2d.asm
я вствил
jmp $
но система не зависла.

Похоже, что драйвер вообще не загружается.


Top
   
 Post subject:
PostPosted: Fri May 11, 2007 8:00 pm 
Offline
Kernel Developer

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

Проверил в Боше, зависла как и положено. Посмотри образ, может скопировал патченный драйвер в другую папку.


Top
   
 Post subject:
PostPosted: Sat May 12, 2007 11:16 am 
Offline

Joined: Fri Mar 03, 2006 1:53 pm
Posts: 42
Serge wrote:
Mihail

Посмотри образ, может скопировал патченный драйвер в другую папку.


Это я могу. Но тем-же JMP $ я это проверил.
Или в другую в смылсле не в /rd/1/DRIVERS ?
Я использовал образ из http://kolibrios.org/files/download/k_0.6.5.0_ru.7z
и заменил в нем старый ati2d.obj на мой с jmp $
после
proc START stdcall, state:dword


Top
   
 Post subject:
PostPosted: Sat May 12, 2007 1:30 pm 
Offline
Kernel Developer

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

Драйвер должен быть в папке /rd/1/DRIVERS. Если ты заменил драйвер то у тебя не запускается START. Вариантов три: ядро не может найти драйвер в /rd/1/DRIVERS, драйвер пытается импортировать несуществующие функции, версии драйверной модели не совпадают. Если ты брал оригинальный образ дистрибутива то исходники драйвера должны быть из дистриба или скачай последние версии исходников с SVN и замени ядро и все драйверы, а потом эксперементируй. Или протрассируй вызов load_driver в отладочном Боше.


Top
   
 Post subject:
PostPosted: Sat May 12, 2007 4:55 pm 
Offline

Joined: Fri Mar 03, 2006 1:53 pm
Posts: 42
Serge wrote:
Mihail

Драйвер должен быть в папке /rd/1/DRIVERS. Если ты заменил драйвер то у тебя не запускается START. Вариантов три: ядро не может найти драйвер в /rd/1/DRIVERS, драйвер пытается импортировать несуществующие функции, версии драйверной модели не совпадают. Если ты брал оригинальный образ дистрибутива то исходники драйвера должны быть из дистриба или скачай последние версии исходников с SVN и замени ядро и все драйверы, а потом эксперементируй. Или протрассируй вызов load_driver в отладочном Боше.


В сочетании http://kolibrios.org/files/download/k_0.6.5.0_dbg.7z
с http://kolibrios.org/files/download/k_svn.488_ru.7z
работает.


Top
   
 Post subject:
PostPosted: Sat May 12, 2007 5:05 pm 
Offline
Kernel Developer

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

Что значит "работает" ?


Top
   
 Post subject:
PostPosted: Sat May 12, 2007 6:51 pm 
Offline

Joined: Fri Mar 03, 2006 1:53 pm
Posts: 42
Serge wrote:
Mihail

Что значит "работает" ?


На данном этапе, я вывожу сообщение из своего драйвера на экран
(с помощью boot_log).


Top
   
 Post subject:
PostPosted: Sat Jun 23, 2007 3:24 pm 
Offline

Joined: Fri Mar 03, 2006 1:53 pm
Posts: 42
Драйвер FORTH исполняет исходный форт-текст в файле /sys/drivers/AUTOEXEC.F
http://fpauk.narod.ru/k_svn.549_src_f.rar
Теперь драйвера могут быть представлены в виде исходных текстов Форта.
Т.е. модифицироваться под Колибри.

Почемуто зависает srv_handler при том, что service_proc ничего не делает.


Top
   
PostPosted: Tue Nov 25, 2008 1:44 pm 
Offline

Joined: Fri Nov 21, 2008 8:16 am
Posts: 180
diamond wrote:
Вот, написал статью, демонстрирующую программирование драйвера.
http://diamondz.land.ru/writedrv.htm
Приведённый там пример может быть полезен и безотносительно к обучению - написан фильтр, показывающий все обращения программ к файловой системе.

Вопрос возник (fmon.asm#371):
Code:
        jz      @f
        push    str_skipped
        call    [con_printf]
@@:

Это я чего-то недопонял, или просто опечатка :?:


Top
   
PostPosted: Tue Nov 25, 2008 2:20 pm 
Offline
Kernel Developer
User avatar

Joined: Mon Nov 28, 2005 8:00 pm
Posts: 1601
Galkov wrote:
Вопрос возник (fmon.asm#371):

В смысле, стек разбалансируется? Угу, ошибся, нужно дописать, к примеру, "pop ecx" после con_printf. (Правда, на практике это не сказывается - во-первых, на практике эта ситуация может возникнуть в совершенно исключительных случаях, во-вторых, небольшая разбалансированность стека в данной конкретной программе не мешает.)

_________________
Ушёл к умным, знающим и культурным людям.


Top
   
PostPosted: Tue Nov 25, 2008 3:14 pm 
Offline

Joined: Fri Nov 21, 2008 8:16 am
Posts: 180
Да без проблем :)

Это я так: копаюсь, разбираюсь потихоньку, пытаюсь понять происходящее, уловить идеологию....
Не все пока понятно, конечно :(

В общем, в большей степени-то, я свое понимание пытаюсь контролировать


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

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 0 guests


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:  
Powered by phpBB® Forum Software © phpBB Limited