A font map consists of a sequence of lines giving the position in the font where the character will be placed, and the symbolic name of the character. A file /usr/lib/fonts/ROMfont contains the names of all the characters in the default PC 437 code set. When pcfont runs, it tries to match the symbolic names in the font map file with those in the PC 437 code set. If the name is not in this list, it assumes that the character is user defined and reads the bit map definition from the font description files. These font description files are generated using the fcomp command.
``Sample font map'' is an example of a new display font. In a real case all values from 32 to 255 would need to be defined. This example includes only five characters.
# New display font # A_ACUTE 128 dollar 129 E_ACUTE 130 u_cflex 131 intl_curr 132
Sample font map
All lines that start with a '#' are comment lines, and are ignored. All symbolic names must be less than twenty characters long, and can contain any characters, but must start with a letter.
The first four characters are all part of the PC 437 code set, so they need not be redefined. However, intl_curr (the international currency symbol) is not, so a definition is needed. We must create four files, one for each of the font sizes supported by pcfont (8x8, 8x14, 8x16, and 9x16). If the new font is called newfont, then the font map will also be called newfont and the font description files are called newfont.8x8, newfont.8x14, newfont.8x16, and newfont.9x16.
The source for the newfont.8x8 file, (src.8x8) could look like ``Sample font description''
intl_curr 00000000 01100011 00111110 01100011 01100011 01100011 00111110 01100011
Sample font description
To compile this, enter:
fcomp -m src.8x8 > newfont.8x8
When all the font description files have been created, they must be copied along with the font map to the directory /usr/lib/fonts.