
                         Alexey Smirnov SysInfo/2 - Beta 0.8.14
                        -------------------------------------

NAME
        SysInfo.exe  -  OS/2 PM System Information utility, a ground-up clone of
	the Symantec NU for Win 95/NT SysInfo concept.

SYNOPSIS
        SysInfo/2 is a useful PM tool for any person who wants to know
        more about their machine and understand how OS/2 uses the
        hardware resources of their PC.  It is doesn't contain *any*
        Symantec code (except of some grabbed pictures ;-), In the future, I
	will replace these with my own)

DESCRIPTION
        Because the original system information and analyse tools
        provided by IBM and other manufacturers are less informative, I
        wanted to fill this "outer space" by writing my own PM tool in
        accordance with a modern view on the requirements.

        SysInfo/2 was written using SpeedSoft Sibyl compiler
        (evaluation copy ;-)). To collect information about running
        processes and memory utilization I use IBM Theseus API, so to
        use my utility you need to place THESEUS0.DLL into X:\OS2\DLL 
	or into the same directory as SysInfo.exe.
        
        List of features:
         1st page - total information material:
                - CPU & FPU type and quantity, 
                - BIOS information,
                - Memory amount and utilization,
                - System Bus information,
                - HDD information,
                - Floppy info,
                - Video subsystem info,
                - MMOS2 (Multimedia) info,
                - LPT and Com port info,
                - OS/2 version,
                - Fixpack level, 
                - DOS support. 

        2nd page - total processes and memory distribution information

        3rd page - total volumes (dir's and files) information

        4th page - -//- video subsystem information

        5th page - -//- printers attached info

        6th page - -//- MMOS2 info

        7th page - -//- network subsystem info (MPTN, Internet and Novell Client)

        8th page -      System Device tree (like "My computer"
                        properties in MustDie 95/98) that show all
                        device known by OS/2 and all other devices that
                        is not known by OS/2 but can be detected by
                        myself (on PCI and may be EISA buses only).

     -------------------------------------------------------------------------

     The following options and features will be added by me:

        When I finish all non complete pages shown above I will work on
        adding some benchmarks like NU SystemInfo does. They will appear
        in 1st page (CPU & FPU bench) and in 3rd page (HDD bench). I ask
        you to tell me what type of benchmarks you want to see in
        SysInfo/2 tool in future.

        Also, I will add a 'Report' button to generate a text report for
        all necessary pages and maybe, print them.

     -------------------------------------------------------------------------

INSTALLATION
	This archive contains 2 similar executables - 1st one will work only
	with Theseus 3 API, and next one will work only with Theseus 4 API 
	(this one is recomended to use for OS/2 with KERNEL level 14.062 or 
	higher). You can find them in archive in separate directories named 
	/T3 for Theseus 3 API and /T4 for Theseus 4 API. In future author 
	will try to use WarpIn to distibute SysInfo/2.

        Just copy SysInfo.exe and PCI.INI to any directory on you OS/2 drive 
	(for example: C:\Utils\SystemInfo\) You also need to copy THESEUS0.DLL, 
	SICPUBCH.DLL, SIFILBCH.DLL, SIMEMBCH.DLL and SIRNTIME.DLL into \OS2\DLL 
	or into the same directory as SysInfo.exe.
	If you are using OS/2 with KERNEL level 14.062 or higher (you can see 
	KERNEL level when OS/2 is booted) - you do not need to add Theseus5.sys
	to your CONFIG.SYS and don't need to reboot your system to work with
	SysInfo. 
	If your OS/2 KERNEL level is lower than 14.062 - it is better to use
	Theseus 3 API, so, you must add Theseus5.sys as a DEVICE to your 
	Config.sys and then reboot OS/2.
	
	NB: If you have somewhere in you LIBPATH some old versions of 
	    Theseus0.dll SysInfo/2 may hang or crash entire system.

FILES   
	VIDEOCFG.DLL   - DLL from WSeB to replace an old one from Warp 3 
		         which don't work with SysInfo.
	SICPUBCH.DLL   - DLL that contain CPU&FPU benchmark code.
	SIFILBCH.DLL   - same one, that contain File system benchmark code.
	SIMEMBCH.DLL   - -//- that contain CPU<->Memory benchmark code.
	SIRNTIME.DLL   - this DLL contains some SysInfo/2 runtime.
	ReadMe.eng     - This file.	
	PCI.INI	       - This file is used by SysInfo/2 during PCI BIOS scaning.
			 Please, do not forget to copy it is SysInfo/2 directory!
	/T4
	 SysInfo.Exe    - The PM utility itself that works with Theseus 4 API
	 THESEUS0.DLL   - The THESEUS4 API library.
	/T3
	 SysInfo.Exe    - The PM utility itself that works with Theseus 3 API
	 THESEUS0.DLL   - The THESEUS3 API library.


BUGS
        I think, lots , so this is where you come in.

        Please, send me your Bug Reports with sceenshots and comments
        that will help me to fix bugs you find. I am interesting in
        information about any "Video & Printers information pages" bugs
        that you can find. Also any bug in "Network subsystem" page will
        be welcome. As for program crushes or hard traps, I think they
        will not happen but, who knows...

VERSION LIST TRACKER
	ver  0.814 18.05.2002 (public)
	  - Some new devices&vendors were added to PCI.INI (many new from 
	    nVidia);Special thanks to R.Dodin for help;
***	  - Add PCI.INI file checking to avoid SysInfo/2 start with empty 
	    PCI.INI; Thanks to Sander Nyman for help;
***	  - Ones more correct the code, that was announced in 0.8.11 (SysInfo/2
	    unable to work without PCI.INI file);
***	  - TCP/IP information gathering algorithm bug was fixed for TCP/IP
	    protocol detection, if TCP/IP is not the first bounded protocol;
	    Special thanks to Darryl Sperber for help;
***	  - Video detection algorithm correced due to some errors in 0.8.11 
	    build (this algorithm in 0.8.11 was taken from old archive, sorry
	    for that);
	  - Volume label now can display all 11 symbols, I think;
	  - Some speedup in "Disks" page opening (directories structure scanning
	    algorithm improved);Thanks to San Sanych;
	  - And many other corrections and updates.

	ver  0.811 01.03.2002 (public)
	  - Some new devices&vendors were added to PCI.INI;
***	  - An error was corrected that prevent SysInfo/2 from working without
	    PCI.INI file;
	  - An error was corrected in Display identification algorithm working 
	    with new SDD builds ( > build 32 ). Now SysInfo/2 can identify 
	    Display information, returned from SDD;
***	  - New PCI information is shown Device information window in "System 
	    Device Tree Page" - that is Power Saving Caps, AGP Caps and so on;
	  - And some other minor errors.

	ver  0.89 10.02.2002 (public)
***	  - A lot of new devices&vendors were added to PCI.INI;
***	  - CPU&FPU, Memory and FileSystem benchmarks are moved to DLLs and all
	    of them are using system timer to stop the test, so I think that for;
	    now my benchmarks will not freez the computer;
	  - Some code was moved to RunTime DLL;
	  - New OS/2 and FixPack versions were added too;
***	  - Many bugs were fixed on Multimedia and Network page, so I think that 
	    for now SysInfo/2 will work more correclty;
	  - And also many, many other bugs and some misspelling are corrected too. 

	ver  0.88 21.04.2001 (public)
	  - Some new devices were add to PCI.INI;
***	  - Due to a kindly help of Mikus Grinbergs and Dmitry Froloff an error
	    was corrected in PCI scanning algorithm that prevent SysInfo/2 to 
	    start;
***	  - An error in Directory gathering algorithm was corrected, so for now 
	    "Disks" page must work well.

	ver  0.87 11.04.2001 (public)
***	  - Due to a kindly help from Joachim Benjamins new SyInfo/2 comes with
	    new pictures!;
***	  - PCI BIOS scaning algorithm is added. All information that it may
	    finds it will dispaly on "Device tree" page;
***	  - Memry Read&Write benchmark is added to "Memory" page;
***	  - CPU/FPU Benchmark on the first page is normalized using test 
	    information from more than 15th different CPU test results. AMD 
	    Athlon results are looking very strange! But this is documented 
	    truth. ;-))
	  - Video detection algorithm is rewroted again. Some new info is added
	    and code size is reduced;
	  - Some erorrs are corrected in multimedia detection algorithm. For
	    now it will work more stable;
	  - On the first page some new info about local version specification
	    was added to OS/2 version detection and FixPack level and KERNEL 
	    level detection algorithms;
	  - Also there - BIOS vendor detection algorithm was rewroted. Vendor
	    identificators were adedd for thouse BIOS manufacters as Intel,
	    Packard Bell, Insyde, Dell, etc.
***	  - More over, more than 65% of all SysInfo/2 code were dramatically
	    rewroted. I think that for now is is better to start againg beta 
	    testing phase, couse new SysInfo/2 is a really new product. ;-))
***	  - All code references to Sibyl DataBase Engine were erased from 
	    SysInfo/2 code. Note: I do not use Sibyl DataBase Engine, but some
	    Sibyl base classes were referenced to it. After removing thouse 
	    references total SysInfo/2 size and memory requirements were 
	    reduced greatly.

	ver  0.711 31.01.2001 (public)
***	  - Memory analizing algorithm corrected to work with Theseus 3 API;
***	  - Errors in Video detection algorithm are corrected. Now video memory
	    detection must work as it was decleared in SysInfo/2 ver. 0.7.10;
***	  - Errors in Network information gathering algorithm are corrected too.
	    Now it must work with pre 32bit TCP/IP stack.

	ver  0.710 19.01.2001 (public)
***	  - On the first page  OS/2 version detection algorithm and FixPack
	    level and KERNEL level detection algorithm were rewroted. Now 
	    SysInfo/2 will show OS/2 version and FixPack level in accordance 
	    with SYSLEVEL.* files information; 
***	  - On "Memory" page processes, threads and modules enumerating 
	    algorithm was rewroted.  Now SysInfo/2 will show correct number of
	    modules, threads and processes running in system. 
***	  - Also there - memory distribution detection algorithm was rewroted 
	    too. For now it will work faster and will show more accurate results. 
	  - Also there - memory leaks corrected in memory distribution detection
	    algorithm; 
***	  - On "Video" page  - video detection algorithm is rewroted again. Now
	    it will show correct video memory ammount and Video adapter DAC 
	    description (for now is only tested to work with SDD); 
	  - "Help" button is temporary disable until author finished the 
	    development of SysInfo/2 help system; 
***	  - On "Network" page - TCP/IP information gathering algorithm was 
	    modified, so for now all information (IP address, address mask, 
	    subnet gateway) is recieving through software calls. 
	   Note: This algorithm is based on 32 bit TCP/IP stack. If you are using
	    oldest 16 bit stack - SysInfo/2 will recieve all TCP/IP information 
	    by parsing MPTN and   TCPIP configuration files. 

	  - And also many, many bugs and some misspelling are corrected too. ;-)) 

Note:	Due to users requests author will continue to support both Theseus 3 and
	Theseus 4 API by creating 2 similar executables - 1st one will work only
	with Theseus 3 API, and next one will work only with Theseus 4 API (this
	one is recomended to use for OS/2 with KERNEL level 14.062 or higher). 
	You can find them in archive in separate directories named /T3 for 
	Theseus 3 API and /T4 for Theseus 4 API. In future author will try to 
	use WarpIn to distibute SysInfo/2.

	ver  0.76  28.10.2000 (public)
***	  - Thanks to Mike Reichel SysInfo/2 now works with new Theseus 4 API. 

Attention: Theseus 4 API is uncompatible with previous versions of Theseus. 
	   Starting with ver 0.7.6 SysInfo/2 will work only with Theseus 4 
	   or higher.

	ver  0.75  28.10.2000 (public)
	  - On the first page - former "Build level" now is named as 
	    "KERNEL Level";
	  - On "Disks" page  - Directory ListBox now shows information
	    more firmly due to icon spacing decrease;
***	  - Now SysInfo/2 sends request directly to&nbsp; SCREEN$ to 
	    determine Video memory size, but the results are still wrong;
***	  - "CPU/FPU Benchmark" window was rewroted- I add some benchmarks
	    (Intel Pentium III 800), test results now are shown in special
	    window in numerical form and also many, many other corrections
	    were made ;-))
***	  - "File IO BenchMark" window was rewroted in the same manner - now
	    test results are shown in numerical form, SysInfo/2 saves test 
	    results after "File IO Benchmark" window is closen and so on;
***	  - Also, File IO Bench algorithm was rewroted too. An error in 
	    LongWord to Double convertation was correted - so for now 
	    SysInfo/2 will not report negative values in File IO Benchmark 
	    results;
***	  - An error corrected in NetWare client detection algorithm - now your
	    Desctop will not being frozen if&nbsp; SysInfo/2 can't find NET.CFG 
	    in the root of your boot drive. In next versions of SysInfo/2 I will 
	    try to get NetWare client information not by NET.CFG parsing but 
	    from software calls;
	  - And also many, many bugs and some misspelling are corrected too.;-))

	 What I cann't correct for now:
***	  - Video memory ammount definition. This is only error comes from IBM
	    (for example, on Matrox G400 with native Matrox drivers SysInfo/2 
	    shows 16Mb Video RAM, but if you use IBM GRADD or SDD - SysInfo/2 
	    shows 3Mb).
	    Dear friends! If you can help me to send this information to IBM 
	    - I'll be very glad!

        ver  0.70  01.10.2000 (public)
	  - Some corrections on "Network" page in choosing your Internet/
	    Intranet LAN adapters installed in your system (LAN0-:-LAN7).
***	  - Add new video devices found in SDD Beta 35 to Video adapter 
	    and video memory identification algorithm.
***	  - Added CPU/FPU Benchmarks, based on public algorithms (DhryStote 
	    & FLOPS). The results shown are normalized to typical Intel Pentium
	    166MMX + EDO RAM performance.
***	  - Added File System IO BenchMarks that analize your file system 
	    performance. The results are shown in KBytes per second for reading
	    and writing tests. Thouse tests are launched 2 times - first using 
	    internal file system cache and next - without any caching.
***	    Note: 
	     This is a very first release of CPU/FPU & FileIO BenchMarks.
	     So, please, don`t be too hard on them. ;-))

        ver  0.67  18.10.2000 (public)
	  - Some misspelling correted in  "About" window messages.;-)) 
***	  - MPTN identification algorithm rewroted again. All MPTN peculiarity
	    are now taken into consideration, so I think SysInfo/2 will work 
	    better. 
***	    Note:
	     this version of SysInfo/2 can determine all types of Network 
	     Interface cards and Protocols only if  /PROTOCOL (for NIC 
	     description files) and /MACS (for Protocol description files) 
	     directories are subbdirectories of /IBMCOM. What does it mean? You
	     can move entire /IBMCOM directory somewhere from drive C:, but you 
	     cann't move /MACS or /PROTOCOL directories separately from /IBMCOM
	     to another location. New version of SysInfo/2 will not work in that
	     case, so, please, do not send me bugreports if you move your /MAS 
	     or /PROTOCOL directories in that manner. 
***	  - Video adapter and video memory identification algorithm rewroted 
	    again. For now SysInfo/2 know and can determine all Video cards are
	    supported by SDD Beta 32, plus allmost all Video adapters that are 
	    supported by OEM (all that I can find). 
***	  - Possible memory leaks corrected in some basic SysInfo/2 classes. 
***	  - On "Network" page a new option is added. Now you can choose your 
	    Internet/Intranet LAN adapters installed in your system (LAN0-:-LAN7)
	    and see appropriate IP address and Network masks. 
***	  - MMOS2 identification algorithm rewroted. So, may be now allmost all
	    SysInfo/2 errors in Multimedia must be correted. 
	  - And also many, many bugs are corrected too. I think, now SysInfo/2
	    will work rather stable. ;-)) 

	 What I cann't correct for now: 
	  - SysInfo/2 main window resizing - I really do not know how I can do
	    that using Sibyl classes. 
	  - 100% CPU usage and traps while Multimedia for OS/2 is analizing -
	    there are only errors that comes from IBM MMOS2 -  I don't do somewhat
	    else than collecting information about multimedia adapters and their 
	    properties. More ower - I took all my Multimedia code from public 
	    Help files comes from IBM DDK. ;-))

        ver  0.65  09.10.2000 (public)
***	 - Added: "About" window now inform users about a step of investigation 
	   process (a 1st step to logging system).
*** 	 - CPU speed identification algorithm rewroted (seams to be more 
	   accurate).
	 - Leading and Trailing spaces removed in memory ammount values.
***	 - Video adapter and video memory identification algorithm dramatically
	   rewroted (seams to be more accurate). 
	   Note: if SysInfo/2 dispalyed your Video adapter as
	   "(Chip: <there are some digits>)" - please, send me a feedback and a 
	   screenshot, if you please. 
	 - Also there -  Added some new Video adapters: (Chips&Thechnology, 
	   Matrox, S3, nVidia - allmost all known, and many others).
***	 - On the first page - an error corrected in OS/2 version and FixPack
	   level detection algorithm (thanks to users bugreports). 
	 - On "Video" page - information about Min. and Max. Video adapter 
	   resolution was removed. For now I do not know how to determine 
	   thouse values.
***	 - Also there - sorting was added to Min. and Max. Monitor resolution
	   valuse. Now, I think thouse values will be displayed in correct
	   order (thanks to users bugreports).
	 - On "Printers" page - information about Printer memory ammount was 
	   removed. For now I do not know how to determine this info.
	 - Also there - "Max. supported resolution" string is changed to be 
	   "Current resolution". For now I do not know how to determine 
	   this info.
	 - And also many, many bugs are corrected too. ;-))

        ver  0.63  25.09.2000 (public)
***	 - On the first page - an error corrected in HDD list detection for 
           some SCSI adapters (BusLogic BT950) - thanks to  Glenn Turnbull 
           for kindly help.
	 - Also there - deleted an leading ','  when there are some Audio 
           adapters, but no CDROMs.
	 - Also there - AND CPU algorithm corrected up to a newes version 
           of AMD public information - thanks to group of AMD Duron & Athlon
           users.
***	 - Also there - KERNEL buil level detection algorithm corrected. 
           Now SysInfo/2 will work with all TESTCASE KERNEL's up to build
           level 14.05X.
	 - Also there - Added some new Video adapters: from 
           NeoMagic - MagicGraph128 & MagicMedia256 (thanks to Thierry Salmon 
           for kindly help) 
           and from nVidia- almost all known nVidia chips (thanks to JHeifetz 
           for kindly help).
***	 - On Network page - error in Protocol and NIC description file opening
           algorithm corrected.
	 - And also many, many bugs and some misspelling are corrected too. ;-))

        ver  0.60  12.09.2000 (public)
***      - On Network page an error was corrected in determine multiple
           protocols for one card. ;-))
***      - On Network page - now an IP
           address and NetMask are shown in tree view for all adapters
           if TCP/IP is bound to them
***      - If IP address is obtained over DHCP - now it will be shown
           (experimental - will work only if TCP/IP 32 bit stack is
           installed. The information is received via TCPIP32.DLL
           ioctl() call ) - EListError during start-up on some systems -
           corrected, now if SysInfo/2 is unable to open NIF or Protocol
           description file - user will be prompted about it. - ETC.,
           IBMCOM and MPTN path detection algorithm improved. - Fixpack
           level corrected for KERNEL ver. 14.045 and higher. - New Video
           adapters are added (almost all known S3 chips) - And also
           many, many bugs and some misspelling are corrected too. ;-))
 
        ver  0.57  30.08.2000 (public)
         - MMOS2 page almost complete.
         - New CPU & Video cards detection added. (CPUs:VIA/Cyrix MIII,
           AMD Athlon; Video: Intel i81x and so on) - CPU speed detection
           algorithm improved. - Many bugs and misspelling were corrected.
         - On Network page an error was corrected in determine multiple
         network cards and protocols.

        ver  0.15  08.02.2000 (public)
         - First page almost complete.
         - Last page ("Device tree") is completed too.
         - Memory info page refresh added.
         - Many bugs and misspelling are corrected
         - New CPU&Video cards detection added. 

        ver. 0.038 08.10.1999 (public)

         - Added correct detection for Matrox MGA G400 - done
         - Switch to new THESEUS 3.0.0 API (Thanks to Ivan Adzhubei for
           kindly help)

        ver. 0.037 07.10.1999 (public)

         - Incorrect Video Memory sizes on some Video Boards (returns by
           DEVHELPER) - try to correct by calculating the memory amount
           needed for current resolution. - Fixpack level is back, but
           just a stub (I am working on this problem) ;-)) - "Dos
           support" on 1st page - done.
         - Some minor corrections on
           "Video page" - done.
         - Some minor corrections on 1st page
           ("System bus", and "CPU") - done.

        ver. 0.035 26.09.1999 (public)

         - Black icons in "Network page" on some Video Adapters -
           corrected.
         - PM freeze after go to "Memory page" with no THESEUS2.SYS
           installed - corrected
         - Negative values in some lines in "Disks page" if HDD is > 4Gb
         - corrected - Some memory leaks in base classes - corrected.
         - Some mistakes in text and labels ;-)) - corrected.
        
        ver. 0.031 24.09.1999 (public)

         - "EListError" during start-up - corrected.

        ver. 0.03 22.09.1999 (public)

         - this is the first one.

CREDITS
     I'd like to express my thanks to some outstanding people who made
     this piece of code a better one:

     Daniela Engert     for her great UltraDMA IDE driver and
                        Danis506.DOC file that was an example to
                        write this read.me.

     Kostantin Okunkov  WWW.OS2.RU admin who help me to place my
                        information on his WEB site.

     And all others     who want to take part in SysInfo/2 testing.

COPYRIGHT
     Copyright (c) 1999-2002 Alexey Smirnov. All rights reserved.

STATUS OF PROGRAM
     SysInfo/2 tool now is under construction, but in future it will
     become Shareware.

DISCLAIMER
        YOU USE THIS PROGRAM AT YOUR OWN RISK! I don't take any
        responsibility for damages, problems, custodies, marital
        disputes, etc., resulting from use, inability to use, misuse,
        possession or non-possession of this program directly or
        indirectly.

        I also don't give any warranty for bug-free operation, fitness
        for a particular purpose or the appropriate behaviour of the
        program concerning animals, programmers and little children.

     THE SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
     IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
     WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
     PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
     PROGRAM IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU
     ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

     Permission is granted to redistribute this program free of charge,
     provided it is distributed in the full archive with unmodified
     contents and no profit beyond the price of the media on which it
     is distributed is made. Exception to the last rule: It may be
     included on freeware/shareware collections on CD-ROM, as well as
     on magazine cover CD-ROM's.

     All trademarks mentioned anywhere around her are property of their
     owners and the like ...

AUTHOR
     Alex Smirnov

     Internet: asm@os2.ru
               http://devcenter.os2.ru/sysinfo/index.phtml.en

EPILOGUE
     Suggestions and bug-reports are always welcome. 


