The program wsfcomp.exe can be used to create font files (.fon files) from so-called "font source files" (.fsc files). Eg to compile diary.fsc to produce diary.fon just type wsfcomp diary The format of font source files can be judged by looking at the example .fsc files supplied: sys$norm.fsc source of the Series3 system font sys$bold.fsc source of the Series3 bold font sys$digt.fsc source of the Series3 "digits" font diary.fsc special characters used in the Agenda display shgraph.fsc the "tiny" font used in the Spreadsheet sh3.fsc other special characters used by the Spreadsheet bold.fsc a "Greek" flavour version of sys$bold.fsc norm.fsc a "Greek" flavour version of sys$norm.fsc A font source file contains a header section followed by patterns which make up the font, as in the following extract from the beginning of a font source file: *name System mono *descent 2 *height 10 *maxwid 7 *flag ascii *flag cp850 *char 28 100000000000 100001100000 100001100000 101111111100 100111111000 110011110111 000001100000 000000000000 111111111111 100000000000 0000000 0000000 0001000 0001100 1111110 1111110 0001100 0001000 0000000 0000000 0000000 0000011 0000011 0010011 0110011 1111111 1111111 0110000 0010000 0000000 The keywords have the following meanings: ----------------------------------------- *name The font name (maximum length 16 characters) *descent The descent for the font *height The height for the font *maxwid Not the real maximum width, but the width of the widest normal character *flag Some informational flags *char Skip all characters up to the specified code. Character codes start at 0 and follow sequentially until the next *char statement The keyword "*special 1" may also be present, to specify a font suitable for "fast" blitting onto the screen. If present, this keyword must come before the *height statement. ("Fast" fonts must have all their widths less than 9 pixels.) If the height of a character defined is less than that defined in the header, blank rows are added at the top. Possible values for "*flag" (each one defined on its own line) are "ascii", "cp850", "bold", "italic", and "serif". For some more details about fonts, see eg the section on gINFO in the Opl Programming Manual. Note that only the first letter of keywords and flagnames is significant. Thus "*max_width" and "*maxwid" have the same effect. One tip when editing .fsc files is to temporarily change all '1's into graphics square characters (ascii 219, say), and all '0's into dots. Then change them back when you're finished.