8.13. VESA - output to VESA BIOS
Prev | Chapter 8. Video output devices | Next

## 8.13. VESA - output to VESA BIOS

This driver was designed and introduced as a generic driver for any video card which has VESA VBE 2.0 compatible BIOS. Another advantage of this driver is that it tries to force TV output on. VESA BIOS EXTENSION (VBE) Version 3.0 Date: September 16, 1998 (Page 70) says:

> Dual-Controller Designs. VBE 3.0 supports the dual-controller design by assuming that since both controllers are typically provided by the same OEM, under control of a single BIOS ROM on the same graphics card, it is possible to hide the fact that two controllers are indeed present from the application. This has the limitation of preventing simultaneous use of the independent controllers, but allows applications released before VBE 3.0 to operate normally. The VBE Function 00h (Return Controller Information) returns the combined information of both controllers, including the combined list of available modes. When the application selects a mode, the appropriate controller is activated. Each of the remaining VBE functions then operates on the active controller.

So you have chances to get working TV-out by using this driver. (I guess that TV-out frequently is standalone head or standalone output at least.)

ADVANTAGES

- You have chances to watch movies if Linux even doesn't know your video hardware.

- You don't need to have installed any graphics' related things on your Linux (like X11 (AKA XFree86), fbdev and so on). This driver can be run from text-mode.

- You have chances to get working TV-out. (It's known at least for ATI's cards).

- This driver calls `int 10h` handler thus it's not an emulator - it calls real things of real BIOS in real-mode (actually in vm86 mode).

- You can use VIDIX with it, thus getting accelerated video display and TV output at the same time! (Recommended for ATI cards.)

- If you have VESA VBE 3.0+, and you had specified `monitor-hfreq, monitor-vfreq, monitor-dotclock` somewhere (config file, or command line) you will get the highest possible refresh rate. (Using General Timing Formula). To enable this feature you have to specify all your monitor options.

DISADVANTAGES

- It works only on x86 systems.

- It can be used only by `root`.

- Currently it's available only for Linux.

### Important

Don't use this driver with GCC 2.96! It won't work!

COMMAND LINE OPTIONS AVAILABLE FOR VESA

`-vo vesa:`opts``

  currently recognized: `dga` to force dga mode and `nodga` to disable dga mode. In dga mode you can enable double buffering via the `-double` option. Note: you may omit these parameters to enable autodetection of dga mode.

KNOWN PROBLEMS AND WORKAROUNDS

- If you have installed NLS font on your Linux box and run VESA driver from text-mode then after terminating MPlayer you will have ROM font loaded instead of national. You can load national font again by using setsysfont utility from the Mandrake/Mandriva distribution for example. (Hint: The same utility is used for localization of fbdev).

- Some Linux graphics drivers don't update active BIOS mode in DOS memory. So if you have such problem - always use VESA driver only from text-mode. Otherwise text-mode (#03) will be activated anyway and you will need restart your computer.

- Often after terminating VESA driver you get black screen. To return your screen to original state - simply switch to other console (by pressing Alt+F<x>) then switch to your previous console by the same way.

- To get working TV-out you need have plugged TV-connector in before booting your PC since video BIOS initializes itself only once during POST procedure.

Prev | Up | Next
8.12. `libcaca` – Color ASCII Art library | Home | 8.14. X11