Author: Gavin Lang
Date: 30-01-03 08:01
Wrote up a short HOWTO. Comments, suggestions, corrections & flame in this thread. Thanks.
-- begin --
Questions & comments to Gavin Lang <firstname.lastname@example.org>. The latest version
can be found at TODO. This document is in the public domain.
This HOWTO is a guide to making your FreeBSD console look pretty smart and
more useful. The default console for a FreeBSD install is set to 80x25
characters, and this simply isn't enough for programs such as the Midnight
Commander, vi[m] and other editors.
The VESA console that simply looks the best is the VESA_800x600 set at 100x37
characters using the SWISS* font family. This HOWTO will show you how.
This HOWTO is of no use to machines that (in general->specific order):
- are not i386 architecture
- do not have the VESA 1.2 protocol available in the cards
- are running 5.0-RELEASE or greater
3. Sample files
You will need to recompile your kernel. If you have not done so before, I
strongly suggest you read the appropriate sections in the FreeBSD handbook. It
certainly is not difficult to do, but there is a sane process. The
handbook is a great resource for general information, and is so well written it
should always be your first resource to look up when you want to do something
with your FreeBSD machine.
Now that you know how to compile your kernel, you should be comfortable editing
the configuration file used. Add these lines if they do not exist already:
There are a number of other options available in regard to this. See the VGA(4)
man page for more information.
The following options are also required. These are related to SYSCONS(4). The
most important option available is the SC_PIXEL_MODE. This is not very well
known, but it's required in order to use the 800x600 resolution.
Now you are ready to compile your kernel. Follow the instructions in
/usr/src/Makefile or wherever your favourite kernel building guide is. Don't
forget that you may need to sync your world in order to build your kernel
Once you have rebooted, you will notice that things look pretty much the same.
This is so that you can test once and for all if running 800x600 console is
possible on your machine. You can run VIDCONTROL(1) like so:
If you receive an error, I'm afraid that you have a problem that is beyond my
knowledge. Your video card may not support it, or vidcontrol doesn't support
your card. Otherwise, you will find that your console will have changed to
800x600 resolution, with a very large black frame. To fix this, run
vidcontrol -g 100x37 VESA_800x600
Now your console should look very slick. You may have noticed that the other
virtual consoles will look rather plain by comparison. To fix this, we need to
edit /etc/rc.conf & add these lines:
allscreens_flags="-g 100x37 VESA_800x600"
Don't forget to close off the final \"! It is a pain to fix!
Finally, we want a decent font for the resolution. Add the following to
You can reboot, or run the vidcontrol command in each console.
3. Sample files
To be added:
-- end --