System information

4 Graphic Card Implementation
The CHARM implements a VGA graphic card. It replaces the primary graphic card of the
host system to get the screen content of the host computer. But the CHARM is not installed
to a local monitor. Instead, the graphic data are processed on the CHARM and send it via
the network to an arbitrary remote computer. The card does not use a commercial graphic
processor chip because the raw graphic data can be better inspected than the video output
signal. For example, in a text mode (see section 4.1.2) the raw graphic data are ASCII
characters. Section 6.3 discusses the usage of scanning the screen content precisely. There
are tree major expansion bus types which are used to connect a graphic card: PCI, AGP
1
and PCI Express. However, PCI Express drives AGP out of the market. The PCI bus is
widespread and almost the favored bus system for low bandwidth devices. The CHARM
implements a PCI graphic card to be operable in a variety of computer systems.
The first sections give an overview of the basic VGA protocol. Afterwards, the implemen-
tation of the VGA functions is illustrated precisely. The last section describes the software
which provides the screen content of the host computer.
4.1 VGA Specification
The Video Graphic Array (VGA) is an analog computer display specification developed by
IBM in the year 1987. The VGA specification has become one of the de facto standards
for PCs. It describes a video subsystem which includes a video buffer and a video digital-
to-analog converter (DAC). Thereby, the DAC drives the analog output to the display
connector. The video memory consists of at least 256 KB and its use and mapping depend
on the mode selected. The VGA standard supports display resolution of up to 640x480 pixel
with a color depth of 4 bits. Older video standards like the Enhanced Graphics Adapter
(EGA) or the Monochrome Display Adapter (MDA) are integrated into the VGA standard.
Basically, there are two possibilities to draw the screen content:
Usage of the BIOS’s video functions.
Direct access to the VGA register and VGA planes.
The video functions of the BIOS hide the complexity of the VGA protocol. These functions
are explained in section 4.3. The direct access to a graphic card provides more flexibility
and optimization while building the screen content.
Nowadays, this standard is technologically outdated and the graphic cards support screen
resolution in excess of the VGA standard. Furthermore, the graphic cards provide digital
output to install an LCD or TFT monitor. But the basic video system of the most computers
1
Accelerated Graphics Port.
41