/usr/share/doc/HOWTO/ja-html/XFree86-Video-Timings-HOWTO-16.html is in doc-linux-ja-html 2006.05.25-1.1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
<TITLE>XFree86 Video Timings HOWTO: ¥â¥Ë¥¿¤ÎÆÃÀ¤ò¥×¥í¥Ã¥È¤¹¤ë</TITLE>
<LINK HREF="XFree86-Video-Timings-HOWTO-17.html" REL=next>
<LINK HREF="XFree86-Video-Timings-HOWTO-15.html" REL=previous>
<LINK HREF="XFree86-Video-Timings-HOWTO.html#toc16" REL=contents>
</HEAD>
<BODY>
<A HREF="XFree86-Video-Timings-HOWTO-17.html">¼¡¤Î¥Ú¡¼¥¸</A>
<A HREF="XFree86-Video-Timings-HOWTO-15.html">Á°¤Î¥Ú¡¼¥¸</A>
<A HREF="XFree86-Video-Timings-HOWTO.html#toc16">Ìܼ¡¤Ø</A>
<HR>
<H2><A NAME="cplot"></A> <A NAME="s16">16. ¥â¥Ë¥¿¤ÎÆÃÀ¤ò¥×¥í¥Ã¥È¤¹¤ë</A></H2>
<P>
<P>¥â¥Ë¥¿¥â¡¼¥É¥À¥¤¥¢¥°¥é¥à¤ò¥×¥í¥Ã¥È¤¹¤ë¤Ë¤Ï¡¢gnuplot ¥Ñ¥Ã¥±¡¼¥¸(UNIX
¤Î¤è¤¦¤Ê¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥àÍѤΥե꡼¥¦¥§¥¢¤Î¥×¥í¥Ã¥È¸À¸ì)¤È
¥³¥Þ¥ó¥É¥é¥¤¥ó¤«¤éÆþÎϤ·¤¿¥â¥Ë¥¿¤ÎÆÃÀ¤«¤é gnuplot ¤Ç ¥À¥¤¥¢¥°¥é¥à¤ò
¥×¥í¥Ã¥È¤¹¤ë shell ¥¹¥¯¥ê¥×¥È¤Ç¤¢¤ë <CODE>modeplot</CODE> ¥Ä¡¼¥ë¤¬É¬ÍפǤ¹¡£
<P>modeplot ¤Î¥ê¥¹¥È¤ò¼¨¤·¤Þ¤¹:
<P>
<PRE>
#!/bin/sh
#
# modeplot -- generate X mode plot of available monitor modes
#
# Do `modeplot -?' to see the control options.
#
# Monitor description. Bandwidth in MHz, horizontal frequencies in kHz
# and vertical frequencies in Hz.
TITLE="Viewsonic 21PS"
BANDWIDTH=185
MINHSF=31
MAXHSF=85
MINVSF=50
MAXVSF=160
ASPECT="4/3"
vesa=72.5 # VESA-recommended minimum refresh rate
while [ "$1" != "" ]
do
case $1 in
-t) TITLE="$2"; shift;;
-b) BANDWIDTH="$2"; shift;;
-h) MINHSF="$2" MAXHSF="$3"; shift; shift;;
-v) MINVSF="$2" MAXVSF="$3"; shift; shift;;
-a) ASPECT="$2"; shift;;
-g) GNUOPTS="$2"; shift;;
-?) cat <<EOF
modeplot control switches:
-t "<description>" name of monitor defaults to "Viewsonic 21PS"
-b <nn> bandwidth in MHz defaults to 185
-h <min> <max> min & max HSF (kHz) defaults to 31 85
-v <min> <max> min & max VSF (Hz) defaults to 50 160
-a <aspect ratio> aspect ratio defaults to 4/3
-g "<options>" pass options to gnuplot
The -b, -h and -v options are required, -a, -t, -g optional. You can
use -g to pass a device type to gnuplot so that (for example) modeplot's
output can be redirected to a printer. See gnuplot(1) for details.
The modeplot tool was created by Eric S. Raymond <esr@thyrsus.com> based on
analysis and scratch code by Martin Lottermoser <Martin.Lottermoser@mch.sni.de>
This is modeplot $Revision: 1.7 $
EOF
exit;;
esac
shift
done
gnuplot $GNUOPTS <<EOF
set title "$TITLE Mode Plot"
# Magic numbers. Unfortunately, the plot is quite sensitive to changes in
# these, and they may fail to represent reality on some monitors. We need
# to fix values to get even an approximation of the mode diagram. These come
# from looking at lots of values in the ModeDB database.
F1 = 1.30 # multiplier to convert horizontal resolution to frame width
F2 = 1.05 # multiplier to convert vertical resolution to frame height
# Function definitions (multiplication by 1.0 forces real-number arithmetic)
ac = (1.0*$ASPECT)*F1/F2
refresh(hsync, dcf) = ac * (hsync**2)/(1.0*dcf)
dotclock(hsync, rr) = ac * (hsync**2)/(1.0*rr)
resolution(hv, dcf) = dcf * (10**6)/(hv * F1 * F2)
# Put labels on the axes
set xlabel 'DCF (MHz)'
set ylabel 'RR (Hz)' 6 # Put it right over the Y axis
# Generate diagram
set grid
set label "VB" at $BANDWIDTH+1, ($MAXVSF + $MINVSF) / 2 left
set arrow from $BANDWIDTH, $MINVSF to $BANDWIDTH, $MAXVSF nohead
set label "max VSF" at 1, $MAXVSF-1.5
set arrow from 0, $MAXVSF to $BANDWIDTH, $MAXVSF nohead
set label "min VSF" at 1, $MINVSF-1.5
set arrow from 0, $MINVSF to $BANDWIDTH, $MINVSF nohead
set label "min HSF" at dotclock($MINHSF, $MAXVSF+17), $MAXVSF + 17 right
set label "max HSF" at dotclock($MAXHSF, $MAXVSF+17), $MAXVSF + 17 right
set label "VESA $vesa" at 1, $vesa-1.5
set arrow from 0, $vesa to $BANDWIDTH, $vesa nohead # style -1
plot [dcf=0:1.1*$BANDWIDTH] [$MINVSF-10:$MAXVSF+20] \
refresh($MINHSF, dcf) notitle with lines 1, \
refresh($MAXHSF, dcf) notitle with lines 1, \
resolution(640*480, dcf) title "640x480 " with points 2, \
resolution(800*600, dcf) title "800x600 " with points 3, \
resolution(1024*768, dcf) title "1024x768 " with points 4, \
resolution(1280*1024, dcf) title "1280x1024" with points 5, \
resolution(1600*1280, dcf) title "1600x1200" with points 6
pause 9999
EOF
</PRE>
<P><CODE>modeplot</CODE> ¤ò»ý¤Ã¤Æ¤¤¤ë¤³¤È¤È gnuplot ¥Ñ¥Ã¥±¡¼¥¸¤¬¤¢¤ë¾ì½ê¤ò
³Îǧ¤·¤¿¤é¡¢¼¡¤Ë½Ò¤Ù¤ë¥â¥Ë¥¿¤ÎÆÃÀÃͤ¬É¬ÍפǤ¹:
<P>
<UL>
<LI> ¥Ó¥Ç¥ªÂÓ°èÉý (VB)</LI>
<LI> ¿åʿƱ´ü¼þÇÈ¿ô¤ÎÈÏ°Ï (HSF)</LI>
<LI> ¿âľƱ´ü¼þÇÈ¿ô¤ÎÈÏ°Ï (VSF)</LI>
</UL>
<P>¥×¥í¥Ã¥È¥×¥í¥°¥é¥à¤Ï¡¢É¬¤º¤·¤âÀµ³Î¤È¤Ï¸Â¤é¤Ê¤¤´ÊÁDz½¤Î¤¿¤á¤Î´ö¤Ä¤«¤Î²¾Àâ¤ò
ɬÍפȤ·¤Þ¤¹¡£ÆÀ¤é¤ì¤¿¥À¥¤¥¢¥°¥é¥à¤¬Âç¤Þ¤«¤Êµ½Ò¤·¤«¤Ê¤¤¤Î¤Ï¤³¤Î¤¿¤á¤Ç¤¹¡£
¤³¤ì¤é¤Î²¾Äê¤È¤Ï:
<P>
<OL>
<LI> Á´¤Æ¤Î²òÁüÅ٤ϡ¢¤¿¤Ã¤¿°ì¤Ä¤Î¸ÇÄꤵ¤ì¤¿½Ä²£Èæ AR = HR/VR ¤ò»È¤Ã¤Æ¤¤
¤Þ¤¹¡£
ɸ½àŪ¤Ê²òÁüÅÙ¤Ç¤Ï AR = 4/3 ¤Þ¤¿¤Ï AR = 5/4¤Ç¤¹¡£<CODE>modeplot</CODE>
¥×¥í¥°¥é¥à¤Ïɸ½à¤Ç 4/3 ¤ò²¾Äꤷ¤Æ¤¤¤Þ¤¹¤¬¡¢Êѹ¹²Äǽ¤Ç¤¹¡£</LI>
<LI> ¹Í褵¤ì¤¿¥â¡¼¥É¤Ç¤Ï¡¢¿åÊ¿¤È¿âľ¤Î¥Õ¥ì¡¼¥àĹ¤Ï¿åÊ¿¤È¿âľ¤Î²òÁüÅÙ¤Î
¸ÇÄê¤ÎÇÜ¿ô¤ËÄ´À°¤µ¤ì¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¤½¤ì¤¾¤ì¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹:
<BLOCKQUOTE><CODE>
<PRE>
HFL = F1 * HR
VFL = F2 * VR
</PRE>
</CODE></BLOCKQUOTE>
</LI>
</OL>
<P>Âç¤Þ¤«¤Êµ¬½à¤È¤·¤Æ¡¢F1 = 1.30 ¤È F2 = 1.05 ¤È¤·¤Æ¤¯¤À¤µ¤¤
(
<A NAME="frame"></A> "¥Õ¥ì¡¼¥à¥µ¥¤¥º¤Î·×»»"¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤)¡£
<P>¤µ¤Æ¡¢¤¢¤ëÆÃÄê¤ÎƱ´ü¼þÇÈ¿ô¤¹¤Ê¤ï¤Á HSF ¤ò¼è¤ê¾å¤²¤Æ¤ß¤Þ¤¹¡£¸½ºß¤Î²¾Äê
¤Ç¤Ï¡¢¤½¤ì¤¾¤ì¤Î¥É¥Ã¥È¥¯¥í¥Ã¥¯ DCF ¤ÎÃͤ¬´û¤Ë¥ê¥Õ¥ì¥Ã¥·¥å¥ì¡¼¥È RR ¤ò
·èÄꤷ¤Æ¤¤¤Þ¤¹¡£¤¹¤Ê¤ï¤Á¡¢HSF ¤ÎÁ´¤Æ¤ÎÃͤËÂФ·¤Æ¡¢´Ø¿ô RR(DCF)¤¬Â¸ºß¤¹
¤ë¤È¤¤¤¦¤³¤È¤Ç¤¹¡£¤³¤ì¤Ð¼¡¤Î¤è¤¦¤Ë¤·¤ÆÆÀ¤é¤ì¤Þ¤¹¡£
<P>¥ê¥Õ¥ì¥Ã¥·¥å¥ì¡¼¥È¤Ï¥Õ¥ì¡¼¥à¥µ¥¤¥º¤ÎÀѤǥɥåȥ¯¥í¥Ã¥¯¤ò³ä¤Ã¤¿¤â¤Î¤Ç¤¹:
<P>
<BLOCKQUOTE><CODE>
<PRE>
RR = DCF / (HFL * VFL) (*)
</PRE>
</CODE></BLOCKQUOTE>
<P>°ìÊý¡¢¿åÊ¿¥Õ¥ì¡¼¥àĹ¤Ï¥É¥Ã¥È¥¯¥í¥Ã¥¯¤ò¿åʿƱ´ü¼þÇÈ¿ô¤Ç³ä¤Ã¤¿¤â¤Î¤ËÅù¤·¤¯¤Ê¤ê
¤Þ¤¹:
<P>
<BLOCKQUOTE><CODE>
<PRE>
HFL = DCF / HSF (**)
</PRE>
</CODE></BLOCKQUOTE>
<P>Á°½Ò¤Î 2 ¤Ä¤Î²¾Äê¤Ë´ð¤Å¤±¤Ð¡¢VFL ¤ÎÃÍ¤Ï HFL ¤ÎÃͤޤǸº¤é¤»¤Þ¤¹:
<P>
<BLOCKQUOTE><CODE>
<PRE>
VFL = F2 * VR
= F2 * (HR / AR)
= (F2/F1) * HFL / AR (***)
</PRE>
</CODE></BLOCKQUOTE>
<P>(**) ¤È (***) ¤ò (*) ¤ËÂåÆþ¤¹¤ë¤È°Ê²¼¤Î·ë²Ì¤¬ÆÀ¤é¤ì¤Þ¤¹:
<P>
<BLOCKQUOTE><CODE>
<PRE>
RR = DCF / ((F2/F1) * HFL**2 / AR)
= (F1/F2) * AR * DCF * (HSF/DCF)**2
= (F1/F2) * AR * HSF**2 / DCF
</PRE>
</CODE></BLOCKQUOTE>
<P>HSF, F1, F2 ¤È AR ¤ò¸ÇÄꤹ¤ë¤È¡¢¥À¥¤¥¢¥°¥é¥à¤ÏÁжÊÀþ¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤Î¶ÊÀþ
¤ÎÃæ¤ÎºÇ¾®¤ÈºÇÂç¤Î¿åʿƱ´ü¼þÇÈ¿ô¤ÇµöÍÆÎΰè¤Î»Ä¤ê¤Î¶³¦Àþ¤¬ÆÀ¤é¤ì¤Þ¤¹¡£
<P>ÆÃÀÎΰè¤ÈľÀþ¤Î¸òÀþ¤¬ÆÃÄê¤Î²òÁüÅÙ¤òɽ¤·¤Þ¤¹¡£¤³¤ì¤Ï (*) ¼°¤È
2 ÈÖÌܤβ¾Äê¤Ë´ð¤Å¤¤Þ¤¹:
<P>
<BLOCKQUOTE><CODE>
<PRE>
RR = DCF / (HFL * VFL) = DCF / (F1 * HR * F2 * VR)
</PRE>
</CODE></BLOCKQUOTE>
<P>»È¤¤¤¿¤¤Á´¤Æ¤Î²òÁüÅ٤Ǥ³¤Î¤è¤¦¤ÊÀþ¤òÉÁ¤¯¤³¤È¤Ë¤è¤Ã¤Æ¡¢²òÁüÅÙ¡¢
¥¯¥í¥Ã¥¯¼þÇÈ¿ô¤È¥â¥Ë¥¿¤¬¥µ¥Ý¡¼¥È¤Ç¤¤ë¥ê¥Õ¥ì¥Ã¥·¥å¥ì¡¼¥È¤Î´Ö¤Ë´Ø·¸¤¬¤¢
¤ë¤À¤í¤¦¤È¤¤¤¦¤³¤È¤¬¤¹¤°¤Ë¤ï¤«¤ê¤Þ¤¹¡£¤³¤ì¤é¤ÎÀþ¤Ï¥â¥Ë¥¿¤ÎÆÃÀ¤Ë¤Ï°Í¸
¤·¤Æ¤¤¤Þ¤»¤ó¤¬¡¢2 ¤ÄÌܤβ¾Äê¤Ë¤Ï°Í¸¤·¤Æ¤¤¤Þ¤¹¡£
<P><CODE>modeplot</CODE> ¥Ä¡¼¥ë¤Ï¤³¤Îºî¶È¤ò´Êñ¤Ë¤·¤Þ¤¹¡£<CODE>modeplot -?</CODE>
¤ÈÆþÎϤ·¤ÆÀ©¸æ¥ª¥×¥·¥ç¥ó¤ò¸«¤Æ¤¯¤À¤µ¤¤¡£Åµ·¿Åª¤Ê¼Â¹Ô·Á¼°¤Ï°Ê²¼¤Î¤è¤¦¤Ë
¤Ê¤ê¤Þ¤¹:
<P>
<BLOCKQUOTE><CODE>
<PRE>
modeplot -t "Swan SW617" -b 85 -v 50 90 -h 31 58
</PRE>
</CODE></BLOCKQUOTE>
<P>-b ¥ª¥×¥·¥ç¥ó¤Ï¥Ó¥Ç¥ª¤ÎÂÓ°èÉý¤ò»ØÄꤷ¤Þ¤¹¡£-v ¤È -h ¤Ï¿åÊ¿¤È¿âľƱ´ü
¼þÇÈ¿ô¤ÎÈϰϤò»ØÄꤷ¤Þ¤¹¡£
<P><CODE>modeplot</CODE> ¤Î½ÐÎϤòÆɤà¤È¤¤Ï¡¢¶á»÷ɽ¸½¤Î¤ß¤Ç¤¢¤ë¤³¤È¤ò¾ï¤Ë
³Ð¤¨¤Æ¤ª¤¤¤Æ¤¯¤À¤µ¤¤¡£Î㤨¤Ð¡¢ºÇ¾®Æ±´ü¿®¹æÉý¤«¤éÆÀ¤é¤ì¤¿ HFL ¤Î¾å¸Â¤ò
̵»ë¤·¤Þ¤¹¤·¡¢²¾Ä꤬Àµ¤·¤¤¸Â¤ê¤Ë¤ª¤¤¤Æ¤·¤«Àµ³Î¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£½¾¤Ã¤Æ
<A HREF="XFree86-Video-Timings-HOWTO-11.html#synth">Á´ÂΤΤޤȤá</A>
¤Ë¼¨¤·¤Æ¤¢¤ë(¤¤¤¯¤Ä¤«¤Î¹õËâ½Ñ¤ò´Þ¤ó¤À)¾ÜºÙ¤Ê·×»»¼°¤ÎÂå¤ï¤ê¤Ë¤Ï¤Ê¤ê¤Þ¤»¤ó¡£
¤·¤«¤·¤Ê¤¬¤é¡¢²¿¤¬²Äǽ¤Ç¤¢¤ë¤«¡¢¤¢¤ë¤¤¤Ï¤É¤ó¤Ê¥È¥ì¡¼¥É¥ª¥Õ¤¬¤¢¤ë¤«¤Ë¤Ä
¤¤¤Æ¤Ï¤¹¤Ã¤¤ê¤¹¤ë¤Ï¤º¤Ç¤¹¡£
<P>
<HR>
<A HREF="XFree86-Video-Timings-HOWTO-17.html">¼¡¤Î¥Ú¡¼¥¸</A>
<A HREF="XFree86-Video-Timings-HOWTO-15.html">Á°¤Î¥Ú¡¼¥¸</A>
<A HREF="XFree86-Video-Timings-HOWTO.html#toc16">Ìܼ¡¤Ø</A>
</BODY>
</HTML>
|