HGC ( English Hercules Graphics Card ) is the standard for monitors and video adapters for the IBM PC . It supports high resolution text mode and one graphic mode. The video adapter was connected to a monochrome (green, yellow, light brown or, quite rarely, black and white) monitor.
In text mode, 25 lines of text with 80 characters in each line were displayed on the screen. This mode was compatible with the MDA standard. Resolution in graphics mode is 720 × 348 pixels . Like CGA and MDA, the video controller was built on the basis of the MC6845 chip, but it was equipped with 64 kbytes of video memory - four times more than CGA, and 16 times more than MDA.
The adapter provided the display of 2 independent pages, both in graphic and in alphanumeric modes. The “zero” page address coincided with the addresses occupied by the MDA, and the “first” page, when turned on, occupied the same addresses as the memory of the CGA adapter. Thus, programs that output directly to CGA could work on this video controller. In graphic modes, as well as in CGA, the video memory turned out to be divided into “banks”, but not by 2, but by 4. Since 350 is not a multiple of four, the resolution in graphic mode was limited to 348 lines.
It was believed that the HGC supports one graphics mode, but this is not true. Having programmed 6845 in a certain way, it was possible to achieve that, from the point of view of programs, the “first” page of video memory looked exactly like CGA video memory, and the image drawn on the screen closely corresponded to what would have happened on a color monitor, although without taking into account colors and palettes. The CGA emulator programs that appeared allowed playing part of the games at that time on HGC, the other part did not work because the CGA I / O ports were not emulated, and the programs could access them to take into account horizontal and frame synchronization.
Unlike CGA graphics modes, HGC graphics modes were not supported in the BIOS, and so the programmer had to perform all the operations on his own. Later, Microsoft included the MSHERC.COM utility in MS-DOS, which added support for the main HGC video mode through interrupts and OS functions, but few programs used this utility, in particular, QBASIC. The MSHERC program, like most others, contained an error in the programming table - the total number of characters was incorrectly indicated, which is why the line frequency in the graphic mode was noticeably different from the line frequency in the alphanumeric mode, which led to a loss of synchronization on some monitors.
The Microsoft Windows shell supported (had a built-in driver) HGC in versions 3.xx, but support was discontinued with the release of Windows 95, and the software trick that allowed installing the driver from EGA for Windows 3.11 on Windows 95 did not work with HGC. By this time, the popularity of the HGC board was already behind, and no one had made any notable effort to release the driver.
Standard development
Later, the HGC standard was supplemented and expanded:
- HGC + ( Hercules Graphics Card Plus , June 1986 ), which allows the use of custom fonts in text mode.
- HICC ( Hercules InColor Card , April 1987 ) with capabilities close to the EGA standard - display 16 colors from a palette in 64 colors.