[English]
README.TXT               MATROX GRAPHICS INC.           2005.12.02


                       Matrox Parhelia & P-Series 
                      Linux Display Driver v1.4.3
                         Advanced User Notes


================================================================================
Preface
================================================================================

    This document and the associated software are currently only available in
    English. We apologize for the inconvenience. 

    The use of the term X config file, XF86Config, XF86Config-4 and xorg.conf
    are used interchangeably. The actual file names to use vary depending on the
    X server or distribution used.  These files are located in the /etc/X11 
    directory.

    The use of the term X log file, XFree86.0.log and Xorg.0.log are used
    interchangeably. The actual file names to use vary depending on the X server
    or distribution used. These files are located in the /var/log directory.

    Don't enter the '#' sign in the example command sequences, this represents
    what would be seen on the command line. Note that [ENTER] means 
    pressing the 'Enter' key on your keyboard.

    Note that on some systems you may need to enter "su - root" instead of
    "su root" when changing to the root user account.  


================================================================================
Contents
================================================================================

Preface
Section 01 - Overview
Section 02 - XFree86 & X.org Driver Options
             1 - QID, QID Pro, HR256 DualHead & QuadHead Hybrid Mode
             2 - QID, QID Pro, HR256 QuadHead Merged Mode
             3 - QID TV-output
             4 - Dual-link
             5 - Display Pivot
             6 - TV-output
             7 - Giga Color
             8 - Offscreen memory
Section 03 - Frequently asked questions
Appendix A - Known issues
Appendix B - Limitations


================================================================================
Section 01 - Overview
================================================================================

This document complements the readme.txt file provided with the display driver.
It provides information on how to configure certain Matrox graphics hardware and 
how to enable advanced features. We recommend that you read the readme.txt file
available with the driver package before continuing with this file.

Graphics hardware covered in this document:

    - Parhelia Dual Link (PCI)
    - QID (AGP, PCI, PCIe)
    - QID Pro (PCI)
    - HR256 (PCI)

Special display configurations covered in this document:

    - Dual Link display   - Only 1 display through the main video connector 
                            in dual-link mode.

    - Single + TV display - Only 1 display through the main video connector 
                            and cloned tv-output through a composite/s-video
                            connector.

    - Two displays        - QID hybrid mode : 2 displays with the same display 
                            resolutions. 

    - Four displays       - QID hybrid mode : 4 displays with the the first two
                            having the same display resolutions and the last two
                            having the same display resolutions. 

                          - QID merged mode : 4 displays with the same display 
                            resolutions. 

Special driver features covered in this document:

    - Display Pivot (offered on certain Matrox graphics hardware)
    - TV-output 
    - Giga Color
    - Offscreen memory customization
     

================================================================================
Section 02 - XFree86 & X.org Driver Options
================================================================================

1 - QID, QID Pro, HR256 DualHead & QuadHead Hybrid Mode

    To enable support for DualHead or QuadHead under XFree86 or X.org using 
    either the QID, QID Pro or HR256, requires adding the following option 
    to the "device" section of your X config file :

        Option "QID"

    This option enables the use of outputs 1 and 2 when set for the first
    "device" section and outputs 3 and 4 when set for the second "device"
    section. By combining both sections with Xinerama a QuadHead desktop can
    be achieved.

    In the following example, setting only one section, sets the graphics
    hardware for DualHead support:

        Section "Monitor"
            Identifier "monitor1"
            HorizSync   31-90
            VertRefresh 50-60
        EndSection

        Section "Device"
            Identifier "device1"
            Driver     "mtx"
            BusID      "PCI:1:0:0"
            Option     "QID"
            Screen     0
        EndSection

        Section "Screen"
            Identifier "screen1"
            Monitor    "monitor1"
            Device     "device1"
            DefaultDepth 24

            SubSection "Display"
                Depth 24
                Modes "1600x1200" "1280x1024" "1024x768" "800x600" "640x480"
            EndSubSection
        EndSection

    And by adding the next section to the same config file you achieve four 
    active outputs:

        Section "Monitor"
            Identifier "monitor2"
            HorizSync   31-90
            VertRefresh 50-60
        EndSection

        Section "Device"
            Identifier "device2"
            Driver     "mtx"
            BusID      "PCI:1:0:0"
            Option     "QID"
            Screen     1
        EndSection

        Section "Screen"
            Identifier "screen2"
            Monitor    "monitor2"
            Device     "device2"
            DefaultDepth 24

            SubSection "Display"
                Depth 24
                Modes "1600x1200" "1280x1024" "1024x768" "800x600" "640x480"
            EndSubSection
        EndSection

    To combine all four display as a single desktop, add the following section
    to the config file :

        Section "ServerFlags"
            Option "Xinerama"
        EndSection


2 - QID, QID Pro, HR256 QuadHead Merged Mode

    To enable support for QuadHead merged under XFree86 or X.org using either 
the 
    QID, QID Pro or HR256, requires adding the Option "QID" as in hybrid
    mode to the "device" section of your X config file and setting the graphics
    hardware for a single instance merged mode as in the following example:

        Section "Monitor"
            Identifier "monitor1"
            HorizSync   31-90
            VertRefresh 50-60
        EndSection

        Section "Device"
            Identifier "device1"
            Driver     "mtx"
            BusID      "PCI:1:0:0"
            Option     "QID"
            Screen     0
        EndSection

        Section "Screen"
            Identifier "screen1"
            Monitor    "monitor1"
            Device     "device1"
            DefaultDepth 24

            Option "MergedFB"
            Option "Monitor2Position" "RightOf"
            Option "MetaModes" "1600x1200-1600x1200"
            Option "Monitor2HSync" "31-90"
            Option "Monitor2VRefresh" "50-60"

            SubSection "Display"
                Depth 24
                Modes "1600x1200" "1280x1024" "1024x768" "800x600" "640x480"
            EndSubSection
        EndSection

    Note: see Appendix B for frame buffer limitations in this mode.


3 - QID TV-output

    QID TV-output support is available on all outputs using the "QIDTV" option.

    The following example enables DualHead TV-output support:

        Section "Monitor"
            Identifier "monitor1"
            HorizSync   31-90
            VertRefresh 50-60
        EndSection

        Section "Device"
            Identifier "device1"
            Driver     "mtx"
            BusID      "PCI:1:0:0"
            Option     "QID"
            Option     "QIDTV"
            Screen     0
        EndSection

        Section "Screen"
            Identifier  "screen1"
            Monitor     "monitor1"
            Device      "device1"
            DefaultDepth 24

            SubSection "Display"
                Depth 24
                Modes "1600x1200" "1280x1024" "1024x768" "800x600" "640x480"
            EndSubSection
        EndSection


4 - Dual-link

    Dual-link support is available on all outputs using the "DVIDL" option.

    The following example enables single head Dual-link support:

        Section "Monitor"
            Identifier "monitor1"
            HorizSync   31-90
            VertRefresh 50-60
        EndSection

        Section "Device"
            Identifier "device1"
            Driver     "mtx"
            BusID      "PCI:1:0:0"
            Option     "DigitalScreen1" "on"
            Option     "DVIDL" "on"
            Screen     0
        EndSection

        Section "Screen"
            Identifier "screen1"
            Monitor    "monitor1"
            Device     "device1"
            DefaultDepth 24

            SubSection "Display"
                Depth 24
                Modes "1600x1200" "1280x1024" "1024x768" "800x600" "640x480"
            EndSubSection
        EndSection


5 - Display Pivot

    Display pivot is available by setting the "Rotate" option in the "screen"
    section of your X config file and giving it the orientation to rotate.

    Valid orientation values are "CW" for clockwise rotation and "CCW" for
    counter-clockwise.

    The following example sets the screen to pivot in the clockwise
    direction:

        Section "Screen"
            Identifier "screen1"
            Monitor    "monitor1"
            Device     "device1"
            DefaultDepth 24

            Option "Rotate" "CW"
            
            SubSection "Display"
                Depth 24
                Modes "1600x1200" "1280x1024" "1024x768" "800x600" "640x480"
            EndSubSection
        EndSection

    See Appendix B for limitations associated with this option.

6 - TV-output

    This option can be enabled to clone your display when using Single Head 
mode.
    The output format supported are NTSC and PAL. You need to set the following
    the "TvOut" settings in the primary "Screen" section of your X config file. 

    Additionnal Option switches are available :

    Options            Values                   Description
    ----------------   -----------------------  -------------------------------
    "TvOut"            "on" or "off"            Enables/Disables TV out.
    "TvStandard"       "PAL" or "NTSC"          Selects output type.
    "OutputRegion"     "Left Top Right Bottom"  Selects usable tv area.
    "SelectedRegion"   "Left Top Right Bottom"  Selects desktop region to clone.
    "AntiFlickerLevel" "0" to "25"              Sets the antiflicker level.
    "Brightness"       "0" to "10000"           Sets the brightness level. 
    "ColorEnable"      "0" to "1"               Select between color / 
monochrome.
    "Contrast"         "0" to "20000"           Sets the contrast level.
    "Gamma"            "1" to "500"             Sets the gamma level.
    "Hue"              "-180" to "180"          Sets the hue level.
    "Saturation"       "0" to "20000"           Sets the saturation level.

    For example, the resolution in NTSC (and the same applies for PAL with 
    different values used) is 720x484 but that does not take into account the 
    bezel of most TVs that hide some pixels.  To be compatible with most TVs,
    we suggest an output region of 624x410 with the parameters specified below:

        Option "OutputRegion"   "48 37 672 447"

    The following example sets the output to NTSC:

        Section "Screen"
            Identifier   "Screen1"
            Device       "Device1"
            Monitor      "Monitor1"
            DefaultDepth 24 
            
            Option "TvOut" "on"
            Option "TvStandard" "NTSC"
            Option "AntiFlickerLevel" "10"
            Option "OutputRegion"   "48 37 672 447"
            Option "SelectedRegion" "0 0 800 600" 
        
            SubSection "Display"
                Depth    16 
                Modes    "800x600" "640x480"
            EndSubSection
        
            SubSection "Display"
                Depth    24
                Modes    "800x600"  "640x480"
            EndSubSection
        EndSection

7 - Giga Color

    To enable Giga Color, set the default color depth to 30 The following
    "screen" section illustrates its use:

        Section "Screen"
            Identifier "Screen1"
            Device     "Device1"
            Monitor    "Monitor1"
            DefaultDepth 30

            SubSection "Display"
                Depth 30
                Modes "1280x1024" "1024x768" "800x600" "640x480"
            EndSubSection
        EndSection

8 - Offscreen memory

    To change the offscreen allocation of memory used by X, use an integer value 
    between "0" and "5" for the "OffScreen" option as a multiplier against the
    memory used for onscreen memory. 

    For example, to use twice as much RAM for the offscreen memory as what 
    the onscreen memory would use, add the following line to your "device"
    section in your config :

        Section "Device"
            Identifier "device1"
            Driver     "mtx"
            BusID      "PCI:1:0:0"
            Option     "OffScreen" "2"
            Screen     0
        EndSection


================================================================================
Section 03 - Frequently Asked Questions
================================================================================

Q:  I am trying to set resolution X by Y and it doesn't work, what can I do ?
A:  Not all resolutions are supported and available. Special resolutions
    require setting a modeline. Note that exceeding your monitors recommended
    settings may damage your monitor and/or void your manufacturer's warranty.
    Please consult your monitor manufacturer for the required timing values.

    You can create modelines with the timing values from your manufacturer along 
    with a HowTo available at the following Web Site:

        http://www.linuxdoc.org or http://www.tldp.org

    Note:
        - Not all resolutions are supported due to hardware or software
          limitations.

Q:  I do not have one of the listed Linux distributions can I use the driver on 
    distribution XYZ?
A:  While the driver package was verified with the listed distributions,
    others should work as long as the following items are installed and 
    available:

    X server - XFree86 (4.3.0) or  X.org (6.7.0, or later).

    Libc     - Glibc (2.3.2 or later).
   
    Compiler - GCC (from version 3.2 up to gcc 3.4.3).

    Tools    - binutils (version 2.13 or later) and make (version 3.77 or 
               later).
    
    Shell    - bash (version 2.05 or later).


================================================================================
Appendix A - Known Issues
================================================================================

1 - To allow v4l applications that use the hardware scaler (like watching 
    tv with xawtv in full screen), make sure you have the 'load "v4l"'
    declaration in the "Module" section of your configuration file. This 
    package provides a modified version of the v4l driver module. It is not 
    installed by default and must be manually copied for it to work (make a 
    backup of the original before removing it). This file can be found under 
    the v4l directory, which can be accessed by running the installer with 
    the "--extract-only" switch.

    - For example to install the v4l_drv.o file for X.org 6.8.2 you would do
      the following sequence:
 
            # su [ENTER]
            # cd /usr/X11R6/lib/modules/driver/linux/ [ENTER]
            # mv v4l_drv.o v4l_drv.o.org [ENTER]
            # cd /root [ENTER]
            # sh mtxdriver-X.X.X.run --extract-only [ENTER]
            # cd /root/mtxdriver/v4l/6.8.2 [ENTER]
            # cp v4l_drv.o /usr/X11R6/lib/modules/driver/linux/ [ENTER]

    - As an example, here is a "module" section as it would look in an X config 
:

            Section "Modules"
                Load "dbe"
                Load "extmod"
                Load "glx"
                Load "type1"
                Load "freetype"
                Load "v4l"
            EndSection
  
    - You must also verify that your capture module is loaded before starting 
      X (for instance, as 'root' user, modprobe bttv). 
  
    - To remove some tearing, use a smaller resolution or lower the refresh 
      rate to reduce the effect.

2 - On Mandriva Linux 2006 OpenGL applications will not work properly as it is 
    missing the libstdc++.so.5 library file. This file is require by the GL 
    library.

3 - OpenGL will not work properly with P650 and P750 cards in DualHead 
    configuration, each head displaying 1600x1200 at 24 bpp due to memory  
    ressource limitation.

4 - Rarely, windowed 3D applications may freeze or lockup the system when 
    dragging the window.

5 - Screen corruption may appear while using Blender.

6 - Some OpenGL based game engines do not work (ie. UT2003, UT2004) properly 
    with this release and may crash or cause display corruption.


================================================================================
Appendix B - Limitations
================================================================================

The following limitations apply to all Parhelia based products:

    - In merged mode the maximum horizontal frame buffer pitch size is 4096. 

    - Xv supports a maximum size of 2048x2048

    - Pivot supports a maximum resolution of 2048x2048.
