BH height of each character (bytes per character definition)
BL font block to load (EGA: 0-3; VGA: 0-7)
CX number of characters to redefine
DX ASCII code of the first character defined at ES:BP
ES:BP address of font-definition information
Info: Redefines one or more characters on EGA/VGA cards. It copies
user-supplied character-definition information to a table in
This fn does not program the CRTC or set BIOS variables to make
allowances for changes in character height, etc. Use
You may use this to change the display of a single character or
an entire 256-character set. You can also set up a secondary
font-definition to be selected by bit 3 of the video attribute
BH specifies how high each character is, in scan-lines; thus, it
describes how many byte are needed to define each character (the
BIOS always uses a width of 8, so one byte describes the bit
pattern for one line of the character matrix).
BL specifies which of the up-to eight tables in EGA/VGA character-
font block). Normally, you will use BL=0, since block 0 is
normally the active font block.
CX specifies how many characters are to be redefined.
DX identifies the first character you wish to define. Valid values
ES:BP points to a table containing the character-definition codes. It
should be BH*CX bytes long. The table is laid out as a series of
CX groups of BH bytes in each group.
Note: This fn requires that you modify BP. When calling from high-
level languages such as C, be very careful to save and restore
BP, since it is used to keep track of the "stack frame".