Solaris Reference Manual for SMCC-Specific Software
  Search only this book
Download this book in PDF

NAME

ffbconfig - configure the FFB Graphics Accelerator

SYNOPSIS

/usr/sbin/ffbconfig [ -dev device-filename ]
          [ -res video-mode [ now | try ] [ noconfirm | nocheck ] ]
          [ -file machine | system ]
          [ -deflinear true | false ]
          [ -defoverlay true | false ]
          [ -linearorder first | last ]
          [ -overlayorder first | last ]
          [ -expvis enable | disable ]
          [ -sov enable | disable ]
          [ -maxwids n ] [ -propt ] [ -prconf ] [ -defaults ]

/usr/sbin/ffbconfig [ -propt ] [ -prconf ]
/usr/sbin/ffbconfig [ -help ] [ -res ? ]

AVAILABILITY

SUNWffbcf

DESCRIPTION

ffbconfig configures the FFB Graphics Accelerator and some of the X11 window system defaults for FFB.
The first form of ffbconfig shown in the synopsis above stores the specified options in the OWconfig file. These options will be used to initialize the FFB device the next time the window system is run on that device. Updating options in the OWconfig file provides persistence of these options across window system sessions and system reboots.
The second and third forms which invoke only the -prconf ,-propt ,-help, and -res ? options do not update the OWconfig file. Additionally, for the third form all other options are ignored.
Options may be specified for only one FFB device at a time. Specifying options for multiple FFB devices requires multiple invocations of ffbconfig.
Only FFB-specific options can be specified through ffbconfig. The normal window system options for specifying default depth, default visual class and so forth are still specified as device modifiers on the openwin command line (see the Xsun(1) manual page in the Openwindows Reference Manual).
The user can also specify the OWconfig file that is to be updated. By default, the machine-specific file in the /etc/openwin directory tree is updated. The -file option can be used to specify an alternate file to use. For example, the system-global OWconfig file in the /usr/openwin directory tree can be updated instead.
Both of these standard OWconfig files can only be written by root. Consequently, the ffbconfig program, which is owned by the root user, always runs with setuid root permission.

OPTIONS

-dev device-filename
Specifies the FFB special file. The default is /dev/fbs/ffb0.
-file machine | system
Specifies which OWconfig file to update. If machine, the machine-specific OWconfig file in the /etc/openwin directory tree is used. If system, the global OWconfig file in the /usr/openwin directory tree is used. If the file does not exist, it is created.
-res video-mode [ now | try [ noconfirm | nocheck ] ]
Specifies the video mode used to drive the monitor connected to the specified FFB device.
The format of these built-in video modes is:
widthxheightxrate
where width is the screen width in pixels, height is the screen height in pixels, and rate is the vertical frequency of the screen refresh. The s suffix of 960x680x112s and 960x680x108s means that these are stereo video modes. The i suffix of 640x480x60i and 768x575x50i designates interlaced video timing. If absent, non-interlaced timing will be used. As a convenience, -res also accepts formats with '@' (at sign) in front of the refresh rate instead of x. For example: 1280x1024@76. Note, some video-modes are supported only on certain revisions of FFB. Also, some video-modes, supported by FFB, may not be supported by the monitor. The list of video-modes supported by the FFB device and the monitor can be obtained by running ffbconfig with the -res ? option (the third form shown in the command synopsis above). A list of all possible video-modes supported on FFB is shown below.
1024x768x60
1024x768x70
1024x768x75
1024x768x77
1024x800x84
1152x900x66
1152x900x76
1280x800x76
1280x1024x60
1280x1024x67
1280x1024x76
960x680x112s
(Stereo)
960x680x108s
(Stereo)
640x480x60
640x480x60i
(Interlaced)
768x575x50i
(Interlaced)
1440x900x76
(hi-res)
1600x1000x66
(hi-res)
1600x1000x76
(hi-res)
1600x1280x76
(hi-res)
1920x1080x72
(hi-res)
1920x1200x70
(hi-res)
Symbolic names
For convenience, some of the above video modes have symbolic names defined for them. Instead of the form width x height x rate, one of these names may be supplied as the argument to -res. The meaning of the symbolic name none is that when the window system is run the screen resolution will be the video mode that is currently programmed in the device.
Name
Corresponding Video Mode
svga
1024x768x60
1152
1152x900x76
1280
1280x1024x76
stereo
960x680x112s
ntsc
640x480x60i
pal
768x575x50i
none
(see text above)
The -res option also accepts additional, optional arguments immediately following the video mode specification. Any or all of these may be present.
now
If present, not only will the video mode be updated in the OWconfig file, but the FFB device will be immediately programmed to display this video mode. (This is useful for changing the video mode before starting the window system).
Note - It is inadvisable to use this suboption with ffbconfig while
the configured device is being used (e.g. while running the
window system); unpredictable results may occur. To run
ffbconfig with the now suboption, first bring the window
system down. If the now suboption is used within a window system session, the video mode will be changed immediately, but the width and height of the affected screen won't change until the window system is exited and reentered again. In
addition, the system may not recognize changes in stereo
mode. Consequently, this usage is strongly discouraged.
noconfirm Using the -res option, the user could potentially put the system into
an usable state, a state where there is no video output. This can happen if there is ambiguity in the monitor sense codes for the particular code read. To reduce the chance of this, the default behavior of ffbconfig is to print a warning message to this effect and to prompt the user to find out if it is okay to continue. The noconfirm option instructs ffbconfig to bypass this confirmation and to program the requested video mode anyway. This option is useful when ffbconfig is being run from a shell script.
nocheck
If present, the normal error checking based on the monitor sense code (described above) will be suspended. The video mode specified by the user will be accepted regardless of whether it is appropriate for
the currently attached monitor. (This option is useful if a different monitor is to be connected to the FFB device). Use of this option implies noconfirm well.
try
If present, the specified video mode will be programmed on a trial basis. The user will be asked to confirm the video mode by typing 'y' within 10 seconds. Or the user may terminate the trial before 10 seconds are up by typing any character. Any character other than 'y' or carriage return is considered a no and the previous video mode will be restored and ffbconfig will not change the video mode in the OWconfig file (other options specified will still take effect). If a carriage return is typed, the user is prompted for a yes or no answer on whether to keep the new video mode. This option implies the now suboption (see the warning note on the now suboption).
FFB possesses two types of visuals: linear and nonlinear. Linear visuals are
gamma corrected and nonlinear visuals are not. There are two visuals that have both linear and nonlinear versions: 24-bit TrueColor and 8-bit StaticGray. If true, the default visual is set to the linear visual that satisfies other specified default visual selection options (specifically, the Xsun(1) defdepth and defclass options described in the OpenWindows Reference Manual).
If false, or if there is no linear visual that satisfies the other default visual selection options, the non-linear visual specified by these other options will be chosen to be the default.
This option cannot be used when the -defoverlay option is present, because FFB doesn't possess a linear overlay visual.
-defoverlay true | false
The FFB provides an 8-bit PseudoColor visual whose pixels are disjoint from the rest of the FFB visuals. This is called the overlay visual. Windows created in this visual will not damage windows created in other visuals. The converse, however, is not true. Windows created in other visuals will damage overlay windows. This visual has (256 - maxwids) number of opaque color values (refer to the -maxwids option).
If the value of this option is true, the overlay visual will be made the default visual.
If false, the nonoverlay visual that satisfies the other default visual selection options, such as defdepth and defclass, will be chosen as the default visual. See the Xsun(1) manual page in the OpenWindows Reference Manual. Whenever -defoverlay true is used, the default depth and class chosen on the openwin command line must be 8-bit PseudoColor. If not, a warning message will be printed and the -defoverlay option will be treated as false. This option cannot be used when the -deflinear option is present, because FFB doesn't possess a linear overlay visual.
-linearorder first | last
If true, linear visuals will come before their non-linear counterparts on the X11 screen visual list for the FFB screen. If false, the nonlinear visuals will come
before the linear ones.
-overlayorder first | last
If true, the depth 8 PseudoColor Overlay visual will come before the non-overlay visual on the X11 screen visual list for the FFB screen. If false, the non-overlay visual will come before the overlay one.
-expvis enable | disable
If enabled, OpenGL Visual Expansion will be activated. Multiple instances of selected visual groups (8-bit PseudoColor, 24-bit TrueColor ... etc) can be found in the screen visual list.
-sov enable | disable
If enabled, the root window's SERVER_OVERLAY_VISUALS property will be advertised. SOV visuals will be exported and their transparent types, values and layers can be retrieved through this property. If disabled, the SERVER_OVERLAY_VISUALS property will not be defined. SOV visuals will not be exported.
-maxwids n
Specifies the maximum number of FFB X channel pixel values that are reserved for use as window IDs (WIDs). The remainder of the pixel values in overlay colormaps are used for normal X11 opaque color pixels.
The reserved WIDs are allocated on a first-come first-serve basis by 3D graphics windows (such as XGL), MBX windows, and windows that have a non-default visual.
The X channel codes 0 to (255 - n) will be opaque color pixels. The X channel codes (255 - n + 1) to 255 will be reserved for use as WIDs. Legal values: 1, 2, 4, 8, 16, 32.
-defaults
Resets all option values to their default values.
-propt Prints the current values of all FFB options in the OWconfig file specified by the
-file option for the device specified by the -dev option. Prints the values of options as they will be in the OWconfig file after the call to ffbconfig completes. This is a typical display:
        --- OpenWindows Configuration for /dev/fbs/ffb0 ---
        OWconfig: machine
        Video Mode: NONE
        Default Visual: Non-Linear Normal Visual
        Visual Ordering: Linear Visuals are last
                 Overlay Visuals are last
        OpenGL Visuals: disabled
        SOV: disabled
        Allocated WIDs: 32

-prconf
Prints the FFB hardware configuration. This is a typical display:
        --- Hardware Configuration for /dev/fbs/ffb0 ---
        Type: double-buffered FFB2 with Z-buffer
        Board: rev x
        PROM Information: @(#)ffb2.fth x.x xx/xx/xx
        FBC: version x
        DAC: Brooktree 9068, version x
        3DRAM: Mitsubishi 1309, version x
        EDID Data: Available - EDID version 1 revision x
        Monitor Sense ID: 4 (Sun 37x29cm RGB color monitor)
        Monitor possible resolutions: 1024x768x60, 1024x768x70,
               1024x768x75, 1152x900x66, 1152x900x76, 1280x1024x67,
               1280x1024x76, 960x680x112s, 640x480x60
        Current resolution setting: 1280x1024x76

-help
Prints a list of the ffbconfig command line options, along with a brief explanation of each.

DEFAULTS

For a given invocation of ffbconfig command line if an option does not appear on the command line, the corresponding OWconfig option is not updated; it retains its previous value.
When the window system is run, if an FFB option has never been specified via ffbconfig, a default value is used. The option defaults are as follows:
Option
Default
-dev
/dev/fbs/ffb0
-file
machine
-res
none
-deflinear
false
-defoverlay
false
-linearorder
last
-overlayorder
last
-expvis
disabled
-sov
disabled
-maxwids
32
The default for the -res option of none means that when the window system is run the screen resolution will be the video mode that is currently programmed in the device.
Note - This provides compatibility for users who are used to specifying the device reso-
lution through the PROM. On some devices (e.g. GX) this is the only way of specifying the video mode. This means that the PROM ultimately determines the default FFB video mode.

EXAMPLES

The following example switches the monitor type to the resolution of 1280 . 1024 at 76 Hz:
example% /usr/sbin/ffbconfig -res 1280x1024x76

FILES

/dev/fbs/ffb0
device special file

SEE ALSO

mmap(2), fbio(7I), ffb(7D)