VGA(8)                                                     VGA(8)

     NAME
          vga - configure a VGA card

     SYNOPSIS
          aux/vga [ -BcdilpvV ] [ -b bios-string ] [ -m monitor ] [ -x
          file ] [ mode [ size ] ]

     DESCRIPTION
          Vga configures a VGA controller for various display sizes
          and depths.  Using the monitor type specified in
          /env/monitor (default vga) and the mode given as argument
          (default 640x480x1), vga uses the database of known VGA con-
          trollers and monitors in /lib/vgadb (see vgadb(6)) to con-
          figure the display via the devices provided by vga(3). The
          options are:

          -b bios-string
               use the VGA database entry corresponding to bios-string
               (e.g. 0xC0045="Stealth 64 DRAM Vers. 2.02") rather than
               looking for identifying strings in the BIOS memory.

          -B   dump the BIOS memory (in hex) to standard output and
               exit.

          -c   disable the use of the hardware graphics cursor.

          -d   include the color palette in whatever actions are per-
               formed, usually printing the contents.

          -i   when used with -p display the register values that will
               be loaded.

          -l   load the desired mode.

          -m monitor
               override the /env/monitor value.  /env/monitor is usu-
               ally set by including it in the plan9.ini file read by
               the PC boot program 9boot(8).

          -p   print the current or expected register values at appro-
               priate points depending on other options.

          -v   print a trace of the functions called.

          -V   print a verbose trace of the functions called.

          -x file
               use file as the VGA database rather than /lib/vgadb.

          Mode is of the form XxYxZ , where X, Y, and Z are numbers

     VGA(8)                                                     VGA(8)

          specifying the display height, width, and depth respec-
          tively.  The mode must appear in /lib/vgadb as a value for
          one of the monitor entries.  The usual modes are
          640x480x[18], 800x600x[18], 1024x768x[18][i],
          1280x1024x[18][i], 1376x1024x8, and 1600x1200x8.  A trailing
          `i' indicates interlaced operation.  The default mode is
          640x480x8.  Size is of the form X x Y and configures the
          display to have a virtual screen of the given size.  The
          physical screen will pan to follow the mouse.  This is use-
          ful on displays with small screens, such as laptops, but can
          be confusing.

          Using the monitor name vesa instructs vga to use VESA BIOS
          calls to configure the display.  Also, if our VGA controller
          can't be found in vgadb, vga will try the VESA calls.  There
          are no entries for the vesa monitor in vgadb. For a list of
          available VESA modes, use

               aux/vga -m vesa -p

          Loading the special mode text:

               aux/vga -l text

          switches out of graphics mode back into text mode.  It uses
          the VESA BIOS.

     EXAMPLES
          Change the display resolution:

               aux/vga -l 1600x1200x8

          Print the current VGA controller registers.  It is usually
          best to redirect the output of a -p command to a file to
          prevent confusion caused by using the VGA controller while
          trying to dump its state:

               aux/vga -p >/tmp/x

          Force the VGA controller to a known state:

               aux/vga -m vga -l

          Print the current VGA controller state and what would be
          loaded into it for a new resolution, but don't do the load:

               aux/vga -ip 1376x1024x8 >/tmp/x

     FILES
          /env/monitor  display type (default vga).
          /lib/vgadb    VGA configuration file.

     VGA(8)                                                     VGA(8)

     SOURCE
          /sys/src/cmd/aux/vga

     SEE ALSO
          vga(3), vgadb(6), 9boot(8)

     BUGS
          Aux/vga makes every effort possible to verify that the mode
          it is about to load is valid and will bail out with an error
          message before setting any registers if it encounters a
          problem.  However, things can go wrong, especially when
          playing with a new VGA controller or monitor setting.  It is
          useful in such cases to have the above command for setting
          the controller to a known state at your fingertips.