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 nstip; /* number of stipples */ 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; /* mask of ligatures on this font */ 27 unsigned char spare1; /* unused for now */ 28 #ifdef CWI 29 unsigned char fonttab; /* 1 == use extra table for fontnumbers */ 30 unsigned char slant; /* if set, slant font by slant degrees */ 31 #endif 32 unsigned char namefont[10]; /* name of this font (e.g., "R" */ 33 unsigned char intname[10]; /* internal name (=number) on device, in ascii */ 34 }; 35 36 /* ligatures, ORed into ligfont */ 37 38 #define LFF 01 39 #define LFI 02 40 #define LFL 04 41 #define LFFI 010 42 #define LFFL 020 43 44 #ifdef CWI 45 /* 46 * Notes by jaap: 47 * 48 * in Font structure is added: 49 * fonttab: if set to 1, the Font.out has an extra 50 * table of shorts which gives the physical font 51 * on which the chracter lives. Allows mapping of 52 * "logial fonts" into variuos physical fonts on the 53 * device. Needed since the Harris f.i. has a weird font 54 * lay-out. Also makes fonts consisting of weird 55 * character combinations easier. 56 * slant: The font can must be slanted to force italics (function 57 * of back-end, necessary for f.i. the Harris, which 58 * doesn't has italics for the sans-serif fonts; these 59 * italics have to be made by slanting) 60 */ 61 #endif 62