Board.KolibriOS.org
http://board.kolibrios.org/

PCIDEV - определение PCI устройств
http://board.kolibrios.org/viewtopic.php?f=42&t=73
Страница 4 из 7

Автор:  Wildwest [ Вт мар 13, 2007 2:30 pm ]
Заголовок сообщения: 

> http://footballtabl.h15.ru/ivan/info 0.6.zip

Прога интересная. Может попробуешь её портировать с помощью PPro Pascal http://nillsoft.narod.ru/download/download.html или FreePascal...

Автор:  Wildwest [ Чт апр 05, 2007 3:47 pm ]
Заголовок сообщения: 

>нужен ли форк PCIDEV, который будет давать информацию о видяхах

Процесс идет, но очень медленными темпами. Ищутся желающие заполнить примерно 700 записей о видеокартах 27 разных фирм (если найдутся несколько человек, то на каждого придется меньше) + если у вас видяха например NVidia, то вы заполняете только Nvidia и одновременно тестите прогу. Причем по сути дело сводится к банальному copy+paste c исправлением 7 строк на каждую запись. Сами понимаете, что у меня на этот процесс ((копирование 3-х участков кода в разных частях проги + исправление 7 строк) * 700 записей) уйдет большое количество времени.
http://coolthemes.narod.ru/gfx041.PNG

Формат записей на примере ATi

ATi:
cmp [PCI_Device], 0x5961
je at_5961 // копировать и править 2 строки для каждого девайса

...............

at_5941:
mov eax,4 ; function 4 : write text to window
and ebx, 0x0000FFFF ;clear X position
or ebx, 470*65536 ;X start becomes 470
xor ecx, ecx ;font color
mov edx,AT__5941 ; pointer to text beginning //копировать и править еще пару строк
mov esi, AT__5941len-AT__5941 ; text length
int 0x40
jmp outd

........

AT__5961: ; копировать и править еще 3 строки
db 'RADEON 9200' ;
AT__5961len:

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

Автор:  Pavia [ Чт апр 05, 2007 5:41 pm ]
Заголовок сообщения: 

Wildwest
Мой тебе совет. Надо менять структуру программы пока не поздно. Сделать одну процедуру для поиска в списке ID. И одну для вывода. А то так код раздувается, да и лень делать copy+paste. У себя все строки в файл выняс, прада у меня помима этих причин были и другие.

Автор:  Heavyiron [ Чт апр 05, 2007 5:49 pm ]
Заголовок сообщения: 

Согласен, то же пожелание и к cpuid. Сначала собрал все данные, задал нужные текстовые и числовые переменные и вывел все в одном месте. Так проще потом будет работать с исходником, если надо что изменить. Да и оптимальнее, наверное. А так, если нужно чуть сдвинуть, например, строки в программе, придется править 700 строк :)
И еще рекомендую начать использовать asciiz-строки.
Тогда вместо:
str:
db '...'
str_len

будет
srt db '...',0

(эконимия 2-х строчек в исходнике на каждую строку текста)
Если строк 700, то это на 1400 строк можно уменьшить исходник. Кроме того не нужно будет передавать в esi str_len, а это уже сокращение самого кода.

Автор:  Wildwest [ Пт май 11, 2007 4:04 pm ]
Заголовок сообщения: 

На SVN новая версия

;2.1: PCIDEV ??/04/2007
;Author: Mihailov Ilia aka Ghost
;Features:
; fixed
; * Same little bugs
; * Source code formating
; * PCI version normalized 0210 -> 2.10
; added
; * + 13 vendor (total now 1000!)
; * + 3 class type
; * Fast call source ready
; * Device IRQ detection
; optimized
; * ! size optimized (61025 -> 32501 see added)
; * easy to add new vendor & class names

Автор:  Mario [ Сб июн 18, 2011 12:58 am ]
Заголовок сообщения:  Re: Детект PCI устройств

Возникла идея сделать сохранение данных PCIDEV в текстовый файл по нажатию кнопки (выбор например через OpenDialog) и сохранение в текстовый файл при запуске с параметром - путь к файлу, если никто не изъявляет желание - буду делать сам.

Автор:  art_zh [ Сб июн 18, 2011 12:56 pm ]
Заголовок сообщения:  Re: PCIDEV - определение PCI устройств

Очень полезная вещь. Могу помочь с дампом блоков MMIO и Extension_ROM (там где такой сервис разрешен ядром).

Еще была идея чтобы PCIDEV показывала развернутый список Capabilities для выбранного устройства, но на экране для этого совершенно нет места. Проблема снимается, если будет запись в файл.

Автор:  Mario [ Сб июн 18, 2011 4:02 pm ]
Заголовок сообщения:  Re: PCIDEV - определение PCI устройств

Ну, если сделаешь код, то я естественно возражать не буду.

Автор:  Mario [ Вс июн 26, 2011 3:09 am ]
Заголовок сообщения:  Re: PCIDEV - определение PCI устройств

SVN r. 1982
1) Сохранение списка устройств на диск
2) Выбор пути через OpenDialog

С учетом всех предыдущих ревизий присвоил программе версию 2.3

Автор:  yogev_ezra [ Вс июн 26, 2011 8:50 am ]
Заголовок сообщения:  Re: PCIDEV - определение PCI устройств

Твоя версия стала падать при запуске в VMWare (последняя версия от CleverMouse не падала).

Скриншот падения на доске и скриншот из дебаггера:
Спойлер: Показать
Вложение:
pcidev002.png
pcidev002.png [ 8.74 КБ | 1433 просмотра ]
Вложение:
pcidev001.png
pcidev001.png [ 42.94 КБ | 1434 просмотра ]
Скриншот как это было раньше:
Спойлер: Показать
Вложение:
pcidev003.png
pcidev003.png [ 46.68 КБ | 1431 просмотр ]

Автор:  Mario [ Вс июн 26, 2011 2:36 pm ]
Заголовок сообщения:  Re: PCIDEV - определение PCI устройств

Я предполагаю, что знаю в чем проблема. :)
Спойлер: Показать
Код:
prepare_text_area:
146      mov   edi,[store_text_area_start]
147   
148      push   edi
149      mov   ecx,4096/4 ; I hope this will be enough for store of data
150      mov   eax,dword '    '
151      cld
152      rep   stosd
153      pop   edi

Автор:  yogev_ezra [ Вс июн 26, 2011 2:41 pm ]
Заголовок сообщения:  Re: PCIDEV - определение PCI устройств

Mario писал(а):
Я предполагаю, что знаю в чем проблема. :)
Экономные FASM программисты такие экономные :mrgreen:То есть, упало там, где ты написал в комментах, что может здесь упасть :D Ну так увеличь :wink:

Автор:  Mario [ Вс июн 26, 2011 2:43 pm ]
Заголовок сообщения:  Re: PCIDEV - определение PCI устройств

Не, ну в Qemu все хоккей. ;-)
Кстати сам можешь проверить, увеличить, закоммитить и восстановить твое поражение в правах как программиста. :mrgreen:

Автор:  DmitrySokolowsky [ Вс июн 26, 2011 3:09 pm ]
Заголовок сообщения:  Re: PCIDEV - определение PCI устройств

На eBox не упало, список сохраняет успешно.

Автор:  yogev_ezra [ Вс июн 26, 2011 8:16 pm ]
Заголовок сообщения:  Re: PCIDEV - определение PCI устройств

Mario писал(а):
Не, ну в Qemu все хоккей. ;-) Кстати сам можешь проверить, увеличить, закоммитить и восстановить твое поражение в правах как программиста. :mrgreen:
Не проканало: поменял 4096/4 на 4096 - стало падать в другом месте :oops:
Спойлер: Показать
Вложение:
pcidev004.png
pcidev004.png [ 39.38 КБ | 1378 просмотров ]

Страница 4 из 7 Часовой пояс: UTC+03:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/