449 lines
11 KiB
HTML
449 lines
11 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
|
<HTML
|
|
><HEAD
|
|
><TITLE
|
|
>Basic Things to Know about your Display and Adapter</TITLE
|
|
><META
|
|
NAME="GENERATOR"
|
|
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
|
|
REL="HOME"
|
|
TITLE="X.org/XFree86 Video Timings HOWTO"
|
|
HREF="index.html"><LINK
|
|
REL="PREVIOUS"
|
|
TITLE="How Video Displays Work"
|
|
HREF="video.html"><LINK
|
|
REL="NEXT"
|
|
TITLE="Interpreting the Basic Specifications"
|
|
HREF="specs.html"></HEAD
|
|
><BODY
|
|
CLASS="sect1"
|
|
BGCOLOR="#FFFFFF"
|
|
TEXT="#000000"
|
|
LINK="#0000FF"
|
|
VLINK="#840084"
|
|
ALINK="#0000FF"
|
|
><DIV
|
|
CLASS="NAVHEADER"
|
|
><TABLE
|
|
SUMMARY="Header navigation table"
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
CELLPADDING="0"
|
|
CELLSPACING="0"
|
|
><TR
|
|
><TH
|
|
COLSPAN="3"
|
|
ALIGN="center"
|
|
>X.org/XFree86 Video Timings HOWTO</TH
|
|
></TR
|
|
><TR
|
|
><TD
|
|
WIDTH="10%"
|
|
ALIGN="left"
|
|
VALIGN="bottom"
|
|
><A
|
|
HREF="video.html"
|
|
ACCESSKEY="P"
|
|
>Prev</A
|
|
></TD
|
|
><TD
|
|
WIDTH="80%"
|
|
ALIGN="center"
|
|
VALIGN="bottom"
|
|
></TD
|
|
><TD
|
|
WIDTH="10%"
|
|
ALIGN="right"
|
|
VALIGN="bottom"
|
|
><A
|
|
HREF="specs.html"
|
|
ACCESSKEY="N"
|
|
>Next</A
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><HR
|
|
ALIGN="LEFT"
|
|
WIDTH="100%"></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="basic"
|
|
></A
|
|
>6. Basic Things to Know about your Display and Adapter</H1
|
|
><P
|
|
>There are some fundamental things you need to know before
|
|
hacking an Xconfig entry. These are:</P
|
|
><P
|
|
></P
|
|
><UL
|
|
><LI
|
|
><P
|
|
>your monitor's horizontal and vertical sync frequency options</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>your monitor's bandwidth</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>your video adapter's driving clock frequencies, or "dot clocks"</P
|
|
></LI
|
|
></UL
|
|
><DIV
|
|
CLASS="sect2"
|
|
><H2
|
|
CLASS="sect2"
|
|
><A
|
|
NAME="AEN140"
|
|
></A
|
|
>6.1. The monitor sync frequencies</H2
|
|
><P
|
|
>The horizontal sync frequency is just the number of times per second
|
|
the monitor can write a horizontal scan line; it is the single most
|
|
important statistic about your monitor. The vertical sync frequency
|
|
is the number of times per second the monitor can traverse its beam
|
|
vertically.</P
|
|
><P
|
|
>Sync frequencies are usually listed on the specifications page
|
|
of your monitor manual. The vertical sync
|
|
frequency number is typically calibrated in Hz
|
|
(cycles per second), the horizontal one in KHz (kilocycles per
|
|
second). The usual ranges are between 50 and 150Hz vertical, and
|
|
between 31 and 135KHz horizontal.</P
|
|
><P
|
|
>If you have a multisync monitor, these frequencies will be given
|
|
as ranges. Some monitors, especially lower-end ones, have multiple
|
|
fixed frequencies. These can be configured too, but your options will
|
|
be severely limited by the built-in monitor characteristics. Choose
|
|
the highest frequency pair for best resolution. And be careful ---
|
|
trying to clock a fixed-frequency monitor at a higher speed than it's
|
|
designed for can easily damage it.</P
|
|
><P
|
|
>Earlier versions of this guide were pretty cavalier about overdriving
|
|
multisync monitors, pushing them past their nominal highest vertical
|
|
sync frequency in order to get better performance. We have since had more
|
|
reasons pointed out to us for caution on this score; we'll cover those under
|
|
<A
|
|
HREF="overd.html"
|
|
>Overdriving Your Monitor</A
|
|
> below.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect2"
|
|
><H2
|
|
CLASS="sect2"
|
|
><A
|
|
NAME="AEN151"
|
|
></A
|
|
>6.2. The monitor's video bandwidth</H2
|
|
><P
|
|
>Your monitor's video bandwidth should be included on the
|
|
manual's spec page. If it's not, look at the monitor's higest rated
|
|
resolution. As a rule of thumb, here's how to translate these into
|
|
bandwidth estimates (and thus into rough upper bounds for the dot
|
|
clock you can use):</P
|
|
><TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="screen"
|
|
> 640x480 25
|
|
800x600 36
|
|
1024x768 65
|
|
1024x768 interlaced 45
|
|
1280x1024 110
|
|
1600x1200 185
|
|
</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>BTW, there's nothing magic about this table; these numbers are just
|
|
the lowest dot clocks per resolution in the standard X Modes
|
|
database (except for the last, which I extrapolated). The bandwidth
|
|
of your monitor may actually be higher than the minimum needed for its
|
|
top resolution, so don't be afraid to try a dot clock a few MHz
|
|
higher.</P
|
|
><P
|
|
>Also note that bandwidth is seldom an issue for dot clocks under
|
|
65MHz or so. With an SVGA card and most hi-res monitors, you can't
|
|
get anywhere near the limit of your monitor's video bandwidth. The
|
|
following are examples: </P
|
|
><TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="screen"
|
|
> Brand Video Bandwidth
|
|
---------- ---------------
|
|
NEC 4D 75Mhz
|
|
Nano 907a 50Mhz
|
|
Nano 9080i 60Mhz
|
|
Mitsubishi HL6615 110Mhz
|
|
Mitsubishi Diamond Scan 100Mhz
|
|
IDEK MF-5117 65Mhz
|
|
IOCOMM Thinksync-17 CM-7126 136Mhz
|
|
HP D1188A 100Mhz
|
|
Philips SC-17AS 110Mhz
|
|
Swan SW617 85Mhz
|
|
Viewsonic 21PS 185Mhz
|
|
PanaSync/Pro P21 220Mhz
|
|
</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>Even low-end monitors usually aren't terribly
|
|
bandwidth-constrained for their rated resolutions. The NEC Multisync
|
|
II makes a good example --- it can't even display 800x600 per its
|
|
spec. It can only display 800x560. For such low resolutions you
|
|
don't need high dot clocks or a lot of bandwidth; probably the best
|
|
you can do is 32Mhz or 36Mhz, both of them are still not too far from
|
|
the monitor's rated video bandwidth of 30Mhz. </P
|
|
><P
|
|
>At these two driving frequencies, your screen image may not be
|
|
as sharp as it should be, but definitely of tolerable quality. Of
|
|
course it would be nicer if NEC Multisync II had a video bandwidth
|
|
higher than, say, 36Mhz. But this is not critical for common tasks
|
|
like text editing, as long as the difference is not so significant as
|
|
to cause severe image distortion (your eyes would tell you right away
|
|
if this were so).</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect2"
|
|
><H2
|
|
CLASS="sect2"
|
|
><A
|
|
NAME="AEN160"
|
|
></A
|
|
>6.3. The card's dot clock</H2
|
|
><P
|
|
>Your video adapter manual's spec page will usually give you the
|
|
card's maximum dot clock (that is, the total number of pixels per
|
|
second it can write to the screen).</P
|
|
><P
|
|
>If you don't have this information, the X server will get it for you.
|
|
Recent versions of the X servers all support a --probeonly option that
|
|
prints out this information and exits without actually starting up X
|
|
or changing the video mode.</P
|
|
><P
|
|
>If you don't have -probeonly, don't depair. Even if your X locks up
|
|
your monitor, it will emit a line of clock and other info to standard
|
|
error. If you redirect this to a file, it should be saved even if you
|
|
have to reboot to get your console back.</P
|
|
><P
|
|
>The probe result or startup message should look something like one of
|
|
the following examples:</P
|
|
><P
|
|
>If you're using X.org or XFree86:</P
|
|
><TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="screen"
|
|
> Xconfig: /usr/X11R6/lib/X11/Xconfig
|
|
(**) stands for supplied, (--) stands for probed/default values
|
|
(**) Mouse: type: MouseMan, device: /dev/ttyS1, baudrate: 9600
|
|
Warning: The directory "/usr/andrew/X11fonts" does not exist.
|
|
Entry deleted from font path.
|
|
(**) FontPath set to "/usr/lib/X11/fonts/misc/,/usr/lib/X11/fonts/75dpi/"
|
|
(--) S3: card type: 386/486 localbus
|
|
(--) S3: chipset: 924
|
|
---
|
|
Chipset -- this is the exact chip type; an early mask of the 86C911
|
|
|
|
(--) S3: chipset driver: s3_generic
|
|
(--) S3: videoram: 1024k
|
|
-----
|
|
Size of on-board frame-buffer RAM
|
|
|
|
(**) S3: clocks: 25.00 28.00 40.00 3.00 50.00 77.00 36.00 45.00
|
|
(**) S3: clocks: 0.00 0.00 79.00 31.00 94.00 65.00 75.00 71.00
|
|
------------------------------------------------------
|
|
Possible driving frequencies in MHz
|
|
|
|
(--) S3: Maximum allowed dot-clock: 110MHz
|
|
------
|
|
Bandwidth
|
|
(**) S3: Mode "1024x768": mode clock = 79.000, clock used = 79.000
|
|
(--) S3: Virtual resolution set to 1024x768
|
|
(--) S3: Using a banksize of 64k, line width of 1024
|
|
(--) S3: Pixmap cache:
|
|
(--) S3: Using 2 128-pixel 4 64-pixel and 8 32-pixel slots
|
|
(--) S3: Using 8 pages of 768x255 for font caching
|
|
</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>If you're using SGCS or X/Inside X:</P
|
|
><TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="screen"
|
|
> WGA: 86C911 (mem: 1024k clocks: 25 28 40 3 50 77 36 45 0 0 79 31 94 65 75 71)
|
|
--- ------ ----- --------------------------------------------
|
|
| | | Possible driving frequencies in MHz
|
|
| | +-- Size of on-board frame-buffer RAM
|
|
| +-- Chip type
|
|
+-- Server type
|
|
</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>Note: do this with your machine unloaded (if at all possible).
|
|
Because X is an application, its timing loops can collide with disk
|
|
activity, rendering the numbers above inaccurate. Do it several times
|
|
and watch for the numbers to stabilize; if they don't, start killing
|
|
processes until they do. Your mouse daemon process, if you have one,
|
|
is particularly likely to trip you up (that's gpm for Linux users,
|
|
mousemgr for SVr4 users).</P
|
|
><P
|
|
>In order to avoid the clock-probe inaccuracy, you should clip
|
|
out the clock timings and put them in your Xconfig as the value of the
|
|
Clocks property --- this suppresses the timing loop and gives X an
|
|
exact list of the clock values it can try. Using the data from the
|
|
example above:</P
|
|
><TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="screen"
|
|
> wga
|
|
Clocks 25 28 40 3 50 77 36 45 0 0 79 31 94 65 75 71
|
|
</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>On systems with a highly variable load, this may help you avoid
|
|
mysterious X startup failures. It's possible for X to come up, get
|
|
its timings wrong due to system load, and then not be able to find a
|
|
matching dot clock in its config database --- or find the wrong
|
|
one!</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect2"
|
|
><H2
|
|
CLASS="sect2"
|
|
><A
|
|
NAME="AEN176"
|
|
></A
|
|
>6.4. What these basic statistics control</H2
|
|
><P
|
|
>The sync frequency ranges of your monitor, together with
|
|
your video adapter's dot clock, determine the ultimate resolution that
|
|
you can use. But it's up to the driver to tap the potential of your
|
|
hardware. A superior hardware combination without an equally
|
|
competent device driver is a waste of money. On the other hand, with
|
|
a versatile device driver but less capable hardware, you can push the
|
|
hardware a little beyond its rated performance. This is the design
|
|
philosophy of X.</P
|
|
><P
|
|
>You should match the dot clock you use to the monitor's video
|
|
bandwidth. There's a lot of give here, though --- some monitors can
|
|
run as much as 30% over their nominal bandwidth. The risks here have
|
|
to do with exceeding the monitor's rated vertical-sync frequency;
|
|
we'll discuss them in detail below.</P
|
|
><P
|
|
>Knowing the bandwidth will enable you to make more intelligent choices
|
|
between possible configurations. It may affect your display's visual
|
|
quality (especially sharpness for fine details).</P
|
|
></DIV
|
|
></DIV
|
|
><DIV
|
|
CLASS="NAVFOOTER"
|
|
><HR
|
|
ALIGN="LEFT"
|
|
WIDTH="100%"><TABLE
|
|
SUMMARY="Footer navigation table"
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
CELLPADDING="0"
|
|
CELLSPACING="0"
|
|
><TR
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="left"
|
|
VALIGN="top"
|
|
><A
|
|
HREF="video.html"
|
|
ACCESSKEY="P"
|
|
>Prev</A
|
|
></TD
|
|
><TD
|
|
WIDTH="34%"
|
|
ALIGN="center"
|
|
VALIGN="top"
|
|
><A
|
|
HREF="index.html"
|
|
ACCESSKEY="H"
|
|
>Home</A
|
|
></TD
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="right"
|
|
VALIGN="top"
|
|
><A
|
|
HREF="specs.html"
|
|
ACCESSKEY="N"
|
|
>Next</A
|
|
></TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="left"
|
|
VALIGN="top"
|
|
>How Video Displays Work</TD
|
|
><TD
|
|
WIDTH="34%"
|
|
ALIGN="center"
|
|
VALIGN="top"
|
|
> </TD
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="right"
|
|
VALIGN="top"
|
|
>Interpreting the Basic Specifications</TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
></BODY
|
|
></HTML
|
|
> |