We list here some information about changing video resolutions on assorted Glue software and hardware. Unfortunately, there is no standard and easy way to do this, so is broken down by OS, and in some cases OS version and hardware. The only thing that is consistent is that the X server will need to restart for the new settings to take effect; this can usually be achieved by simply logging out and back in at the graphical console.
Changing video resolutions on:
Assuming you have X functioning at all, the easiest way is to run the
command /bin/redhat-config-xfree86
. If already in graphical mode,
it will display a graphical user interface for changing the resolution. If
on the command line, I believe it will start X for you.
Otherwise, you can do direct hacking of /etc/X11/XF86Config
, but
that is not for the faint of heart. Although it usually is not to bad to at
least get to a workable X display, usually near the end is a Section
for the Screen, with Subsections for Displays at different
video depths. The Display subsection usually has a line defining its
video depth in bits (e.g. 24 means 3 bytes per pixel, so alot of colors, 1 would
mean B/W), and a line listing the Modes, or video resolutions in pixels
(the resolutions should be quoted, and can give a list separated by spaces).
Usually it is enough to delete the higher resolutions, or add a low resolution.
This will often get things usable enough to run redhat-config-xfree86
to fine tune the video.
Sun generally provides a command /usr/sbin/fbconfig
to configure
the frame-buffer or video card. This command is a metacommand, keeping track
of what frame buffer devices are available on the system and what type they
are (e.g. the fbconfig -list
option). More relevant to this
discussion, it also allows for some basic commands like resolution setting to
be done by this one command for various types of devies (fbconfig
jst forwards the command to the appropriate device-specific configuration
tool, e.g. SUNWm64_config
.
Normally, you should run fbconfig
with no options, piping stdout
and stderr to less to see the options for that particular device. Normally,
you will want the -res
option for setting video resolution, using
fbconfig -res \? | less
to get a list of valid resolutions (usually
denoted by an optional prefix, followed by Horizontal x Vertical x Vertical
Refresh Frequency), and then repeat the command giving the desired resolution
instead of the question mark, e.g. fbconfig 1024x768x60
60).
The above set the resolution once we are booted into solaris. Prior to
that, running at the openboot prompt, the resolution may still be problematic.
This can be set by setting the NVRAMC variable output-device
, which
normally has the value screen
. To specify a new default resolution,
change the value to screen:rWxHxF
, where W,H,
and
F
are the x, y resolutions and the vertical refresh rate in Hz.
This can be done from the open boot prompt or from Solaris, e.g.
setenv output-device screen:r1280x1024x76
eeprom output-device='screen:r1280x1024x76'
This seems to be the least advanced, although that may be because I am used to dealing with older equipment on this platform. The method for changing screen resolution varies significantly, and we even have some machines which require setting a dial on the actual video card.
Most cases wherein the resolution is software settable, the best method I've
found is to examine the file /usr/lib/X11/Xserver.conf
, and find
a stanza called args. This usually is where arguments to the xserver
can be listed, and they will then be used when xdm
starts up X.
Usually adding something like -screen 1024x768 -vsync 60
will set
video resolutions and refresh rate.