* Copyright (c) 1988 Regents of the University of California.
* Redistribution and use in source and binary forms are permitted
* provided that the above copyright notice and this paragraph are
* duplicated in all such forms and that any documentation,
* advertising materials, and other materials related to such
* distribution and use acknowledge that the software was developed
* by the University of California, Berkeley. The name of the
* University may not be used to endorse or promote products derived
* from this software without specific prior written permission.
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
* @(#)qfont.c 1.3 (Berkeley) %G%
* @(#)qfont.c 1.1 (ULTRIX) 8/21/85
* The following tables are used to translate LK201 key strokes
* into ascii characters. The tables also support the special
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 ,0x81 ,0x82 /* 80 */
,0x83 ,0x84 ,0x85 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 /* 88 */
,0x00 ,0x00 ,0x00 ,0x00 ,0x86 ,0x87 ,0x88 ,0x89 /* 96 */
,0x8a ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 /* 104 */
,0x00 ,0x1b ,0x08 ,0x0a ,0x8b ,0x00 ,0x00 ,0x00 /* 112 */
,0x00 ,0x00 ,0x00 ,0x00 ,0x8c ,0x8d ,0x00 ,0x00 /* 120 */
,0x8e ,0x8f ,0x90 ,0x91 ,0x00 ,0x00 ,0x00 ,0x00 /* 128 */
,0x00 ,0x00 ,0x92 ,0x93 ,0x94 ,0x95 ,0x96 ,0x97 /* 136 */
,0x00 ,0x00 ,0xa0 ,0x00 ,0xa1 ,0xa2 ,0xa3 ,0xa4 /* 144 */
,0xa5 ,0xa6 ,0xa7 ,0xa8 ,0xa9 ,0xaa ,0xab ,0xac /* 152 */
,0xad ,0x98 ,0x99 ,0x9a ,0x9b ,0x00 ,0x00 ,0x9c /* 160 */
,0x9d ,0x9e ,0x9f ,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 */
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 ,0x81 ,0x82 /* 80 */
,0x83 ,0x84 ,0x85 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 /* 88 */
,0x00 ,0x00 ,0x00 ,0x00 ,0x86 ,0x87 ,0x88 ,0x89 /* 96 */
,0x8a ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 /* 104 */
,0x00 ,0x1b ,0x08 ,0x0a ,0x8b ,0x00 ,0x00 ,0x00 /* 112 */
,0x00 ,0x00 ,0x00 ,0x00 ,0x8c ,0x8d ,0x00 ,0x00 /* 120 */
,0x8e ,0x8f ,0x90 ,0x91 ,0x00 ,0x00 ,0x00 ,0x00 /* 128 */
,0x00 ,0x00 ,0x92 ,0x93 ,0x94 ,0x95 ,0x96 ,0x97 /* 136 */
,0x00 ,0x00 ,0xa0 ,0x00 ,0xa1 ,0xa2 ,0xa3 ,0xa4 /* 144 */
,0xa5 ,0xa6 ,0xa7 ,0xa8 ,0xa9 ,0xaa ,0xab ,0xac /* 152 */
,0xad ,0x98 ,0x99 ,0x9a ,0x9b ,0x00 ,0x00 ,0x9c /* 160 */
,0x9d ,0x9e ,0x9f ,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
"\33OM", /* key pad enter */
"\33O/*", /* key pad , */
* The following strings are to allow a numeric keypad
* mode and still use the same translation tables
* QVSS font table of displayable characters.
0x00, /* 0x00000000 /* */
0x00, /* 0x00000000 /* */
0x00, /* 0x00000000 /* */
0x00, /* 0x00000000 /* */
0x00, /* 0x00000000 /* */
0x08, /* 0x00001000 /* */
0x1c, /* 0x00011100 /* */
0x08, /* 0x00001000 /* */
0x00, /* 0x00000000 /* */
0x00, /* 0x00000000 /* */
0x1c, /* 0x00011100 /* */
0x0c, /* 0x00001100 /* */
0x02, /* 0x00000010 /* */
0x00, /* 0x00000000 /* */
0x00, /* 0x00000000 /* */
unsigned short q_cursor
[] = {