7/5/95
                         =========================
                         | TRIO FAMILY UTILITIES |
                         =========================

S3 Utilities List:
------------------

SMODE           Allows the user to set Display modes. Please refer to the
                EXTRAINF.TXT file comes with the Utilites.

CRT_DUMP        Reads and displays the register values of the CRT Controller.
                The output may be redirected to a file or other DOS device.

DAC_DUMP        Reads and displays the register values of the Video DAC. The
                output may be redirected to a file or other DOS device.

DAC             Displays a single Video DAC register value.

CR              Displays a single CRT Controller register and allows the value
                to be changed.

SR              Displays a single Sequencer register and allows the value to be
                changed.

DIAG3           Used to test and debug boards which incorporate the S3 GUI
                accelerator products.

BOX             This utility allows the user to verify that the mode set
                operation is correct for each supported display mode.

FCON            Allows the user to enable feature connector operation. Please
                refer to the EXTRAINF.TXT file comes with the Utilites.

S3REFRSH        Allows the user to change the moniter refresh rate.


Using the GUIVGA Utilities
--------------------------


SMODE
-----
Smode.exe is a utility which allows the user to set emulation and display modes.

Usage:

SMODE   [Display Mode] [Emulation Mode] [Noclear] [P#]

[Display Mode]          This option can be any valid BIOS display mode.

[Emulation Mode]        This option is used to select the Emulation mode.
                        Valid emulation modes are:

                        VGA             Normal operation;
                        CGA             CGA operation;
                        MDA/HERC        Monochrome Enulation.

[Noclear]               If this option is specified, the video memory will be
                        preserved (not clear) across a mode set.

[P#]                    This option is used to set the active display page.


CRT_DUMP
--------

This program displays the values of the CRT Controller registers. The output may
be redirected to a file or printer by using the DOS ">" (redirect) option.


DAC_DUMP
--------

This program displays the values of the Video DAC registers. The output may be
redirected to a file or printer by using the DOS ">" (redirect) option.


DAC
---

This program is used to display a single Video DAC register value.

   Usage:
                DAC  [Index] [Hex Value] [Hex Value] [Hex Value]

                [Index]         This is used to specify the DAC Register Index
                                to display and/or change.

                [Hex Value]     This is an option which is used to reprogram the
                                values in the register index.


CR
--

This program can be used to display and/or edit a single CRT Controller register.

   Usage:
                CR  [Index] [Hex Value]

                [Index]         This is used to specify the CRT Controller
                                Register index to display and/or change. Valid
                                CRT Controller indices are from 00H - 18H and
                                30H-5FH.

                [Hex Value]     If this option is specified, the selected index
                                will be reprogrammed with this value.


SR
--
This program can be used to display and/or edit a single Sequencer register.

   Usage:
                SR  [Index] [Hex Value]

                [Index]         This is used to specify the Sequencer register
                                index to display and/or change.

                [Hex Value]     If this option is specified, the selected index
                                will be reprogrammed with this value.


DIAG3
-----

This is a diagnostic program. When DIAG3 is loaded, the main menu will be
displayed showing the available test and video modes (see below).

                              DIAG3 Main Menu
                              ---------------
Ŀ
 S3 Diagnostic        Version X.XX          Date                              
 Chipset: XXX         Chip ID: XX           Mem Size: XX                      
 FUNCTION             RESOLUTION                                              
 [1] Line             [a] 640x480x8 (C)     [~] Linear addressing             
 [2] Rectangle        [s] 800x600x8 (C)      [Q] 64K [A][S][D][F][G][H][J][K] 
 [3] ROP              [d] 1024x768x8 (C)     [W] 1M   31 30 29 28 27 26 25 24 
 [4] Bitblt Thr       [g] 640x480x15 (C)     [E] 2M    0  0  0  0  0  0  0  0 
 [5] Bitblt Acr       [h] 640x480x16         [R] 4M  [Z][X][C][V][B][N][M][<] 
 [6] Img R/W Thr      [.] 640x480x32                  23 22 21 20 19 18 17 16 
 [7] Img R/W Acr      [k] 800x600x16 (C)               0  0  0  0  0  0  0  0 
 [8] Clip Inter       [l] 1024x768x16                                         
 [9] Clip Exter       [;] 1280x1024x16 (C)                                    
 [0] Ptn Fil Thr      ['] 640x480x8         [#] MMIO                          
 [q] Ptn Fil Acr      [z] 800x600x4         [?] LA/MMIO using 4AE8            
 [w] Read Mask        [x] 800x600x8         [=] 8514                          
 [e] Write Mask       [c] 1024x768x4        [$] Step                          
 [r] SS vector        [v] 1024x768x8        [%] Loop till Control-C           
 [t] DMA              [b] 1152x864x8        [^] Loop till fail or Control-C   
 [y] Color Comp       [n] 1280x1024x4       [&] Select all                    
 [u] HW Cursor        [m] 800x600x32        [*] Clear Selection               
                      [|] 1024x768x32       [Enter] Start test                
 [I] Interlaced       [f] 1280x1024x8 (C)   [ESC] Quit                        
 [L] 56 Hz            [+] 1600x1200x8                                         
 [O] 60 Hz                                                                    
 [P] 70 Hz                                  []] Internal Hardware Cursor      
 [:] 72 Hz                                  [[] Brooktree Hardware Cursor     
 [{] 75 Hz                                  [\] Default Hardware Cursor       



  Features
  --------

DIAG3 requires the user to activate the feature(s) desired before selecting
function(s) and mode(s) to test.  The far left hand side of the main menu
contains the following features:


Linear Addressing (LA) - This speeds large block transfers of video memory by
mapping it to CPU memory address space above 1 MByte. This requires that the
CPU be operated in 386 protected mode.

The user needs to select the Linear address window size. The options on the
right of the LA window size refers to the LA window position. The numbers
(16..31) refers to the physical CPU memory location to be mapped into. Bits
24-25 are ignored internally for ISA configurations. Bits 26-31 are for EISA and
Local bus. When the address bit is enabled, the zeros below the option will
change to ones.

---------------------------------------------------------------------------
Note: Make sure the memory location is valid for the bus configuration,
otherwise the system may hang. You must disable any other 386 device driver
installed in your system in order to execute the LA feature.
---------------------------------------------------------------------------

Memory-Mapped I/O (MMIO) - This maps the 16-bit Pixel Data Transfer register to
a 64-KByte memory space from A0000h to AFFFFh which provides fast transfers
using 32-bit accesses.

8514 - This enables the Graphics Engine (this must be selected to run the GE
functions tests).

LA/MMIO using 4AE8H - Select this option if you wish to have the features
enabled via register 4AE8H. The feature(s) will be enabled via CRxx otherwise.

Internal Hardware Cursor - Forces use of the S3 accelerator hardware cursor.

Brooktree Hardware Cursor - Forces use of the hardware cursor in the RAMDAC.

Default Hardware Cursor - Uses the cursor selected by the DIAG2 program.


                                 Functions
                                 ---------

All the functions below (except for DMA) use the Graphics Engine (GE) to perform
the following tests.

Function                Description
========                ========================================================
[1] Line                Draws 4 solid lines on the screen using the GE line draw
                        function.

[2] Rectangle           Draws 4 squares at each corner of the screen using the
                        GE rectangle fill function.

[3] ROP                 Uses the ROP function to draw the 4 squares at the
                        corner of the screen 16 times each (since the drawing
                        routine is rapid, the squares will be flashing)

[4] Bitblt Thr          Generates the pattern dynamically and draws the middle
                        square with the rectangle fill function. Draws the 4
                        squares at each corner of the screen using the BitBLT
                        Through function of the GE.

[5] Bitblt Acr          Draws the middle square on the screen with the GE
                        rectangle fill function. Performs a bitblt across the
                        plane (one plane at a time) to fill the 4 squares on the
                        corner of the screen. If the current mode has 8
                        bits/pixel, the image will be transferred 8 times.

[6] Img R/W Thr         Uses a bit map in memory to perform an image transfer
                        through the planes. Draws 4 squares at the corner of the
                        screen clockwise.

[7] Img R/W Acr         Draws the middle square with the GE rectangle fill
                        function. Transfers the image across the plane (one
                        plane at a time).

[8] Clip Inter          Sets the clipping region size, draws 4 squares and
                        diagonal lines across the screen. The squares and lines
                        are clipped.

[9] Clip Exter          Same as Clip Inter, except the other part of the images
                        are displayed.

[0] Ptn Fil Thr         Uses the pattern in the middle of the screen to draw the
                        4 squares one at each corner of the screen. Keeps
                        shifting the pixels to the right 8 times (one at a time)
                        . Fills a vertical bar with the pattern. Uses the
                        pattern again to draw a horizontal bar. Repeats the
                        above with the color inverted.

[q] Ptn Fil Acr         Same as Ptn Fil Thr, except the images are transferred
                        across the planes (one plane at a time).

[w] Read Mask           Draws 4 squares (one at each corner of the screen) using
                        the GE rectangle fill. Enable the planes (one at a time)
                        , and perform rectangle reads on each of them.

[e] Write Mask          Enable the planes (one at a time), and draws the 4
                        squares using rectangle fills.

[r] SS vector           Draws 16 vectors at the corner of the screen using the
                        GE short stroke vectors.

[t] DMA                 Displays a box around the screen and a solid rectangle
                        at the center of the screen. A color line separates each
                        64K bank boundary. The DMA test does NOT use the
                        Graphics Engine; it is strictly memory moves. Note that
                        even if the user enables the 8514 option, this test still
                        only does reads/writes to video memory. The test does not
                        check for bank crossing (some modes will display un
                        wanted lines around the rectangle). Use the LA option
                        with the max window size enabled to view the proper
                        rectangle image.

[y] Color Comp          Draws 2 squares on top of each other (one bigger than
                        the other) with different colors at the middle of the
                        screen. Sets the color compare bit to not equalwith the
                        color of the smaller square. Performs a color compare
                        operation and transfers the image to the 4 corners of
                        the screen. Repeats the above with the color compare bit
                        set to equal.

[u] HW Cursor           Draws 2 vertical bars (for 8 bits/pixel = white, 4 bits/
                        pixel = cyan). Keeps moving the cursor.



                                      Commands
                                      --------

Name                            Description
====                            ================================================
Step                            Pauses and waits for a key to be pressed before
                                executing the next test

Loop till Ctrl-C                Executes all the tests until Ctrl-C is pressed

Loop till fail or Ctrl-C        Executes all the tests until a test fails or
                                Ctrl-C is pressed

Select all                      Selects all the function tests and modes

Clear selection                 Clears all the function tests and modes selected


  Usage
  -----
After selecting the features, select the available functions and modes by
pressing the corresponding key. Use the command keys on the bottom right corner
of the main menu to run the tests as desired.

When testing has been completed, results are displayed in a chart. Tests which
have been completed successfully will contain an "O" in the cell which
corresponds to the function and video mode. Tests which have failed will have an
"X".

The Hardware Cursor test utilizes X, Y, and N as special keys. X toggles the
cursor to support the X11 cursor definitions. Pressing X again returns the
cursor to MS Windows style. The keys Y and N will stop the test. Enter "Y" to
signify pass and "N" for fail. Any other key will pause the test.


BOX
---

This utility allows the user to verify that the mode set operation is correct
for each supported display mode. It either display a box for a particular
specified mode or it cycles through all display modes, generating a box for
each.

For example, to display a box using mode 102, type 'box 102'. Strike any key to
return to the default mode and command line.

Typing 'box' displays the command line options.

   Usage:
                box [OPTIONS][MODE]

Options:
        -P      If the -C option is used, this causes the display to pause after
                each mode set. Press any key to continue to the next mode set.
                This is used in conjunction with the -C option described below.

        -C[A]   The -C option causes the program to cycle through all the
                display modes. On fast machine, the display may swith too fast
                to be viewed for correctness. The -P option described above
                allows the screen to be paused between mode switchs for viewing.
                Specifying -CA causes the cycling to continue until Control-C is
                typed. This is normally used for long-running stress tests.

        -I      This option draws an interlaced pattern inside the box.

        -N      With this option, the mode is not reset to the default after the
                specified mode is displayed. The user must type 'box 3' to reset
                to the default mode.


FCON
----
FCON.EXE is a utility that allows the user to easily enable feature connector
for test purposes. This utility is only required for 2- and 4-MByte
configurations as the BIOS automatically enables feature connector operation for
1-MByte configurations.

   Usage:
                FCON [e|d] [p|v]

        e = enable; d = disable
        p = pass-through; v = VAFC


S3REFRSH
--------
This utility requires that a mouse driver be installed. Without a mouse driver,
command line parameters are required using the following options:

   Usage(without mouse):

        S3REFRSH X Y

        where X = 640, 800, 1024, 1280

        and Y = 0(56Hz), 1(60Hz), 2(70Hz), 3(72Hz), 4(75Hz), 5(Interlaced)

        Note that 1600x1200 and 1152x864 each have a single refresh rate so this
        utility is not needed.

With a mouse driver, a menu will be displayed upon loading S3REFRSH. The refresh
rate options are shown on the left side and the corresponding resolutions are
displayed on top of the table. Click on the disired boxes. The "X" marks mean
that the selection is not valid; selected refresh rates are defined by the check
marks. Click on the EXIT button to set the new refresh rate. The utility will
ask if the user wishes to save the changes in AUTOEXEC.BAT. Choose YES if the
user wants to use the new refresh rate values every time the system boots.

---------------------------------------------------------------------------
Note: The path of changes in AUTOEXEC.BAT done by S3REFRSH may be not correct.
You can set the correct path or copy the S3REFRSH program to root directory in
hard drive C: manually.
---------------------------------------------------------------------------

