ScanPCI for OS/2

(C) 1997-2000 Marco G. Salvagno

It's difficult to maintain a decent device database! Whenever you notice that ScanPCI is failing to correctly recognize your hardware, use the contribution form to have your devices added to the database.

If you want to help me, submit this form. You may want to mail me a file containing ScanPCI output, too.


New?

2/2/2000: some scattered database updates, and a small bug fixed:
+ New devices:
3Dlabs (many devices added or changed) Adaptec AIC-1160/AIC-7821/AIC-2930U/ANA620xx/ANA69011A/AIC-7896
AMD Am78C978 PCnet-Home Networking Card 10/100 Mbps
AMD (many devices added)
ATI 3D Rage Pro 2c PCI GUI Accelerator
BrookTrout ISDN Card
Chips & Technologies 69030 AGP Video Accelerator
Creative Labs Banshee 3D Blaster Banshee PCI CT6760
Infineon Technologies PEB/PEF 20534 DSCC4 Multiprotocol HDLC Controller
Intel 82806AA, 82820, 82840 PLX PCI9051 Target PCI Interface Chip
PLX PCI9052 Target PCI Interface Chip
S3 (many devices added or changed)
Scitex bridge controllers
SiS630 (many devices added)
SiS 6326 AGP/PCI Graphics & Video Accelerator
Symbios 53C885 10/100 Ethernet NIC
Sony CXD1947A IEEE-1394 link layer / PCI Bridge VIA VT86C100A PCI Fast Ethernet Controller

+ New devices (contributed by users):
Adaptec AIC-7890 SCSI chip (new ID)
ATI 3D Rage IIc
Brooktree BT878
Compex RL100ATX Fast Ethernet NIC
Eicon DIVA ISDN card
ELSA QuickStep ISDN Card
KTI ET32 Ethernet NIC
Lucent Venus modem chipset
Madge Smart 16/4 PCI Ringnode Mk2 (BM2)
Matrox G200 PCI, G400 AGP
NEC PowerVR PCXII
NeoMagic MagicGraph 128XD LCD video chipset
SiS900 Fast Ethernet Controller
VIA VT86C100A Fast Ethernet Controller
Yamaha sound chipsets: 724D, 740B, 754

* Database statistics (v7):
Vendor signatures : 798
Total devices : 1037

* Fixed the PCI INT pin D bug ("Dunknown (0x4)")

* Find what the hell is nolx.exe, with a new exciting chapter in this doc :-)

11/28/1999: Mainly a database update (now v6):
* Database statistics:

Vendor signatures : 797
Total devices : 943

+ Now database version and statistics are printed on startup

2/22/1999: This release received only partial public distribution. Database update (v5):
* Database statistics:

Vendor signatures : 792
Total devices : 832
2/15/1999: I did it again:
+ Terrific memory requirements and executable size shrink! Now ScanPCI is the lightweight util that should have been from the start.

+ Vendor ID, Device ID and Revision ID is displayed even in terse mode if vendor or device id were not identified.

2/12/1999: This wasn't a public release:
+ added an usage splash screen. Add a '-?' on the command line to see it.

+ terse mode allow to get only essential info about PCI devices: it's now the default behaviour. Add a '-v' on the command line for verboseness.

+ debug mode, remove some checks from the scanning routine... I don't expect it to prove itself useful, but who knows?

+ Major update to the device database (+20 Vendors, +211 devices).

+ No longer needs emx to run (which resulted in an executable size increase)

+ Consistenly reduced memory requirements and executable size.

* Fixed a glitch: now prints "IRQ: none" instead of "IRQ: 0" if device isn't using an IRQ line.

2/6/1999: Yes! Changes from older releases:
+ Revision ID is now taken in account when identifying devices.

+ Slightly updated the device database. Well, don't keep your breath about this issue, I still can't find a decently up-to-date database.

* Vendor ID, Device ID and Revision ID are now printed even if the device has been recognized

* A couple bugfixes

What's this stuff?

ScanPCI for OS/2 is a little utility that scans the PCI buses and list the devices attached to the system. Pretty straightforward, uh?

ScanPCI will try to identify the devices (although this used not to be its primary goal), and will display nicely formatted data about each and every device.

Requirements

Not many. Just be sure you keep emxio.dll in your libpath.

emxio.dll is a library contained in the emx runtime package, which is also useful to have because so many programs use it. If you have it installed, check your version; you should run emx 0.9d fixpak #2 to ensure proper operation of the program: you may experience unpredictable result (not really, it usually dies with a SYS3175 error, but you know how these things go...). Anyawy I included the correct emxio.dll in the package, just to make your life a bit easier.

Licensing

ScanPCI is FREEWARE.

Please note that ScanPCI is distributed "as-is". I'm not accepting any responsibility for damages caused by correct or incorrect use of the program, and there are not warranties, neither expressed nor implied.
Use this program at your own risk.

By running the ScanPCI program you're implicitly agreeing with the terms of this license.

You can use and redistribute the program as long as the archive contents are not changed.

Why did you do it?

Simple: because at the moment there was no program to display the configuration for the PCI buses, and I needed to know how the system was setup under OS/2. Besides that, I love browsing the output of diagnostic programs :-)

Usage

ScanPCI has no fancy interface, but some command line switches.
Usage:
  scanpci -v    -- verbose mode; prints almost everything ;)
          -d    -- debug mode; just remove some checks from the scanning routine
          -?    -- prints this screen
You may redirect the output to a pipe or a file, i.e.:
   [d:\stuff\ScanPCI] ScanPCI | more

   [d:\stuff\ScanPCI] ScanPCI -v > out
Well if you just happen to notice how slow is the stock OS/2 more, take a look at "A better more v2.0" by Stephen Lacy. It's faster and let you browse through the text: very similar to less, except it's smaller and have more intuitive keybindings if you have no unix background. It's dated 1993, so maybe you're not going to find it on hobbes; mail me if you don't find it.

In the archive you will find two binaries: scanpci.exe, which is compressed using the LXLITE utility by FRIENDS software, and nolx.exe which is not compressed. If you're using Warp 3 or later, you should have no problem using the compressed executable; otherwise try the uncompressed one.

Bugs and Limitations

There are no bugs that I'm aware of, but there are many limitations indeed:

ScanPCI...

...and many more! :-)

A word about feedback

Feedback is more than useful for me: it's vital; if I don't hear feedback from users, then most likely this software will sit peacefully on my hard disk, and die. Since I get no revenue for this thing (I'm not bold enough to dare and ask money for it :-) user feedback is the only way to let me know that someone is still using ScanPCI. Thus if you are interested in this program, then mail me: I will be listening for suggestions, contributions, bug reports, etc.

To-Do

I didn't plan to further develop this program, but indeed I did it :-) I won't be releasing the source code for I'm very jealous of my code O:-)

If you need specific features or have suggestions, just ask. Please note, I'm not making any promise ;)

If you are still interested in the program source, well see contacting info.

Credits

Once upon a time ScanPCI was derived from scanpci.c by Robin Cutshaw.

Now, it's almost completely rewritten, and has very little in common with its ancestor.

Thank David Wei if I made yet another one release of this thing :)

The following people has contributed to ScanPCI by submitting device updates (listed in no particular order):

Steen Kleis Sorensen, Alex Cherkaew, daniel, Duane Smith, Peter Fitzsimmons, Wolfram Schmid, Joseph O. Henley, Ren-Shou Huang, Evangelos, HORNIGA, L.S. McCarty, Bruce LaZerte, Norbert Klemmer, Patrick Nijs, Jim Giacchi, Alexander Leven, Igor E. Kozin, Sam Lewis, Craig Colby, James Hunkins, Markus Rosellen, Randy Fowler, William L. Hartzwell.

Contacting information

Visit my homepage!

Of course I can be reached by e-mail. Please flag clearly the subject (that means: mail are filtered by subject content, put the "scanpci" word (case doesn't matter) in it, and ahead we go).

My ICQ UIN# is 20422750.


ScanPCI for OS/2, (C) 1997-2000 Marco G. Salvagno