SETMON(1G)                                                          SETMON(1G)


NAME
     setmon - set the current and default video output format

SYNOPSIS
     /usr/gfx/setmon [ options ] format

DESCRIPTION
     setmon changes the video output format to the one specified; it also
     specifies the default video format to be used at system power-up or
     graphics initialization.  You must set the DISPLAY environment variable
     to the local machine (e.g. :0.0) so that any GL calls that setmon makes
     will occur on the local machine, and not over a network interface. If
     none of (-n, -x, -w) options are specified on the command line, then
     setmon will prompt for input to determine whether the format being loaded
     should also be saved into the eeprom. If the format is to be loaded into
     the eeprom, you must be root, or no operations will take place.

     Command line options are:

     -n   Specifies that format should not be saved and used as the default,
          but should just be loaded temporarily. This is the opposite of the
          -x option.

     -x   The specified video format will take effect when the X server
          restarts (when one logs out from an X session) or during the next
          boot cycle.  You must be the root user to use the -x option.  This
          option is currently allowed on RealityEngine, InfiniteReality, VPro
          (V6, V8), IMPACT, CRM, XL, and GR2 (Elan, Extreme, XS or XZ)
          graphics.  (CRM graphics is found on O2 workstations).

          On RealityEngine and InfiniteReality graphics, this saves the
          specified format in the appropriate eeprom in the graphics
          subsystem.  On other graphics systems, the name of the format is
          stored in /var/X11/Xvc/<gfxname><pipe>_TimingTable, where <gfxname>
          is:

               NG1 if the graphics type is XL,
               GR2 if the graphics type is GR2,
               Crm if the graphics type is CRM,
               Impact if the graphics type is IMPACT.
               Odyssey if the graphics type is VPro.


          Except for CRM, <pipe> can be 0 or 1.  (A "pipe" is synonomous with
          "graphics head" or graphics board".)  On CRM graphics, <pipe> is
          always 0.  Multipipe graphics is not supported on the O2
          workstation.

          For example, for the first graphics board on an IMPACT system, the
          name of the format is stored in /var/X11/Xvc/Impact0_TimingTable.


          On graphics systems where the format name is not stored in eeprom,
          the format specified by "setmon -x" will take effect whenever
          graphics is initialized. To do so, use the following command
          sequence:

               su
               (/usr/gfx/stopgfx; /usr/gfx/startgfx) &

     -w   On systems which support -x, specifies that format is to be loaded
          now, and also that format will be used as the default when the X
          server restarts.  (-w is like -x, but in addition, the specified
          video format is loaded into the hardware immediately.) You must be
          root to use the -w option.

     -aacctype
          Sets the type of accumulation support for the frame buffer. acctype
          specifies either software only support at 16 bits per component
          (-a0) or hardware accelerated support at 24 bits per component
          (-a1).

          This option requires the -x option and is only supported on VPro
          graphics.

     -dfbdepthbytes
          Specifies the depth of the framebuffer.  fbdepthbytes can be either
          8 bytes per pixel (-d8) or 16 bytes per pixel (-d16).

          This option requires the -x option and is only supported on VPro
          graphics.

     -DDACgainlevel
          Specifies the gain level for the DACs.  DACgainlevel can be either
          the nominal default setting - RS343 (-DRS343) or VESA level
          (-DVESA).

          This option is only supported on OCTANE systems with IMPACT
          graphics.

     -g   Enables genlock (external video clock).

          This option is not supported on CRM graphics.

     -t   Specifies that genlock input operates at TTL levels rather than
          nominal video levels (only applicable when genlock is specified).

     -T   Specifies that sync output should be at TTL levels rather than
          nominal video levels. Currently only supported on RealityEngine;
          other systems default to TTL levels.

     -G   Specifies that genlock input is through the GREEN input rather than
          the SYNC input (only applicable when genlock is specified).


     -ssyncselect
          Specifies the source of the sync signal.  syncselect is any
          combination of r, g, b, and a to represent the sync signal on the
          same combination of the red, green, blue, and alpha video cables.
          If  syncselect is n, the sync signal will be generated on the sync
          cable.  If syncselect is not specified, the sync signal will default
          to the green cable.

     -jgenlockdelay
          Specifies the number of pixels to adjust the display, relative to
          the genlock input signal.  Currently, only supported on GR2 graphics
          (Elan, Extreme, XS or XZ) for NTSC and PAL monitors.  Positive
          values move display to the left, and negative values move display to
          the right. Must be used with the -g option.

     -Finput_signal
          On systems with GR2 graphics (Elan, Extreme, XS or XZ), input_signal
          specifies whether the input signal used for framelocking is
          interlaced (-Fi) or non-interlaced (-Fn).

          On Indy XL graphics systems, it specifies whether the input signal
          used for framelocking comes from Vino (-Fv) or Galileo (-Fg) video.

          On Indigo2 XL systems, it specifies whether the input signal used
          for framelocking comes from the backplane (-Fv) or Galileo (-Fg)
          video.

          On Indigo2 or OCTANE systems with IMPACT graphics, it specifies
          whether the input signal used for framelocking is an internal (-Fi)
          or external (-Fe) video signal.

     -Lformat
          On system with Vpro graphics, format specifies the name of the video
          format used for external framelocking.

     -mwidthxheight
          Specifies the area that the X server should manage; this may be
          larger than the area displayed by format.  If not specified, this
          defaults to the area required by format.  This is currently
          supported only on RealityEngine.

     -S   For use only on machines with multiple channel options
          (RealityEngine, Impact and Octane systems).  This flag specifies
          that the Channel Option should be enabled.  You must specify a
          format which is appropriate for the option; the available formats
          are described in the documentation accompanying the hardware option.
          Conventional names for appropriate formats are prefaced by the
          number of outputs, ie 4@640x480_60 indicates that four channels,
          each 640 wide by 480 tall and refreshed 60 times a second, should be
          output.  Please note that systems that can drive multiple channels
          can also typically drive single channels, and that the -S option
          indicates which category of timing formats the user is requesting.


     -v   Enable verbose mode.  On systems supporting custom video output
          formats, statistics related to downloaded file size and compression
          are printed.  For Impact and Octane configurations, requesting a
          format that cannot successfully be downloaded with the -v flag will
          return formats that can be downloaded.

     -ppipenumber
          Specifies the pipe for which the format is to be changed on systems
          with multiple graphics pipes.  The pipenumber is a small integer,
          typically 0, 1, or 2.  If the pipenumber is not specified with this
          command line option, the pipenumber is derived from the trailing
          digit of the DISPLAY environment variable.  For example, the DISPLAY
          value :0.0 refers to pipe 0, :0.1 refers to pipe 1, and :0.2 refers
          to pipe 2.  On systems with  IMPACT graphics, this option must be
          used with the -x option when invoking setmon without the X server
          running.

     -cframelock master or slave
          Implemented on Indigo2 XL-XL dual-head, and VPRO graphics.  On Vpro
          graphics, used to determine whether to send csync output through the
          Genlock port. If -cm is used, csync will be output on the Genlock
          connector for use in genlocking multiple systems. If -cs is used,
          the csync output will be shut off so that the Genlock port can be
          used as a genlock input.  On Indigo2 XL-XL dual-head use m to set
          the master and use s to set the slave head if you want to change the
          default settings for framelocking through the backplane.  By
          default, the bottom (pipe0) graphics board will be the master and
          the top (pipe1) board will be the slave.  The master sends out a
          framelock sync signal to the backplane. The slave receives the
          framelock sync signal from the backplane. Make sure the pipe number
          refers to the appropriate board; set the pipe number as described in
          the discussion of the -p option above.  Use -Fv to framelock the
          slave to the sync from the backplane.  Use -Fg to framelock the
          master to the Galileo, assuming the video board will be attached to
          the master.  Refer to the galileo man page for more details on
          framelocking to the video board.

     format
          specifies the desired video output format.  format may be the name
          of a "standard" format such as 60 or ntsc.  Note that case doesn't
          matter when specifying a standard format.  If not one of the
          standard format names, format is interpreted as the filename (minus
          the '.vfo' extension) of a valid video format file.  Generally,
          video format files reside in the directory
          /usr/gfx/ucode/<boardname>/vof.

          Here is a complete list of the "standard" format names, not all of
          which are allowed on all graphics systems:

               30hz
               30             (alias for 30hz)
               50hz


              50             (alias for 50hz)
               60hz
               60             (alias for 60hz)
               ntsc
               hdtv
               vga
               pr60
               pal
               343
               str_rect
               stereo         (alias for str_rect)
               st492          (alias for str_rect)
               str_bot
               str_top
               sqr_rect
               squareo        (alias for sqr_rect)
               sq492          (alias for sqr_rect)
               sqr_bot
               sqr_top
               vof0
               vof1
               vof2
               vof3
               70hz
               70             (alias for 70hz)
               72hz
               72             (alias for 72hz)
               75hz
               75             (alias for 75hz)
               76hz
               76             (alias for 76hz)
               iris3k
               presenter      (alias for iris3k)
               presenter1280  (alias for 60hz)


          XS, XZ, Elan, and Extreme Graphics
               support the standard names 30HZ, 50HZ, 60HZ, 72HZ, NTSC, PAL,
               IRIS3K, STR_RECT, STR_BOT, STR_TOP and 343.  Also, format may
               be the name (minus the '.vfo' extension) of one of the video
               format files which reside in /usr/gfx/ucode/GR2/vof.

          Entry/Starter Graphics
               supports 60HZ.

          XL Graphics (Indy or Indigo2)
               supports supports the standard names 50HZ, 60HZ, 70HZ, 72HZ,
               76HZ, NTSC, PAL, IRIS3K, STR_RECT, STR_BOT, and STR_TOP.  Video
               format files reside in /usr/gfx/ucode/NG1/vof.


          CRM Graphics
               supports the standard names 50HZ, 60HZ, 72HZ, 70HZ, 75HZ,
               STR_RECT, STR_BOT, and STR_TOP.  Also allowed is the name
               (minus the '.vfo' extension) of one of the video format files
               which reside in /usr/gfx/ucode/CRM/vof.

               The following letters at the end of a format name signify:

                  p     format is for a Flat-Panel Display.

                  s     format is for stereo.

          IMPACT Graphics
               supports the standard names 50HZ, 60HZ, 72HZ, 76HZ, STR_RECT,
               STR_BOT, and STR_TOP.  Also, format may be the name of one of
               the video format files (minus the '.vfo' extension).  These
               files reside in the directory /usr/gfx/ucode/MGRAS/vof for
               Indigo2 High Impact and Solid Impact and OCTANE SI and SSI
               systems.  (Systems with one RE.)  The directory is
               /usr/gfx/ucode/MGRAS/vof/2RSS for Indigo2 Maximum Impact and
               OCTANE MXI systems, which have two RE's.

               The following letters at the end of a format name signify:

                  p     format is for a Flat-Panel Display.

                  s     format is for stereo.

                  _32db allows deep (32-bit) double-buffered visuals, but with
                        no Z.

                  _pbuf allows programs to allocate pbuffers in the Z
                        bitplanes of the framebuffer.

          RealityEngine and InfiniteReality Graphics
               support the standard names 60HZ 30HZ, NTSC, PAL, 343, HDTV,
               VGA, 72HZ, STR_RECT, STR_BOT, and STR_TOP.  In addition, format
               may be the name of one of the video format files, which are
               named according to the convention:

                    <width>x<height>_<framerate>

               For example, 1280x1024_60 implies a video format that is 1280
               pixels wide, 1024 pixels high and runs at 60 Hz. Letters added
               at the end of a format name signify special options:

                   i for interlaced,
                   s for stereo,
                   q for field sequential,
                   f for framelocking, and
                   k for special alternate formats respectively.


               For RealityEngine, the video format files reside in the
               directory /usr/gfx/ucode/RE/dg2/vof.  For InfiniteReality, the
               video format files reside in /usr/gfx/ucode/KONA/dg4/vfo.
               Those directories contain a README file which describes the
               formats shipped with a release.

          Infinite Reality Graphics
               always operates as a multiple-channel device, and a simple
               video format for a single channel is insufficient to describe
               the operation of the entire video subsystem.  Instead of simple
               video formats, only video format combinations are supported.
               On Infinite Reality, setmon requires a combination file - a
               file describing frame buffer layout and formats for all
               channels - as the format parameter.  These combination files
               can be built with a program, ircombine(1g), that assembles an
               ensemble of formats.  The individual formats used by
               ircombine(1g) reside in /usr/gfx/ucode/KONA/dg4/vfo, and are
               described in /usr/gfx/ucode/KONA/dg4/vfo/README.

               A number of pre-built combinations can be found in the
               directory /usr/gfx/ucode/KONA/dg4/cmb.  The names of these
               files are sometimes precisely descriptive of their content, but
               you can use ircombine(1G) to extract a full analysis of any
               combination.  Note that if you create new combinations of your
               own, you must place them in /usr/gfx/ucode/KONA/dg4/cmb before
               they can be loaded with setmon.

               For backward compatibility, setmon supports a set of pre-built
               combinations that contain only one format each.  These
               combinations are named similarly to the corresponding formats
               on Reality Engine.

     The NTSC and PAL video formats are actually the 525 and 625 line
     component RGB formats, and are not the composite video formats that these
     names imply.

     To get composite video output from other systems, you may choose to
     purchase an encoder option such as the CG3 or BVO (which encodes the 525
     or 625 component RGB formats into true NTSC and PAL respectively), or a
     video peripheral product which provides composite output from an external
     frame buffer.

     setmon does not control the composite outputs of RealityEngine or
     InfiniteReality.  For RealityEngine, the composite output is controlled
     by the vout command.  For InfiniteReality, it is controlled by the
     ircombine(1g) command.

     On systems that support custom video output formats, a user-defined
     format may be selected by placing the file containing the VOF into the
     appropriate /usr/gfx/ucode/vof subdirectory.  A given user-defined format
     may then be selected by specifying the file name as the format argument.


EXAMPLES
     /usr/gfx/setmon -s g 30HZ

          sets the video output format to 30 Hz, sync-on-green.

     /usr/gfx/setmon -x 1280x1024_60

          sets a RealityEngine, InfiniteReality, IMPACT or CRM to run 1280 x
          1024 at 60Hz non-interlaced resolution the next time graphics is
          initialized.

     /usr/gfx/setmon -x -s b 640x480_180q

          sets a RealityEngine or InfiniteReality to run 640 x 480 x 180 Hz
          color field sequential output with sync on blue when graphics is
          next initialized.

     /usr/gfx/setmon -g -s rgb vof3

          sets the video output format to the VOF contained in the file vof3.u
          found in the appropriate /usr/gfx/ucode/vof subdirectory.  The
          format is genlocked and with sync-on-red/green/blue.

NOTES
     1.  Above, IMPACT graphics also refers to:

              IMPACTPC (Impact graphics on IP28)
         and
              IMPACTSR (Impact graphics on OCTANE).

     2.  Even if you use

              /usr/gfx/setmon -n

         to change the display resolution to something other than the
         resolution that was active when the X server was started, X will
         continue to manage a framebuffer area of the original size and
         resolution.  However, if the new size set by setmon is smaller than
         the orignal size, then part of the framebuffer will be unviewable.

     3.  On IMPACT and CRM, some formats may not be loadable using

              /usr/gfx/setmon -n

         because those formats require the X server to change its notion of
         the screen resolution or the available visuals.  To change to these
         formats, it is necessary to use

              /usr/gfx/setmon -x

         and restart the X server.


         In addition, the pixel depth on RealityEngine and InfiniteReality is
         not changed by

              /usr/gfx/setmon -n.

         To change pixel depth it is necessary to use

              /usr/gfx/setmon -x

         and restart the X server.

     4.  On GR2 graphics (Elan, Extreme, XS or XZ), the X server must be
         running before using setmon.  On IMPACT graphics, setmon must be run
         with the -x and -p options if the X server is not running.

     5.  On systems with GR2 graphics (Elan, Extreme, XS or XZ), sync appears
         on the red, green, and blue signals, by default.  But you can use the

              -s <r,g,b,n>

         option to specify otherwise.  Sync is always on the sync pin.

     6.  On systems with CRM or IMPACT graphics, sync appears on the red,
         green and blue signals. The -s option does not affect the sync
         signals on these systems.

     7.  /usr/gfx/setmon -g -j 10 NTSC

         sets the video output format to NTSC, and adjusts display by 10
         pixels to the left, relative to the genlock input signal.

     8.  /usr/gfx/setmon -g -j -10 NTSC

         sets the video output format to NTSC, and adjusts display by 10
         pixels to the right, relative to the genlock input signal.

     9.  STR_BOT is used to turn on full-screen stereo, and signals the X
         server that the bottom half of the screen is to be displayed as the
         primary buffer.  STR_TOP is used to turn on full-screen stereo, and
         signals the X server that the top half of the screen is to be
         displayed as the primary buffer. STR_RECT turns on full-screen
         stereo, but does not inform the X server of the fact, which gives the
         old full-screen stereo behavior.

     10. /usr/gfx/setmon -cs -Fv 1280x1024_50

         With the DISPLAY environment variable or the -p option set
         appropriately, the "-cs" changes the Indigo2 XL board to a slave and
         the "-Fv" framelocks the slave to the sync signal coming from the
         backplane of the Indigo2.  If the board is the slave by default, you
         don't need the -c option.  Type "/usr/gfx/gfxinfo" to see the default
         settings.


     11. /usr/gfx/setmon -cm -Fg 1280x1024_50

         The "-cm" sets the Indigo2 XL board to a master which sends a
         framelock sync signal to the backplane of the Indigo2. The "-Fg"
         framelocks the master to the video board which is assumed to be
         attached to the master board.  If the board is the master by default,
         you don't need the -c option.  Type "/usr/gfx/gfxinfo" to see the
         default settings.

SEE ALSO
     ircombine(1g), setmonitor(3g), vout(1V)


                                                                       Page 10