1 /* 2 dev.h: characteristics of a typesetter 3 */ 4 5 struct dev { 6 unsigned short filesize; /* number of bytes in file, */ 7 /* excluding dev part */ 8 unsigned short res; /* basic resolution in goobies/inch */ 9 unsigned short hor; /* goobies horizontally */ 10 unsigned short vert; 11 unsigned short unitwidth; /* size at which widths are given, in effect */ 12 unsigned short nfonts; /* number of fonts physically available */ 13 unsigned short nsizes; /* number of sizes it has */ 14 unsigned short sizescale; /* scaling for fractional point sizes */ 15 unsigned short paperwidth; /* max line length in units */ 16 unsigned short paperlength; /* max paper length in units */ 17 unsigned short nchtab; /* number of funny names in chtab */ 18 unsigned short lchname; /* length of chname table */ 19 unsigned short spare1; /* #chars in largest ever font */ 20 unsigned short spare2; /* in case of expansion */ 21 }; 22 23 struct Font { /* characteristics of a font */ 24 unsigned char nwfont; /* number of width entries for this font */ 25 unsigned char specfont; /* 1 == special font */ 26 unsigned char ligfont; /* 1 == ligatures exist on this font */ 27 unsigned char spare1; /* unused for now */ 28 unsigned char fonttab; /* 1 == use extra table for fontnumbers */ 29 unsigned char slant; /* if set, slant font by slant degrees */ 30 unsigned char namefont[10]; /* name of this font (e.g., "R" */ 31 unsigned char intname[10]; /* internal name (=number) on device, in ascii */ 32 }; 33 34 /* ligatures, ORed into ligfont */ 35 36 #define LFF 01 37 #define LFI 02 38 #define LFL 04 39 #define LFFI 010 40 #define LFFL 020 41 42 /* 43 * Notes by jaap: 44 * 45 * spare1 int struct dev is also known as biggestfont 46 * 47 * in Font structure is added: 48 * fonttab: if set to 1, the Font.out has an extra 49 * table of shorts which gives the physical font 50 * on which the chracter lives. Allows mapping of 51 * "logial fonts" into variuos physical fonts on the 52 * device. Needed since the Harris f.i. has a weird font 53 * lay-out. Also makes fonts consisting of weird 54 * character combinations easier. 55 * slant: The font can must be slanted to force italics (function 56 * of back-end, necessary for f.i. the Harris, which 57 * doesn't has italics for the sans-serif fonts; these 58 * italics have to be made by slanting) 59 */ 60