Subversion Repositories Kolibri OS

Rev

Rev 1947 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1947 Rev 1981
Line 1... Line 1...
1
;***************************************************************
1
;***************************************************************
2
; project name:    PCI Device Enumeration
2
; project name:    PCI Device Enumeration
3
; target platform: KolibriOS
3
; target platform: KolibriOS
4
; compiler:        flat assembler 1.68
4
; compiler:        flat assembler 1.68
5
; version:         2.2
5
; version:         2.21
6
; last update:     December 2007
6
; last update:     December 2007
7
; maintained by:   Jason Delozier (cordata51@hotmail.com)
7
; maintained by:   Jason Delozier (cordata51@hotmail.com)
8
;                  Sergey Kuzmin (kuzmin_serg@list.ru)
8
;                  Sergey Kuzmin (kuzmin_serg@list.ru)
9
;                  Mihailov Ilia (ghost.nsk@gmail.com)
9
;                  Mihailov Ilia (ghost.nsk@gmail.com)
10
;                  Artem Jerdev  (art_zh@yahoo.com)
10
;                  Artem Jerdev  (art_zh@yahoo.com)
Line 12... Line 12...
12
;***************************************************************
12
;***************************************************************
13
;Summary: This program will attempt to scan the PCI Bus
13
;Summary: This program will attempt to scan the PCI Bus
14
;        and display basic information about each device
14
;        and display basic information about each device
15
;        connected to the PCI Bus.
15
;        connected to the PCI Bus.
16
;***************************************************************
16
;***************************************************************
17
;HISTORY:
-
 
18
;keep dates in european format (dd/mm/yyyy), please
-
 
19
; '!' means big changes
-
 
20
;
-
 
21
;to-do:
-
 
22
; more vendors
-
 
23
; vendor's website
-
 
24
; Subsystem id and Subsystem vendor id detection
-
 
25
 
-
 
26
; Full device detection (like "ATI Radeon 9200") will increase app
-
 
27
; size a lot and probably it is function of particular drivers
-
 
28
;----------------------------------------------------------------
-
 
29
;2.2: PCIDEV   03/01/2010
-
 
30
;Author:    Artem Jerdev 
-
 
31
;Features:
-
 
32
;           fixed
-
 
33
;                 * English in some comments ;)
-
 
34
;           added
-
 
35
;                 * ! user-accessible MMIO channels detection
-
 
36
;                 * ! ASCII-dump as PCI memory access demonstration
-
 
37
;           optimization
-
 
38
;                 * (yet needed)
-
 
39
;----------------------------------------------------------------
-
 
40
;2.1: PCIDEV   ??/04/2007
-
 
41
;Author:    Mihailov Ilia aka Ghost 
-
 
42
;Features:
-
 
43
;           fixed
-
 
44
;                 * Some little bugs
-
 
45
;                 * Source code formating
-
 
46
;                 * PCI version normalized 0210 -> 2.10
-
 
47
;           added
-
 
48
;                 * + 13 vendor (total now 1000!)
-
 
49
;                 * + 3 class type
-
 
50
;                 * Fast call source ready
-
 
51
;                 * Device IRQ detection
-
 
52
;           optimized
-
 
53
;                 * ! size optimized (61025 -> 32501 see added)
-
 
54
;                 * easy to add new vendor & class names
-
 
55
;----------------------------------------------------------------
-
 
56
;2.0: PCIDEV   30/08/2006
-
 
57
;(it differs a lot from the version 1.0, which was introduced 19 months ago)
-
 
58
;Author:    Marat Zakiyanov aka Mario79 
-
 
59
;           Sergey Kuzmin aka Wildwest 
-
 
60
;Features:
-
 
61
;           added
-
 
62
;                 * Detection of Interface by Mario79
-
 
63
;                 * 122 vendor id's by Wildwest
-
 
64
;                 * Description is based on Class, SubClass and Interface now (PCI 3.0) by Wildwest
-
 
65
;----------------------------------------------------------------
-
 
66
;1.31: PCIDEV   13/05/2006
-
 
67
;Author:    Jason Delozier 
-
 
68
;Features:
-
 
69
;           fixed
-
 
70
;                 * ! bug in Company Name look up code that would cause Unknown Name errors.
-
 
71
;                 * ! possible bugs, many instructions missing byte, word, dword prefixes
-
 
72
;                 * ! possible bug which could have occured after removing  "PREVIOUSVERSIONLIST"
-
 
73
;                     entry in loop up code and not fixing jump parameters.
-
 
74
;           added
-
 
75
;                 *  comments to various parts of the code
-
 
76
;           optimized
-
 
77
;                 * various parts of the source, too many to remember and mention.
-
 
78
;                 * changed entries for Subclasses in vendors.inc to Byte format, saves a little space.
-
 
79
;----------------------------------------------------------------
-
 
80
;1.30: PCIDEV   11/05/2006
-
 
81
;Author:    Sergey Kuzmin aka Wildwest 
-
 
82
;Features:
-
 
83
;           added
-
 
84
;                * 3 new vendor id's (ESS from Madis Kalme and 2 id's
-
 
85
;                  forgotten from 1.15 release: Broadcom -SiByte and Chaintech Comp.)
-
 
86
;           changed
-
 
87
;                * I don't know why other devs (Jason or Victor) changed window style
-
 
88
;                  to old ugly one, so I changed it back to skinned type 3.
-
 
89
;                * the same goes to the use of macroc.inc - it is enabled again.
-
 
90
;           deleted
-
 
91
;                * there is no more label "PREVIOUSVERSIONLIST" - id's moved to the
-
 
92
;                  appropriate parts of global list.
-
 
93
;----------------------------------------------------------------
-
 
94
;1.29: PCIDEV   30/04/2006
-
 
95
;Author:    Jason Delozier 
-
 
96
;Features:
-
 
97
;           fixed
-
 
98
;                 * ! bug that would not allow devices with device
-
 
99
;                   numbers > 16 to be displayed.
-
 
100
;           added
-
 
101
;                 * ! another heading called "FNC" (function) which allows
-
 
102
;                   the multipurpose Device/Function varible to be split and
-
 
103
;                   displayed to the user properly.
-
 
104
;                 * horizontal bars to display for easier reading.
-
 
105
;           optimized
-
 
106
;                 * vendor/description search routines for speed and space.
-
 
107
;----------------------------------------------------------------
-
 
108
;1.25: PCIDEV   02/10/2005
-
 
109
;Author:    Sergey Kuzmin aka Wildwest 
-
 
110
;Features:
-
 
111
;            changed
-
 
112
;                  * ! Description is based on Class and SubClass
-
 
113
;                     now (PCI 3.0). The Names of Classes and SubClasses
-
 
114
;                     are in the end of Vendors.inc
-
 
115
;            deleted
-
 
116
;                  * label "Descriptions" (names of Classes)
-
 
117
;
-
 
118
;----------------------------------------------------------------
-
 
119
;1.20: PCIDEV   16/08/2005
-
 
120
;Author:    Victor Alberto Gil Hanla a.k.a. vhanla 
-
 
121
;Features:
-
 
122
;           added
-
 
123
;                  * ! many vendor lists (865)
-
 
124
;           deleted
-
 
125
;                  * previous version's list
-
 
126
;           changed
-
 
127
;                  * previous Company Name searching and printing
-
 
128
;----------------------------------------------------------------
-
 
129
;1.15: PCIDEV   03/06/2005
-
 
130
;Author:    Sergey Kuzmin aka Wildwest 
-
 
131
;Features:
-
 
132
;           added
-
 
133
;                 * quantity of devices,
-
 
134
;                 * ! detection of Company Name based on Vendor ID,
-
 
135
;                 * database of VenID (35 ID's),
-
 
136
;                 * macros.inc for smaller size,
-
 
137
;           changed
-
 
138
;                 * interface+(skinned window),
-
 
139
;                 * VenID before DevID in 'table'(was DevID before VenID)
-
 
140
;----------------------------------------------------------------
-
 
141
;1.0: PCIDEV    30/01/2005
-
 
142
;Author:    Jason Delozier
-
 
143
;Features:
-
 
144
;          able to
-
 
145
;                 * detect PCI version,
-
 
146
;                 * quantity of PCI buses,
-
 
147
;                 * Vendor&Device ID for appropriate Device on Bus;
-
 
148
;                 * detect Revision, Class and Subclass of Device,
-
 
149
;                 * and make Description based on Class
-
 
150
;-------------------------------------------------------------
-
 
151
include '../../../macros.inc'
17
include '../../../macros.inc'
152
;include 'macros.inc'
18
;include 'macros.inc'
Line 153... Line 19...
153
 
19
 
154
MEOS_APP_START
20
MEOS_APP_START
Line 548... Line 414...
548
Form:	dw 800 ; window width (no more, special for 800x600)
414
Form:	dw 800 ; window width (no more, special for 800x600)
549
	dw 100 ; window x start
415
	dw 100 ; window x start
550
	dw 620 ; window height
416
	dw 620 ; window height
551
	dw 20 ; window y start
417
	dw 20 ; window y start
Line 552... Line 418...
552
 
418
 
Line 553... Line 419...
553
title	db 'PCI Device Enumerator v 2.2 by J.Delozier, S.Kuzmin, V.Hanla, M.Zakiyanov, A.Jerdev', 0
419
title	db 'PCI Device Enumerator v 2.21 by J.Delozier, S.Kuzmin, V.Hanla, M.Zakiyanov, A.Jerdev', 0
554
 
420
 
555
PCIWin mls \
421
PCIWin mls \
556
	'   Don`t forget to enable PCI Access to Applications in Setup Menu.',\
422
	'   Don`t forget to enable PCI Access to Applications in Setup Menu.',\