1*48308Sbostic /*- 2*48308Sbostic * %sccs.include.proprietary.c% 3*48308Sbostic */ 4*48308Sbostic 57111Srrh #ifndef lint 6*48308Sbostic static char sccsid[] = "@(#)mkfont1.c 4.4 (Berkeley) 04/18/91"; 7*48308Sbostic #endif /* not lint */ 87111Srrh 933484Sbostic #define BYTE 8 1033484Sbostic #define PAIR(a,b) ((a)|((b)<<BYTE)) 117111Srrh 127111Srrh struct { 137111Srrh int name; 147111Srrh int ctval; 1531689Sbostic } font[102] = { 167111Srrh 'h',2, 177111Srrh 't',2, 187111Srrh 'n',0, 197111Srrh 'm',0, 207111Srrh 'l',2, 217111Srrh 'i',2, 227111Srrh 'z',0, 237111Srrh 's',0, 247111Srrh 'd',2, 257111Srrh 'b',2, 267111Srrh 'x',0, 277111Srrh 'f',2, 287111Srrh 'j',3, 297111Srrh 'u',0, 307111Srrh 'k',2, 317111Srrh 'p',1, 3233484Sbostic PAIR('e','m'),0, 337111Srrh ';',0, 347111Srrh 'a',0, 3533484Sbostic PAIR('r','u'),0, 367111Srrh 'c',0, 377111Srrh '`',0, 387111Srrh 'e',0, 397111Srrh '\'',0, 407111Srrh 'o',0, 4133484Sbostic PAIR('1','4'),0, 427111Srrh 'r',0, 4333484Sbostic PAIR('1','2'),0, 447111Srrh 'v',0, 4533484Sbostic PAIR('h','y'),0, 467111Srrh 'w',0, 477111Srrh 'q',1, 487111Srrh '/',0, 497111Srrh '.',0, 507111Srrh 'g',1, 5133484Sbostic PAIR('3','4'),0, 527111Srrh ',',0, 537111Srrh '&',0, 547111Srrh 'y',1, 557111Srrh '%',0, 567111Srrh 'Q',3, 577111Srrh 'T',2, 587111Srrh 'O',2, 597111Srrh 'H',2, 607111Srrh 'N',2, 617111Srrh 'M',2, 627111Srrh 'L',2, 637111Srrh 'R',2, 647111Srrh 'G',2, 657111Srrh 'I',2, 667111Srrh 'P',2, 677111Srrh 'C',2, 687111Srrh 'V',2, 697111Srrh 'E',2, 707111Srrh 'Z',2, 717111Srrh 'D',2, 727111Srrh 'B',2, 737111Srrh 'S',2, 747111Srrh 'Y',2, 757111Srrh 'F',2, 767111Srrh 'X',2, 777111Srrh 'A',2, 787111Srrh 'W',2, 797111Srrh 'J',2, 807111Srrh 'U',2, 817111Srrh 'K',2, 827111Srrh '0',2, 837111Srrh '1',2, 847111Srrh '2',2, 857111Srrh '3',2, 867111Srrh '4',2, 877111Srrh '5',2, 887111Srrh '6',2, 897111Srrh '7',2, 907111Srrh '8',2, 917111Srrh '9',2, 927111Srrh '*',0, 9333484Sbostic PAIR('-','-'),0, 9433484Sbostic PAIR('f','i'),0, 9533484Sbostic PAIR('f','l'),0, 9633484Sbostic PAIR('f','f'),0, 9733484Sbostic PAIR('c','t'),0, 9833484Sbostic PAIR('F','l'),0, 9933484Sbostic PAIR('F','i'),0, 1007111Srrh '(',0, 1017111Srrh ')',0, 1027111Srrh '[',0, 1037111Srrh ']',0, 10433484Sbostic PAIR('d','e'),0, 10533484Sbostic PAIR('d','g'),0, 1067111Srrh '=',0, 10733484Sbostic PAIR('r','g'),0, 1087111Srrh ':',0, 1097111Srrh '+',0, 1107111Srrh '!',0, 11133484Sbostic PAIR('b','u'),0, 1127111Srrh '?',0, 11333484Sbostic PAIR('f','m'),0, 1147111Srrh '|',0, 11533484Sbostic PAIR('c','o'),0, 11633484Sbostic PAIR('s','q'),0, 1177111Srrh '$',0}; 11831689Sbostic char *nametab[256-32] = { 1197111Srrh "/*space*/", 1207111Srrh "/*!*/", 1217111Srrh "/*\"*/", 1227111Srrh "/*#*/", 1237111Srrh "/*$*/", 1247111Srrh "/*%*/", 1257111Srrh "/*&*/", 1267111Srrh "/*' close*/", 1277111Srrh "/*(*/", 1287111Srrh "/*)*/", 1297111Srrh "/***/", 1307111Srrh "/*+*/", 1317111Srrh "/*,*/", 1327111Srrh "/*- hyphen*/", 1337111Srrh "/*.*/", 1347111Srrh "/*/*/", 1357111Srrh "/*0*/", 1367111Srrh "/*1*/", 1377111Srrh "/*2*/", 1387111Srrh "/*3*/", 1397111Srrh "/*4*/", 1407111Srrh "/*5*/", 1417111Srrh "/*6*/", 1427111Srrh "/*7*/", 1437111Srrh "/*8*/", 1447111Srrh "/*9*/", 1457111Srrh "/*:*/", 1467111Srrh "/*;*/", 1477111Srrh "/*<*/", 1487111Srrh "/*=*/", 1497111Srrh "/*>*/", 1507111Srrh "/*?*/", 1517111Srrh "/*@*/", 1527111Srrh "/*A*/", 1537111Srrh "/*B*/", 1547111Srrh "/*C*/", 1557111Srrh "/*D*/", 1567111Srrh "/*E*/", 1577111Srrh "/*F*/", 1587111Srrh "/*G*/", 1597111Srrh "/*H*/", 1607111Srrh "/*I*/", 1617111Srrh "/*J*/", 1627111Srrh "/*K*/", 1637111Srrh "/*L*/", 1647111Srrh "/*M*/", 1657111Srrh "/*N*/", 1667111Srrh "/*O*/", 1677111Srrh "/*P*/", 1687111Srrh "/*Q*/", 1697111Srrh "/*R*/", 1707111Srrh "/*S*/", 1717111Srrh "/*T*/", 1727111Srrh "/*U*/", 1737111Srrh "/*V*/", 1747111Srrh "/*W*/", 1757111Srrh "/*X*/", 1767111Srrh "/*Y*/", 1777111Srrh "/*Z*/", 1787111Srrh "/*[*/", 1797111Srrh "/*\\*/", 1807111Srrh "/*]*/", 1817111Srrh "/*^*/", 1827111Srrh "/*_*/", 1837111Srrh "/*` open*/", 1847111Srrh "/*a*/", 1857111Srrh "/*b*/", 1867111Srrh "/*c*/", 1877111Srrh "/*d*/", 1887111Srrh "/*e*/", 1897111Srrh "/*f*/", 1907111Srrh "/*g*/", 1917111Srrh "/*h*/", 1927111Srrh "/*i*/", 1937111Srrh "/*j*/", 1947111Srrh "/*k*/", 1957111Srrh "/*l*/", 1967111Srrh "/*m*/", 1977111Srrh "/*n*/", 1987111Srrh "/*o*/", 1997111Srrh "/*p*/", 2007111Srrh "/*q*/", 2017111Srrh "/*r*/", 2027111Srrh "/*s*/", 2037111Srrh "/*t*/", 2047111Srrh "/*u*/", 2057111Srrh "/*v*/", 2067111Srrh "/*w*/", 2077111Srrh "/*x*/", 2087111Srrh "/*y*/", 2097111Srrh "/*z*/", 2107111Srrh "/*{*/", 2117111Srrh "/*|*/", 2127111Srrh "/*}*/", 2137111Srrh "/*~*/", 2147111Srrh "/*narrow space*/", 2157111Srrh "/*hyphen*/", 2167111Srrh "/*bullet*/", 2177111Srrh "/*square*/", 2187111Srrh "/*3/4 em*/", 2197111Srrh "/*rule*/", 2207111Srrh "/*1/4*/", 2217111Srrh "/*1/2*/", 2227111Srrh "/*3/4*/", 2237111Srrh "/*minus*/", 2247111Srrh "/*fi*/", 2257111Srrh "/*fl*/", 2267111Srrh "/*ff*/", 2277111Srrh "/*ffi*/", 2287111Srrh "/*ffl*/", 2297111Srrh "/*degree*/", 2307111Srrh "/*dagger*/", 2317111Srrh "/*section*/", 2327111Srrh "/*foot mark*/", 2337111Srrh "/*'*/", 2347111Srrh "/*`*/", 2357111Srrh "/*_*/", 2367111Srrh 0, 2377111Srrh "/*half nar sp*/", 2387111Srrh 0, 2397111Srrh 0,0,0,0,0,0,0,0, 2407111Srrh 0,0,0,0,0,0,0,0, 2417111Srrh 0,0,0,0,0,0,0,0, 2427111Srrh 0,0,0,0,0,0,0,0, 2437111Srrh 0,0,0,0,0,0,0,0, 2447111Srrh 0,0,0,0,0,0,0,0, 2457111Srrh 0,0,0,0,0,0,0,0, 2467111Srrh 0,0,0,0,0,0,0,0, 2477111Srrh 0,0,0,0,0, 2487111Srrh "/*registered*/", 2497111Srrh "/*copywrite*/", 2507111Srrh 0, 2517111Srrh "/*cent*/", 2527111Srrh }; 25331689Sbostic int chtab [] = { 25433484Sbostic PAIR('-','-'), 0210, /*font minus*/ 25533484Sbostic PAIR('h','y'), 0200, /*hyphen*/ 25633484Sbostic PAIR('b','u'), 0201, /*bullet*/ 25733484Sbostic PAIR('s','q'), 0202, /*square*/ 25833484Sbostic PAIR('e','m'), 0203, /*3/4em*/ 25933484Sbostic PAIR('r','u'), 0204, /*rule*/ 26033484Sbostic PAIR('1','4'), 0205, /*1/4*/ 26133484Sbostic PAIR('1','2'), 0206, /*1/2*/ 26233484Sbostic PAIR('3','4'), 0207, /*3/4*/ 26333484Sbostic PAIR('m','i'), 0302, /*equation minus*/ 26433484Sbostic PAIR('f','i'), 0211, /*fi*/ 26533484Sbostic PAIR('f','l'), 0212, /*fl*/ 26633484Sbostic PAIR('f','f'), 0213, /*ff*/ 26733484Sbostic PAIR('F','i'), 0214, /*ffi*/ 26833484Sbostic PAIR('F','l'), 0215, /*ffl*/ 26933484Sbostic PAIR('d','e'), 0216, /*degree*/ 27033484Sbostic PAIR('d','g'), 0217, /*dagger*/ 27133484Sbostic PAIR('s','c'), 0220, /*section*/ 27233484Sbostic PAIR('f','m'), 0221, /*foot mark*/ 27333484Sbostic PAIR('a','a'), 0222, /*acute accent*/ 27433484Sbostic PAIR('g','a'), 0223, /*grave accent*/ 27533484Sbostic PAIR('u','l'), 0224, /*underrule*/ 27633484Sbostic PAIR('s','l'), 0225, /*slash (longer)*/ 27733484Sbostic PAIR('*','a'), 0230, /*alpha*/ 27833484Sbostic PAIR('*','b'), 0231, /*beta*/ 27933484Sbostic PAIR('*','g'), 0232, /*gamma*/ 28033484Sbostic PAIR('*','d'), 0233, /*delta*/ 28133484Sbostic PAIR('*','e'), 0234, /*epsilon*/ 28233484Sbostic PAIR('*','z'), 0235, /*zeta*/ 28333484Sbostic PAIR('*','y'), 0236, /*eta*/ 28433484Sbostic PAIR('*','h'), 0237, /*theta*/ 28533484Sbostic PAIR('*','i'), 0240, /*iota*/ 28633484Sbostic PAIR('*','k'), 0241, /*kappa*/ 28733484Sbostic PAIR('*','l'), 0242, /*lambda*/ 28833484Sbostic PAIR('*','m'), 0243, /*mu*/ 28933484Sbostic PAIR('*','n'), 0244, /*nu*/ 29033484Sbostic PAIR('*','c'), 0245, /*xi*/ 29133484Sbostic PAIR('*','o'), 0246, /*omicron*/ 29233484Sbostic PAIR('*','p'), 0247, /*pi*/ 29333484Sbostic PAIR('*','r'), 0250, /*rho*/ 29433484Sbostic PAIR('*','s'), 0251, /*sigma*/ 29533484Sbostic PAIR('*','t'), 0252, /*tau*/ 29633484Sbostic PAIR('*','u'), 0253, /*upsilon*/ 29733484Sbostic PAIR('*','f'), 0254, /*phi*/ 29833484Sbostic PAIR('*','x'), 0255, /*chi*/ 29933484Sbostic PAIR('*','q'), 0256, /*psi*/ 30033484Sbostic PAIR('*','w'), 0257, /*omega*/ 30133484Sbostic PAIR('*','A'), 0101, /*Alpha*/ 30233484Sbostic PAIR('*','B'), 0102, /*Beta*/ 30333484Sbostic PAIR('*','G'), 0260, /*Gamma*/ 30433484Sbostic PAIR('*','D'), 0261, /*Delta*/ 30533484Sbostic PAIR('*','E'), 0105, /*Epsilon*/ 30633484Sbostic PAIR('*','Z'), 0132, /*Zeta*/ 30733484Sbostic PAIR('*','Y'), 0110, /*Eta*/ 30833484Sbostic PAIR('*','H'), 0262, /*Theta*/ 30933484Sbostic PAIR('*','I'), 0111, /*Iota*/ 31033484Sbostic PAIR('*','K'), 0113, /*Kappa*/ 31133484Sbostic PAIR('*','L'), 0263, /*Lambda*/ 31233484Sbostic PAIR('*','M'), 0115, /*Mu*/ 31333484Sbostic PAIR('*','N'), 0116, /*Nu*/ 31433484Sbostic PAIR('*','C'), 0264, /*Xi*/ 31533484Sbostic PAIR('*','O'), 0117, /*Omicron*/ 31633484Sbostic PAIR('*','P'), 0265, /*Pi*/ 31733484Sbostic PAIR('*','R'), 0120, /*Rho*/ 31833484Sbostic PAIR('*','S'), 0266, /*Sigma*/ 31933484Sbostic PAIR('*','T'), 0124, /*Tau*/ 32033484Sbostic PAIR('*','U'), 0270, /*Upsilon*/ 32133484Sbostic PAIR('*','F'), 0271, /*Phi*/ 32233484Sbostic PAIR('*','X'), 0130, /*Chi*/ 32333484Sbostic PAIR('*','Q'), 0272, /*Psi*/ 32433484Sbostic PAIR('*','W'), 0273, /*Omega*/ 32533484Sbostic PAIR('s','r'), 0274, /*square root*/ 32633484Sbostic PAIR('t','s'), 0275, /*terminal sigma*/ 32733484Sbostic PAIR('r','n'), 0276, /*root en*/ 32833484Sbostic PAIR('>','='), 0277, /*>=*/ 32933484Sbostic PAIR('<','='), 0300, /*<=*/ 33033484Sbostic PAIR('=','='), 0301, /*identically equal*/ 33133484Sbostic PAIR('~','='), 0303, /*approx =*/ 33233484Sbostic PAIR('a','p'), 0304, /*approximates*/ 33333484Sbostic PAIR('!','='), 0305, /*not equal*/ 33433484Sbostic PAIR('-','>'), 0306, /*right arrow*/ 33533484Sbostic PAIR('<','-'), 0307, /*left arrow*/ 33633484Sbostic PAIR('u','a'), 0310, /*up arrow*/ 33733484Sbostic PAIR('d','a'), 0311, /*down arrow*/ 33833484Sbostic PAIR('e','q'), 0312, /*equation equal*/ 33933484Sbostic PAIR('m','u'), 0313, /*multiply*/ 34033484Sbostic PAIR('d','i'), 0314, /*divide*/ 34133484Sbostic PAIR('+','-'), 0315, /*plus-minus*/ 34233484Sbostic PAIR('c','u'), 0316, /*cup (union)*/ 34333484Sbostic PAIR('c','a'), 0317, /*cap (intersection)*/ 34433484Sbostic PAIR('s','b'), 0320, /*subset of*/ 34533484Sbostic PAIR('s','p'), 0321, /*superset of*/ 34633484Sbostic PAIR('i','b'), 0322, /*improper subset*/ 34733484Sbostic PAIR('i','p'), 0323, /* " superset*/ 34833484Sbostic PAIR('i','f'), 0324, /*infinity*/ 34933484Sbostic PAIR('p','d'), 0325, /*partial derivative*/ 35033484Sbostic PAIR('g','r'), 0326, /*gradient*/ 35133484Sbostic PAIR('n','o'), 0327, /*not*/ 35233484Sbostic PAIR('i','s'), 0330, /*integral sign*/ 35333484Sbostic PAIR('p','t'), 0331, /*proportional to*/ 35433484Sbostic PAIR('e','s'), 0332, /*empty set*/ 35533484Sbostic PAIR('m','o'), 0333, /*member of*/ 35633484Sbostic PAIR('p','l'), 0334, /*equation plus*/ 35733484Sbostic PAIR('r','g'), 0335, /*registered*/ 35833484Sbostic PAIR('c','o'), 0336, /*copyright*/ 35933484Sbostic PAIR('b','r'), 0337, /*box vert rule*/ 36033484Sbostic PAIR('c','t'), 0340, /*cent sign*/ 36133484Sbostic PAIR('d','d'), 0341, /*dbl dagger*/ 36233484Sbostic PAIR('r','h'), 0342, /*right hand*/ 36333484Sbostic PAIR('l','h'), 0343, /*left hand*/ 36433484Sbostic PAIR('*','*'), 0344, /*math * */ 36533484Sbostic PAIR('b','s'), 0345, /*bell system sign*/ 36633484Sbostic PAIR('o','r'), 0346, /*or*/ 36733484Sbostic PAIR('c','i'), 0347, /*circle*/ 36833484Sbostic PAIR('l','t'), 0350, /*left top (of big curly)*/ 36933484Sbostic PAIR('l','b'), 0351, /*left bottom*/ 37033484Sbostic PAIR('r','t'), 0352, /*right top*/ 37133484Sbostic PAIR('r','b'), 0353, /*right bot*/ 37233484Sbostic PAIR('l','k'), 0354, /*left center of big curly bracket*/ 37333484Sbostic PAIR('r','k'), 0355, /*right center of big curly bracket*/ 37433484Sbostic PAIR('b','v'), 0356, /*bold vertical*/ 37533484Sbostic PAIR('l','f'), 0357, /*left floor (left bot of big sq bract)*/ 37633484Sbostic PAIR('r','f'), 0360, /*right floor (rb of ")*/ 37733484Sbostic PAIR('l','c'), 0361, /*left ceiling (lt of ")*/ 37833484Sbostic PAIR('r','c'), 0362, /*right ceiling (rt of ")*/ 3797111Srrh 0,0}; 380