Chapter 8 Expert3D Graphics Accelerator

This chapter describes how to change the Expert3D Graphics Accelerator screen resolution to work properly with different monitors. It also describes the Expert3D internal and external connectors and their use.

Configuration Utilities

Two configuration utilities are available for the Expert3D Graphics Accelerator: fbconfig and SUNWifb_config.

The fbconfig Utility

The fbconfig utility is a generic command line interface to query and configure frame buffer attributes. fbconfig works with the Creator3D and Elite3D graphics accelerators, in addition to the Expert3D.

The fbconfig utility can be used to do the following:

Print a list of the installed frame buffers and the associated device-specific configuration utilities that can be used

Any of the uses described for the SUNWifb_config utility.

For more information on fbconfig, see the fbconfig man page.

The SUNWifb_config Utility

The SUNWifb_config utility is specific to Expert3D; it cannot be used with any other frame buffers. You can use the SUNWifb_config utility to:

Specify a different screen resolution

Type of visuals (linear or nonlinear

Whether to use 8-bit pseudocolor visual (overlay visual)

Whether linear visuals will be reported before their nonlinear counterparts in the screen visuals list

How to set the default screen visual

How OpenGL visuals will be supported

Specify whether Server Overlay Visuals (SOV) will be available

Enable slave mode so that the video from this frame buffer will be synced with the video of the display that is connected to it

Enable stereo mode

Enable frame buffer memory to be allocated for accelerated accumulation buffer for windows

Configurable gamma correction by specifying a gamma value or a file containing a gamma-correction table

For more information, see the SUNWifb_config man page.

Default Screen Resolutions

For most installations, the Expert3D automatically configures itself to the proper screen resolution and refresh rate for the attached monitor. However, if a non-Sun monitor is attached to the Elite3D, the monitor may not have the proper screen resolution.

If the Expert3D system is unable to determine the monitor type, such as for non-Sun monitors, it defaults to a resolution of 1152 x 900 at 66 Hz.

Supported Screen Resolutions

Table 8-2 lists the Expert3D-supported screen resolutions. The fbconfig or SUNWifb_config utilities can be used to set the Expert3D system to any one of these resolutions.

Table 8-2 Expert3D-supported Screen Resolutions

Screen Resolution

Vertical
Refresh Rate

Description

Video Mode Format

Symbolic Name

1920 x 1200

75 Hz

Non-interlaced

1920x1200x75

1920 x 1200

70 Hz

Non-interlaced

1920x1200x70

1920 x 1080

76 Hz

Non-interlaced

1920x1080x76

1920 x 1080

72 Hz

Non-interlaced

1920x1080x72

1792 x 1344

75 Hz

Non-interlaced

1792x1344x75

1600 x 1280

76 Hz

Non-interlaced

1600x1280x76

1600 x 1000

76 Hz

Non-interlaced

1600x1000x76

1600 x 1000

66 Hz

Non-interlaced

1600x1000x66

1440 x 900

76 Hz

Non-interlaced

1440x900x76

1280 x 1024

112 Hz

Stereo, non-interlaced, 56 Hz field rate per eye

1280x1024x112

1280 x 1024

85 Hz

Non-interlaced

1280x1024x85

1280 x 800

76 Hz

Non-interlaced

1280x800x76

1280

1280 x 1024

67 Hz

Non-interlaced

1280x1024x67

1280 x 1024

60 Hz

Non-interlaced

1280x1024x60

1280 x 800

76 Hz

Non-interlaced, Creator

1280x800x76

1152 x 900

76 Hz

Non-interlaced

1152x900x76

1152

1152 x 900

66 Hz

Non-interlaced

1152x900x66

1024 x 768

77 Hz

Non-interlaced

1024x768x77

1024 x 768

75 Hz

Non-interlaced

1024x768x75

1024 x 768

70 Hz

Non-interlaced

1024x768x70

1024 x 768

60 Hz

SVGA

1024x768x60

svga

960 x 680

112 Hz

Stereo, non-interlaced, 56 Hz field rate per eye

960x680x112s

stereo

960 x 680

108 Hz

Stereo, non-interlaced, 54 Hz field rate per eye

960x680x108s

768 x 575

50 Hz

Interlaced - PAL

768x575x50i

pal

640 x 480

60 Hz

Interlaced - NTSC

640x480x60i

ntsc

640 x 480

60 Hz

Non-interlaced

640x480x60

Changing Screen Resolutions (-res)

To Find Resolutions Supported By Expert3D and the Connected Monitor

Use the SUNWifb_config command as follows:

SUNWifb_config -res \?

You can change the screen resolution temporarily as a test to determine if the monitor supports the specified resolution.

Caution -

Do not change screen resolution while the window system is running. Changing screen resolution while the window system is running may put the screen display in an unusable state.

To Change Screen Resolutions Temporarily

Use the SUNWifb_config command as follows:

SUNWifb_config -res video-mode try

See Table 8-2 for the list of video-mode options (see the "Video Mode Format" and "Symbolic Name" columns in the table). You will have five seconds to confirm the video mode by typing y.

To Change the Screen Resolution to Stereo

Enter the following:

SUNWifb_config -res stereo

This changes the resolution to 960 x 680 at 112 Hz stereo the next time Xsun is run.

Changing Screen Visuals List

The X server screen visuals list can be altered through SUNWifb_config. The SUNWifb_config options in Table 8-3 can be used to configure the list of the exported visuals for the specified device.

Table 8-3 The Default Settings of the SUNWifb_config Visual
Flags

Name

Possible Values

Defaults

linearorder

first/last

last

deflinear

true/false

false

overlayorder

first/last

last

defoverlay

true/false

false

expvis

enable/disable

enable

sov

enable/disable

enable

Changing the Visual List Order (-linearorder, -overlayorder)

By default, the nonlinear visual comes before the linear visual on the screen visual list. You can modify the order of the visual list by using the SUNWifb_config command.

Most 3D applications require a linear visual. Some 3D applications do not search for a linear visual using XSolarisGetVisualGamma(3). Instead, these applications search the screen visual list for the first 24-bit TrueColor visual they find. To enable these applications to run with the correct visual, use the -linearorder option to change the visual list order so that the linear 24-bit TrueColor visual is the first one the application finds.

The desired visual ordering in the screen visuals list will be available whenever the window system is restarted.

To change the setting, enter the SUNWifb_config command with one of the
-linearorder options.

For example:

SUNWifb_config -linearorder first

By default, the 8-bit PseudoColor visual comes before the 8-bit PseudoColor Overlay visual on the screen visual list. You can modify the order of the visual list by using the SUNWifb_config command.

Some applications that use the 8-bit PseudoColor Overlay visual, search the visual list for the first 8-bit PseudoColor visual they find. To enable these applications to run with the correct visual, use the -overlayorder option to change the visual list order so that the 8-bit PseudoColor Overlay visual is the first 8-bit PseudoColor visual the application finds.

The desired visual ordering in the screen visuals list will be available whenever the window system is restarted.

To change the setting, enter the SUNWifb_config command with one of the
-overlayorder options.

For example:

SUNWifb_config -overlayorder first

Changing the Default Visual (-deflinear, -defoverlay)

By default, the 8-bit PseudoColor underlay visual is the default visual of the screen. The default visual can be changed to either a linear underlay visual or an overlay visual through SUNWifb_config.

To set the default visual to be a linear visual, enter the SUNWifb_config command as follows:

SUNWifb_config -deflinear true

To set the default visual to be an overlay visual, enter the SUNWifb_config command as follows:

SUNWifb_config -defoverlay true

Caution -

Since there is no linear overlay visual, the user should not specify both "-deflinear
true" and "-defoverlay true" simultaneously, or the result will be undefined.

Caution -

Note that the visual ordering options (overlayorder and linearorder) are independent of the default visual options (defoverlay and deflinear). Moving the overlay visual groups, for example, to the front does not automatically make it a default visual. Some applications make this assumption and hence receive a "BADMATCH" X error when they try to match the colormap created by the default visual and the first 8-bit PseudoColor visual they can find.

Changing OpenGL Visual Support (-expvis)

Solaris supports the OpenGL visual expansion. With visual expansion, five visual groups: the 8-bit PseudoColor, 24-bit TrueColor (Linear and Non-Linear), 24-bit DirectColor, and 8-bit PseudoColor Overlay, are expanded from a single visual to multiple visual instances of the same visual type. Different instances of the same visual groups represent different GLX capabilities (e.g. single-buffer or double-buffer capable, monoscopic or stereoscopic capable, or a combination of both). The number of visual instances depends on whether the X server is started in monoscopic or stereoscopic mode.

To Activate OpenGL Visual Support (Visual Expansion)

Enter the following:

SUNWifb_config -expvis enable

Changing SERVER_OVERLAY_VISUALS Support (-sov)

SERVER_OVERLAY_VISUALS is one of the root window's properties that contains the visual ID, transparent type, transparent value, and layer of the server overlay visuals (SOV) of the screen. You can toggle the advertisement of this property and the export of the transparent server overlay visuals using SUNWifb_config.

To Advertise SERVER_OVERLAY_PROPERTY and Export SOV

Enter the following:

SUNWifb_config -sov enable

Setting Gamma Correction (-g, -gfile)

Gamma correction may be set by specifying a gamma correction value or by specifying a file that contains a gamma table.

The -g option will set the gamma table entries based on the gamma value specified. A gamma value of 2.22 represents linear gamma correction and matches the fixed value on the Expert3D system. This value is a per-screen value and therefore all gamma corrected or linear visuals will use this value.

To Set the Gamma Correction Using a Value

Enter the following:

SUNWifb_config -g 2.22

The -gfile option will set the gamma table entries explicitly from a file containing three columns of 256 integers ranging from 0 to 255. The format is three integers separated by a newline character. Each line contains the RGB value to be put in the table for that entry. This value is a per-screen value and therefore all gamma-corrected or linear visuals will use this value.

To Set the Gamma Correction Using a File

Enter the following:

SUNWifb_config -gfile filename

Choosing Extended Overlay (-extovl)

Enabling the extended overlay option will switch the Expert3D system to the extended overlay functionality. The extended overlay mode enables full 256-color overlays and hardware-accelerated Server Overlay Visuals. The maximum number of underlay Window IDs (WIDs) is increased from 32 to 64 and three new overlay WIDs are provided.

To Configure for Extended Overlay Mode

Enter the following:

SUNWifb_config -extovl enable

Multiple Monitor Configuration

To run more than one frame buffer, you need to modify your /etc/config/Xservers file. The Expert3D device is identified as ifbx (for example, ifb0 and ifb1 for two Expert3D devices. To do this:

Become superuser and open the /etc/dt/config/Xservers file.

# cd /etc/dt/config
# vi Xservers

Modify the file by adding the device locations for the applicable frame buffers being used.

The following example shows the Xservers configuration file modified for one Creator card and two Expert3D cards:

In the above example, you would select option a if you want to make the Expert3D device be the console.

Set this device to be the console device.

At the OpenBoot prompt, enter the following:

ok setenv output-device <Control-Y> <ENTER>
ok reset

You can also create an alias for the Expert3D system to simplify future OpenBoot commands. After running the show-displays command and choosing the Expert3D device from the menu, type the following:

ok nvalias screen1 <Control-Y>
ok nvstore

To verify that this alias is correctly set, type the following:

ok devaliases

You can then refer to screen1 for the Expert3D device. For example:

ok setenv output-device screen1

Expert3D Connectors

The Expert3D board has both internal and external I/O connectors. The internal connectors are used for multiviewing and the external ports are used for external video synchronization and stereo. Figure 8-1 shows the external I/O connectors.

Figure 8-1 Expert3D External Connectors

Stereo Connector

The stereo connector allows connection of stereo goggles to the Expert3D Graphics Accelerator. The stereo connector is a seven-pin DIN connector, as shown in Figure 8-2

Video Synchronization Port

The video synchronization port provides an input to the Expert3D board used to provide a periodic signal to which the display system attempts to lock its vertical refresh rate. This port uses a 75 ohm BNC male connector. A 75 ohm coax cable terminated with a female BNC connector is needed to connect to this port.

The video synchronization port supports the following formats:

NTSC composite video

PAL composite video

TTL, LVTTL, or CMOS-level compatible signal (50 Hz to 180 Hz), with a minimum low or high pulse of 100 nS (TBV)

Multiview Ports

The internal Multiview In and Multiview Out ports on the Expert3D card, shown as J1 and J2 in Figure 8-4, are used for cable connections from one Expert3D card to another. These ports are accessible only inside the workstation chassis.

Figure 8-4 Expert3D Multiview In and Multiview Out Connectors

Configuring Multiple Expert3D Graphics Cards

You can frame lock only two Expert3D cards for multiviewing. When two Expert3D cards are used in a multiviewing configuration, one of the cards is designated as the master and the other as the slave.

When your system is first started, Solaris places all Expert3D cards in the system in master mode. To use the Expert3D cards for multiviewing, use the SUNWifb_config utility to set one of the cards to be the slave.

There can only be one master Expert3D card in a system.

You must choose a screen resolution supported by Expert3D and assure that each Expert3D monitor in frame lock is set to that resolution.

Refer to the boot man page for device location and device numbering information for how devices are numbered based on their physical location. You may select any device (that is, ifb0 or ifb1) to be the master Expert3D device.

To configure two Expert3D cards for multiviewing through frame locking:

Select an Expert3D card to designate as the master for the system.

One solution for designating an Expert3D to be the master is to use the Expert3D card that serves as the boot/console head for the system.

Make sure that each Expert3D card installed has the same screen resolution as the Expert3D in the master mode.

If the resolution on each Expert3D card is not the same, you must change it to match the Expert3D in master mode.

To check the resolution of an Expert3D card, use the SUNWifb_config utility. For example:

% SUNWifb_config -dev /dev/fbs/ifb0 -prconf

You must repeat this command for each Expert3D card in the system.

The SUNWifb_config utility displays the current screen resolution setting. It also displays additional information, such as whether the Expert3D card is a master or a slave.

If you need to change the resolution of an Expert3D card, use the SUNWifb_config utility. For example