[Toc][Index]

VIDEOCFG.DLL Exported Functions


The VIDEOCFG.DLL shared library represents the video configuration module 
in OS/2. Resolution, monitor, and refresh configuration methods are 
standardized, meaning that IBM- and vendor-shipped drivers for different 
video devices have the same user interface for the video configuration. 
The configuration of the resolution is handled by Page 1 of the System 
Icon notebook. The monitor configuration is handled by Page 2 of the 
System icon notebook. Page 2 is offered whenever the PMI subsystem 
contains timing information in its mode table and the attached monitor 
does not support the VESA DDC standard. For DDC monitors, Page 2 is not 
offered, because the DDC standard provides a software interface for 
retrieving monitor specifications and no user interaction is required. 
Resolution listbox entries are based on the mode table supported by the 
display driver, as retrieved via the DspQueryDisplayResolutions API. 
Refresh listbox on Page 1 is offered for each display driver supported 
mode that has timing information (VerticalRefresh other than 0xFFFF) in 
the PMI subsystem mode table. 
User configuration is recorded at closing of the System object in 
VIDEO.CFG, a private profiling file. This is a flat file with syntax 
similar to that of the PMI. The very first VIDEO.CFG is created by the 
SVGA.EXE utility (both the IBM-shipped version and the SVGAOEM.EXE 
provided in the DDK for vendor modification) and reflects the detected 
monitor configuration at install time. The only generic monitor detection 
built into the utility is that of the VESA DDC standard. For 
adapter-specific current monitor configuration, the utility has to be 
modified to "read" the current settings. An alternative approach is to 
choose and hard code some standard settings as the default monitor 
configuration. All of the legacy monitors, as well as the original default 
settings, are stored in the monitor database. The monitor database is 
composed of MONITOR.DIF and the optional PRIVATE.DIF. The PRIVATE.DIF can 
be created by vendors performing RIPL install who prefer to leave 
MONITOR.DIF as a read-only file. .DIF files are flat files with PMI-like 
syntax and can be edited to correct or add new legacy monitor entries. 
VIDEOCFG.DLL also supports a generic display driver configuration, which 
allows display drivers to declare one or more settings, the type of each 
setting, possible values, as well as current value of each setting. When 
the display driver does have a need to handle some user interface, this 
feature is the preferred method to any custom configuration. The reason it 
is preferred is that, in the future, with dynamic resolution change and 
adapter change, the configuration manager will be able to save and restore 
all of the display driver custom settings. Note that VIDEOCFG does not 
attempt to understand the nature of each setting, nor is it performing any 
profiling of the setting changes. 
When the feature is exported by the display driver via a DevEscape (see 
Generic Video Configuration Interface), VIDEOCFG provides a "Capabilities" 
button on Page 1 that opens a notebook with one page dedicated to each 
declared setting. Help for each setting, if desired, has to be exported by 
the display driver via a resource module and a resource ID for the help. 
As the user makes changes to the settings, the display driver is notified 
at the time the System Icon changes and is responsible for recording 
(profiling) the new value. Each time the pages of the settings are opened, 
VIDEOCFG will query the display driver for the current value of each 
exported setting. 
Current monitor and mode configuration can be queried and changed via the 
VIDEOCFG's exported APIs, all of which are listed here and prototyped in 
h\svgadefs.h. 

Created using Inf-PHP v.2 (c) 2003 Yuri Prokushev
Created using Inf-HTML v.0.9b (c) 1995 Peter Childs