⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qfont.c

📁 <B>Digital的Unix操作系统VAX 4.2源码</B>
💻 C
📖 第 1 页 / 共 5 页
字号:
#ifndef lintstatic char *sccsid = "@(#)qfont.c	4.1      (ULTRIX)  7/2/90";#endif lint/************************************************************************ *									* *			Copyright (c) 1984, 1987 by			* *		Digital Equipment Corporation, Maynard, MA		* *			All rights reserved.				* *									* *   This software is furnished under a license and may be used and	* *   copied  only  in accordance with the terms of such license and	* *   with the  inclusion  of  the  above  copyright  notice.   This	* *   software  or  any  other copies thereof may not be provided or	* *   otherwise made available to any other person.  No title to and	* *   ownership of the software is hereby transferred.			* *									* *   This software is  derived  from  software  received  from  the	* *   University    of   California,   Berkeley,   and   from   Bell	* *   Laboratories.  Use, duplication, or disclosure is  subject  to	* *   restrictions  under  license  agreements  with  University  of	* *   California and with AT&T.						* *									* *   The information in this software is subject to change  without	* *   notice  and should not be construed as a commitment by Digital	* *   Equipment Corporation.						* *									* *   Digital assumes no responsibility for the use  or  reliability	* *   of its software on equipment which is not supplied by Digital.	* *									* ************************************************************************//* * The following tables are used to translate LK201 key strokes * into ascii characters. The tables also support the special * function keys. * * MODIFICATION HISTORY * * 23-Jun-88	darrell *	Put the Firefox fonts within an #ifdef KERNEL, to keep ultrixload *	small.  In ultrixload firefox uses console callback routines to  *	print to the console, so the fonts are not needed. * * 07-Jun-88	darrell for Ali *	Added VAX60 (Firefox LEGSS) support. * * 9-Nov-87	Tim Burke * *	Modified to allow 8-bit input and output on graphics devices.  This *	involved changing the special function bit to be the 9-th instead *	of the 8-th bit.  The character font has also been increased to include *	the printable characters of value greater than 0177. *	To include 8-bit input the q_key entries must be changed to the  *	corresponding 8-bit character. */unsigned short q_key[]={	 0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*   0 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*   8 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00	/*  16 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*  24 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*  32 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*  40 */ 	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*  48 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*  56 */ 	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*  64 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*  72 */ 	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x101 ,0x102 /*  80 */	,0x103 ,0x104 ,0x105 ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*  88 */ 	,0x00  ,0x00  ,0x00  ,0x00  ,0x106 ,0x107 ,0x108 ,0x109 /*  96 */	,0x10a ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /* 104 */ 	,0x00  ,0x1b  ,0x08  ,0x0a  ,0x10b ,0x00  ,0x00  ,0x00  /* 112 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x10c ,0x10d ,0x00  ,0x00  /* 120 */	,0x10e ,0x10f ,0x110 ,0x111 ,0x00  ,0x00  ,0x00  ,0x00  /* 128 */	,0x00  ,0x00  ,0x112 ,0x113 ,0x114 ,0x115 ,0x116 ,0x117 /* 136 */	,0x00  ,0x00  ,0x120 ,0x00  ,0x121 ,0x122 ,0x123 ,0x124 /* 144 */	,0x125 ,0x126 ,0x127 ,0x128 ,0x129 ,0x12a ,0x12b ,0x12c /* 152 */	,0x12d ,0x118 ,0x119 ,0x11a ,0x11b ,0x00  ,0x00  ,0x11c /* 160 */	,0x11d ,0x11e ,0x11f ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /* 168 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /* 176 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x7f  ,'\r'  ,0x09  ,'`'   /* 184 */	,'1'   ,'q'   ,'a'   ,'z'   ,0x00  ,'2'   ,'w'   ,'s'   /* 192 */	,'x'   ,'<'   ,0x00  ,'3'   ,'e'   ,'d'   ,'c'   ,0x00  /* 200 */	,'4'   ,'r'   ,'f'   ,'v'   ,' '   ,0x00  ,'5'   ,'t'   /* 208 */	,'g'   ,'b'   ,0x00  ,'6'   ,'y'   ,'h'   ,'n'   ,0x00  /* 216 */	,'7'   ,'u'   ,'j'   ,'m'   ,0x00  ,'8'   ,'i'   ,'k'   /* 224 */	,','   ,0x00  ,'9'   ,'o'   ,'l'   ,'.'   ,0x00  ,'0'   /* 232 */	,'p'   ,0x00  ,';'   ,'/'   ,0x00  ,'='   ,']'   ,'\\'  /* 240 */	,0x00  ,'-'   ,'['   ,'\''  ,0x00  ,0x00  ,0x00  ,0x00  /* 248 */};unsigned short q_shift_key[]={	 0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*   0 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*   8 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00	/*  16 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*  24 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*  32 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*  40 */ 	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*  48 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*  56 */ 	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*  64 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*  72 */ 	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x101 ,0x102 /*  80 */	,0x103 ,0x104 ,0x105 ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /*  88 */ 	,0x00  ,0x00  ,0x00  ,0x00  ,0x106 ,0x107 ,0x108 ,0x109 /*  96 */	,0x10a ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /* 104 */ 	,0x00  ,0x1b  ,0x08  ,0x0a  ,0x10b ,0x00  ,0x00  ,0x00  /* 112 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x10c ,0x10d ,0x00  ,0x00  /* 120 */	,0x10e ,0x10f ,0x110 ,0x111 ,0x00  ,0x00  ,0x00  ,0x00  /* 128 */	,0x00  ,0x00  ,0x112 ,0x113 ,0x114 ,0x115 ,0x116 ,0x117 /* 136 */	,0x00  ,0x00  ,0x120 ,0x00  ,0x121 ,0x122 ,0x123 ,0x124 /* 144 */	,0x125 ,0x126 ,0x127 ,0x128 ,0x129 ,0x12a ,0x12b ,0x12c /* 152 */	,0x12d ,0x118 ,0x119 ,0x11a ,0x11b ,0x00  ,0x00  ,0x11c /* 160 */	,0x11d ,0x11e ,0x11f ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /* 168 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  ,0x00  /* 176 */	,0x00  ,0x00  ,0x00  ,0x00  ,0x7f  ,'\r'  ,0x09  ,'~'   /* 184 */	,'!'   ,'Q'   ,'A'   ,'Z'   ,0x00  ,'@'   ,'W'   ,'S'   /* 192 */	,'X'   ,'>'   ,0x00  ,'#'   ,'E'   ,'D'   ,'C'   ,0x00  /* 200 */	,'$'   ,'R'   ,'F'   ,'V'   ,' '   ,0x00  ,'%'   ,'T'   /* 208 */	,'G'   ,'B'   ,0x00  ,'^'   ,'Y'   ,'H'   ,'N'   ,0x00  /* 216 */	,'&'   ,'U'   ,'J'   ,'M'   ,0x00  ,'*'   ,'I'   ,'K'   /* 224 */	,','   ,0x00  ,'('   ,'O'   ,'L'   ,'.'   ,0x00  ,')'   /* 232 */	,'P'   ,0x00  ,':'   ,'?'   ,0x00  ,'+'   ,'}'   ,'|'   /* 240 */	,0x00  ,'_'   ,'{'   ,'"'   ,0x00  ,0x00  ,0x00  ,0x00  /* 248 */};/* * LK201 special purpose keys. Translations from the tables above * includes codes for the function keys and other goodies. They can * be determined by the presence of the 8th bit being set.  The  * following table is accessed by removing that bit and using the  * result as the index to the following table. Note that table begins * a null entry. */char	*q_special[]={ 0,	"\33[11~",			/* f1 */	"\33[12~",			/* f2 */	"\33[13~",			/* f3 */	"\33[14~",			/* f4 */	"\33[15~",			/* f5 */	"\33[17~",			/* f6 */	"\33[18~",			/* f7 */	"\33[19~",			/* f8 */	"\33[20~",			/* f9 */	"\33[21~",			/* f10 */	"\33[26~",			/* f14 */	"\33[28~",			/* f15 */	"\33[29~",			/* f16 */	"\33[31~",			/* f17 */	"\33[32~",			/* f18 */	"\33[33~",			/* f19 */	"\33[34~",			/* f20 */	"\33[1~",			/* find */	"\33[2~",			/* insert */	"\33[3~",			/* remove */	"\33[4~",			/* select */	"\33[5~",			/* prev */	"\33[6~",			/* next */	"\33OP",			/* pf1 */	"\33OQ",			/* pf2 */	"\33OR",			/* pf3 */	"\33OS",			/* pf4 */	"\33[D",			/* left */	"\33[C",			/* right */	"\33[B",			/* down */	"\33[A",			/* up */	"\33Op",			/* key pad 0 */	"\33On",			/* key pad . */	"\33OM",			/* key pad enter */	"\33Oq",			/* key pad 1 */	"\33Or",			/* key pad 2 */	"\33Os",			/* key pad 3 */	"\33Ot",			/* key pad 4 */	"\33Ou",			/* key pad 5 */	"\33Ov",			/* key pad 6 */	"\33O/*",			/* key pad , */	"\33Ow",			/* key pad 7 */	"\33Ox",			/* key pad 8 */	"\33Oy",			/* key pad 9 */	"\33Om",			/* key pad - */	/*	 * The following strings are to allow a numeric keypad	 * mode and still use the same translation tables	 */	"0",	".",	"\r",	"1",	"2",	"3",	"4",	"5",	"6",	",",	"7",	"8",	"9",	"-"};/* * QVSS font table of displayable characters. */char  q_font[]={/* This font is 8x15 pixels *//* with the baseline at 3 pixels *//* character 32 = ' ' (space) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ *//* character 33 = '!' (exclam) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x01,	/* *....... */	0x01,	/* *....... */	0x01,	/* *....... */	0x01,	/* *....... */	0x01,	/* *....... */	0x00,	/* ........ */	0x01,	/* *....... */	0x01,	/* *....... */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ *//* character 34 = '"' (quotedbl) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x09,	/* *..*.... */	0x09,	/* *..*.... */	0x09,	/* *..*.... */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ *//* character 35 = '#' (numbersign) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x12,	/* .*..*... */	0x12,	/* .*..*... */	0x3f,	/* ******.. */	0x12,	/* .*..*... */	0x3f,	/* ******.. */	0x12,	/* .*..*... */	0x12,	/* .*..*... */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ *//* character 36 = '$' (dollar) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x04,	/* ..*..... */	0x0e,	/* .***.... */	0x15,	/* *.*.*... */	0x06,	/* .**..... */	0x0c,	/* ..**.... */	0x15,	/* *.*.*... */	0x0e,	/* .***.... */	0x04,	/* ..*..... */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ *//* character 37 = '%' (percent) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x12,	/* .*..*... */	0x1d,	/* *.***... */	0x0a,	/* .*.*.... */	0x08,	/* ...*.... */	0x04,	/* ..*..... */	0x14,	/* ..*.*... */	0x2a,	/* .*.*.*.. */	0x12,	/* .*..*... */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ *//* character 38 = '&' (ampersand) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x04,	/* ..*..... */	0x0a,	/* .*.*.... */	0x0a,	/* .*.*.... */	0x04,	/* ..*..... */	0x2a,	/* .*.*.*.. */	0x11,	/* *...*... */	0x11,	/* *...*... */	0x2e,	/* .***.*.. */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ *//* character 39 = ''' (quoteright) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x02,	/* .*...... */	0x02,	/* .*...... */	0x01,	/* *....... */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ *//* character 40 = '(' (parenleft) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x04,	/* ..*..... */	0x02,	/* .*...... */	0x02,	/* .*...... */	0x01,	/* *....... */	0x01,	/* *....... */	0x01,	/* *....... */	0x01,	/* *....... */	0x02,	/* .*...... */	0x02,	/* .*...... */	0x04,	/* ..*..... */	0x00,	/* ........ */	0x00,	/* ........ *//* character 41 = ')' (parenright) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x01,	/* *....... */	0x02,	/* .*...... */	0x02,	/* .*...... */	0x04,	/* ..*..... */	0x04,	/* ..*..... */	0x04,	/* ..*..... */	0x04,	/* ..*..... */	0x02,	/* .*...... */	0x02,	/* .*...... */	0x01,	/* *....... */	0x00,	/* ........ */	0x00,	/* ........ *//* character 42 = '*' (asterisk) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x04,	/* ..*..... */	0x15,	/* *.*.*... */	0x0e,	/* .***.... */	0x0e,	/* .***.... */	0x15,	/* *.*.*... */	0x04,	/* ..*..... */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ *//* character 43 = '+' (plus) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x04,	/* ..*..... */	0x04,	/* ..*..... */	0x1f,	/* *****... */	0x04,	/* ..*..... */	0x04,	/* ..*..... */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ *//* character 44 = ',' (comma) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x02,	/* .*...... */	0x02,	/* .*...... */	0x01,	/* *....... */	0x00,	/* ........ */	0x00,	/* ........ *//* character 45 = '-' (minus) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x3f,	/* ******.. */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ *//* character 46 = '.' (period) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x01,	/* *....... */	0x01,	/* *....... */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ *//* character 47 = '/' (slash) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x08,	/* ...*.... */	0x08,	/* ...*.... */	0x04,	/* ..*..... */	0x04,	/* ..*..... */	0x02,	/* .*...... */	0x02,	/* .*...... */	0x01,	/* *....... */	0x01,	/* *....... */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ *//* character 48 = '0' (zero) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x04,	/* ..*..... */	0x0a,	/* .*.*.... */	0x11,	/* *...*... */	0x11,	/* *...*... */	0x11,	/* *...*... */	0x11,	/* *...*... */	0x0a,	/* .*.*.... */	0x04,	/* ..*..... */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ *//* character 49 = '1' (one) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x04,	/* ..*..... */	0x06,	/* .**..... */	0x05,	/* *.*..... */	0x04,	/* ..*..... */	0x04,	/* ..*..... */	0x04,	/* ..*..... */	0x04,	/* ..*..... */	0x1f,	/* *****... */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ *//* character 50 = '2' (two) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x0e,	/* .***.... */	0x11,	/* *...*... */	0x10,	/* ....*... */	0x08,	/* ...*.... */	0x04,	/* ..*..... */	0x02,	/* .*...... */	0x01,	/* *....... */	0x1f,	/* *****... */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ *//* character 51 = '3' (three) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x0e,	/* .***.... */	0x11,	/* *...*... */	0x10,	/* ....*... */	0x0c,	/* ..**.... */	0x10,	/* ....*... */	0x10,	/* ....*... */	0x11,	/* *...*... */	0x0e,	/* .***.... */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ *//* character 52 = '4' (four) */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ */	0x08,	/* ...*.... */	0x0c,	/* ..**.... */	0x0a,	/* .*.*.... */	0x09,	/* *..*.... */	0x09,	/* *..*.... */	0x1f,	/* *****... */	0x08,	/* ...*.... */	0x08,	/* ...*.... */	0x00,	/* ........ */	0x00,	/* ........ */	0x00,	/* ........ *//* character 53 = '5' (five) */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -