Sophie

Sophie

distrib > Mandriva > 9.2 > i586 > by-pkgid > a804ef007a99f7d26cf24253c2994680 > files > 359

howto-html-ja-9.1-0.5mdk.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
 <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
 <TITLE>Framebuffer HOWTO: multi-headed $B%U%l!<%`%P%C%U%!$r;H$&(B</TITLE>
 <LINK HREF="Framebuffer-HOWTO-15.html" REL=next>
 <LINK HREF="Framebuffer-HOWTO-13.html" REL=previous>
 <LINK HREF="Framebuffer-HOWTO.html#toc14" REL=contents>
</HEAD>
<BODY>
<A HREF="Framebuffer-HOWTO-15.html">$B<!$N%Z!<%8(B</A>
<A HREF="Framebuffer-HOWTO-13.html">$BA0$N%Z!<%8(B</A>
<A HREF="Framebuffer-HOWTO.html#toc14">$BL\<!$X(B</A>
<HR>
<H2><A NAME="s14">14. multi-headed $B%U%l!<%`%P%C%U%!$r;H$&(B</A></H2>

<P>
<P>
<P>$B$3$NItJ,$O(B Frederick A. Niles $B$K$h$C$F?4$h$/Ds6!$5$l$^$7$?!#H`$O(B HOWTO 
$B$N$3$N>O$KE:IU$7$?>pJs$K$9$Y$F$N8"Mx$rM-$7$F$$$^$9!#(B
<P>
<H2><A NAME="ss14.1">14.1 $B$O$8$a$K(B</A>
</H2>

<P>
<P>$B$3$NJ8=q$N$*$b$JL\E*$O!"(BLinux $B$G(B dual head configuration $B$rF0$+$9$?$a(B
$B$N$b$N$G$9!#$3$N:n6H$O$H$F$bF;6Z$,$O$C$-$j$7$F$$$k$N$G$9$,!"Mn$H$77j$,(B
$B$?$/$5$s$"$j$^$9!#(B
<P>
<P>$B;d$,BP>]$K$7$?Nc$G$O!"FsHVL\$N%b%K%?!<$G(B X $B%5!<%P$rF0$+$7$F$$$^(B
$B$9!#$3$l$,$9$P$i$7$$$N$O!";H$($J$$$N$G<N$F$i$l$?8E$/$FBg$-$J(B 19$B%$%s%A(B
$B$+$i(B 21$B%$%s%A(B $B$N8GDj<~GH?t%b%K%?!<$O$4$/IaDL$K8+$D$+$k$+$i$G$9!#(B
$B$3$s$JIw$K$7$F>.7?%^%k%A%7%s%/$r<N$F$F!"AGE($JBg$-$J%b%K%?!<$G(B X $B$r(B
$B;H$&$h$&$K$G$-$k$N$G$9!#(B
<P>
<P>dual head support $B$O8=:_3+H/Cf$G$9$+$i!"$3$N>pJs$O$9$0$KJQ99$K$J$k$3$H(B
$B$rM}2r$7$F$*$$$F$/$@$5$$!#$3$NJ8=qCf$N$"$k$3$H$O8E$/$J$k$+!"$"$J$?$,$3(B
$B$l$rFI$`;~4|$K$h$C$F$O@5$7$/$J$$$3$H$b$"$k$G$7$g$&!#(B
<P>
<P>
<P>** $BCm0U(B ** $B$3$NJ8=q$O(B XFree86 4.0 $B$N%j%j!<%90JA0$K=q$+$l$^$7$?!#$3$NJ8(B
$B=q$rFI$s$G$$$k$J$i!"(BXFree86 4.0 $B$O$9$G$K%j%j!<%9$5$l$F$*$j!"B?$/$N(B
$B$3$H$,JQ99$5$l$F$$$^$9!#MxMQ$9$k$J$i$3$NJ8=q$N:G?7HG$rF~<j$7$F$/$@(B
$B$5$$!#(B
<P>
<H2><A NAME="ss14.2">14.2 $B%U%#!<%I%P%C%/(B</A>
</H2>

<P>
<P>$B$3$NJ8=q$K$D$$$F$N%U%#!<%I%P%C%/$O$b$A$m$s4?7^$G$9!#$_$J$5$^$NDs0F$H6((B
$BNO$J$7$K$O!"$3$NJ8=q$OB8:_$7$J$+$C$?$G$7$g$&!#DI2C$9$Y$-$3$H$d$40U8+!"(B
$BI>2A$r<!$N%"%I%l%908$I$&$>Ej9F$7$F$/$@$5$$!#(B
Frederick.A.Niles@gsfc.nasa.gov
<P>
<H2><A NAME="ss14.3">14.3 $B9W8%$rD:$$$?J}!9(B</A>
</H2>

<P>
<P>$B<!$NJ}!9$O$3$N(B mini-HOWTO $B$K9W8%$7$F$/$@$5$$$^$7$?!#(B
<P>*  Petr Vandrovec <CODE>vandrove@vc.cvut.cz</CODE>
<P>*  Andreas Ehliar <CODE>ehliar@lysator.liu.se</CODE> (x2x)
<P>*  Marco Bizzarri <CODE>m.bizzarri@icube.it</CODE> (multiple X servers)
<P>
<P>
<H2><A NAME="ss14.4">14.4 $B0lHLE*$J@<L@(B</A>
</H2>

<P>
<P>$B$3$NJ8=q$K=q$+$l$?FbMF$K$D$$$F$O@UG$$N5AL3$O2?$b$"$j$^$;$s!#=q$+$l$?Fb(B
$BMF$d!"$=$NB>$NFbMF$rMxMQ$9$k$H$-$O$"$J$?<+?H$N@UG$$G9T$C$F$/$@$5$$!#$3(B
$B$NJ8=q$O:G?7HG$G$9$+$i!"4V0c$$$,$"$C$?$j!"$*;H$$$N%7%9%F%`$KB;32$rM?$((B
$B$k$h$&$J4V0c$$$,$"$k$+$b$7$l$^$;$s!#$a$C$?$K5/$3$i$J$$$3$H$G$9$,!"Cm0U(B
$B$7$F9T$C$F$/$@$5$$!#;d$O$=$l$i$N$3$H$K$D$$$F$I$s$J@UG$$bIi$$$^$;$s!#(B
<P>
<H2><A NAME="ss14.5">14.5 $BCx:n8"$K$D$$$F(B</A>
</H2>

<P>
<P>$BJ8=q$N$3$N>O$O(B (c)1999 Frederick Niles $B$KCx:n8"$,$"$j!"<!$N<h$j7h$a$N(B
$B$b$H$KG[IU$5$l$^$9!#(B
<P>
<P>$B!{(B Linux $B$N(B HOWTO $BJ8=q$O!"J*M}E*$"$k$$$OEE;RE*$J$I$s$J%a%G%#%"$G$b!"$3(B
$B$NCx:n8"$K4X$9$kCm0U$,$9$Y$F$N%3%T!<J*$K;D$5$l$k8B$j$O!"A4J8!"$"$k$$$O(B
$B0lItJ,$rJ#<L$7!":FG[IU$7$F$b$+$^$$$^$;$s!#>&MQ$G$N:FG[IU$O5v2D$5$l$F$*(B
$B$j!"?d>)$5$l$F$$$^$9$,!"Cx<T$O$I$N$h$&$J%G%#%9%H%j%S%e!<%7%g%s$+$rCN$i(B
$B$;$FD:$-$?$/;W$$$^$9!#(B
<P>
<P>$B!{$9$Y$F$NK]Lu!"G[IU:n6H!"$"$k$$$O(B Linux HOWTO $BJ8=q$r<}=8$9$k:n6H$O!"$3(B
$B$N8"Mx$K4X$9$kCm0U$N$b$H$G9T$o$J$1$l$P$$$1$^$;$s!#$9$J$o$A!"(BHOWTO $B$+$i(B
$BGI@8$9$k;E;v$d$=$N%G%#%9%H%j%S%e!<%7%g%s$GDI2C@)8B$r$7$F$O$$$1$^$;$s!#(B
$B$3$N$h$&$J5,B'$NNc30$O$"$k<o$N>r7o$N$b$H$G5v2D$5$l$^$9!#2<5-$N%"%I%l%9(B
$B$N(B Linux HOWTO $B$N%3!<%G%#%M!<%?!<$HO"Mm$r<h$C$F$/$@$5$$!#(B
<P>
<P>$B!{<ALd$,$"$l$P!"(B Linux HOWTO $B$N%3!<%G%#%M!<%?!<$KO"Mm$7$F$/$@$5$$!#(B
linux-howto@sunsite.unc.edu
<P>
<P>
<H2><A NAME="ss14.6">14.6 $B$I$s$J%O!<%I%&%'%"$,%5%]!<%H$5$l$F$$$k$+(B</A>
</H2>

<P>
<P>$B$[$H$s$I$N%S%G%*%+!<%I$O!"%7%9%F%`$K$O$R$H$D$N$_$G4pK\$N%G%#%9%W%l%$%"(B
$B%@%W%?MQ$N%"%I%l%9$K1JB3E*$K@_Dj$5$l$F$$$k$N$OEvA3$@$H9M$($F$$$^$9!#Nc(B
$B30$,$$$/$D$+$"$j$^$9!#(B
<P>
<P>$B!{(B Matrox $B%+!<%IN`!'$3$l$K$O(B  Matrox Millennium$B!"(B Matrox Millennium II$B!"(B
Matrox Mystique$B!"(B Matrox Mystique 220$B!"(B Matrox Productiva G100$B!"(B
Matrox Mystique G200$B!"(B Matrox Millennium G200 $B$H(B Matrox Marvel G200
$B$N%+!<%I$,$"$j$^$9!#(B
<P>
<P>$B!{(B MDA: $B$3$l$K$O%b%N%/%m(B Hercules $B%0%i%U%#%C%/%"%@%W%?!<$J$I$,$"$j$^$9!#(B
<P>
<P>$BCm0U!'>e5-$N$I$l$+$R$H$D$G$J$1$l$P$$$1$J$$$N$O!"BhFs%"%@%W%?!<$@$1$G$9!#(B
<P>
<P>
<H2><A NAME="ss14.7">14.7 $B>&MQ%5%]!<%H(B</A>
</H2>

<P>
<P>$B4pK\E*$K$3$N(B mini-HOWTO $B$O%U%j!<%=%U%H%&%'%"$K4X$o$k$b$N$G$9!#(B
$B$7$+$7!"(Bmulti-head $B$r%5%]!<%H$9$k>&MQ$N(B X $B%5!<%P$,$"$j$^$9!#(B
Metro Link (www.metrolink.com)$B$N(B Metro-X $B$d(B 
Xi Graphics (www.xig.com)$B$N(B Accelerated-X $B$J$I$,$=$&$G$9!#(B
<P>
<H2><A NAME="ss14.8">14.8 $BI,MW$J$b$N$rF~<j$9$k(B</A>
</H2>

<P>
<P>$B<!$N$h$&$J%Q%C%A$d%W%m%0%i%`$,I,MW$G$9!#(B
<P>
<P>
<P>$B!{(B ''fbset''$B%W%m%0%i%`(B
$B%"%/%;%9$7$F$_$F$/$@$5$$!'(B
<A HREF="http://www.cs.kuleuven.ac.be/~geert/bin/">http://www.cs.kuleuven.ac.be/~geert/bin/</A>
($BCm0U!'$3$N%W%m%0%i%`$O(B RedHat 6.0 $B$KIUB0$7$F$$$^$9(B)
<P>
<P>$B!{(B Linux $B%+!<%M%k$KBP$9$k(B "fbaddon" Matrox dual head $B%Q%C%A(B
$B%"%/%;%9$7$F$_$F$/$@$5$$!'(B
<A HREF="ftp://platan.vc.cvut.cz/pub/linux/matrox-latest/">ftp://platan.vc.cvut.cz/pub/linux/matrox-latest/</A><P>
<P>$B!{(B ''con2fb'' $B%W%m%0%i%`(B
$B%"%/%;%9$7$F$_$F$/$@$5$$!'(B
<A HREF="ftp://platan.vc.cvut.cz/pub/linux/matrox-latest/">ftp://platan.vc.cvut.cz/pub/linux/matrox-latest/</A><P>
<P>$B!{(B  X11 $B$N%U%l!<%`%P%C%U%!%5!<%P(B XF86_FBDev$B!#(B
$B$3$l$O(B XFree86 3.3.1 $B$NI8=`ItIJ$G$9!#(B
<P>
<H2><A NAME="ss14.9">14.9 $B;O$a$h$&(B</A>
</H2>

<P>
<P>$B$^$:$d$i$J$1$l$P$$$1$J$$$3$H$O(B''fbaddon''$B%Q%C%A$G(B Linux $B$N%=!<%9(B
$B$K%Q%C%A$rEv$F$k$3$H$G$9!#$=$l$+$i!"%+!<%M%k$N%3%s%U%#%0%l!<%7%g%s$G(B 
frame buffer $B%5%]!<%H$rM-8z$K$7$J$1$l$P$$$1$^$;$s!#(BMatrox $B$N%+!<%I$r;H$C(B
$B$F$$$k$J$i!"$*;H$$$N%+!<%I$NFCDj$N7?$O$b$A$m$s(B Matrox unified
accelerated driver $B%5%]!<%H$rM-8z$K$7$^$9!#(BVESA $B%U%l!<%`%P%C%U%!%5%]!<(B
$B%H$rM-8z$K$7$F$O$$$1$^$;$s!#$=$l$O>WFM$r5/$3$7$^$9!#(Bmulti-head $B%5%]!<(B
$B%H$rM-8z$K$7$^$9(B($BEvA3$G$9$h$M(B)$B!#%+!<%M%k$r9=C[$7:F5/F0$7$^$9!#(B
<P>
<P>
<P>''fbset'' $B%W%m%0%i%`$r%$%s%9%H!<%k$7!"@_Dj$rD4@0$9$kJ}K!$K$D$$$FJ8=qA4BN(B
$B$rCm0U?<$/FI$^$J$/$F$O$$$1$^$;$s!#(B fbset $B$G9T$3$&$H7h$a$?$N$J$i!"(B
"/etc/fb.modes" $B%U%!%$%k$r;H$&$3$H$r6/$/$*$9$9$a$7$^$9!#(B
fbset $B%W%m%0%i%`$O(B XF86Config $B%U%!%$%k$r(B fb.modes $B$KJQ49$9$k(B 
Perl $B%9%/%j%W%H$r;}$C$F$$$^$9!#JdB-(B A $B$H(B B $B$K$*;H$$$N(B XF86Config $B%U%!%$%k(B
$B$rJQ49$9$k$?$a$N;d$N(Boctave/Bourne $B%7%'%k%9%/%j%W%H$,$"$j$^$9!#(B
<P>
<P>multi-head $B%5%]!<%H$r$9$k$7$+$J$$$H$$$&$"$J$?$N@_Dj$,860x$G5/$3$k$I$s(B
$B$JLdBj$bM}2r$G$-$k$h$&!"$R$H$D$N%b%K%?!<$G%U%l!<%`%P%C%U%!%G%P%$%9$r(B
$B;H$&;v(B ($B@_Dj(B) $B$r==J,M}2r$7$F$*$+$J$1$l$P$$$1$^$;$s!#$3$l$GF,$rA_$-$`(B
$B$7$k2s?t$r$:$$$V$s8:$i$9$3$H$,$G$-$^$9!#(B
<P>
<P>$B$3$NJ8=q$G$O!"FsBfL\$N%b%K%?!<$G(B X $B$rF0$+$9$3$H$K$D$$$F$N@bL@$K=8Cf$9$k(B
$B$D$b$j$G$9!#$3$l$O!"B?$/$NB>$N%3%s%U%#%0%l!<%7%g%s$OC1$K$3$N<j=g$N0lIt$r(B
$B<h$j=P$9$3$H$K2a$.$J$$$+$i$G$9!#(B
<P>
<P>
<H3>$B%3%s%=!<%k>e$K0\F0(B</H3>

<P>
<P>''con2fb'' $B%W%m%0%i%`$r%3%s%Q%$%k$7$^$9!#2?$NLdBj$b$J$/F0$/$J$i!"<!$K<((B
$B$9$h$&$J;HMQJ}K!$K$D$$$F$N%a%C%;!<%8$,=P$k$G$7$g$&!#(B
<P>
<P>
<P>''$B;H$$J}(B: con2fb fbdev console''
<P>
<P>$BNc<($5$l$?%3%^%s%I$O(B ''con2fb /dev/fb1 /dev/tty6'' $B$N$h$&$K;H$$!"(B
$BFsBfL\$N%b%K%?!<$r2>A[%3%s%=!<%k(B 6 $B$K$7$F$d$j$^$9!#(B
Ctrl-Alt-F6 $B$H$$$&%-!<$r;H$C$F%3%s%=!<%k$rA`:n$9$k$H!"(B
$BBhFs%b%K%?!<>e$K<B:]$K2hLL$,=P$F$-$^$9!#(B
<P>
<P>
<H3>$BFsBfL\$N%b%K%?!<$G$N@_Dj$rD4@a$9$k$?$a(B ''fbset'' $B$r;H$&(B</H3>

<P>
<P>$B%b%K%?!<$K(B ''fbset '' $B$r@_Dj$9$k@_Dj$K$@$1(B ''fbset''$B%3%^%s%I$r;H$$$^$9!#(B
$B$D$^$j!"FsBfL\$N%b%K%?!<$K(B ''-fb''$B%U%i%C%0(B $B$r;H$&$N$KCm0U$7$J$1$l$P$$(B
$B$1$^$;$s!#$H$j$o$1!">/$J$/$H$b<B:]$N?bD>A|EY$K2>A[?bD>2rA|EY$r@_Dj$7$?(B
$B$$$@$1$G!"B>$N$3$H$O$$$8$j$?$/$J$$$J$iCm0U$7$J$1$l$P$$$1$^$;$s!#(B
<P>e.g. "fbset -fb /dev/fb1 -vyres 600"
<P>
<P>$B$3$l$G%F%-%9%H%b!<%I$O7`E*$KCY$/$J$j$^$9$,!"(B X $B$O%F%-%9%H%b!<%I$N$3$H(B
$B$O5$$K$7$^$;$s!#(B
<P>
<H3>$B%U%l!<%`%P%C%U%!%5%]!<%H$KBP$7$F(B X $B$r@_Dj$9$k(B</H3>

<P>
<P>framebuffer.txt $B%U%!%$%k$O;d$,$9$k$h$j$b$b$C$H$&$^$/@bL@$7$F$$$^$9$,!"(B
$B$3$3$G$OFs$D$N=EMW$J$3$H$r=q$$$F$*$-$^$9!#(B
<P>
<P>''X'' $B$KBP$7$F(B ''XF86_FBDev'' $B$r%j%s%/$7$F$$$k$+$r3NG'$7$^$9!#(B
<P>
<P>$B<!$K%U%l!<%`%P%C%U%!%G%P%$%9$K$D$$$F$*;H$$$N(B  XF86Config  $B%U%!%$%k$N(B
$B%b%K%?!<%;%/%7%g%s$rDI2C$7$J$1$l$P$$$1$^$;$s!#(B
$B<!$KNc$r<($7$^$9!#(B
<P>
<PRE>
# The Frame Buffer server

Section "Screen"
    Driver      "fbdev"
    Device      "Millennium"
    Monitor     "NEC MultiSync 5FGp"
    Subsection "Display"
        Depth       8
        Modes       "default"
        ViewPort    0 0
    EndSubsection
    Subsection "Display"
        Depth       16
        Modes       "default"
        ViewPort    0 0
    EndSubsection
    Subsection "Display"
        Depth       24
        Modes       "default"
        ViewPort    0 0
    EndSubsection
    Subsection "Display"
        Depth       32
        Modes       "default"
        ViewPort    0 0
    EndSubsection
EndSection
</PRE>
<P>
<P>$B$=$NB>JL$N$b$N$K$D$$$F$O$h$/$o$+$i$J$$$N$G!"(B''$B%G%U%)%k%H(B''$B%b!<%I$r;H$C(B
$B$F!"(BMatrox $B%U%l!<%`%P%C%U%!$GF0$/$G$7$g$&!#(B
<P>
<P>
<H3>$BFsBfL\$N%b%K%?!<$N(B  X $B%5!<%P$r;OF0$7$F$_$k(B</H3>

<P>
<P>$BBhFs%U%l!<%`%P%C%U%!$K$5$^$6$^$J(BFRAMEBUFFER $B$r@_Dj$9$k(B
<P>''export FRAMEBUFFER=/dev/fb1''
$B$^$?$O!"(B
''setenv FRAMEBUFFER /dev/fb1''
<P>
<P>
<P>
<P>e.g. "startx -- :0 -bpp 16 vt06"
<P>X $B%5!<%P$r5/F0$9$k$H!"N>J}$,A*Br$7$?%+%i!<(B depth $B$KE,9g$7!"(BX $B%5!<%P$r(B
$B;OF0$9$kF1$8%b%K%?!<>e$K8=$l$^$9!#(B
<P>
<P>
<P>$B$3$NNc$O(B 18 $B%S%C%H%+%i!<$G2>A[%3%s%=!<%k$N(B 6 $B>e$K(B''zeroth''X $B%5!<%P!<(B
$B$r;OF0$7$^$9!#$=$NB>$N%U%l!<%`%P%C%U%!$KBP$7$F$b$&$R$H$D$N(B X $B%5!<%P$r(B
$B=P$7$?$H$-$K(B'':1'' $B$r;H$&$H!"Fs$D$N(B X $B%5!<%P$rF0$+$9$3$H$,$G$-$k$h$&$K(B
$B$J$j$^$9!#(B
<P>
<P>
<P>
<H2><A NAME="ss14.10">14.10 $BMWLs(B</A>
</H2>

<P>
<P>$BBhFs%b%K%?!<$G(B X $B%5!<%P$rF0$+$9J}K!$O!"<!$N$h$&$KMWLs$G$-$^$9!#(B
<P>
<P>
<P>$B!{(B $B%+!<%M%k%Q%C%A!"(Bfbset$B!"(Bcon2fb $B$rF~<j$9$k!#(B
<P>$B!{(B $B%+!<%M%k$K%Q%C%A$rEv$F!"%3%s%U%#%.%e%"!":F9=C[!":F5/F0$r$9$k!#(B
<P>$B!{(B XF86Config $B%U%!%$%k$K(B XF86_FBDev section $B$rDI2C$7!"(B X $B$H%j%s%/$9$k!#(B
<P>$B$=$l$+$i$$$D$b$N$h$&$K:F5/F0$7$^$9!#(B
<P>$B!{(B $B%3%s%=!<%k>e$GF0(B   $B$?$H$($P!"(B'' con2fb /dev/fb1 /dev/tty6 ''
<P>$B!{(B $B@_Dj$rD4@0$9$k!#(B   $B$?$H$($P!"(B'' fbset -fb /dev/fb1 1280x1024 ''
<P>$B!{(B FRAMEBUFFER $B$r@_Dj(B  $B$?$H$($P!"(B'' export FRAMEBUFFER=/dev/fb1 ''
<P>$B!{(B X $B%5!<%P$r5/F0$9$k!#$?$H$($P!"(B''startx -- -bpp 16 vt06''
<P>
<P>$BJLL>%7%'%k$rDL$7$F:F5/F0$9$k$?$S$K$3$l$r<+F02=$G$-$^$9!#8=:_$N%3%s%=!<(B
$B%kHV9f$r7h$a$kI,MW$,$"$k$N$G%7%'%k%9%/%j%W%H$G$O$J$/!"(B alias $B$G$J$1$l(B
$B$P$$$1$^$;$s!#$3$l$OFs$DL\$N8GDj$5$l$?<~GH?t$N%b%K%?!<$G(B X $B$r;OF0$5$;$k(B 
C-$B%7%'%k%(%$%j%"%9$G$9!#(B
<P>
<P>
<PRE>
alias startxfb = &quot;
setenv FRAMEBUFFER /dev/fb\!*;    # Set the env var to the cmd arg.
con2fb $FRAMEBUFFER /dev/$tty;    # Move the fb to the current tty.
fbset -fb $FRAMEBUFFER 1280x1024@62;  # Favorite from /etc/fb.modes
startx -- :\!* -bpp 16 vt0`echo $tty | cut -dy f 2`' # X on this tty.
"
</PRE>
<P>
<P>
<P>$B;d$N(B .cshrc $B%U%!%$%k$K$O%3%a%s%H$r$D$1$J$$$GF1$89T$K$9$Y$F$r=q$$$F$$$^(B
$B$9$,!"$3$3$G$O2~9T$7!"%3%a%s%H$r$D$1$FFI$_$d$9$/$7$F$$$^$9!#;d$O%U%l!<(B
$B%`%P%C%U%!$NHV9f$rJQ?t$H$7$FM?$($F$*$j!"$=$&$9$k$H@5$7$/;OF0$7$^$9!#(B
<P>
<P>bash $B$GF1$8%(%$%j%"%9$,F0$/$+$I$&$+$O$o$+$j$^$;$s!#(Bbash $B$G8=:_$N(B tty 
$B$r7hDj$9$kJ}K!!"$"$k$$$O%(%$%j%"%9$KJQ?t$rF@$kJ}K!$O$o$+$j$^$;$s!#$b$7(B
$B$I$J$?$+$,65$($F$/$@$5$l$P$3$3$K2C$($^$7$g$&!#(B $B$7$+$7!"8=:_$N(B VT $B$NL>(B
$B>N$rF@!"$=$l$>$l$N(B X $B%5!<%P$KFs$D$KJ,N%$7$?%(%$%j%"%9$r:n$k$?$a$K(B ''tty''
$B%3%^%s%I$r;H$($^$9!#(B
<P>
<H2><A NAME="ss14.11">14.11 $B$=$NB>$NCm0U$HLdBjE@(B</A>
</H2>

<P>
<P>$B!{(B ''fbset''$B$H(B''startx''$B$NN>J}$O!"A`:n$r9T$*$&$H$7$F$$$kF1$80l$D$N(B
$B%U%l!<%`%P%C%U%!$+$iF0$+$5$J$1$l$P$$$1$^$;$s!#(B
$B$3$l$,!"$3$l$i$N%3%^%s%I$,%9%/%j%W%H$rDL$7$F$I$l$/$i$$<+F02=$G$-$k$+(B
$B$K$D$$$F=EBg$J@)Ls$r2]$7$^$9!#(B
<P>
<P>$B!{(B XFree86 4.0 $B$O@55,$N(B multi-head support $B$r;}$C$F$$$^$9$,!"(B 3.3.1 
$B$G$O%5%]!<%H$7$F$$$^$;$s!#(B3.3.1 $B$GFs$D$N%5!<%P$rF0$+$9$3$H$,$G$-!"(B x2x 
$B$r;H$C$F$=$l$i$N4V$r@ZBX$($k$3$H$,$G$-$^$9!#$7$+$7!"(B($B<!$r8+$F$/$@$5$$(B)
<P>
<P>
<P>$B!{(B $B%"%/%F%#%V$K$J$C$F$$$J$$%U%l!<%`%P%C%U%!$O!":G8e$K%"%/%F%#%V$K$J$C$?(B
$B$H$-$N%$%a!<%8$rJ];}$7$?$^$^$G!"2hLL$N99?7$O9T$o$l$^$;$s!#(B
<P>
<P>$B!{(B $BA*Br$5$l$J$+$C$?%b%K%?!<$O!"Hs%"%/%F%#%V$N;~$K$O>uBV$r>o$KJ];}$9$k(B
$B$o$1$G$O$"$j$^$;$s(B ($BDL>o$OJ];}$5$l$^$9$,(B)$B!#(B
<P>
<P>$B!{(B Geert Uytterhoeven($B%U%l!<%`%P%C%U%!$N0];}<T(B)$B$H(B Linus Torvalds $B$O!"(B
$B8=:_$N(B''frame buffer per VT''multi-head console support $B$NJQ99(B($B$?$H$((B
$B$P(Bfbaddon)$B$KF10U$7$F$$$^$;$s$+$i!"%+!<%M%k%D%j!<$NK\N.$K$O$J$i$J$$$G$7$g(B
$B$&!#(B($B$3$l$OBh;0<T$+$iJ9$$$?$3$H$GK\Ev$G$O$J$$$+$b$7$l$^$;$s!#(B)
<P>
<P>$B!{(B ''$B%k!<%k$rGK$C$F(B''$B0c$C$?%b%K%?!<$+$i(B X $B%5!<%P$r;OF0$9$k$J$i(B( ''startx''
$B$rF0$+$9(B)$B!"7k6I$N$H$3$m%^%7%s$O%-!<%\!<%I$d%^%&%9F~NO$b$&$^$/$$$+$J$/(B
$B$J$C$F2u$l$k$3$H$G$7$g$&!#(B
<P>
<P>$B!{(B $B%+!<%M%k%=!<%9$KIUB0$9$k(B framebuffer.txt $BJ8=q$G$O!"(BX $B$r5/F0$9$k;~$K(B
$BD>@\E*$K(B XF86Config $B%U%!%$%k$G(B Modeline $B$r@_Dj$G$-$k$H@bL@$7$F$$$^$9!#(B
Matrox $B%U%l!<%`%P%C%U%!$r;H$&$H!"(B X $B%5!<%P$rMn$7$F$7$^$&$h$&$K8+$($^$9!#(B
$B$=$3$G!"F1;~$K$R$H$D$@$1(B(''$B%G%U%)%k%H(B'')$B$r@_Dj$G$-$^$9(B($B$b$&$R$H$D%F%-%9%H(B
$B%b!<%I$r;}$F$^$9(B)$B!#(B
<P>
<P>$B!{(B XF86_FBDev $B$O9bB.$G$O$"$j$^$;$s$,!"(B
<A HREF="http://www.in-berlin.de/User/kraxel/xfree86/">http://www.in-berlin.de/User/kraxel/xfree86/</A>$B$G9bB.$N(B
Matrox support $B$KBP$9$k%Q%C%A$,$"$j$^$9!#(B
<P>
<H3>''init level 5 ''($B$?$H$($P(B  xdm/gdm) $B$rF0$+$9$h$&$K$9$k(B</H3>

<P>
<P>$B;d$O$^$@J#?t$N%b%K%?!<@_Dj(B($B$=$7$F!"<B:]$KFsHVL\$N%b%K%?!<$+!"$"$k$$$O(B
$BN>J}$N%b%K%?!<$K%5!<%P$,$"$k(B)$B$G!"(Binit level 5 $B$G;OF0$9$kJ}K!$G@_Dj$r$7(B
$B$?$3$H$,$"$j$^$;$s!#(Bgdm/xdm Xservers $B%U%!%$%k$K(B 1 $B9T2C$($k$@$1$G==J,$@$H(B
$B;W$($^$9$,!"F1$8%U%l!<%`%P%C%U%!$+$i(B X $B%5!<%P$r;OF0$7$J$1$l$P$J$i$J$$(B
$B$H$$@)Ls$N$?$a!"$3$N4JC1$J2r7hK!$G$OF0:n$7$^$;$s!#$&$^$/$$$C$?(B
$BJ}$,$*$i$l$k$J$i!"$I$&$>;d$K$*CN$i$;$/$@$5$$!#$3$3$KDI2C$7$^$7$g$&!#(B
<P>
<H3>x2x $B%W%m%0%i%`$r;H$&(B</H3>

<P>
<P>$B%9%/%j!<%s$N@\@~$rF@$k$H$-!"(BX $B%5!<%P$r@Z$jBX$($k(B x2x $B$H$$$&NI$/$G$-$?(B
$B>.$5$J%W%m%0%i%`$,$"$j$^$9!#$3$N%W%m%0%i%`$N:G?7HG$O<!$N$H$3$m$K$"$j$^(B
$B$9(B: 
<A HREF="http://ftp.digital.com/pub/DEC/SRC/x2x/">http://ftp.digital.com/pub/DEC/SRC/x2x/</A>Debian $B%Q%C%1!<(B
$B%8$NIUB0$G$b$"$j$^$9!#;d$O$^$@;n$7$F$$$^$;$s$,!"$&$^$/$$$C$F$$$k%f!<%6(B
$B$b$"$j$^$9!#(B
<P>
<H3>$B$=$NB>LrN)$D%3%^%s%I(B</H3>

<P>
<P>multi-head configuration ($B$H$j$o$1%9%/%j%W%H$r=q$/$H$-$K(B)$B$r07$&$H$-$K(B
$B3P$($F$*$/2ACM$N$"$k(B linux $B%3%^%s%I$,$"$j$^$9!#(B
<P>
<P>
<P>$B!{(B ''chvt''$B$O2>A[%?!<%_%J%k4V$G@Z$jBX$($G$-$k$h$&$K$7$^$9!#(B
$B!{(B ''openvt''$B$O?7$7$$2>A[%?!<%_%J%k(B(VT)$B>e$G%W%m%0%i%`$r;OF0$5$;$^$9!#(B
$B!{(B ''tty''$B$O8=:_$N%?!<%_%J%k$NL>A0$rI=<($7$^$9!#(B
<P>
<H3>$BJdB-(B A. </H3>

<P>( bpp $B@_Dj$NCm0U(B)
<P>
<PRE>
#!/usr/bin/octave -q
bpp = 16;
DCF = sscanf(argv(1,:), "%f");
HR  = sscanf(argv(2,:), "%f");
SH1 = sscanf(argv(3,:), "%f");
SH2 = sscanf(argv(4,:), "%f");
HFL = sscanf(argv(5,:), "%f");
VR  = sscanf(argv(6,:), "%f");
SV1 = sscanf(argv(7,:), "%f");
SV2 = sscanf(argv(8,:), "%f"); 
VFL = sscanf(argv(9,:), "%f");
pixclock = 1000000 / DCF;
left_margin = HFL - SH2;
right_margin = SH1 - HR;
hsync_len = SH2 - SH1;

# 3) vertical timings:
upper_margin = VFL - SV2;
lower_margin = SV1 - VR;
vsync_len = SV2 - SV1;

RR = DCF / (HFL * VFL) *1e6;
HSF = DCF / HFL * 1e3;

printf("mode \"%dx%d\"\n",HR,VR);
printf("   # D: %3.2f MHz, H: %3.2f kHz, V: %2.2f Hz\n", DCF, HSF, RR);
printf("   geometry %d %d %d %d %d\n", HR, VR, HR, VR, bpp);
printf("   timings %d %d %d %d %d %d %d\n", ...
                                 pixclock, left_margin, right_margin, ...
                                 upper_margin, lower_margin, ...
                                 hsync_len, vsync_len);
printf("endmode\n");
</PRE>
<P>
<H3>$BJdB-(B B.  Borne $B%7%'%k%9%/%j%W%H(B "cvtfile" </H3>

<P>
<P>
<P>($B$3$l$O(B octave $B%9%/%j%W%H(B''cvtmode''$B$r8F$S=P$7$^$9!#(B
<P>[$BLuCm!'(Boctave $B%9%/%j%W%H$H$O!"?tCM7W;;$N=hM}7O$N(B  GNU Octave $B8@8l$N$3$H$G$9!#(B
$B>\:Y$O<!$N(B URL $BEy$G$43NG'$/$@$5$$!#(B]
<P>
<A HREF="http://www.octave.org/">Octave Home Page</A><P>
<A HREF="http://www.octave.org/history.html">Octave History</A><P>
<P>
<P>
<PRE>
#!/bin/sh
# Shell script to convert XF86Config file to fb.modes file.
# Uses octave script cvtmode.m

if [ -z $1 ]; then

  FILE=/etc/X11/XF86Config
else
  FILE=$1
fi

i=1
LEN=`grep Modeline $FILE | wc -l`
while expr $i \&lt; $LEN > /dev/null ;
do
  CURLINE=`grep Modeline $FILE | cut -d'"' -f 3-20 | head -$i | tail -1 `
  ./cvtmode.m $CURLINE
  echo " "
  i=`expr $i + 1`
done
</PRE>
<P>
<HR>
<A HREF="Framebuffer-HOWTO-15.html">$B<!$N%Z!<%8(B</A>
<A HREF="Framebuffer-HOWTO-13.html">$BA0$N%Z!<%8(B</A>
<A HREF="Framebuffer-HOWTO.html#toc14">$BL\<!$X(B</A>
</BODY>
</HTML>