1 #ifndef lint 2 static char mkfont1sccsid[] = "@(#)mkfont1.c 4.3 02/16/88"; 3 #endif lint 4 5 #define BYTE 8 6 #define PAIR(a,b) ((a)|((b)<<BYTE)) 7 8 struct { 9 int name; 10 int ctval; 11 } font[102] = { 12 'h',2, 13 't',2, 14 'n',0, 15 'm',0, 16 'l',2, 17 'i',2, 18 'z',0, 19 's',0, 20 'd',2, 21 'b',2, 22 'x',0, 23 'f',2, 24 'j',3, 25 'u',0, 26 'k',2, 27 'p',1, 28 PAIR('e','m'),0, 29 ';',0, 30 'a',0, 31 PAIR('r','u'),0, 32 'c',0, 33 '`',0, 34 'e',0, 35 '\'',0, 36 'o',0, 37 PAIR('1','4'),0, 38 'r',0, 39 PAIR('1','2'),0, 40 'v',0, 41 PAIR('h','y'),0, 42 'w',0, 43 'q',1, 44 '/',0, 45 '.',0, 46 'g',1, 47 PAIR('3','4'),0, 48 ',',0, 49 '&',0, 50 'y',1, 51 '%',0, 52 'Q',3, 53 'T',2, 54 'O',2, 55 'H',2, 56 'N',2, 57 'M',2, 58 'L',2, 59 'R',2, 60 'G',2, 61 'I',2, 62 'P',2, 63 'C',2, 64 'V',2, 65 'E',2, 66 'Z',2, 67 'D',2, 68 'B',2, 69 'S',2, 70 'Y',2, 71 'F',2, 72 'X',2, 73 'A',2, 74 'W',2, 75 'J',2, 76 'U',2, 77 'K',2, 78 '0',2, 79 '1',2, 80 '2',2, 81 '3',2, 82 '4',2, 83 '5',2, 84 '6',2, 85 '7',2, 86 '8',2, 87 '9',2, 88 '*',0, 89 PAIR('-','-'),0, 90 PAIR('f','i'),0, 91 PAIR('f','l'),0, 92 PAIR('f','f'),0, 93 PAIR('c','t'),0, 94 PAIR('F','l'),0, 95 PAIR('F','i'),0, 96 '(',0, 97 ')',0, 98 '[',0, 99 ']',0, 100 PAIR('d','e'),0, 101 PAIR('d','g'),0, 102 '=',0, 103 PAIR('r','g'),0, 104 ':',0, 105 '+',0, 106 '!',0, 107 PAIR('b','u'),0, 108 '?',0, 109 PAIR('f','m'),0, 110 '|',0, 111 PAIR('c','o'),0, 112 PAIR('s','q'),0, 113 '$',0}; 114 char *nametab[256-32] = { 115 "/*space*/", 116 "/*!*/", 117 "/*\"*/", 118 "/*#*/", 119 "/*$*/", 120 "/*%*/", 121 "/*&*/", 122 "/*' close*/", 123 "/*(*/", 124 "/*)*/", 125 "/***/", 126 "/*+*/", 127 "/*,*/", 128 "/*- hyphen*/", 129 "/*.*/", 130 "/*/*/", 131 "/*0*/", 132 "/*1*/", 133 "/*2*/", 134 "/*3*/", 135 "/*4*/", 136 "/*5*/", 137 "/*6*/", 138 "/*7*/", 139 "/*8*/", 140 "/*9*/", 141 "/*:*/", 142 "/*;*/", 143 "/*<*/", 144 "/*=*/", 145 "/*>*/", 146 "/*?*/", 147 "/*@*/", 148 "/*A*/", 149 "/*B*/", 150 "/*C*/", 151 "/*D*/", 152 "/*E*/", 153 "/*F*/", 154 "/*G*/", 155 "/*H*/", 156 "/*I*/", 157 "/*J*/", 158 "/*K*/", 159 "/*L*/", 160 "/*M*/", 161 "/*N*/", 162 "/*O*/", 163 "/*P*/", 164 "/*Q*/", 165 "/*R*/", 166 "/*S*/", 167 "/*T*/", 168 "/*U*/", 169 "/*V*/", 170 "/*W*/", 171 "/*X*/", 172 "/*Y*/", 173 "/*Z*/", 174 "/*[*/", 175 "/*\\*/", 176 "/*]*/", 177 "/*^*/", 178 "/*_*/", 179 "/*` open*/", 180 "/*a*/", 181 "/*b*/", 182 "/*c*/", 183 "/*d*/", 184 "/*e*/", 185 "/*f*/", 186 "/*g*/", 187 "/*h*/", 188 "/*i*/", 189 "/*j*/", 190 "/*k*/", 191 "/*l*/", 192 "/*m*/", 193 "/*n*/", 194 "/*o*/", 195 "/*p*/", 196 "/*q*/", 197 "/*r*/", 198 "/*s*/", 199 "/*t*/", 200 "/*u*/", 201 "/*v*/", 202 "/*w*/", 203 "/*x*/", 204 "/*y*/", 205 "/*z*/", 206 "/*{*/", 207 "/*|*/", 208 "/*}*/", 209 "/*~*/", 210 "/*narrow space*/", 211 "/*hyphen*/", 212 "/*bullet*/", 213 "/*square*/", 214 "/*3/4 em*/", 215 "/*rule*/", 216 "/*1/4*/", 217 "/*1/2*/", 218 "/*3/4*/", 219 "/*minus*/", 220 "/*fi*/", 221 "/*fl*/", 222 "/*ff*/", 223 "/*ffi*/", 224 "/*ffl*/", 225 "/*degree*/", 226 "/*dagger*/", 227 "/*section*/", 228 "/*foot mark*/", 229 "/*'*/", 230 "/*`*/", 231 "/*_*/", 232 0, 233 "/*half nar sp*/", 234 0, 235 0,0,0,0,0,0,0,0, 236 0,0,0,0,0,0,0,0, 237 0,0,0,0,0,0,0,0, 238 0,0,0,0,0,0,0,0, 239 0,0,0,0,0,0,0,0, 240 0,0,0,0,0,0,0,0, 241 0,0,0,0,0,0,0,0, 242 0,0,0,0,0,0,0,0, 243 0,0,0,0,0, 244 "/*registered*/", 245 "/*copywrite*/", 246 0, 247 "/*cent*/", 248 }; 249 int chtab [] = { 250 PAIR('-','-'), 0210, /*font minus*/ 251 PAIR('h','y'), 0200, /*hyphen*/ 252 PAIR('b','u'), 0201, /*bullet*/ 253 PAIR('s','q'), 0202, /*square*/ 254 PAIR('e','m'), 0203, /*3/4em*/ 255 PAIR('r','u'), 0204, /*rule*/ 256 PAIR('1','4'), 0205, /*1/4*/ 257 PAIR('1','2'), 0206, /*1/2*/ 258 PAIR('3','4'), 0207, /*3/4*/ 259 PAIR('m','i'), 0302, /*equation minus*/ 260 PAIR('f','i'), 0211, /*fi*/ 261 PAIR('f','l'), 0212, /*fl*/ 262 PAIR('f','f'), 0213, /*ff*/ 263 PAIR('F','i'), 0214, /*ffi*/ 264 PAIR('F','l'), 0215, /*ffl*/ 265 PAIR('d','e'), 0216, /*degree*/ 266 PAIR('d','g'), 0217, /*dagger*/ 267 PAIR('s','c'), 0220, /*section*/ 268 PAIR('f','m'), 0221, /*foot mark*/ 269 PAIR('a','a'), 0222, /*acute accent*/ 270 PAIR('g','a'), 0223, /*grave accent*/ 271 PAIR('u','l'), 0224, /*underrule*/ 272 PAIR('s','l'), 0225, /*slash (longer)*/ 273 PAIR('*','a'), 0230, /*alpha*/ 274 PAIR('*','b'), 0231, /*beta*/ 275 PAIR('*','g'), 0232, /*gamma*/ 276 PAIR('*','d'), 0233, /*delta*/ 277 PAIR('*','e'), 0234, /*epsilon*/ 278 PAIR('*','z'), 0235, /*zeta*/ 279 PAIR('*','y'), 0236, /*eta*/ 280 PAIR('*','h'), 0237, /*theta*/ 281 PAIR('*','i'), 0240, /*iota*/ 282 PAIR('*','k'), 0241, /*kappa*/ 283 PAIR('*','l'), 0242, /*lambda*/ 284 PAIR('*','m'), 0243, /*mu*/ 285 PAIR('*','n'), 0244, /*nu*/ 286 PAIR('*','c'), 0245, /*xi*/ 287 PAIR('*','o'), 0246, /*omicron*/ 288 PAIR('*','p'), 0247, /*pi*/ 289 PAIR('*','r'), 0250, /*rho*/ 290 PAIR('*','s'), 0251, /*sigma*/ 291 PAIR('*','t'), 0252, /*tau*/ 292 PAIR('*','u'), 0253, /*upsilon*/ 293 PAIR('*','f'), 0254, /*phi*/ 294 PAIR('*','x'), 0255, /*chi*/ 295 PAIR('*','q'), 0256, /*psi*/ 296 PAIR('*','w'), 0257, /*omega*/ 297 PAIR('*','A'), 0101, /*Alpha*/ 298 PAIR('*','B'), 0102, /*Beta*/ 299 PAIR('*','G'), 0260, /*Gamma*/ 300 PAIR('*','D'), 0261, /*Delta*/ 301 PAIR('*','E'), 0105, /*Epsilon*/ 302 PAIR('*','Z'), 0132, /*Zeta*/ 303 PAIR('*','Y'), 0110, /*Eta*/ 304 PAIR('*','H'), 0262, /*Theta*/ 305 PAIR('*','I'), 0111, /*Iota*/ 306 PAIR('*','K'), 0113, /*Kappa*/ 307 PAIR('*','L'), 0263, /*Lambda*/ 308 PAIR('*','M'), 0115, /*Mu*/ 309 PAIR('*','N'), 0116, /*Nu*/ 310 PAIR('*','C'), 0264, /*Xi*/ 311 PAIR('*','O'), 0117, /*Omicron*/ 312 PAIR('*','P'), 0265, /*Pi*/ 313 PAIR('*','R'), 0120, /*Rho*/ 314 PAIR('*','S'), 0266, /*Sigma*/ 315 PAIR('*','T'), 0124, /*Tau*/ 316 PAIR('*','U'), 0270, /*Upsilon*/ 317 PAIR('*','F'), 0271, /*Phi*/ 318 PAIR('*','X'), 0130, /*Chi*/ 319 PAIR('*','Q'), 0272, /*Psi*/ 320 PAIR('*','W'), 0273, /*Omega*/ 321 PAIR('s','r'), 0274, /*square root*/ 322 PAIR('t','s'), 0275, /*terminal sigma*/ 323 PAIR('r','n'), 0276, /*root en*/ 324 PAIR('>','='), 0277, /*>=*/ 325 PAIR('<','='), 0300, /*<=*/ 326 PAIR('=','='), 0301, /*identically equal*/ 327 PAIR('~','='), 0303, /*approx =*/ 328 PAIR('a','p'), 0304, /*approximates*/ 329 PAIR('!','='), 0305, /*not equal*/ 330 PAIR('-','>'), 0306, /*right arrow*/ 331 PAIR('<','-'), 0307, /*left arrow*/ 332 PAIR('u','a'), 0310, /*up arrow*/ 333 PAIR('d','a'), 0311, /*down arrow*/ 334 PAIR('e','q'), 0312, /*equation equal*/ 335 PAIR('m','u'), 0313, /*multiply*/ 336 PAIR('d','i'), 0314, /*divide*/ 337 PAIR('+','-'), 0315, /*plus-minus*/ 338 PAIR('c','u'), 0316, /*cup (union)*/ 339 PAIR('c','a'), 0317, /*cap (intersection)*/ 340 PAIR('s','b'), 0320, /*subset of*/ 341 PAIR('s','p'), 0321, /*superset of*/ 342 PAIR('i','b'), 0322, /*improper subset*/ 343 PAIR('i','p'), 0323, /* " superset*/ 344 PAIR('i','f'), 0324, /*infinity*/ 345 PAIR('p','d'), 0325, /*partial derivative*/ 346 PAIR('g','r'), 0326, /*gradient*/ 347 PAIR('n','o'), 0327, /*not*/ 348 PAIR('i','s'), 0330, /*integral sign*/ 349 PAIR('p','t'), 0331, /*proportional to*/ 350 PAIR('e','s'), 0332, /*empty set*/ 351 PAIR('m','o'), 0333, /*member of*/ 352 PAIR('p','l'), 0334, /*equation plus*/ 353 PAIR('r','g'), 0335, /*registered*/ 354 PAIR('c','o'), 0336, /*copyright*/ 355 PAIR('b','r'), 0337, /*box vert rule*/ 356 PAIR('c','t'), 0340, /*cent sign*/ 357 PAIR('d','d'), 0341, /*dbl dagger*/ 358 PAIR('r','h'), 0342, /*right hand*/ 359 PAIR('l','h'), 0343, /*left hand*/ 360 PAIR('*','*'), 0344, /*math * */ 361 PAIR('b','s'), 0345, /*bell system sign*/ 362 PAIR('o','r'), 0346, /*or*/ 363 PAIR('c','i'), 0347, /*circle*/ 364 PAIR('l','t'), 0350, /*left top (of big curly)*/ 365 PAIR('l','b'), 0351, /*left bottom*/ 366 PAIR('r','t'), 0352, /*right top*/ 367 PAIR('r','b'), 0353, /*right bot*/ 368 PAIR('l','k'), 0354, /*left center of big curly bracket*/ 369 PAIR('r','k'), 0355, /*right center of big curly bracket*/ 370 PAIR('b','v'), 0356, /*bold vertical*/ 371 PAIR('l','f'), 0357, /*left floor (left bot of big sq bract)*/ 372 PAIR('r','f'), 0360, /*right floor (rb of ")*/ 373 PAIR('l','c'), 0361, /*left ceiling (lt of ")*/ 374 PAIR('r','c'), 0362, /*right ceiling (rt of ")*/ 375 0,0}; 376