83 lines
3.1 KiB
HTML
83 lines
3.1 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
|
|
<HTML>
|
|
<HEAD>
|
|
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
|
|
<TITLE>The Linux keyboard and console HOWTO: Changing the video mode</TITLE>
|
|
<LINK HREF="Keyboard-and-Console-HOWTO-17.html" REL=next>
|
|
<LINK HREF="Keyboard-and-Console-HOWTO-15.html" REL=previous>
|
|
<LINK HREF="Keyboard-and-Console-HOWTO.html#toc16" REL=contents>
|
|
</HEAD>
|
|
<BODY>
|
|
<A HREF="Keyboard-and-Console-HOWTO-17.html">Next</A>
|
|
<A HREF="Keyboard-and-Console-HOWTO-15.html">Previous</A>
|
|
<A HREF="Keyboard-and-Console-HOWTO.html#toc16">Contents</A>
|
|
<HR>
|
|
<H2><A NAME="s16">16. Changing the video mode</A></H2>
|
|
|
|
<P>
|
|
<!--
|
|
console!changing video modes
|
|
-->
|
|
|
|
<!--
|
|
video modes, changing
|
|
-->
|
|
|
|
<!--
|
|
resolution, changing
|
|
-->
|
|
<P>As far as I know there are 6 ways to change resolution:
|
|
<P>1. At compile time: change the line
|
|
<BLOCKQUOTE><CODE>
|
|
<PRE>
|
|
SVGA_MODE= -DSVGA_MODE=NORMAL_VGA
|
|
</PRE>
|
|
</CODE></BLOCKQUOTE>
|
|
|
|
in <CODE>/usr/src/linux/Makefile</CODE>.
|
|
<P>1A. After compilation: use <CODE>rdev -v</CODE> - a terrible hack, but it exists.
|
|
<P>2. At boot time: put <CODE>vga=ask</CODE> in the lilo config file, and lilo will
|
|
ask you what video mode you want. Once you know, put <CODE>vga=</CODE>mypreference.
|
|
<P>3. At run time:
|
|
A. Use the <CODE>resizecons</CODE> command. (This is a very primitive wrapper around
|
|
the VT_RESIZE ioctl.)
|
|
B. Use the <CODE>SVGATextMode</CODE> command. (This is a less primitive wrapper around
|
|
the VT_RESIZE ioctl.)
|
|
<P>4. Not "on the console":
|
|
Under <CODE>dosemu</CODE>, or with svgalib etc. you can change the hardware video mode
|
|
without the console driver being aware of it. Sometimes this is useful in
|
|
getting <CODE>resizecons</CODE> or <CODE>SVGATextMode</CODE> set up: use <CODE>dosemu</CODE> and some
|
|
DOS program to get into the desired videomode, dump (say from another VT) the
|
|
contents of all video hardware registers, and use that in the initialization
|
|
that <CODE>resizecons</CODE> and <CODE>SVGATextMode</CODE> require.
|
|
In some cases where the video mode has gotten into some unusable state,
|
|
starting <CODE>dosemu</CODE>, relying on the BIOS to set up the video mode, and then
|
|
killing <CODE>dosemu</CODE> (with <CODE>kill -9</CODE>), is the easiest way to get into shape
|
|
again.
|
|
<P>
|
|
<H2><A NAME="ss16.1">16.1 Instructions for the use of resizecons</A>
|
|
</H2>
|
|
|
|
<P>
|
|
<!--
|
|
resizecons program
|
|
-->
|
|
<P>Get svgalib and compile the program <CODE>restoretextmode</CODE>.
|
|
Boot up your machine in all possible video modes
|
|
(using <CODE>vga=ask</CODE> in the lilo config file), and write
|
|
the video hardware register contents to files CxR
|
|
(C=cols, R=rows), e.g., 80x25, 132x44, etc.
|
|
Put these files in <CODE>/usr/lib/kbd/videomodes</CODE>.
|
|
Now <CODE>resizecons 132x44</CODE> will change videomode for you
|
|
(and send SIGWINCH to all processes that need to know
|
|
about this, and load another font if necessary).
|
|
<P>At present, <CODE>resizecons</CODE> only succeeds when there is memory enough
|
|
for both the old and the new consoles at the same time.
|
|
<P>
|
|
<HR>
|
|
<A HREF="Keyboard-and-Console-HOWTO-17.html">Next</A>
|
|
<A HREF="Keyboard-and-Console-HOWTO-15.html">Previous</A>
|
|
<A HREF="Keyboard-and-Console-HOWTO.html#toc16">Contents</A>
|
|
</BODY>
|
|
</HTML>
|