DOS 2.0 Utilities Disk 5 (Feb 1992) : SysInfo / SysInfo.Doc

                  SysInfo V2.55 10th Dec 1991
                  ---------------------------
              written in Assembler with Devpac Amiga 
              --------------------------------------
                
Written by      Nic Wilson                
                Nic Wilson Software
                138d South Street
                Toowoomba Queensland 4350
                
                Phone (076) 358539 A/H Voice only
                      (076) 358384 W/H Fax or voice
                      (076) 358522 W/H Voice only
                      
                EMAIL {cbmvax|cbmehq}!cbmaus!wilson!nic@uunet.uu.net      
                      
        This program was written due to the lack of such a program 
        on the Amiga.  It has been written using HiSoft Devpac Assembler,
        but since V2.55 is now being assembled with Macro68.
        
        I have placed this program on Shareware so that it can be
        used by everyone.  All code, graphics and documents remain
        copyright Nic Wilson Software.
        
        If you like this program, then help me to help you more by
        sending a small donation. Any amount will be gratefully
        appreciated and in return you will be sent the latest of
        this and other programs.

                      *********************************            
                      IMPORTANT FOR KICKSTART 1.2 - 1.3
                      *********************************
        Amigas that have a maths co-processor using kickstart 1.3 or 
        earlier, MUST use SetPatch 1.34 or later otherwise this program
        will crash.  This program uses 68881 & 68882 instructions and a 
        bug in the kernal causes a guru.  SetPatch patches this bug.  
        This is not required for OS V2.04 users but remember that you have 
        a Setpatch also now, so use it.
        
        DISTRIBUTION CONDITIONS
        -----------------------
        
        This program may be distributed freely on the condition that
        no profit is gained from its distribution.  An amount of the
        average retail price of a single 3.5 inch DSDD disk is allowed for
        a copying fee. 
        
        THIS PROGRAM MAY NOT BE CRUNCHED IN AN EXECUTABLE FORM, DOING SO
        IS CONSIDERED A VIOLATION OF THIS AGREEMENT.  THIS HAS BEEN DONE 
        BECAUSE ALL CURRENT CRUNCHERS ON THE AMIGA FAIL ON THE 68040 
        PROCESSOR.  IF YOU HAVE A 68040 AND ARE HAVING TROUBLE RUNNING 
        SYSINFO OR OTHER PROGRAM, MAKE SURE THE PROGRAM IS NOT CRUNCHED.
        
        LHARC'ING IN AN ARCHIVAL FORM IS PERMITTED FOR DISTRIBUTION.
        
        Output results from the program may be reprinted without any
        form of permission.  But please state the SysInfo Version number
        used to obtain the results.
        
        This doc file and the icons must accompany the program unmodified.
        
        Additional document files of your own may accompany the program.

        Results from different Amiga configurations may be distributed
        along with the SysInfo files.

        The executable is not modified in any way, except as specified.

        Further updated versions are distributed as available and as soon 
        as possible.  You can always obtain an update by modem if you wish.
        
        COMMERCIAL COMPANIES 
        --------------------
        
        I would appreciate being informed that you are distributing it 
        although this is not a requirement.
        
        If a commercial company would like all their products listed by
        name and manufacturer in the 'BOARDS' function, then send me your
        manufacturer number and your product numbers for each board along
        with a description of what each board is, and I will add them in
        to the program.  We will then return you a copy of the program
        with these changes, that you can distribute with your products.
        
        To have your hard disk recognised as a hard disk instead of an
        'other drive', all I need is the name of your device driver.
       
INTRODUCTION
------------        
        
        Sysinfo is an Amiga Sytem Information program.  It interrogates
        the Amiga and determines types of hardware, software, modes,
        speed etc.  Users have found it very useful for determining
        correct operation of an Amiga before purchase and that the
        unit actually contains hardware that they are paying for, without
        having to open it up.  It is under constant revision, and these
        revisions are available from myself at any time.  My goal is to
        make SysInfo the most informative and accurate information program
        on the Amiga.  To do this I need your feedback and suggestions. 
        
        This program is tested with the program 'Enforcer'.
        
        Please be patient if you are running SysInfo on a standard
        Amiga as it will take a while to perform its tests.  SysInfo
        really interrogates your system and has to perform many timing
        loops to test ram speed, type etc.  Some other programs sacrifice
        accuracy by speeding the tests up, SysInfo takes time but does
        an intensive test.  At times it also disables multitasking and may
        blank the mouse pointer.  It will return to multitasking when
        finished and the mouse pointer will return.
        
        TIMINGS FROM ONE VERSION OF SYSINFO TO THE NEXT
        -----------------------------------------------
        
        If you are wondering how come SysInfo may give different results
        from one version to the next, this is because it is under 
        constant revision and accuracy is improved with each version as
        YOU THE USER gives me feedback on varying models and 
        configurations.  This feedback is very important, as it allows
        SysInfo to grow into the most powerful and accurate Sytem
        information and an invaluable tool for the Amiga.
                

USAGE   
-----
     FROM CLI
     --------
        run SysInfo <switch>
                
<switch>        -p    Print info to standard redirection output
                      instead of custom screen.
                      EG.  SysInfo >prt: -p   (for printer)
                           SysInfo -p         (for CLI window)
                           SysInfo >filename  (for a file)
                                
                -t    Mainly for internal, time testing use. 
                      See 'NOTE ON SPEED COMPARISONS' below.    
                      The custom screen will still open to keep
                      the timing accurate, but no information will
                      be printed to it.  On completion the screen
                      will close and the information printed on the
                      CLI window or redirected output.
                      
     FROM WORKBENCH
     --------------
        Double click the SysInfo icon.  After launch and various information
        has been printed to the window you will be able to access one of five
        gadgets in the bottom right of the window.  These are QUIT, MEMORY,
        BOARDS, DRIVES, SPEED and PRINT.
        
QUIT    Does just that, exits the program completely. 

MEMORY  Is explained below

BOARDS  Is explained below. 

DRIVES  Is explained below. 

SPEED   Runs the speed comparisons and displays the result accordingly. 
        This can be selected as many times as you wish so the results
        can be averaged.  This now works differently than older versions
        of SysInfo.  Users of standard speed Amiga's had to wait quite
        a long time before the other gadgets could be accessed.  This was
        a nuisance if you only required certain info.  This change has
        not affected the -p function in anyway.
        
PRINT   Will open a window and prompt for a filename and an optional
        heading string,  This heading string will be printed at the
        top of the page and can have a maximum of 100 characters.
        
        Enter a path and filename to save to, or to choose the default 
        'PRT:' for output to a printer by clicking the 'OK' gadget.
        
DRIVES GADGET
-------------
        When this gadget is clicked another window will open and display
        a gadget for each floppy, hard or rad drive you have connected
        to your Amiga.  In the middle of the window you will see Information
        on the paticular drive that has its gadget highlighted.  To select
        a particular drive, just click on its gadget.  To re-read the same
        drive, click in its gadget again (useful for rereading a floppy
        when the disk has been changed).
    
    SCSI GADGET
    -----------
                NOTE This function may not work on some brands device
                ---- drivers as they may not support the required 
                     commands.  If this happens you may just see an 
                     error message in the window for each device it 
                     found that failed to respond to the direct scsi 
                     command. Each device's unit number will still be
                     displayed at the start of each error string under
                     the 'ID' heading.  In this case contact the  
                     manufacturer of your hard disk controller and 
                     enquire if they have an update that supports CBM's 
                     'HD_SCSICMD' command and RigidDiskBlock structure.
                     

        This gadget will be ghosted for drives that are obviously not
        SCSI drives.  The SCSI function will display info on all drives
        that are operated through a single device driver, there is 
        no need to click the SCSI gadget for all drives, unless some
        use a different device driver name as shown in the 'drives window'.
        Select one of the drives and click the SCSI gadget.  A new window
        will open an attempt to read all SCSI drives on LUN (Logical Unit
        Number) zero.  If valid drive is found, various information will be
        displayed.  This information consists of the drive 'ID', its 'TYPE',
        the 'MANUFACTURER', 'MODEL', and 'VERSION'.  Also displayed is the
        number of blocks the drive has.  The drive's ACTUAL size is displayed
        and if the drive supports CBM's RigidDiskBlock, the formatted size
        is also displayed beside the actual size.  This allows you to see
        if a larger drive than you thought you had is in the computer.  I
        have seen some A2500's with a formatted size of 40MB that actually
        had QUANTUM 52 Meg hard drive.  If your drive's supplier has
        not followed CBM's RigidDiskBlock then the formatted size will not
        be displayed, but most user already know the size they beleive is
        in the system.  If these sizes are different then your hard drive
        will require reformatting correctly.  If the 'ACTUAL' size is smaller
        than your formatted size then you will eventually have problems so
        your drive will still need formatting correctly.  
          

BOARDS GADGET
-------------
        When this gadget is clicked another window will open and display
        various information on any AutoConfig  boards found in the
        system.  This information consists of the memory address of where
        the board was configured, its size, and the type of board.  The
        types to date, can be ZORRO II or ZORRO III, any others are
        not yet defined by Commodore and will be displayed as UNDEFINED.
        The boards Product number, manufactures ID and the serial
        number will also be displayed.  If SysInfo recognises the 
        manufacturer of the card and or the product itself it will display 
        the names instead of the numbers.  Note that a standard A3000 has 
        no AutoConfigure  boards as such,  its extra hardware is known 
        by the special Kickstart files and its memory and hard drive are 
        added to the system by this kickstart.  A2000 users using zkick to 
        load V2.0 will also notice that their memory boards will not show 
        in the AutoConfig list, as they were actually configured by 1.3 and 
        zkick patches them in to the memory list. 
        
MEMORY GADGET
-------------
        When this gadget is clicked another window will open and display
        various information on any memory in the system.  The first section
        displayed will be the first memory section that was configured by
        the system.  At the bottom left of the display are two gadgets,
        'NEXT' and 'EXIT'.  The next gadget changes the display to show the
        next memory section, until no more sections are found.  At that time
        the window will close and return to the main window.  The exit gadget
        exits immediately to the main window.
        

SPEED COMPARISONS
-----------------
        THE SPEED COMPARISON CODE HAS BEEN WRITTEN TO GIVE A FAIR INDICATION
        OF THE SPEED OF A PARTICULAR AMIGA.  IT USES A COMBINATION OF ALL
        MOTOROLA INSTRUCTIONS TO BOTH REGISTERS AND MEMORY IN A PERCENTAGE
        THAT POPULAR AMIGA PROGRAMS AND COMPILERS HAVE USED. 

        The A500 STANDARD comparison is against a PAL A500 totally 
        unexpanded (ie. no Fast Ram), or expanded to 1 Meg chip only.  

        The B2000 EXTRA RAM comparison is against a PAL B2000 Rev 4.4 with
        a Microbotics 8-UP Fast Ram board fitted with 80ns DRAMS. 
        
        The GVP A3001 comparison is against a B2000 Rev 4.4 with a GVP A3001
        acellerator card, using a clock speed of 28.33 MHZ.  All caches and 
        bursts on.  The board also contained 4 megs of 32 bit wide, 80ns
        nibble mode DRAM.
        
        The A2620 comparison is against a standard A2500 with a A2620
        card running at 14.3 MHZ.  All caches and bursts on.
        
        The A3000 25 MHZ comparison is against a standard PAL A3000/25 MHZ
        with 4 Megs of 1MX4 SCRAMS 80ns 32 bit wide, and 2 Megs of CHIP. 
        Caches and Bursts on except Data Burst (default under V2.04 V37+).   
        Ramsey mode was set at default, BURST ON and STATIC COLUMN OFF.
        
        The A3000 with the 68040 25 MHZ board from Progressive Peripherals
        & Software.  Comparison are now exact.  I have one of these 
        boards in my A3000 (Thank-you to Progressive for your generosity),
        It reflects the 68040 running with ICACHE, DCACHE and COPYBACK
        modes selected, running under A3000 Kickstart ROMS V37.175 with
        68040.library installed.
        
        IBM PC/XT compares your Amiga to a standard old IBM PC, such
        as Norton Utilities did.  Because the IBM world still use
        this in their adverts, it allows you to compare your system
        to the ones being advertised.  The test results are comparable
        to the 'Norton SI' speed tests. 
        
        CPU MIPS (Million Instructions per Second) This test calculation
        has been coded from all information I have been able to find
        to date.  It seems quite debatable how this is supposed to be
        coded and I received different information from people.  It does 
        a very large loop performing a total of 4.25 million instructions
        ranging from general instructions, divide, multiply, logic shifts,
        rotations etc.  I CANNOT AND DO NOT GUARANTEE ITS ACCURACY, except
        to say it is accurate to the point, it did do the number of 
        instructions per second that it stated.  Comments on this approach 
        or a better one are most welcome.
        
        FPU MFLOPS (Million Floating Operations per Second)  This test
        calculation was similar to the above one, in that information
        on the recognised way was very sketchy.  If an Amiga does not
        have an FPU, N/A will be shown in this field as any performance
        test would be meaningless.  The final code shows known boards
        to be at or around thier advertised speeds.  It does a very large
        loop performing instructions that take an average number of 
        clock cycles, times the loop then displays the result.  I CANNOT 
        AND DO NOT GUARANTEE ITS ACCURACY.  If anyone has a better 
        routine for this I would be very interested.  This routine is
        not compatible with a 68881 on a 68000 system such as the Phoenix
        board and will show N/A.


CIA TIMER TEST
--------------
        This is a test of the speed accuracy of the CIA (A) timer 
        in the Amiga.  I have recently had enquiries by users that
        their Amigas were showing very slow or very fast speeds on
        SysInfo.  Investigation showed that their CIA's were very 
        inaccurate for various reasons.  On normal use you may not 
        even notice that there is anything wrong.  Symptoms can show
        system clock running fast or slow, SysInfo type programs show
        wrong results.  
        A correctly working system will show 'PASSED' beside the
        CIA ACCURACY string and '0' beside the TICKS PER SECOND string
        else if there is a problem it will show the number of ticks per
        second the inaccuracy is.  

        The most common cause I have seen for inaccuracy on a B2000 is a
        noisy power supply.  This can be corrected by changing J300 jumper
        (toward the rear right of the mother board (under the power supply))
        to connect to the right set of the three pins.  This will change
        the system tick to the VBLANK connection and correct the inaccuracy.    
        
        NOTE  Changing J300 to VBLANK can cause problems on GVP 68030
        cards.  I do not know why, but GVP owners should not change this
        jumper.  If you know why this is I would like to know.

FREE MEMORY
-----------
        This shows the amount of free memory as if the program is not
        running so may not be accurate to the byte, but is a very close 
        indication of the free pool.
        
        The TOTAL MEMORY is the total amount of memory that the Exec
        memory list reports.  Tests have showed that this figure is
        around 800 odd bytes short of actual under Kickstart 1.3.  This 
        seems to be the amount of memory that exec takes itself, and never
        gets added to this list.
        
        RAM SPEED vs CHIP is a calculated performance test of your
        CHIP RAM vs your PUBLIC RAM.  The result is shown as a
        percentage increase in the speed of the PUBLIC RAM.  If no
        FAST or SLOW ram is available then the result will be around
        0%, and this figure can change depending on CHIP ram usage at
        the time.  This figure cannot be used as a speed comparison
        between machines.  For example the A3000 Chip ram is around
        3.5 times the speed of an A2000's CHIP with a 68030 board 
        installed.  Therefore the A3000's Fast ram will not show a
        comparable increase to the A2000.  It was mainly designed
        to test the difference between fast ram cards or chips on
        the same unit.

        HARDWARE CLOCK only looks for the standard 2000, 500 or 3000
        Hardware clock.  It does not look for the multitude of different
        clocks that were available for the 1000.

INTERNAL HARDWARE
-----------------
        This shows internal harware as the program has found it.
        ECS stands for ENHANCED CHIP SET.  If Agnus or Denise show
        this then they are the lastest custom chips.  The number that
        is shown in brackets is the actual chip number, this helps in 
        physical identification of the chips.  The program is also
        able to tell the difference between the 1MB & 2MB versions
        of Super Agnus.  Many users have queried the possibility of
        doing this and beleive I check the memory amount.  The 1MB and
        the 2MB Agnus chips do not have any different signature registers
        so in order to tell them apart I used a quirk of the way the 
        Amiga is designed.  The 1MB Agnus only decodes the first meg
        space and so the second meg space has a 'ghost' image of the 
        first.  A 2MB agnus does decode the second meg space so no
        ghost image is present.  SysInfo checks for this a reports
        the difference.  This theory I beleive is quite sound, and was
        tested on as many A3000's as I could find.  
        
        CPU's  68000, 68010, 68020, 68030 and 68040 are supported
        and will be displayed if found.  If Exec is incorrect then
        a window will open, and ask you if you want exec to be updated
        to reflect the correct hardware.  This is mainly for Kickstart
        1.3, as it is not normally aware of later processors.
        
        FPU's or Floating Point Units 68881 and 68882 and internal 68040
        are supported and will be displayed if found.  These chips are 
        also often referred to as maths co-processors.  Wether or not you 
        have one is tested by the program, and if Exec is incorrect a 
        window will open and ask you if you want Exec corrected. 

        MMU's or Memory Management Units 68851 or the internal 68030 and
        68040 are supported.  These are actually tested for as Exec does not 
        carry this info.  The 68451 never became very popular so is not 
        supported.

        SPEED IN MHZ is a rough indication of the clock speed.  This is
        not totally accurate but is a good indication.  It at least allows
        you to know wether your system is 7MHZ, 16MHZ or 25MHZ etc.
        All caches, bursts and copyback modes are temporarily enabled during
        the test for greater stability, but this should be transparent to
        the user and they will be returned to their original state after the
        tests.  Clock Speed is normally difficult to find out unless you 
        take the unit apart and even then is difficult.  Fast ram must be 
        available for this to be anywhere near accurate, as the timing loops 
        were all based on machines with some Fast ram available.  For a 68000
        based Amiga, the program will take into account if no fast ram is 
        available and calculate the correct speed accordingly. 
        
        WR.ALLOC or Write through is only applicable to 68030 and 68040
        processors.  This shows if it is currently enabled or disabled.
        When enabled (always in an 68030/A3000) the processor updates the data
        cache on cachable writes.
         
        COPYBACK is only applicable to the 68040.  This shows if it is
        currently enabled or disabled.  When enabled, the processor only
        updates the cache on writes and memory is only updated when absolutely 
        necessary or it is forced to do so.
        
        INS. CACHE or Instruction Cache is applicable to 68020, 68030 and
        68040 processors.  This shows if it is currently enabled or
        disabled.  
        
        INS. BURST or Instruction Burst is applicable to 68020, 68030
        processors.  This shows if it is currently enabled or disabled.
        
        DAT. CACHE or Data Cache is only applicable to 68030 and 68040
        processors.  This shows if it is currently enabled or disabled.  
        
        DAT. BURST or Data Burst is only applicable to 68030 processor.  
        This shows if it is currently enabled or disabled.  

        THINGS I WOULD LIKE TO ADD
        --------------------------
        
        1. Ability to check Amiga model (A1000, A500, A2000)  is it possible?
           It is on the A3000 because of its specific hardware.
        
        2. I think I have split the XT and AT bridgeboard, although it is
           untested.  Could someone try it and let me know please.  

        3. Your ideas!
        
        Any suggestions preferably in assembler but I can translate
        C if I have to.  Yuk!! :-)
                      
                
NOTE ON SPEED COMPARISONS
-------------------------
If you have any of the machines listed above, or even a totally 
different configuration, run the program with -t option (eg. sysinfo -t )
then phone or email with the resulting numbers that will be printed to the 
screen.  My phone number, email address or fax is at the top of this file.              
                      
Happy Computing

Nic Wilson

Amiga, AutoConfig, AutoConfigure and Intuition are TradeMarks of 
Commodore Business Machines.