socomm
April 26th, 2003, 00:49
Introduction:

This mini How-To is intended to help those who are relatively new to the FreeBSD OS get a higher-res System Console. It will assume that you have a fair grasp of the command line interface enough to login, edit system files, configure/install a kernel,and run fairly common UNIX commands.

Requirements:

Before we begin we will need a kernel with the following options enabled:

[code:1:3705610ed7]
options VGA_WIDTH90
options SC_PIXEL_MODE
options VESA
[/code:1:3705610ed7]

In addition we will need to have several fonts loaded, you can have them loaded automaticly on boot just add the following lines to rc.conf:

[code:1:3705610ed7]
font8x8="swiss-8x8"
font8x14="NO"
font8x16="swiss-8x16"
[/code:1:3705610ed7]

Exchange "swiss-8x8" with whichever font you prefer. You will find all available fonts under the /usr/share/syscons/fonts/ directory.

Setup:

Now that we are ready to begin experimenting and configuring our systems console.

Lets verify which modes our hardware supports run the 'vidcontrol' utility with the '-i mode' flag. If you have compiled your kernel with all the right options you should get an output similar to the snippet below:

[code:1:3705610ed7]
mode# flags type size font window linear buffer
------------------------------------------------------------------------------
0 (0x000) 0x00000001 T 40x25 8x8 0xb8000 32k 32k 0x00000000 32k
1 (0x001) 0x00000001 T 40x25 8x8 0xb8000 32k 32k 0x00000000 32k
2 (0x002) 0x00000001 T 80x25 8x8 0xb8000 32k 32k 0x00000000 32k
3 (0x003) 0x00000001 T 80x25 8x8 0xb8000 32k 32k 0x00000000 32k
4 (0x004) 0x00000003 G 320x200x2 1 8x8 0xb8000 32k 32k 0x00000000 32k
5 (0x005) 0x00000003 G 320x200x2 1 8x8 0xb8000 32k 32k 0x00000000 32k
6 (0x006) 0x00000003 G 640x200x1 1 8x8 0xb8000 32k 32k 0x00000000 32k
13 (0x00d) 0x00000003 G 320x200x4 4 8x8 0xa0000 64k 64k 0x00000000 256k
14 (0x00e) 0x00000003 G 640x200x4 4 8x8 0xa0000 64k 64k 0x00000000 256k
16 (0x010) 0x00000003 G 640x350x2 2 8x14 0xa0000 64k 64k 0x00000000 128k
18 (0x012) 0x00000003 G 640x350x4 4 8x14 0xa0000 64k 64k 0x00000000 256k
19 (0x013) 0x00000001 T 40x25 8x14 0xb8000 32k 32k 0x00000000 32k
20 (0x014) 0x00000001 T 40x25 8x14 0xb8000 32k 32k 0x00000000 32k
21 (0x015) 0x00000001 T 80x25 8x14 0xb8000 32k 32k 0x00000000 32k
22 (0x016) 0x00000001 T 80x25 8x14 0xb8000 32k 32k 0x00000000 32k
23 (0x017) 0x00000001 T 40x25 8x16 0xb8000 32k 32k 0x00000000 32k
24 (0x018) 0x00000001 T 80x25 8x16 0xb8000 32k 32k 0x00000000 32k
26 (0x01a) 0x00000003 G 640x480x4 4 8x16 0xa0000 64k 64k 0x00000000 256k
27 (0x01b) 0x00000003 G 640x480x4 4 8x16 0xa0000 64k 64k 0x00000000 256k
28 (0x01c) 0x00000003 G 320x200x8 1 8x8 0xa0000 64k 64k 0x00000000 64k
30 (0x01e) 0x00000001 T 80x50 8x8 0xb8000 32k 32k 0x00000000 32k
[/code:1:3705610ed7]

I will not go into detail what all this modes are you can simply mix and match to find out which one fits your needs best. You can tryout any of the available modes by running 'vidcontrol mode' this will switch your current console to the chosen mode.

Once you have found console mode which you have found to be acceptable you can drop it into the rc.conf file which will allow it to be used on all system consoles (IE ttyv0 - ttyvX ). Open up an /etc/rc.conf with your favorite editor and append the following lines at the end.

[code:1:3705610ed7]
allscreens_flags="VGA_90x60 red black"
[/code:1:3705610ed7]

Where "VGA_90x60 red black" would be the mode which you have picked out.

References:

FreeBSD-Handbook (http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/index.html)

Special Thanks:
Strog

Strog
April 26th, 2003, 03:02
I'm glad I could help. Of course you helped yourself about as fast as I did.

Didn't realize why you wanted that info but guess I know now. :wink: