1.\" 2.\" Copyright (c) 1999 3.\" Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp> 4.\" All rights reserved. 5.\" 6.\" Redistribution and use in source and binary forms, with or without 7.\" modification, are permitted provided that the following conditions 8.\" are met: 9.\" 1. Redistributions of source code must retain the above copyright 10.\" notice, this list of conditions and the following disclaimer as 11.\" the first lines of this file unmodified. 12.\" 2. Redistributions in binary form must reproduce the above copyright 13.\" notice, this list of conditions and the following disclaimer in the 14.\" documentation and/or other materials provided with the distribution. 15.\" 16.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 17.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 18.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 19.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 20.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 21.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 22.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 23.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 24.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 25.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26.\" 27.\" $FreeBSD$ 28.\" 29.Dd June 30, 1999 30.Dt VGA 4 31.Os FreeBSD 32.Sh NAME 33.Nm vga 34.Nd 35generic video card interface 36.Sh SYNOPSIS 37.Cd "options VESA" 38.Cd "options VESA_DEBUG=N" 39.Cd "options VGA_ALT_SEQACCESS" 40.Cd "options VGA_NO_FONT_LOADING" 41.Cd "options VGA_NO_MODE_CHANGE" 42.Cd "options VGA_SLOW_IOACCESS" 43.Cd "options VGA_WIDTH90" 44.Cd "device vga0 at isa? port ? conflicts" 45.Sh DESCRIPTION 46The 47.Nm 48driver is a generic video card driver which provides access to 49video cards. This driver is required for the console driver 50.Xr syscons 4 . 51The console driver will call the 52.Nm 53driver to manipulate video hardware (changing video modes, loading font, etc). 54.Pp 55The keyword 56.Dv conflicts 57is required, as the video card may use I/O ports in the same range 58as other drivers. 59.Pp 60The 61.Nm 62driver supports the standard video cards: MDA, CGA, EGA and VGA. 63In 64addition, the driver can utilize VESA BIOS extensions if the video card 65supports them. 66VESA support can either be statically included in the kernel 67or can be loaded as a separate module. 68.Pp 69In order to statically link the VESA support to the kernel, the 70.Dv VESA 71option (see below) must be defined in the kernel configuration file. 72.Pp 73The 74.Nm vesa 75module can be dynamically loaded into the kernel using 76.Xr kldload 8 . 77.Sh DRIVER CONFIGURATION 78.Ss Kernel Configuration Options 79The following kernel configuration options 80.Pq see Xr config 8 81can be used to control the 82.Nm 83driver. 84These options provide compatibility with certain VGA cards. 85.Bl -tag -width MOUSE 86.It Dv VGA_ALT_SEQACCESS 87You may want to try this option if the mouse pointer is not drawn correctly 88or the font does not seem to be loaded properly on the VGA card. 89However, it may cause flicker on some systems. 90.It Dv VGA_SLOW_IOACCESS 91Older VGA cards may require this option for proper operation. 92It makes the driver perform byte-wide I/O to VGA registers and 93slow down a little. 94.It Dv VGA_WIDTH90 95This option enables 90 column modes: 90x25, 90x30, 90x43, 90x50, 90x60. 96These modes are not always supported by the video card and the display. 97It is highly likely that LCD display cannot work with these modes. 98.El 99.Pp 100The following options add optional features to the driver. 101.Bl -tag -width MOUSE 102.It Dv VESA 103Add VESA BIOS support to the driver. 104If the VGA card has the VESA BIOS extension 1.2 or later, 105this option will utilize the VESA BIOS service to switch to high 106resolution modes. 107.It Dv VESA_DEBUG=N 108Set the VESA support debug level to 109.Fa N . 110The default value is zero, which suppresses all debugging output. 111.El 112.Pp 113The following options will remove some features from the 114.Nm 115driver and save kernel memory. 116.Bl -tag -width MOUSE 117.It Dv VGA_NO_FONT_LOADING 118The 119.Nm 120driver can load software font to EGA and VGA cards. 121This option removes this feature. 122Note that if you use this option and 123still wish to use the mouse on the console then you must also use the 124.Dv SC_ALT_MOUSE_IMAGE 125option. See 126.Xr syscons 4 . 127.It Dv VGA_NO_MODE_CHANGE 128This option prevents the driver from changing video modes. 129.El 130.\".Sh FILES 131.Sh EXAMPLE 132Your kernel configuration should normally have: 133.Pp 134.Dl "device vga0 at isa? port ? conflicts" 135.Pp 136The following lines should be included in the kernel configuration file 137in order to enable the VESA BIOS Extension support. 138.Pp 139.Dl "options VESA" 140.Dl "device vga0 at isa? port ? conflicts" 141.Pp 142If you do not want VESA support included in the kernel, but 143want to use occasionally, do not add the 144.Dv VESA 145option. And load the 146.Nm vesa 147module as desired: 148.Pp 149.Dl kldload vesa 150.Pp 151.\".Sh DIAGNOSTICS 152.\".Sh CAVEATS 153.\".Sh BUGS 154.Sh SEE ALSO 155.Xr vgl 3 , 156.Xr syscons 4 , 157.Xr config 8 , 158.Xr kldload 8 , 159.Xr kldunload 8 . 160.Sh STANDARD 161.Rs 162.%T "VESA BIOS Extension (VBE)" 163.%A Video Electronics Standards Association 164.Re 165.Sh HISTORY 166The 167.Nm 168driver first appeared in 169.Fx 3.1 . 170.Sh AUTHORS 171The 172.Nm 173driver was written by 174.An S\(/oren Schmidt Aq sos@FreeBSD.org 175and 176.An Kazutaka Yokota Aq yokota@FreeBSD.org . 177This manual page was written by 178.An Kazutaka Yokota . 179