TekPrsTbl.c revision d522f475
1/* $XTermId: TekPrsTbl.c,v 1.8 2006/02/13 01:14:57 tom Exp $ */
2
3/*
4 * Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts.
5 *
6 *                         All Rights Reserved
7 *
8 * Permission to use, copy, modify, and distribute this software and its
9 * documentation for any purpose and without fee is hereby granted,
10 * provided that the above copyright notice appear in all copies and that
11 * both that copyright notice and this permission notice appear in
12 * supporting documentation, and that the name of Digital Equipment
13 * Corporation not be used in advertising or publicity pertaining to
14 * distribution of the software without specific, written prior permission.
15 *
16 *
17 * DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
18 * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
19 * DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
20 * ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
21 * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
22 * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
23 * SOFTWARE.
24 */
25/* $XFree86: xc/programs/xterm/TekPrsTbl.c,v 3.5 2006/02/13 01:14:57 dickey Exp $ */
26
27#include <Tekparse.h>
28
29Const int Talptable[] =		/* US (^_) normal alpha mode */
30{
31/*	NUL		SOH		STX		ETX	*/
32CASE_IGNORE,
33CASE_IGNORE,
34CASE_IGNORE,
35CASE_IGNORE,
36/*	EOT		ENQ		ACK		BEL	*/
37CASE_IGNORE,
38CASE_IGNORE,
39CASE_IGNORE,
40CASE_BEL,
41/*	BS		HT		NL		VT	*/
42CASE_BS,
43CASE_TAB,
44CASE_LF,
45CASE_UP,
46/*	NP		CR		SO		SI	*/
47CASE_IGNORE,
48CASE_CR,
49CASE_IGNORE,
50CASE_IGNORE,
51/*	DLE		DC1		DC2		DC3	*/
52CASE_IGNORE,
53CASE_IGNORE,
54CASE_IGNORE,
55CASE_IGNORE,
56/*	DC4		NAK		SYN		ETB	*/
57CASE_IGNORE,
58CASE_IGNORE,
59CASE_IGNORE,
60CASE_IGNORE,
61/*	CAN		EM		SUB		ESC	*/
62CASE_IGNORE,
63CASE_IGNORE,
64CASE_IGNORE,
65CASE_ESC_STATE,
66/*	FS		GS		RS		US	*/
67CASE_PT_STATE,
68CASE_PLT_STATE,
69CASE_IPL_STATE,
70CASE_ALP_STATE,
71/*	SP		!		"		#	*/
72CASE_SP,
73CASE_PRINT,
74CASE_PRINT,
75CASE_PRINT,
76/*	$		%		&		'	*/
77CASE_PRINT,
78CASE_PRINT,
79CASE_PRINT,
80CASE_PRINT,
81/*	(		)		*		+	*/
82CASE_PRINT,
83CASE_PRINT,
84CASE_PRINT,
85CASE_PRINT,
86/*	,		-		.		/	*/
87CASE_PRINT,
88CASE_PRINT,
89CASE_PRINT,
90CASE_PRINT,
91/*	0		1		2		3	*/
92CASE_PRINT,
93CASE_PRINT,
94CASE_PRINT,
95CASE_PRINT,
96/*	4		5		6		7	*/
97CASE_PRINT,
98CASE_PRINT,
99CASE_PRINT,
100CASE_PRINT,
101/*	8		9		:		;	*/
102CASE_PRINT,
103CASE_PRINT,
104CASE_PRINT,
105CASE_PRINT,
106/*	<		=		>		?	*/
107CASE_PRINT,
108CASE_PRINT,
109CASE_PRINT,
110CASE_PRINT,
111/*	@		A		B		C	*/
112CASE_PRINT,
113CASE_PRINT,
114CASE_PRINT,
115CASE_PRINT,
116/*	D		E		F		G	*/
117CASE_PRINT,
118CASE_PRINT,
119CASE_PRINT,
120CASE_PRINT,
121/*	H		I		J		K	*/
122CASE_PRINT,
123CASE_PRINT,
124CASE_PRINT,
125CASE_PRINT,
126/*	L		M		N		O	*/
127CASE_PRINT,
128CASE_PRINT,
129CASE_PRINT,
130CASE_PRINT,
131/*	P		Q		R		S	*/
132CASE_PRINT,
133CASE_PRINT,
134CASE_PRINT,
135CASE_PRINT,
136/*	T		U		V		W	*/
137CASE_PRINT,
138CASE_PRINT,
139CASE_PRINT,
140CASE_PRINT,
141/*	X		Y		Z		[	*/
142CASE_PRINT,
143CASE_PRINT,
144CASE_PRINT,
145CASE_PRINT,
146/*	\		]		^		_	*/
147CASE_PRINT,
148CASE_PRINT,
149CASE_PRINT,
150CASE_PRINT,
151/*	`		a		b		c	*/
152CASE_PRINT,
153CASE_PRINT,
154CASE_PRINT,
155CASE_PRINT,
156/*	d		e		f		g	*/
157CASE_PRINT,
158CASE_PRINT,
159CASE_PRINT,
160CASE_PRINT,
161/*	h		i		j		k	*/
162CASE_PRINT,
163CASE_PRINT,
164CASE_PRINT,
165CASE_PRINT,
166/*	l		m		n		o	*/
167CASE_PRINT,
168CASE_PRINT,
169CASE_PRINT,
170CASE_PRINT,
171/*	p		q		r		s	*/
172CASE_PRINT,
173CASE_PRINT,
174CASE_PRINT,
175CASE_PRINT,
176/*	t		u		v		w	*/
177CASE_PRINT,
178CASE_PRINT,
179CASE_PRINT,
180CASE_PRINT,
181/*	x		y		z		{	*/
182CASE_PRINT,
183CASE_PRINT,
184CASE_PRINT,
185CASE_PRINT,
186/*	|		}		~		DEL	*/
187CASE_PRINT,
188CASE_PRINT,
189CASE_PRINT,
190CASE_IGNORE,
191/*      0x80            0x81            0x82            0x83    */
192CASE_IGNORE,
193CASE_IGNORE,
194CASE_IGNORE,
195CASE_IGNORE,
196/*      0x84            0x85            0x86            0x87    */
197CASE_IGNORE,
198CASE_IGNORE,
199CASE_IGNORE,
200CASE_IGNORE,
201/*      0x88            0x89            0x8a            0x8b    */
202CASE_IGNORE,
203CASE_IGNORE,
204CASE_IGNORE,
205CASE_IGNORE,
206/*      0x8c            0x8d            0x8e            0x8f    */
207CASE_IGNORE,
208CASE_IGNORE,
209CASE_IGNORE,
210CASE_IGNORE,
211/*      0x90            0x91            0x92            0x93    */
212CASE_IGNORE,
213CASE_IGNORE,
214CASE_IGNORE,
215CASE_IGNORE,
216/*      0x94            0x95            0x96            0x97    */
217CASE_IGNORE,
218CASE_IGNORE,
219CASE_IGNORE,
220CASE_IGNORE,
221/*      0x99            0x99            0x9a            0x9b    */
222CASE_IGNORE,
223CASE_IGNORE,
224CASE_IGNORE,
225CASE_IGNORE,
226/*      0x9c            0x9d            0x9e            0x9f    */
227CASE_IGNORE,
228CASE_IGNORE,
229CASE_IGNORE,
230CASE_IGNORE,
231/*      nobreakspace    exclamdown      cent            sterling        */
232CASE_PRINT,
233CASE_PRINT,
234CASE_PRINT,
235CASE_PRINT,
236/*      currency        yen             brokenbar       section         */
237CASE_PRINT,
238CASE_PRINT,
239CASE_PRINT,
240CASE_PRINT,
241/*      diaeresis       copyright       ordfeminine     guillemotleft   */
242CASE_PRINT,
243CASE_PRINT,
244CASE_PRINT,
245CASE_PRINT,
246/*      notsign         hyphen          registered      macron          */
247CASE_PRINT,
248CASE_PRINT,
249CASE_PRINT,
250CASE_PRINT,
251/*      degree          plusminus       twosuperior     threesuperior   */
252CASE_PRINT,
253CASE_PRINT,
254CASE_PRINT,
255CASE_PRINT,
256/*      acute           mu              paragraph       periodcentered  */
257CASE_PRINT,
258CASE_PRINT,
259CASE_PRINT,
260CASE_PRINT,
261/*      cedilla         onesuperior     masculine       guillemotright  */
262CASE_PRINT,
263CASE_PRINT,
264CASE_PRINT,
265CASE_PRINT,
266/*      onequarter      onehalf         threequarters   questiondown    */
267CASE_PRINT,
268CASE_PRINT,
269CASE_PRINT,
270CASE_PRINT,
271/*      Agrave          Aacute          Acircumflex     Atilde          */
272CASE_PRINT,
273CASE_PRINT,
274CASE_PRINT,
275CASE_PRINT,
276/*      Adiaeresis      Aring           AE              Ccedilla        */
277CASE_PRINT,
278CASE_PRINT,
279CASE_PRINT,
280CASE_PRINT,
281/*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
282CASE_PRINT,
283CASE_PRINT,
284CASE_PRINT,
285CASE_PRINT,
286/*      Igrave          Iacute          Icircumflex     Idiaeresis      */
287CASE_PRINT,
288CASE_PRINT,
289CASE_PRINT,
290CASE_PRINT,
291/*      Eth             Ntilde          Ograve          Oacute          */
292CASE_PRINT,
293CASE_PRINT,
294CASE_PRINT,
295CASE_PRINT,
296/*      Ocircumflex     Otilde          Odiaeresis      multiply        */
297CASE_PRINT,
298CASE_PRINT,
299CASE_PRINT,
300CASE_PRINT,
301/*      Ooblique        Ugrave          Uacute          Ucircumflex     */
302CASE_PRINT,
303CASE_PRINT,
304CASE_PRINT,
305CASE_PRINT,
306/*      Udiaeresis      Yacute          Thorn           ssharp          */
307CASE_PRINT,
308CASE_PRINT,
309CASE_PRINT,
310CASE_PRINT,
311/*      agrave          aacute          acircumflex     atilde          */
312CASE_PRINT,
313CASE_PRINT,
314CASE_PRINT,
315CASE_PRINT,
316/*      adiaeresis      aring           ae              ccedilla        */
317CASE_PRINT,
318CASE_PRINT,
319CASE_PRINT,
320CASE_PRINT,
321/*      egrave          eacute          ecircumflex     ediaeresis      */
322CASE_PRINT,
323CASE_PRINT,
324CASE_PRINT,
325CASE_PRINT,
326/*      igrave          iacute          icircumflex     idiaeresis      */
327CASE_PRINT,
328CASE_PRINT,
329CASE_PRINT,
330CASE_PRINT,
331/*      eth             ntilde          ograve          oacute          */
332CASE_PRINT,
333CASE_PRINT,
334CASE_PRINT,
335CASE_PRINT,
336/*      ocircumflex     otilde          odiaeresis      division        */
337CASE_PRINT,
338CASE_PRINT,
339CASE_PRINT,
340CASE_PRINT,
341/*      oslash          ugrave          uacute          ucircumflex     */
342CASE_PRINT,
343CASE_PRINT,
344CASE_PRINT,
345CASE_PRINT,
346/*      udiaeresis      yacute          thorn           ydiaeresis      */
347CASE_PRINT,
348CASE_PRINT,
349CASE_PRINT,
350CASE_PRINT,
351};
352
353Const int Tbestable[] =		/* ESC while in bypass state */
354{
355/*	NUL		SOH		STX		ETX	*/
356CASE_BYP_STATE,
357CASE_BYP_STATE,
358CASE_BYP_STATE,
359CASE_VT_MODE,
360/*	EOT		ENQ		ACK		BEL	*/
361CASE_BYP_STATE,
362CASE_REPORT,
363CASE_BYP_STATE,
364CASE_BEL,
365/*	BS		HT		NL		VT	*/
366CASE_BS,
367CASE_TAB,
368CASE_IGNORE,
369CASE_UP,
370/*	NP		CR		SO		SI	*/
371CASE_PAGE,
372CASE_IGNORE,
373CASE_BYP_STATE,
374CASE_BYP_STATE,
375/*	DLE		DC1		DC2		DC3	*/
376CASE_BYP_STATE,
377CASE_BYP_STATE,
378CASE_BYP_STATE,
379CASE_BYP_STATE,
380/*	DC4		NAK		SYN		ETB	*/
381CASE_BYP_STATE,
382CASE_BYP_STATE,
383CASE_BYP_STATE,
384CASE_COPY,
385/*	CAN		EM		SUB		ESC	*/
386CASE_BYP_STATE,
387CASE_BYP_STATE,
388CASE_GIN,
389CASE_IGNORE,
390/*	FS		GS		RS		US	*/
391CASE_SPT_STATE,
392CASE_PLT_STATE,
393CASE_IPL_STATE,
394CASE_ALP_STATE,
395/*	SP		!		"		#	*/
396CASE_BYP_STATE,
397CASE_BYP_STATE,
398CASE_BYP_STATE,
399CASE_BYP_STATE,
400/*	$		%		&		'	*/
401CASE_BYP_STATE,
402CASE_BYP_STATE,
403CASE_BYP_STATE,
404CASE_BYP_STATE,
405/*	(		)		*		+	*/
406CASE_BYP_STATE,
407CASE_BYP_STATE,
408CASE_BYP_STATE,
409CASE_BYP_STATE,
410/*	,		-		.		/	*/
411CASE_BYP_STATE,
412CASE_BYP_STATE,
413CASE_BYP_STATE,
414CASE_BYP_STATE,
415/*	0		1		2		3	*/
416CASE_BYP_STATE,
417CASE_BYP_STATE,
418CASE_BYP_STATE,
419CASE_BYP_STATE,
420/*	4		5		6		7	*/
421CASE_BYP_STATE,
422CASE_BYP_STATE,
423CASE_BYP_STATE,
424CASE_BYP_STATE,
425/*	8		9		:		;	*/
426CASE_BYP_STATE,
427CASE_BYP_STATE,
428CASE_BYP_STATE,
429CASE_BYP_STATE,
430/*	<		=		>		?	*/
431CASE_BYP_STATE,
432CASE_BYP_STATE,
433CASE_BYP_STATE,
434CASE_BYP_STATE,
435/*	@		A		B		C	*/
436CASE_BYP_STATE,
437CASE_BYP_STATE,
438CASE_BYP_STATE,
439CASE_BYP_STATE,
440/*	D		E		F		G	*/
441CASE_BYP_STATE,
442CASE_BYP_STATE,
443CASE_BYP_STATE,
444CASE_BYP_STATE,
445/*	H		I		J		K	*/
446CASE_BYP_STATE,
447CASE_BYP_STATE,
448CASE_BYP_STATE,
449CASE_BYP_STATE,
450/*	L		M		N		O	*/
451CASE_BYP_STATE,
452CASE_BYP_STATE,
453CASE_BYP_STATE,
454CASE_BYP_STATE,
455/*	P		Q		R		S	*/
456CASE_BYP_STATE,
457CASE_BYP_STATE,
458CASE_BYP_STATE,
459CASE_BYP_STATE,
460/*	T		U		V		W	*/
461CASE_BYP_STATE,
462CASE_BYP_STATE,
463CASE_BYP_STATE,
464CASE_BYP_STATE,
465/*	X		Y		Z		[	*/
466CASE_BYP_STATE,
467CASE_BYP_STATE,
468CASE_BYP_STATE,
469CASE_BYP_STATE,
470/*	\		]		^		_	*/
471CASE_BYP_STATE,
472CASE_BYP_STATE,
473CASE_BYP_STATE,
474CASE_BYP_STATE,
475/*	`		a		b		c	*/
476CASE_BYP_STATE,
477CASE_BYP_STATE,
478CASE_BYP_STATE,
479CASE_BYP_STATE,
480/*	d		e		f		g	*/
481CASE_BYP_STATE,
482CASE_BYP_STATE,
483CASE_BYP_STATE,
484CASE_BYP_STATE,
485/*	h		i		j		k	*/
486CASE_BYP_STATE,
487CASE_BYP_STATE,
488CASE_BYP_STATE,
489CASE_BYP_STATE,
490/*	l		m		n		o	*/
491CASE_BYP_STATE,
492CASE_BYP_STATE,
493CASE_BYP_STATE,
494CASE_BYP_STATE,
495/*	p		q		r		s	*/
496CASE_BYP_STATE,
497CASE_BYP_STATE,
498CASE_BYP_STATE,
499CASE_BYP_STATE,
500/*	t		u		v		w	*/
501CASE_BYP_STATE,
502CASE_BYP_STATE,
503CASE_BYP_STATE,
504CASE_BYP_STATE,
505/*	x		y		z		{	*/
506CASE_BYP_STATE,
507CASE_BYP_STATE,
508CASE_BYP_STATE,
509CASE_BYP_STATE,
510/*	|		}		~		DEL	*/
511CASE_BYP_STATE,
512CASE_BYP_STATE,
513CASE_IGNORE,
514CASE_BYP_STATE,
515/*      0x80            0x81            0x82            0x83    */
516CASE_IGNORE,
517CASE_IGNORE,
518CASE_IGNORE,
519CASE_IGNORE,
520/*      0x84            0x85            0x86            0x87    */
521CASE_IGNORE,
522CASE_IGNORE,
523CASE_IGNORE,
524CASE_IGNORE,
525/*      0x88            0x89            0x8a            0x8b    */
526CASE_IGNORE,
527CASE_IGNORE,
528CASE_IGNORE,
529CASE_IGNORE,
530/*      0x8c            0x8d            0x8e            0x8f    */
531CASE_IGNORE,
532CASE_IGNORE,
533CASE_IGNORE,
534CASE_IGNORE,
535/*      0x90            0x91            0x92            0x93    */
536CASE_IGNORE,
537CASE_IGNORE,
538CASE_IGNORE,
539CASE_IGNORE,
540/*      0x94            0x95            0x96            0x97    */
541CASE_IGNORE,
542CASE_IGNORE,
543CASE_IGNORE,
544CASE_IGNORE,
545/*      0x99            0x99            0x9a            0x9b    */
546CASE_IGNORE,
547CASE_IGNORE,
548CASE_IGNORE,
549CASE_IGNORE,
550/*      0x9c            0x9d            0x9e            0x9f    */
551CASE_IGNORE,
552CASE_IGNORE,
553CASE_IGNORE,
554CASE_IGNORE,
555/*      nobreakspace    exclamdown      cent            sterling        */
556CASE_BYP_STATE,
557CASE_BYP_STATE,
558CASE_BYP_STATE,
559CASE_BYP_STATE,
560/*      currency        yen             brokenbar       section         */
561CASE_BYP_STATE,
562CASE_BYP_STATE,
563CASE_BYP_STATE,
564CASE_BYP_STATE,
565/*      diaeresis       copyright       ordfeminine     guillemotleft   */
566CASE_BYP_STATE,
567CASE_BYP_STATE,
568CASE_BYP_STATE,
569CASE_BYP_STATE,
570/*      notsign         hyphen          registered      macron          */
571CASE_BYP_STATE,
572CASE_BYP_STATE,
573CASE_BYP_STATE,
574CASE_BYP_STATE,
575/*      degree          plusminus       twosuperior     threesuperior   */
576CASE_BYP_STATE,
577CASE_BYP_STATE,
578CASE_BYP_STATE,
579CASE_BYP_STATE,
580/*      acute           mu              paragraph       periodcentered  */
581CASE_BYP_STATE,
582CASE_BYP_STATE,
583CASE_BYP_STATE,
584CASE_BYP_STATE,
585/*      cedilla         onesuperior     masculine       guillemotright  */
586CASE_BYP_STATE,
587CASE_BYP_STATE,
588CASE_BYP_STATE,
589CASE_BYP_STATE,
590/*      onequarter      onehalf         threequarters   questiondown    */
591CASE_BYP_STATE,
592CASE_BYP_STATE,
593CASE_BYP_STATE,
594CASE_BYP_STATE,
595/*      Agrave          Aacute          Acircumflex     Atilde          */
596CASE_BYP_STATE,
597CASE_BYP_STATE,
598CASE_BYP_STATE,
599CASE_BYP_STATE,
600/*      Adiaeresis      Aring           AE              Ccedilla        */
601CASE_BYP_STATE,
602CASE_BYP_STATE,
603CASE_BYP_STATE,
604CASE_BYP_STATE,
605/*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
606CASE_BYP_STATE,
607CASE_BYP_STATE,
608CASE_BYP_STATE,
609CASE_BYP_STATE,
610/*      Igrave          Iacute          Icircumflex     Idiaeresis      */
611CASE_BYP_STATE,
612CASE_BYP_STATE,
613CASE_BYP_STATE,
614CASE_BYP_STATE,
615/*      Eth             Ntilde          Ograve          Oacute          */
616CASE_BYP_STATE,
617CASE_BYP_STATE,
618CASE_BYP_STATE,
619CASE_BYP_STATE,
620/*      Ocircumflex     Otilde          Odiaeresis      multiply        */
621CASE_BYP_STATE,
622CASE_BYP_STATE,
623CASE_BYP_STATE,
624CASE_BYP_STATE,
625/*      Ooblique        Ugrave          Uacute          Ucircumflex     */
626CASE_BYP_STATE,
627CASE_BYP_STATE,
628CASE_BYP_STATE,
629CASE_BYP_STATE,
630/*      Udiaeresis      Yacute          Thorn           ssharp          */
631CASE_BYP_STATE,
632CASE_BYP_STATE,
633CASE_BYP_STATE,
634CASE_BYP_STATE,
635/*      agrave          aacute          acircumflex     atilde          */
636CASE_BYP_STATE,
637CASE_BYP_STATE,
638CASE_BYP_STATE,
639CASE_BYP_STATE,
640/*      adiaeresis      aring           ae              ccedilla        */
641CASE_BYP_STATE,
642CASE_BYP_STATE,
643CASE_BYP_STATE,
644CASE_BYP_STATE,
645/*      egrave          eacute          ecircumflex     ediaeresis      */
646CASE_BYP_STATE,
647CASE_BYP_STATE,
648CASE_BYP_STATE,
649CASE_BYP_STATE,
650/*      igrave          iacute          icircumflex     idiaeresis      */
651CASE_BYP_STATE,
652CASE_BYP_STATE,
653CASE_BYP_STATE,
654CASE_BYP_STATE,
655/*      eth             ntilde          ograve          oacute          */
656CASE_BYP_STATE,
657CASE_BYP_STATE,
658CASE_BYP_STATE,
659CASE_BYP_STATE,
660/*      ocircumflex     otilde          odiaeresis      division        */
661CASE_BYP_STATE,
662CASE_BYP_STATE,
663CASE_BYP_STATE,
664CASE_BYP_STATE,
665/*      oslash          ugrave          uacute          ucircumflex     */
666CASE_BYP_STATE,
667CASE_BYP_STATE,
668CASE_BYP_STATE,
669CASE_BYP_STATE,
670/*      udiaeresis      yacute          thorn           ydiaeresis      */
671CASE_BYP_STATE,
672CASE_BYP_STATE,
673CASE_BYP_STATE,
674CASE_BYP_STATE,
675};
676
677Const int Tbyptable[] =		/* ESC CAN (^X) bypass state */
678{
679/*	NUL		SOH		STX		ETX	*/
680CASE_IGNORE,
681CASE_IGNORE,
682CASE_IGNORE,
683CASE_IGNORE,
684/*	EOT		ENQ		ACK		BEL	*/
685CASE_IGNORE,
686CASE_IGNORE,
687CASE_IGNORE,
688CASE_BEL,
689/*	BS		HT		NL		VT	*/
690CASE_BS,
691CASE_TAB,
692CASE_LF,
693CASE_UP,
694/*	NP		CR		SO		SI	*/
695CASE_IGNORE,
696CASE_CR,
697CASE_IGNORE,
698CASE_IGNORE,
699/*	DLE		DC1		DC2		DC3	*/
700CASE_IGNORE,
701CASE_IGNORE,
702CASE_IGNORE,
703CASE_IGNORE,
704/*	DC4		NAK		SYN		ETB	*/
705CASE_IGNORE,
706CASE_IGNORE,
707CASE_IGNORE,
708CASE_IGNORE,
709/*	CAN		EM		SUB		ESC	*/
710CASE_IGNORE,
711CASE_IGNORE,
712CASE_IGNORE,
713CASE_BES_STATE,
714/*	FS		GS		RS		US	*/
715CASE_PT_STATE,
716CASE_PLT_STATE,
717CASE_IPL_STATE,
718CASE_ALP_STATE,
719/*	SP		!		"		#	*/
720CASE_IGNORE,
721CASE_IGNORE,
722CASE_IGNORE,
723CASE_IGNORE,
724/*	$		%		&		'	*/
725CASE_IGNORE,
726CASE_IGNORE,
727CASE_IGNORE,
728CASE_IGNORE,
729/*	(		)		*		+	*/
730CASE_IGNORE,
731CASE_IGNORE,
732CASE_IGNORE,
733CASE_IGNORE,
734/*	,		-		.		/	*/
735CASE_IGNORE,
736CASE_IGNORE,
737CASE_IGNORE,
738CASE_IGNORE,
739/*	0		1		2		3	*/
740CASE_IGNORE,
741CASE_IGNORE,
742CASE_IGNORE,
743CASE_IGNORE,
744/*	4		5		6		7	*/
745CASE_IGNORE,
746CASE_IGNORE,
747CASE_IGNORE,
748CASE_IGNORE,
749/*	8		9		:		;	*/
750CASE_IGNORE,
751CASE_IGNORE,
752CASE_IGNORE,
753CASE_IGNORE,
754/*	<		=		>		?	*/
755CASE_IGNORE,
756CASE_IGNORE,
757CASE_IGNORE,
758CASE_IGNORE,
759/*	@		A		B		C	*/
760CASE_IGNORE,
761CASE_IGNORE,
762CASE_IGNORE,
763CASE_IGNORE,
764/*	D		E		F		G	*/
765CASE_IGNORE,
766CASE_IGNORE,
767CASE_IGNORE,
768CASE_IGNORE,
769/*	H		I		J		K	*/
770CASE_IGNORE,
771CASE_IGNORE,
772CASE_IGNORE,
773CASE_IGNORE,
774/*	L		M		N		O	*/
775CASE_IGNORE,
776CASE_IGNORE,
777CASE_IGNORE,
778CASE_IGNORE,
779/*	P		Q		R		S	*/
780CASE_IGNORE,
781CASE_IGNORE,
782CASE_IGNORE,
783CASE_IGNORE,
784/*	T		U		V		W	*/
785CASE_IGNORE,
786CASE_IGNORE,
787CASE_IGNORE,
788CASE_IGNORE,
789/*	X		Y		Z		[	*/
790CASE_IGNORE,
791CASE_IGNORE,
792CASE_IGNORE,
793CASE_IGNORE,
794/*	\		]		^		_	*/
795CASE_IGNORE,
796CASE_IGNORE,
797CASE_IGNORE,
798CASE_IGNORE,
799/*	`		a		b		c	*/
800CASE_IGNORE,
801CASE_IGNORE,
802CASE_IGNORE,
803CASE_IGNORE,
804/*	d		e		f		g	*/
805CASE_IGNORE,
806CASE_IGNORE,
807CASE_IGNORE,
808CASE_IGNORE,
809/*	h		i		j		k	*/
810CASE_IGNORE,
811CASE_IGNORE,
812CASE_IGNORE,
813CASE_IGNORE,
814/*	l		m		n		o	*/
815CASE_IGNORE,
816CASE_IGNORE,
817CASE_IGNORE,
818CASE_IGNORE,
819/*	p		q		r		s	*/
820CASE_IGNORE,
821CASE_IGNORE,
822CASE_IGNORE,
823CASE_IGNORE,
824/*	t		u		v		w	*/
825CASE_IGNORE,
826CASE_IGNORE,
827CASE_IGNORE,
828CASE_IGNORE,
829/*	x		y		z		{	*/
830CASE_IGNORE,
831CASE_IGNORE,
832CASE_IGNORE,
833CASE_IGNORE,
834/*	|		}		~		DEL	*/
835CASE_IGNORE,
836CASE_IGNORE,
837CASE_IGNORE,
838CASE_IGNORE,
839/*      0x80            0x81            0x82            0x83    */
840CASE_IGNORE,
841CASE_IGNORE,
842CASE_IGNORE,
843CASE_IGNORE,
844/*      0x84            0x85            0x86            0x87    */
845CASE_IGNORE,
846CASE_IGNORE,
847CASE_IGNORE,
848CASE_IGNORE,
849/*      0x88            0x89            0x8a            0x8b    */
850CASE_IGNORE,
851CASE_IGNORE,
852CASE_IGNORE,
853CASE_IGNORE,
854/*      0x8c            0x8d            0x8e            0x8f    */
855CASE_IGNORE,
856CASE_IGNORE,
857CASE_IGNORE,
858CASE_IGNORE,
859/*      0x90            0x91            0x92            0x93    */
860CASE_IGNORE,
861CASE_IGNORE,
862CASE_IGNORE,
863CASE_IGNORE,
864/*      0x94            0x95            0x96            0x97    */
865CASE_IGNORE,
866CASE_IGNORE,
867CASE_IGNORE,
868CASE_IGNORE,
869/*      0x99            0x99            0x9a            0x9b    */
870CASE_IGNORE,
871CASE_IGNORE,
872CASE_IGNORE,
873CASE_IGNORE,
874/*      0x9c            0x9d            0x9e            0x9f    */
875CASE_IGNORE,
876CASE_IGNORE,
877CASE_IGNORE,
878CASE_IGNORE,
879/*      nobreakspace    exclamdown      cent            sterling        */
880CASE_IGNORE,
881CASE_IGNORE,
882CASE_IGNORE,
883CASE_IGNORE,
884/*      currency        yen             brokenbar       section         */
885CASE_IGNORE,
886CASE_IGNORE,
887CASE_IGNORE,
888CASE_IGNORE,
889/*      diaeresis       copyright       ordfeminine     guillemotleft   */
890CASE_IGNORE,
891CASE_IGNORE,
892CASE_IGNORE,
893CASE_IGNORE,
894/*      notsign         hyphen          registered      macron          */
895CASE_IGNORE,
896CASE_IGNORE,
897CASE_IGNORE,
898CASE_IGNORE,
899/*      degree          plusminus       twosuperior     threesuperior   */
900CASE_IGNORE,
901CASE_IGNORE,
902CASE_IGNORE,
903CASE_IGNORE,
904/*      acute           mu              paragraph       periodcentered  */
905CASE_IGNORE,
906CASE_IGNORE,
907CASE_IGNORE,
908CASE_IGNORE,
909/*      cedilla         onesuperior     masculine       guillemotright  */
910CASE_IGNORE,
911CASE_IGNORE,
912CASE_IGNORE,
913CASE_IGNORE,
914/*      onequarter      onehalf         threequarters   questiondown    */
915CASE_IGNORE,
916CASE_IGNORE,
917CASE_IGNORE,
918CASE_IGNORE,
919/*      Agrave          Aacute          Acircumflex     Atilde          */
920CASE_IGNORE,
921CASE_IGNORE,
922CASE_IGNORE,
923CASE_IGNORE,
924/*      Adiaeresis      Aring           AE              Ccedilla        */
925CASE_IGNORE,
926CASE_IGNORE,
927CASE_IGNORE,
928CASE_IGNORE,
929/*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
930CASE_IGNORE,
931CASE_IGNORE,
932CASE_IGNORE,
933CASE_IGNORE,
934/*      Igrave          Iacute          Icircumflex     Idiaeresis      */
935CASE_IGNORE,
936CASE_IGNORE,
937CASE_IGNORE,
938CASE_IGNORE,
939/*      Eth             Ntilde          Ograve          Oacute          */
940CASE_IGNORE,
941CASE_IGNORE,
942CASE_IGNORE,
943CASE_IGNORE,
944/*      Ocircumflex     Otilde          Odiaeresis      multiply        */
945CASE_IGNORE,
946CASE_IGNORE,
947CASE_IGNORE,
948CASE_IGNORE,
949/*      Ooblique        Ugrave          Uacute          Ucircumflex     */
950CASE_IGNORE,
951CASE_IGNORE,
952CASE_IGNORE,
953CASE_IGNORE,
954/*      Udiaeresis      Yacute          Thorn           ssharp          */
955CASE_IGNORE,
956CASE_IGNORE,
957CASE_IGNORE,
958CASE_IGNORE,
959/*      agrave          aacute          acircumflex     atilde          */
960CASE_IGNORE,
961CASE_IGNORE,
962CASE_IGNORE,
963CASE_IGNORE,
964/*      adiaeresis      aring           ae              ccedilla        */
965CASE_IGNORE,
966CASE_IGNORE,
967CASE_IGNORE,
968CASE_IGNORE,
969/*      egrave          eacute          ecircumflex     ediaeresis      */
970CASE_IGNORE,
971CASE_IGNORE,
972CASE_IGNORE,
973CASE_IGNORE,
974/*      igrave          iacute          icircumflex     idiaeresis      */
975CASE_IGNORE,
976CASE_IGNORE,
977CASE_IGNORE,
978CASE_IGNORE,
979/*      eth             ntilde          ograve          oacute          */
980CASE_IGNORE,
981CASE_IGNORE,
982CASE_IGNORE,
983CASE_IGNORE,
984/*      ocircumflex     otilde          odiaeresis      division        */
985CASE_IGNORE,
986CASE_IGNORE,
987CASE_IGNORE,
988CASE_IGNORE,
989/*      oslash          ugrave          uacute          ucircumflex     */
990CASE_IGNORE,
991CASE_IGNORE,
992CASE_IGNORE,
993CASE_IGNORE,
994/*      udiaeresis      yacute          thorn           ydiaeresis      */
995CASE_IGNORE,
996CASE_IGNORE,
997CASE_IGNORE,
998CASE_IGNORE,
999};
1000
1001Const int Tesctable[] =		/* ESC */
1002{
1003/*	NUL		SOH		STX		ETX	*/
1004CASE_CURSTATE,
1005CASE_CURSTATE,
1006CASE_CURSTATE,
1007CASE_VT_MODE,
1008/*	EOT		ENQ		ACK		BEL	*/
1009CASE_CURSTATE,
1010CASE_REPORT,
1011CASE_CURSTATE,
1012CASE_BEL,
1013/*	BS		HT		NL		VT	*/
1014CASE_BS,
1015CASE_TAB,
1016CASE_IGNORE,
1017CASE_UP,
1018/*	NP		CR		SO		SI	*/
1019CASE_PAGE,
1020CASE_IGNORE,
1021CASE_APL,
1022CASE_ASCII,
1023/*	DLE		DC1		DC2		DC3	*/
1024CASE_CURSTATE,
1025CASE_CURSTATE,
1026CASE_CURSTATE,
1027CASE_CURSTATE,
1028/*	DC4		NAK		SYN		ETB	*/
1029CASE_CURSTATE,
1030CASE_CURSTATE,
1031CASE_CURSTATE,
1032CASE_COPY,
1033/*	CAN		EM		SUB		ESC	*/
1034CASE_BYP_STATE,
1035CASE_CURSTATE,
1036CASE_GIN,
1037CASE_IGNORE,
1038/*	FS		GS		RS		US	*/
1039CASE_SPT_STATE,
1040CASE_PLT_STATE,
1041CASE_IPL_STATE,
1042CASE_ALP_STATE,
1043/*	SP		!		"		#	*/
1044CASE_CURSTATE,
1045CASE_CURSTATE,
1046CASE_CURSTATE,
1047CASE_CURSTATE,
1048/*	$		%		&		'	*/
1049CASE_CURSTATE,
1050CASE_CURSTATE,
1051CASE_CURSTATE,
1052CASE_CURSTATE,
1053/*	(		)		*		+	*/
1054CASE_CURSTATE,
1055CASE_CURSTATE,
1056CASE_CURSTATE,
1057CASE_CURSTATE,
1058/*	,		-		.		/	*/
1059CASE_CURSTATE,
1060CASE_CURSTATE,
1061CASE_CURSTATE,
1062CASE_CURSTATE,
1063/*	0		1		2		3	*/
1064CASE_CURSTATE,
1065CASE_CURSTATE,
1066CASE_CURSTATE,
1067CASE_CURSTATE,
1068/*	4		5		6		7	*/
1069CASE_CURSTATE,
1070CASE_CURSTATE,
1071CASE_CURSTATE,
1072CASE_CURSTATE,
1073/*	8		9		:		;	*/
1074CASE_CHAR_SIZE,
1075CASE_CHAR_SIZE,
1076CASE_CHAR_SIZE,
1077CASE_CHAR_SIZE,
1078/*	<		=		>		?	*/
1079CASE_CURSTATE,
1080CASE_CURSTATE,
1081CASE_CURSTATE,
1082CASE_CURSTATE,
1083/*	@		A		B		C	*/
1084CASE_CURSTATE,
1085CASE_CURSTATE,
1086CASE_CURSTATE,
1087CASE_CURSTATE,
1088/*	D		E		F		G	*/
1089CASE_CURSTATE,
1090CASE_CURSTATE,
1091CASE_CURSTATE,
1092CASE_CURSTATE,
1093/*	H		I		J		K	*/
1094CASE_CURSTATE,
1095CASE_CURSTATE,
1096CASE_CURSTATE,
1097CASE_CURSTATE,
1098/*	L		M		N		O	*/
1099CASE_CURSTATE,
1100CASE_CURSTATE,
1101CASE_CURSTATE,
1102CASE_CURSTATE,
1103/*	P		Q		R		S	*/
1104CASE_CURSTATE,
1105CASE_CURSTATE,
1106CASE_CURSTATE,
1107CASE_CURSTATE,
1108/*	T		U		V		W	*/
1109CASE_CURSTATE,
1110CASE_CURSTATE,
1111CASE_CURSTATE,
1112CASE_CURSTATE,
1113/*	X		Y		Z		[	*/
1114CASE_CURSTATE,
1115CASE_CURSTATE,
1116CASE_CURSTATE,
1117CASE_CURSTATE,
1118/*	\		]		^		_	*/
1119CASE_CURSTATE,
1120CASE_OSC,
1121CASE_CURSTATE,
1122CASE_CURSTATE,
1123/*	`		a		b		c	*/
1124CASE_BEAM_VEC,
1125CASE_BEAM_VEC,
1126CASE_BEAM_VEC,
1127CASE_BEAM_VEC,
1128/*	d		e		f		g	*/
1129CASE_BEAM_VEC,
1130CASE_CURSTATE,
1131CASE_CURSTATE,
1132CASE_BEAM_VEC,
1133/*	h		i		j		k	*/
1134CASE_BEAM_VEC,
1135CASE_BEAM_VEC,
1136CASE_BEAM_VEC,
1137CASE_BEAM_VEC,
1138/*	l		m		n		o	*/
1139CASE_BEAM_VEC,
1140CASE_CURSTATE,
1141CASE_CURSTATE,
1142CASE_BEAM_VEC,
1143/*	p		q		r		s	*/
1144CASE_BEAM_VEC,
1145CASE_BEAM_VEC,
1146CASE_BEAM_VEC,
1147CASE_BEAM_VEC,
1148/*	t		u		v		w	*/
1149CASE_BEAM_VEC,
1150CASE_CURSTATE,
1151CASE_CURSTATE,
1152CASE_BEAM_VEC,
1153/*	x		y		z		{	*/
1154CASE_CURSTATE,
1155CASE_CURSTATE,
1156CASE_CURSTATE,
1157CASE_CURSTATE,
1158/*	|		}		~		DEL	*/
1159CASE_CURSTATE,
1160CASE_CURSTATE,
1161CASE_IGNORE,
1162CASE_CURSTATE,
1163/*      0x80            0x81            0x82            0x83    */
1164CASE_IGNORE,
1165CASE_IGNORE,
1166CASE_IGNORE,
1167CASE_IGNORE,
1168/*      0x84            0x85            0x86            0x87    */
1169CASE_IGNORE,
1170CASE_IGNORE,
1171CASE_IGNORE,
1172CASE_IGNORE,
1173/*      0x88            0x89            0x8a            0x8b    */
1174CASE_IGNORE,
1175CASE_IGNORE,
1176CASE_IGNORE,
1177CASE_IGNORE,
1178/*      0x8c            0x8d            0x8e            0x8f    */
1179CASE_IGNORE,
1180CASE_IGNORE,
1181CASE_IGNORE,
1182CASE_IGNORE,
1183/*      0x90            0x91            0x92            0x93    */
1184CASE_IGNORE,
1185CASE_IGNORE,
1186CASE_IGNORE,
1187CASE_IGNORE,
1188/*      0x94            0x95            0x96            0x97    */
1189CASE_IGNORE,
1190CASE_IGNORE,
1191CASE_IGNORE,
1192CASE_IGNORE,
1193/*      0x99            0x99            0x9a            0x9b    */
1194CASE_IGNORE,
1195CASE_IGNORE,
1196CASE_IGNORE,
1197CASE_IGNORE,
1198/*      0x9c            0x9d            0x9e            0x9f    */
1199CASE_IGNORE,
1200CASE_IGNORE,
1201CASE_IGNORE,
1202CASE_IGNORE,
1203/*      nobreakspace    exclamdown      cent            sterling        */
1204CASE_IGNORE,
1205CASE_IGNORE,
1206CASE_IGNORE,
1207CASE_IGNORE,
1208/*      currency        yen             brokenbar       section         */
1209CASE_IGNORE,
1210CASE_IGNORE,
1211CASE_IGNORE,
1212CASE_IGNORE,
1213/*      diaeresis       copyright       ordfeminine     guillemotleft   */
1214CASE_IGNORE,
1215CASE_IGNORE,
1216CASE_IGNORE,
1217CASE_IGNORE,
1218/*      notsign         hyphen          registered      macron          */
1219CASE_IGNORE,
1220CASE_IGNORE,
1221CASE_IGNORE,
1222CASE_IGNORE,
1223/*      degree          plusminus       twosuperior     threesuperior   */
1224CASE_IGNORE,
1225CASE_IGNORE,
1226CASE_IGNORE,
1227CASE_IGNORE,
1228/*      acute           mu              paragraph       periodcentered  */
1229CASE_IGNORE,
1230CASE_IGNORE,
1231CASE_IGNORE,
1232CASE_IGNORE,
1233/*      cedilla         onesuperior     masculine       guillemotright  */
1234CASE_IGNORE,
1235CASE_IGNORE,
1236CASE_IGNORE,
1237CASE_IGNORE,
1238/*      onequarter      onehalf         threequarters   questiondown    */
1239CASE_IGNORE,
1240CASE_IGNORE,
1241CASE_IGNORE,
1242CASE_IGNORE,
1243/*      Agrave          Aacute          Acircumflex     Atilde          */
1244CASE_IGNORE,
1245CASE_IGNORE,
1246CASE_IGNORE,
1247CASE_IGNORE,
1248/*      Adiaeresis      Aring           AE              Ccedilla        */
1249CASE_IGNORE,
1250CASE_IGNORE,
1251CASE_IGNORE,
1252CASE_IGNORE,
1253/*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
1254CASE_IGNORE,
1255CASE_IGNORE,
1256CASE_IGNORE,
1257CASE_IGNORE,
1258/*      Igrave          Iacute          Icircumflex     Idiaeresis      */
1259CASE_IGNORE,
1260CASE_IGNORE,
1261CASE_IGNORE,
1262CASE_IGNORE,
1263/*      Eth             Ntilde          Ograve          Oacute          */
1264CASE_IGNORE,
1265CASE_IGNORE,
1266CASE_IGNORE,
1267CASE_IGNORE,
1268/*      Ocircumflex     Otilde          Odiaeresis      multiply        */
1269CASE_IGNORE,
1270CASE_IGNORE,
1271CASE_IGNORE,
1272CASE_IGNORE,
1273/*      Ooblique        Ugrave          Uacute          Ucircumflex     */
1274CASE_IGNORE,
1275CASE_IGNORE,
1276CASE_IGNORE,
1277CASE_IGNORE,
1278/*      Udiaeresis      Yacute          Thorn           ssharp          */
1279CASE_IGNORE,
1280CASE_IGNORE,
1281CASE_IGNORE,
1282CASE_IGNORE,
1283/*      agrave          aacute          acircumflex     atilde          */
1284CASE_IGNORE,
1285CASE_IGNORE,
1286CASE_IGNORE,
1287CASE_IGNORE,
1288/*      adiaeresis      aring           ae              ccedilla        */
1289CASE_IGNORE,
1290CASE_IGNORE,
1291CASE_IGNORE,
1292CASE_IGNORE,
1293/*      egrave          eacute          ecircumflex     ediaeresis      */
1294CASE_IGNORE,
1295CASE_IGNORE,
1296CASE_IGNORE,
1297CASE_IGNORE,
1298/*      igrave          iacute          icircumflex     idiaeresis      */
1299CASE_IGNORE,
1300CASE_IGNORE,
1301CASE_IGNORE,
1302CASE_IGNORE,
1303/*      eth             ntilde          ograve          oacute          */
1304CASE_IGNORE,
1305CASE_IGNORE,
1306CASE_IGNORE,
1307CASE_IGNORE,
1308/*      ocircumflex     otilde          odiaeresis      division        */
1309CASE_IGNORE,
1310CASE_IGNORE,
1311CASE_IGNORE,
1312CASE_IGNORE,
1313/*      oslash          ugrave          uacute          ucircumflex     */
1314CASE_IGNORE,
1315CASE_IGNORE,
1316CASE_IGNORE,
1317CASE_IGNORE,
1318/*      udiaeresis      yacute          thorn           ydiaeresis      */
1319CASE_IGNORE,
1320CASE_IGNORE,
1321CASE_IGNORE,
1322CASE_IGNORE,
1323};
1324
1325Const int Tipltable[] =		/* RS (^^) incremental plot */
1326{
1327/*	NUL		SOH		STX		ETX	*/
1328CASE_IGNORE,
1329CASE_IGNORE,
1330CASE_IGNORE,
1331CASE_IGNORE,
1332/*	EOT		ENQ		ACK		BEL	*/
1333CASE_IGNORE,
1334CASE_IGNORE,
1335CASE_IGNORE,
1336CASE_BEL,
1337/*	BS		HT		NL		VT	*/
1338CASE_BS,
1339CASE_TAB,
1340CASE_LF,
1341CASE_UP,
1342/*	NP		CR		SO		SI	*/
1343CASE_IGNORE,
1344CASE_CR,
1345CASE_IGNORE,
1346CASE_IGNORE,
1347/*	DLE		DC1		DC2		DC3	*/
1348CASE_IGNORE,
1349CASE_IGNORE,
1350CASE_IGNORE,
1351CASE_IGNORE,
1352/*	DC4		NAK		SYN		ETB	*/
1353CASE_IGNORE,
1354CASE_IGNORE,
1355CASE_IGNORE,
1356CASE_IGNORE,
1357/*	CAN		EM		SUB		ESC	*/
1358CASE_IGNORE,
1359CASE_IGNORE,
1360CASE_IGNORE,
1361CASE_ESC_STATE,
1362/*	FS		GS		RS		US	*/
1363CASE_PT_STATE,
1364CASE_PLT_STATE,
1365CASE_IPL_STATE,
1366CASE_ALP_STATE,
1367/*	SP		!		"		#	*/
1368CASE_PENUP,
1369CASE_IGNORE,
1370CASE_IGNORE,
1371CASE_IGNORE,
1372/*	$		%		&		'	*/
1373CASE_IGNORE,
1374CASE_IGNORE,
1375CASE_IGNORE,
1376CASE_IGNORE,
1377/*	(		)		*		+	*/
1378CASE_IGNORE,
1379CASE_IGNORE,
1380CASE_IGNORE,
1381CASE_IGNORE,
1382/*	,		-		.		/	*/
1383CASE_IGNORE,
1384CASE_IGNORE,
1385CASE_IGNORE,
1386CASE_IGNORE,
1387/*	0		1		2		3	*/
1388CASE_IGNORE,
1389CASE_IGNORE,
1390CASE_IGNORE,
1391CASE_IGNORE,
1392/*	4		5		6		7	*/
1393CASE_IGNORE,
1394CASE_IGNORE,
1395CASE_IGNORE,
1396CASE_IGNORE,
1397/*	8		9		:		;	*/
1398CASE_IGNORE,
1399CASE_IGNORE,
1400CASE_IGNORE,
1401CASE_IGNORE,
1402/*	<		=		>		?	*/
1403CASE_IGNORE,
1404CASE_IGNORE,
1405CASE_IGNORE,
1406CASE_IGNORE,
1407/*	@		A		B		C	*/
1408CASE_IGNORE,
1409CASE_IPL_POINT,
1410CASE_IPL_POINT,
1411CASE_IGNORE,
1412/*	D		E		F		G	*/
1413CASE_IPL_POINT,
1414CASE_IPL_POINT,
1415CASE_IPL_POINT,
1416CASE_IGNORE,
1417/*	H		I		J		K	*/
1418CASE_IPL_POINT,
1419CASE_IPL_POINT,
1420CASE_IPL_POINT,
1421CASE_IGNORE,
1422/*	L		M		N		O	*/
1423CASE_IGNORE,
1424CASE_IGNORE,
1425CASE_IGNORE,
1426CASE_IGNORE,
1427/*	P		Q		R		S	*/
1428CASE_PENDOWN,
1429CASE_IGNORE,
1430CASE_IGNORE,
1431CASE_IGNORE,
1432/*	T		U		V		W	*/
1433CASE_IGNORE,
1434CASE_IGNORE,
1435CASE_IGNORE,
1436CASE_IGNORE,
1437/*	X		Y		Z		[	*/
1438CASE_IGNORE,
1439CASE_IGNORE,
1440CASE_IGNORE,
1441CASE_IGNORE,
1442/*	\		]		^		_	*/
1443CASE_IGNORE,
1444CASE_IGNORE,
1445CASE_IGNORE,
1446CASE_IGNORE,
1447/*	`		a		b		c	*/
1448CASE_IGNORE,
1449CASE_IGNORE,
1450CASE_IGNORE,
1451CASE_IGNORE,
1452/*	d		e		f		g	*/
1453CASE_IGNORE,
1454CASE_IGNORE,
1455CASE_IGNORE,
1456CASE_IGNORE,
1457/*	h		i		j		k	*/
1458CASE_IGNORE,
1459CASE_IGNORE,
1460CASE_IGNORE,
1461CASE_IGNORE,
1462/*	l		m		n		o	*/
1463CASE_IGNORE,
1464CASE_IGNORE,
1465CASE_IGNORE,
1466CASE_IGNORE,
1467/*	p		q		r		s	*/
1468CASE_IGNORE,
1469CASE_IGNORE,
1470CASE_IGNORE,
1471CASE_IGNORE,
1472/*	t		u		v		w	*/
1473CASE_IGNORE,
1474CASE_IGNORE,
1475CASE_IGNORE,
1476CASE_IGNORE,
1477/*	x		y		z		{	*/
1478CASE_IGNORE,
1479CASE_IGNORE,
1480CASE_IGNORE,
1481CASE_IGNORE,
1482/*	|		}		~		DEL	*/
1483CASE_IGNORE,
1484CASE_IGNORE,
1485CASE_IGNORE,
1486CASE_IGNORE,
1487/*      0x80            0x81            0x82            0x83    */
1488CASE_IGNORE,
1489CASE_IGNORE,
1490CASE_IGNORE,
1491CASE_IGNORE,
1492/*      0x84            0x85            0x86            0x87    */
1493CASE_IGNORE,
1494CASE_IGNORE,
1495CASE_IGNORE,
1496CASE_IGNORE,
1497/*      0x88            0x89            0x8a            0x8b    */
1498CASE_IGNORE,
1499CASE_IGNORE,
1500CASE_IGNORE,
1501CASE_IGNORE,
1502/*      0x8c            0x8d            0x8e            0x8f    */
1503CASE_IGNORE,
1504CASE_IGNORE,
1505CASE_IGNORE,
1506CASE_IGNORE,
1507/*      0x90            0x91            0x92            0x93    */
1508CASE_IGNORE,
1509CASE_IGNORE,
1510CASE_IGNORE,
1511CASE_IGNORE,
1512/*      0x94            0x95            0x96            0x97    */
1513CASE_IGNORE,
1514CASE_IGNORE,
1515CASE_IGNORE,
1516CASE_IGNORE,
1517/*      0x99            0x99            0x9a            0x9b    */
1518CASE_IGNORE,
1519CASE_IGNORE,
1520CASE_IGNORE,
1521CASE_IGNORE,
1522/*      0x9c            0x9d            0x9e            0x9f    */
1523CASE_IGNORE,
1524CASE_IGNORE,
1525CASE_IGNORE,
1526CASE_IGNORE,
1527/*      nobreakspace    exclamdown      cent            sterling        */
1528CASE_IGNORE,
1529CASE_IGNORE,
1530CASE_IGNORE,
1531CASE_IGNORE,
1532/*      currency        yen             brokenbar       section         */
1533CASE_IGNORE,
1534CASE_IGNORE,
1535CASE_IGNORE,
1536CASE_IGNORE,
1537/*      diaeresis       copyright       ordfeminine     guillemotleft   */
1538CASE_IGNORE,
1539CASE_IGNORE,
1540CASE_IGNORE,
1541CASE_IGNORE,
1542/*      notsign         hyphen          registered      macron          */
1543CASE_IGNORE,
1544CASE_IGNORE,
1545CASE_IGNORE,
1546CASE_IGNORE,
1547/*      degree          plusminus       twosuperior     threesuperior   */
1548CASE_IGNORE,
1549CASE_IGNORE,
1550CASE_IGNORE,
1551CASE_IGNORE,
1552/*      acute           mu              paragraph       periodcentered  */
1553CASE_IGNORE,
1554CASE_IGNORE,
1555CASE_IGNORE,
1556CASE_IGNORE,
1557/*      cedilla         onesuperior     masculine       guillemotright  */
1558CASE_IGNORE,
1559CASE_IGNORE,
1560CASE_IGNORE,
1561CASE_IGNORE,
1562/*      onequarter      onehalf         threequarters   questiondown    */
1563CASE_IGNORE,
1564CASE_IGNORE,
1565CASE_IGNORE,
1566CASE_IGNORE,
1567/*      Agrave          Aacute          Acircumflex     Atilde          */
1568CASE_IGNORE,
1569CASE_IGNORE,
1570CASE_IGNORE,
1571CASE_IGNORE,
1572/*      Adiaeresis      Aring           AE              Ccedilla        */
1573CASE_IGNORE,
1574CASE_IGNORE,
1575CASE_IGNORE,
1576CASE_IGNORE,
1577/*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
1578CASE_IGNORE,
1579CASE_IGNORE,
1580CASE_IGNORE,
1581CASE_IGNORE,
1582/*      Igrave          Iacute          Icircumflex     Idiaeresis      */
1583CASE_IGNORE,
1584CASE_IGNORE,
1585CASE_IGNORE,
1586CASE_IGNORE,
1587/*      Eth             Ntilde          Ograve          Oacute          */
1588CASE_IGNORE,
1589CASE_IGNORE,
1590CASE_IGNORE,
1591CASE_IGNORE,
1592/*      Ocircumflex     Otilde          Odiaeresis      multiply        */
1593CASE_IGNORE,
1594CASE_IGNORE,
1595CASE_IGNORE,
1596CASE_IGNORE,
1597/*      Ooblique        Ugrave          Uacute          Ucircumflex     */
1598CASE_IGNORE,
1599CASE_IGNORE,
1600CASE_IGNORE,
1601CASE_IGNORE,
1602/*      Udiaeresis      Yacute          Thorn           ssharp          */
1603CASE_IGNORE,
1604CASE_IGNORE,
1605CASE_IGNORE,
1606CASE_IGNORE,
1607/*      agrave          aacute          acircumflex     atilde          */
1608CASE_IGNORE,
1609CASE_IGNORE,
1610CASE_IGNORE,
1611CASE_IGNORE,
1612/*      adiaeresis      aring           ae              ccedilla        */
1613CASE_IGNORE,
1614CASE_IGNORE,
1615CASE_IGNORE,
1616CASE_IGNORE,
1617/*      egrave          eacute          ecircumflex     ediaeresis      */
1618CASE_IGNORE,
1619CASE_IGNORE,
1620CASE_IGNORE,
1621CASE_IGNORE,
1622/*      igrave          iacute          icircumflex     idiaeresis      */
1623CASE_IGNORE,
1624CASE_IGNORE,
1625CASE_IGNORE,
1626CASE_IGNORE,
1627/*      eth             ntilde          ograve          oacute          */
1628CASE_IGNORE,
1629CASE_IGNORE,
1630CASE_IGNORE,
1631CASE_IGNORE,
1632/*      ocircumflex     otilde          odiaeresis      division        */
1633CASE_IGNORE,
1634CASE_IGNORE,
1635CASE_IGNORE,
1636CASE_IGNORE,
1637/*      oslash          ugrave          uacute          ucircumflex     */
1638CASE_IGNORE,
1639CASE_IGNORE,
1640CASE_IGNORE,
1641CASE_IGNORE,
1642/*      udiaeresis      yacute          thorn           ydiaeresis      */
1643CASE_IGNORE,
1644CASE_IGNORE,
1645CASE_IGNORE,
1646CASE_IGNORE,
1647};
1648
1649Const int Tplttable[] =		/* GS (^]) graph (plot) mode */
1650{
1651/*	NUL		SOH		STX		ETX	*/
1652CASE_IGNORE,
1653CASE_IGNORE,
1654CASE_IGNORE,
1655CASE_IGNORE,
1656/*	EOT		ENQ		ACK		BEL	*/
1657CASE_IGNORE,
1658CASE_IGNORE,
1659CASE_IGNORE,
1660CASE_BEL,
1661/*	BS		HT		NL		VT	*/
1662CASE_BS,
1663CASE_TAB,
1664CASE_LF,
1665CASE_UP,
1666/*	NP		CR		SO		SI	*/
1667CASE_IGNORE,
1668CASE_CR,
1669CASE_IGNORE,
1670CASE_IGNORE,
1671/*	DLE		DC1		DC2		DC3	*/
1672CASE_IGNORE,
1673CASE_IGNORE,
1674CASE_IGNORE,
1675CASE_IGNORE,
1676/*	DC4		NAK		SYN		ETB	*/
1677CASE_IGNORE,
1678CASE_IGNORE,
1679CASE_IGNORE,
1680CASE_IGNORE,
1681/*	CAN		EM		SUB		ESC	*/
1682CASE_IGNORE,
1683CASE_IGNORE,
1684CASE_IGNORE,
1685CASE_ESC_STATE,
1686/*	FS		GS		RS		US	*/
1687CASE_PT_STATE,
1688CASE_PLT_STATE,
1689CASE_IPL_STATE,
1690CASE_ALP_STATE,
1691/*	SP		!		"		#	*/
1692CASE_PLT_VEC,
1693CASE_PLT_VEC,
1694CASE_PLT_VEC,
1695CASE_PLT_VEC,
1696/*	$		%		&		'	*/
1697CASE_PLT_VEC,
1698CASE_PLT_VEC,
1699CASE_PLT_VEC,
1700CASE_PLT_VEC,
1701/*	(		)		*		+	*/
1702CASE_PLT_VEC,
1703CASE_PLT_VEC,
1704CASE_PLT_VEC,
1705CASE_PLT_VEC,
1706/*	,		-		.		/	*/
1707CASE_PLT_VEC,
1708CASE_PLT_VEC,
1709CASE_PLT_VEC,
1710CASE_PLT_VEC,
1711/*	0		1		2		3	*/
1712CASE_PLT_VEC,
1713CASE_PLT_VEC,
1714CASE_PLT_VEC,
1715CASE_PLT_VEC,
1716/*	4		5		6		7	*/
1717CASE_PLT_VEC,
1718CASE_PLT_VEC,
1719CASE_PLT_VEC,
1720CASE_PLT_VEC,
1721/*	8		9		:		;	*/
1722CASE_PLT_VEC,
1723CASE_PLT_VEC,
1724CASE_PLT_VEC,
1725CASE_PLT_VEC,
1726/*	<		=		>		?	*/
1727CASE_PLT_VEC,
1728CASE_PLT_VEC,
1729CASE_PLT_VEC,
1730CASE_PLT_VEC,
1731/*	@		A		B		C	*/
1732CASE_PLT_VEC,
1733CASE_PLT_VEC,
1734CASE_PLT_VEC,
1735CASE_PLT_VEC,
1736/*	D		E		F		G	*/
1737CASE_PLT_VEC,
1738CASE_PLT_VEC,
1739CASE_PLT_VEC,
1740CASE_PLT_VEC,
1741/*	H		I		J		K	*/
1742CASE_PLT_VEC,
1743CASE_PLT_VEC,
1744CASE_PLT_VEC,
1745CASE_PLT_VEC,
1746/*	L		M		N		O	*/
1747CASE_PLT_VEC,
1748CASE_PLT_VEC,
1749CASE_PLT_VEC,
1750CASE_PLT_VEC,
1751/*	P		Q		R		S	*/
1752CASE_PLT_VEC,
1753CASE_PLT_VEC,
1754CASE_PLT_VEC,
1755CASE_PLT_VEC,
1756/*	T		U		V		W	*/
1757CASE_PLT_VEC,
1758CASE_PLT_VEC,
1759CASE_PLT_VEC,
1760CASE_PLT_VEC,
1761/*	X		Y		Z		[	*/
1762CASE_PLT_VEC,
1763CASE_PLT_VEC,
1764CASE_PLT_VEC,
1765CASE_PLT_VEC,
1766/*	\		]		^		_	*/
1767CASE_PLT_VEC,
1768CASE_PLT_VEC,
1769CASE_PLT_VEC,
1770CASE_PLT_VEC,
1771/*	`		a		b		c	*/
1772CASE_PLT_VEC,
1773CASE_PLT_VEC,
1774CASE_PLT_VEC,
1775CASE_PLT_VEC,
1776/*	d		e		f		g	*/
1777CASE_PLT_VEC,
1778CASE_PLT_VEC,
1779CASE_PLT_VEC,
1780CASE_PLT_VEC,
1781/*	h		i		j		k	*/
1782CASE_PLT_VEC,
1783CASE_PLT_VEC,
1784CASE_PLT_VEC,
1785CASE_PLT_VEC,
1786/*	l		m		n		o	*/
1787CASE_PLT_VEC,
1788CASE_PLT_VEC,
1789CASE_PLT_VEC,
1790CASE_PLT_VEC,
1791/*	p		q		r		s	*/
1792CASE_PLT_VEC,
1793CASE_PLT_VEC,
1794CASE_PLT_VEC,
1795CASE_PLT_VEC,
1796/*	t		u		v		w	*/
1797CASE_PLT_VEC,
1798CASE_PLT_VEC,
1799CASE_PLT_VEC,
1800CASE_PLT_VEC,
1801/*	x		y		z		{	*/
1802CASE_PLT_VEC,
1803CASE_PLT_VEC,
1804CASE_PLT_VEC,
1805CASE_PLT_VEC,
1806/*	|		}		~		DEL	*/
1807CASE_PLT_VEC,
1808CASE_PLT_VEC,
1809CASE_PLT_VEC,
1810CASE_PLT_VEC,
1811/*      0x80            0x81            0x82            0x83    */
1812CASE_IGNORE,
1813CASE_IGNORE,
1814CASE_IGNORE,
1815CASE_IGNORE,
1816/*      0x84            0x85            0x86            0x87    */
1817CASE_IGNORE,
1818CASE_IGNORE,
1819CASE_IGNORE,
1820CASE_IGNORE,
1821/*      0x88            0x89            0x8a            0x8b    */
1822CASE_IGNORE,
1823CASE_IGNORE,
1824CASE_IGNORE,
1825CASE_IGNORE,
1826/*      0x8c            0x8d            0x8e            0x8f    */
1827CASE_IGNORE,
1828CASE_IGNORE,
1829CASE_IGNORE,
1830CASE_IGNORE,
1831/*      0x90            0x91            0x92            0x93    */
1832CASE_IGNORE,
1833CASE_IGNORE,
1834CASE_IGNORE,
1835CASE_IGNORE,
1836/*      0x94            0x95            0x96            0x97    */
1837CASE_IGNORE,
1838CASE_IGNORE,
1839CASE_IGNORE,
1840CASE_IGNORE,
1841/*      0x99            0x99            0x9a            0x9b    */
1842CASE_IGNORE,
1843CASE_IGNORE,
1844CASE_IGNORE,
1845CASE_IGNORE,
1846/*      0x9c            0x9d            0x9e            0x9f    */
1847CASE_IGNORE,
1848CASE_IGNORE,
1849CASE_IGNORE,
1850CASE_IGNORE,
1851/*      nobreakspace    exclamdown      cent            sterling        */
1852CASE_IGNORE,
1853CASE_IGNORE,
1854CASE_IGNORE,
1855CASE_IGNORE,
1856/*      currency        yen             brokenbar       section         */
1857CASE_IGNORE,
1858CASE_IGNORE,
1859CASE_IGNORE,
1860CASE_IGNORE,
1861/*      diaeresis       copyright       ordfeminine     guillemotleft   */
1862CASE_IGNORE,
1863CASE_IGNORE,
1864CASE_IGNORE,
1865CASE_IGNORE,
1866/*      notsign         hyphen          registered      macron          */
1867CASE_IGNORE,
1868CASE_IGNORE,
1869CASE_IGNORE,
1870CASE_IGNORE,
1871/*      degree          plusminus       twosuperior     threesuperior   */
1872CASE_IGNORE,
1873CASE_IGNORE,
1874CASE_IGNORE,
1875CASE_IGNORE,
1876/*      acute           mu              paragraph       periodcentered  */
1877CASE_IGNORE,
1878CASE_IGNORE,
1879CASE_IGNORE,
1880CASE_IGNORE,
1881/*      cedilla         onesuperior     masculine       guillemotright  */
1882CASE_IGNORE,
1883CASE_IGNORE,
1884CASE_IGNORE,
1885CASE_IGNORE,
1886/*      onequarter      onehalf         threequarters   questiondown    */
1887CASE_IGNORE,
1888CASE_IGNORE,
1889CASE_IGNORE,
1890CASE_IGNORE,
1891/*      Agrave          Aacute          Acircumflex     Atilde          */
1892CASE_IGNORE,
1893CASE_IGNORE,
1894CASE_IGNORE,
1895CASE_IGNORE,
1896/*      Adiaeresis      Aring           AE              Ccedilla        */
1897CASE_IGNORE,
1898CASE_IGNORE,
1899CASE_IGNORE,
1900CASE_IGNORE,
1901/*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
1902CASE_IGNORE,
1903CASE_IGNORE,
1904CASE_IGNORE,
1905CASE_IGNORE,
1906/*      Igrave          Iacute          Icircumflex     Idiaeresis      */
1907CASE_IGNORE,
1908CASE_IGNORE,
1909CASE_IGNORE,
1910CASE_IGNORE,
1911/*      Eth             Ntilde          Ograve          Oacute          */
1912CASE_IGNORE,
1913CASE_IGNORE,
1914CASE_IGNORE,
1915CASE_IGNORE,
1916/*      Ocircumflex     Otilde          Odiaeresis      multiply        */
1917CASE_IGNORE,
1918CASE_IGNORE,
1919CASE_IGNORE,
1920CASE_IGNORE,
1921/*      Ooblique        Ugrave          Uacute          Ucircumflex     */
1922CASE_IGNORE,
1923CASE_IGNORE,
1924CASE_IGNORE,
1925CASE_IGNORE,
1926/*      Udiaeresis      Yacute          Thorn           ssharp          */
1927CASE_IGNORE,
1928CASE_IGNORE,
1929CASE_IGNORE,
1930CASE_IGNORE,
1931/*      agrave          aacute          acircumflex     atilde          */
1932CASE_IGNORE,
1933CASE_IGNORE,
1934CASE_IGNORE,
1935CASE_IGNORE,
1936/*      adiaeresis      aring           ae              ccedilla        */
1937CASE_IGNORE,
1938CASE_IGNORE,
1939CASE_IGNORE,
1940CASE_IGNORE,
1941/*      egrave          eacute          ecircumflex     ediaeresis      */
1942CASE_IGNORE,
1943CASE_IGNORE,
1944CASE_IGNORE,
1945CASE_IGNORE,
1946/*      igrave          iacute          icircumflex     idiaeresis      */
1947CASE_IGNORE,
1948CASE_IGNORE,
1949CASE_IGNORE,
1950CASE_IGNORE,
1951/*      eth             ntilde          ograve          oacute          */
1952CASE_IGNORE,
1953CASE_IGNORE,
1954CASE_IGNORE,
1955CASE_IGNORE,
1956/*      ocircumflex     otilde          odiaeresis      division        */
1957CASE_IGNORE,
1958CASE_IGNORE,
1959CASE_IGNORE,
1960CASE_IGNORE,
1961/*      oslash          ugrave          uacute          ucircumflex     */
1962CASE_IGNORE,
1963CASE_IGNORE,
1964CASE_IGNORE,
1965CASE_IGNORE,
1966/*      udiaeresis      yacute          thorn           ydiaeresis      */
1967CASE_IGNORE,
1968CASE_IGNORE,
1969CASE_IGNORE,
1970CASE_IGNORE,
1971};
1972
1973Const int Tpttable[] =		/* FS (^\) point plot mode */
1974{
1975/*	NUL		SOH		STX		ETX	*/
1976CASE_IGNORE,
1977CASE_IGNORE,
1978CASE_IGNORE,
1979CASE_IGNORE,
1980/*	EOT		ENQ		ACK		BEL	*/
1981CASE_IGNORE,
1982CASE_IGNORE,
1983CASE_IGNORE,
1984CASE_BEL,
1985/*	BS		HT		NL		VT	*/
1986CASE_BS,
1987CASE_TAB,
1988CASE_LF,
1989CASE_UP,
1990/*	NP		CR		SO		SI	*/
1991CASE_IGNORE,
1992CASE_CR,
1993CASE_IGNORE,
1994CASE_IGNORE,
1995/*	DLE		DC1		DC2		DC3	*/
1996CASE_IGNORE,
1997CASE_IGNORE,
1998CASE_IGNORE,
1999CASE_IGNORE,
2000/*	DC4		NAK		SYN		ETB	*/
2001CASE_IGNORE,
2002CASE_IGNORE,
2003CASE_IGNORE,
2004CASE_IGNORE,
2005/*	CAN		EM		SUB		ESC	*/
2006CASE_IGNORE,
2007CASE_IGNORE,
2008CASE_IGNORE,
2009CASE_ESC_STATE,
2010/*	FS		GS		RS		US	*/
2011CASE_PT_STATE,
2012CASE_PLT_STATE,
2013CASE_IPL_STATE,
2014CASE_ALP_STATE,
2015/*	SP		!		"		#	*/
2016CASE_PT_POINT,
2017CASE_PT_POINT,
2018CASE_PT_POINT,
2019CASE_PT_POINT,
2020/*	$		%		&		'	*/
2021CASE_PT_POINT,
2022CASE_PT_POINT,
2023CASE_PT_POINT,
2024CASE_PT_POINT,
2025/*	(		)		*		+	*/
2026CASE_PT_POINT,
2027CASE_PT_POINT,
2028CASE_PT_POINT,
2029CASE_PT_POINT,
2030/*	,		-		.		/	*/
2031CASE_PT_POINT,
2032CASE_PT_POINT,
2033CASE_PT_POINT,
2034CASE_PT_POINT,
2035/*	0		1		2		3	*/
2036CASE_PT_POINT,
2037CASE_PT_POINT,
2038CASE_PT_POINT,
2039CASE_PT_POINT,
2040/*	4		5		6		7	*/
2041CASE_PT_POINT,
2042CASE_PT_POINT,
2043CASE_PT_POINT,
2044CASE_PT_POINT,
2045/*	8		9		:		;	*/
2046CASE_PT_POINT,
2047CASE_PT_POINT,
2048CASE_PT_POINT,
2049CASE_PT_POINT,
2050/*	<		=		>		?	*/
2051CASE_PT_POINT,
2052CASE_PT_POINT,
2053CASE_PT_POINT,
2054CASE_PT_POINT,
2055/*	@		A		B		C	*/
2056CASE_PT_POINT,
2057CASE_PT_POINT,
2058CASE_PT_POINT,
2059CASE_PT_POINT,
2060/*	D		E		F		G	*/
2061CASE_PT_POINT,
2062CASE_PT_POINT,
2063CASE_PT_POINT,
2064CASE_PT_POINT,
2065/*	H		I		J		K	*/
2066CASE_PT_POINT,
2067CASE_PT_POINT,
2068CASE_PT_POINT,
2069CASE_PT_POINT,
2070/*	L		M		N		O	*/
2071CASE_PT_POINT,
2072CASE_PT_POINT,
2073CASE_PT_POINT,
2074CASE_PT_POINT,
2075/*	P		Q		R		S	*/
2076CASE_PT_POINT,
2077CASE_PT_POINT,
2078CASE_PT_POINT,
2079CASE_PT_POINT,
2080/*	T		U		V		W	*/
2081CASE_PT_POINT,
2082CASE_PT_POINT,
2083CASE_PT_POINT,
2084CASE_PT_POINT,
2085/*	X		Y		Z		[	*/
2086CASE_PT_POINT,
2087CASE_PT_POINT,
2088CASE_PT_POINT,
2089CASE_PT_POINT,
2090/*	\		]		^		_	*/
2091CASE_PT_POINT,
2092CASE_PT_POINT,
2093CASE_PT_POINT,
2094CASE_PT_POINT,
2095/*	`		a		b		c	*/
2096CASE_PT_POINT,
2097CASE_PT_POINT,
2098CASE_PT_POINT,
2099CASE_PT_POINT,
2100/*	d		e		f		g	*/
2101CASE_PT_POINT,
2102CASE_PT_POINT,
2103CASE_PT_POINT,
2104CASE_PT_POINT,
2105/*	h		i		j		k	*/
2106CASE_PT_POINT,
2107CASE_PT_POINT,
2108CASE_PT_POINT,
2109CASE_PT_POINT,
2110/*	l		m		n		o	*/
2111CASE_PT_POINT,
2112CASE_PT_POINT,
2113CASE_PT_POINT,
2114CASE_PT_POINT,
2115/*	p		q		r		s	*/
2116CASE_PT_POINT,
2117CASE_PT_POINT,
2118CASE_PT_POINT,
2119CASE_PT_POINT,
2120/*	t		u		v		w	*/
2121CASE_PT_POINT,
2122CASE_PT_POINT,
2123CASE_PT_POINT,
2124CASE_PT_POINT,
2125/*	x		y		z		{	*/
2126CASE_PT_POINT,
2127CASE_PT_POINT,
2128CASE_PT_POINT,
2129CASE_PT_POINT,
2130/*	|		}		~		DEL	*/
2131CASE_PT_POINT,
2132CASE_PT_POINT,
2133CASE_PT_POINT,
2134CASE_PT_POINT,
2135/*      0x80            0x81            0x82            0x83    */
2136CASE_IGNORE,
2137CASE_IGNORE,
2138CASE_IGNORE,
2139CASE_IGNORE,
2140/*      0x84            0x85            0x86            0x87    */
2141CASE_IGNORE,
2142CASE_IGNORE,
2143CASE_IGNORE,
2144CASE_IGNORE,
2145/*      0x88            0x89            0x8a            0x8b    */
2146CASE_IGNORE,
2147CASE_IGNORE,
2148CASE_IGNORE,
2149CASE_IGNORE,
2150/*      0x8c            0x8d            0x8e            0x8f    */
2151CASE_IGNORE,
2152CASE_IGNORE,
2153CASE_IGNORE,
2154CASE_IGNORE,
2155/*      0x90            0x91            0x92            0x93    */
2156CASE_IGNORE,
2157CASE_IGNORE,
2158CASE_IGNORE,
2159CASE_IGNORE,
2160/*      0x94            0x95            0x96            0x97    */
2161CASE_IGNORE,
2162CASE_IGNORE,
2163CASE_IGNORE,
2164CASE_IGNORE,
2165/*      0x99            0x99            0x9a            0x9b    */
2166CASE_IGNORE,
2167CASE_IGNORE,
2168CASE_IGNORE,
2169CASE_IGNORE,
2170/*      0x9c            0x9d            0x9e            0x9f    */
2171CASE_IGNORE,
2172CASE_IGNORE,
2173CASE_IGNORE,
2174CASE_IGNORE,
2175/*      nobreakspace    exclamdown      cent            sterling        */
2176CASE_IGNORE,
2177CASE_IGNORE,
2178CASE_IGNORE,
2179CASE_IGNORE,
2180/*      currency        yen             brokenbar       section         */
2181CASE_IGNORE,
2182CASE_IGNORE,
2183CASE_IGNORE,
2184CASE_IGNORE,
2185/*      diaeresis       copyright       ordfeminine     guillemotleft   */
2186CASE_IGNORE,
2187CASE_IGNORE,
2188CASE_IGNORE,
2189CASE_IGNORE,
2190/*      notsign         hyphen          registered      macron          */
2191CASE_IGNORE,
2192CASE_IGNORE,
2193CASE_IGNORE,
2194CASE_IGNORE,
2195/*      degree          plusminus       twosuperior     threesuperior   */
2196CASE_IGNORE,
2197CASE_IGNORE,
2198CASE_IGNORE,
2199CASE_IGNORE,
2200/*      acute           mu              paragraph       periodcentered  */
2201CASE_IGNORE,
2202CASE_IGNORE,
2203CASE_IGNORE,
2204CASE_IGNORE,
2205/*      cedilla         onesuperior     masculine       guillemotright  */
2206CASE_IGNORE,
2207CASE_IGNORE,
2208CASE_IGNORE,
2209CASE_IGNORE,
2210/*      onequarter      onehalf         threequarters   questiondown    */
2211CASE_IGNORE,
2212CASE_IGNORE,
2213CASE_IGNORE,
2214CASE_IGNORE,
2215/*      Agrave          Aacute          Acircumflex     Atilde          */
2216CASE_IGNORE,
2217CASE_IGNORE,
2218CASE_IGNORE,
2219CASE_IGNORE,
2220/*      Adiaeresis      Aring           AE              Ccedilla        */
2221CASE_IGNORE,
2222CASE_IGNORE,
2223CASE_IGNORE,
2224CASE_IGNORE,
2225/*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
2226CASE_IGNORE,
2227CASE_IGNORE,
2228CASE_IGNORE,
2229CASE_IGNORE,
2230/*      Igrave          Iacute          Icircumflex     Idiaeresis      */
2231CASE_IGNORE,
2232CASE_IGNORE,
2233CASE_IGNORE,
2234CASE_IGNORE,
2235/*      Eth             Ntilde          Ograve          Oacute          */
2236CASE_IGNORE,
2237CASE_IGNORE,
2238CASE_IGNORE,
2239CASE_IGNORE,
2240/*      Ocircumflex     Otilde          Odiaeresis      multiply        */
2241CASE_IGNORE,
2242CASE_IGNORE,
2243CASE_IGNORE,
2244CASE_IGNORE,
2245/*      Ooblique        Ugrave          Uacute          Ucircumflex     */
2246CASE_IGNORE,
2247CASE_IGNORE,
2248CASE_IGNORE,
2249CASE_IGNORE,
2250/*      Udiaeresis      Yacute          Thorn           ssharp          */
2251CASE_IGNORE,
2252CASE_IGNORE,
2253CASE_IGNORE,
2254CASE_IGNORE,
2255/*      agrave          aacute          acircumflex     atilde          */
2256CASE_IGNORE,
2257CASE_IGNORE,
2258CASE_IGNORE,
2259CASE_IGNORE,
2260/*      adiaeresis      aring           ae              ccedilla        */
2261CASE_IGNORE,
2262CASE_IGNORE,
2263CASE_IGNORE,
2264CASE_IGNORE,
2265/*      egrave          eacute          ecircumflex     ediaeresis      */
2266CASE_IGNORE,
2267CASE_IGNORE,
2268CASE_IGNORE,
2269CASE_IGNORE,
2270/*      igrave          iacute          icircumflex     idiaeresis      */
2271CASE_IGNORE,
2272CASE_IGNORE,
2273CASE_IGNORE,
2274CASE_IGNORE,
2275/*      eth             ntilde          ograve          oacute          */
2276CASE_IGNORE,
2277CASE_IGNORE,
2278CASE_IGNORE,
2279CASE_IGNORE,
2280/*      ocircumflex     otilde          odiaeresis      division        */
2281CASE_IGNORE,
2282CASE_IGNORE,
2283CASE_IGNORE,
2284CASE_IGNORE,
2285/*      oslash          ugrave          uacute          ucircumflex     */
2286CASE_IGNORE,
2287CASE_IGNORE,
2288CASE_IGNORE,
2289CASE_IGNORE,
2290/*      udiaeresis      yacute          thorn           ydiaeresis      */
2291CASE_IGNORE,
2292CASE_IGNORE,
2293CASE_IGNORE,
2294CASE_IGNORE,
2295};
2296
2297Const int Tspttable[] =		/* ESC FS (^\) special point plot */
2298{
2299/*	NUL		SOH		STX		ETX	*/
2300CASE_IGNORE,
2301CASE_IGNORE,
2302CASE_IGNORE,
2303CASE_IGNORE,
2304/*	EOT		ENQ		ACK		BEL	*/
2305CASE_IGNORE,
2306CASE_IGNORE,
2307CASE_IGNORE,
2308CASE_BEL,
2309/*	BS		HT		NL		VT	*/
2310CASE_BS,
2311CASE_TAB,
2312CASE_LF,
2313CASE_UP,
2314/*	NP		CR		SO		SI	*/
2315CASE_IGNORE,
2316CASE_CR,
2317CASE_IGNORE,
2318CASE_IGNORE,
2319/*	DLE		DC1		DC2		DC3	*/
2320CASE_IGNORE,
2321CASE_IGNORE,
2322CASE_IGNORE,
2323CASE_IGNORE,
2324/*	DC4		NAK		SYN		ETB	*/
2325CASE_IGNORE,
2326CASE_IGNORE,
2327CASE_IGNORE,
2328CASE_IGNORE,
2329/*	CAN		EM		SUB		ESC	*/
2330CASE_IGNORE,
2331CASE_IGNORE,
2332CASE_IGNORE,
2333CASE_ESC_STATE,
2334/*	FS		GS		RS		US	*/
2335CASE_PT_STATE,
2336CASE_PLT_STATE,
2337CASE_IPL_STATE,
2338CASE_ALP_STATE,
2339/*	SP		!		"		#	*/
2340CASE_SPT_POINT,
2341CASE_SPT_POINT,
2342CASE_SPT_POINT,
2343CASE_SPT_POINT,
2344/*	$		%		&		'	*/
2345CASE_SPT_POINT,
2346CASE_SPT_POINT,
2347CASE_SPT_POINT,
2348CASE_SPT_POINT,
2349/*	(		)		*		+	*/
2350CASE_SPT_POINT,
2351CASE_SPT_POINT,
2352CASE_SPT_POINT,
2353CASE_SPT_POINT,
2354/*	,		-		.		/	*/
2355CASE_SPT_POINT,
2356CASE_SPT_POINT,
2357CASE_SPT_POINT,
2358CASE_SPT_POINT,
2359/*	0		1		2		3	*/
2360CASE_SPT_POINT,
2361CASE_SPT_POINT,
2362CASE_SPT_POINT,
2363CASE_SPT_POINT,
2364/*	4		5		6		7	*/
2365CASE_SPT_POINT,
2366CASE_SPT_POINT,
2367CASE_SPT_POINT,
2368CASE_SPT_POINT,
2369/*	8		9		:		;	*/
2370CASE_SPT_POINT,
2371CASE_SPT_POINT,
2372CASE_SPT_POINT,
2373CASE_SPT_POINT,
2374/*	<		=		>		?	*/
2375CASE_SPT_POINT,
2376CASE_SPT_POINT,
2377CASE_SPT_POINT,
2378CASE_SPT_POINT,
2379/*	@		A		B		C	*/
2380CASE_SPT_POINT,
2381CASE_SPT_POINT,
2382CASE_SPT_POINT,
2383CASE_SPT_POINT,
2384/*	D		E		F		G	*/
2385CASE_SPT_POINT,
2386CASE_SPT_POINT,
2387CASE_SPT_POINT,
2388CASE_SPT_POINT,
2389/*	H		I		J		K	*/
2390CASE_SPT_POINT,
2391CASE_SPT_POINT,
2392CASE_SPT_POINT,
2393CASE_SPT_POINT,
2394/*	L		M		N		O	*/
2395CASE_SPT_POINT,
2396CASE_SPT_POINT,
2397CASE_SPT_POINT,
2398CASE_SPT_POINT,
2399/*	P		Q		R		S	*/
2400CASE_SPT_POINT,
2401CASE_SPT_POINT,
2402CASE_SPT_POINT,
2403CASE_SPT_POINT,
2404/*	T		U		V		W	*/
2405CASE_SPT_POINT,
2406CASE_SPT_POINT,
2407CASE_SPT_POINT,
2408CASE_SPT_POINT,
2409/*	X		Y		Z		[	*/
2410CASE_SPT_POINT,
2411CASE_SPT_POINT,
2412CASE_SPT_POINT,
2413CASE_SPT_POINT,
2414/*	\		]		^		_	*/
2415CASE_SPT_POINT,
2416CASE_SPT_POINT,
2417CASE_SPT_POINT,
2418CASE_SPT_POINT,
2419/*	`		a		b		c	*/
2420CASE_SPT_POINT,
2421CASE_SPT_POINT,
2422CASE_SPT_POINT,
2423CASE_SPT_POINT,
2424/*	d		e		f		g	*/
2425CASE_SPT_POINT,
2426CASE_SPT_POINT,
2427CASE_SPT_POINT,
2428CASE_SPT_POINT,
2429/*	h		i		j		k	*/
2430CASE_SPT_POINT,
2431CASE_SPT_POINT,
2432CASE_SPT_POINT,
2433CASE_SPT_POINT,
2434/*	l		m		n		o	*/
2435CASE_SPT_POINT,
2436CASE_SPT_POINT,
2437CASE_SPT_POINT,
2438CASE_SPT_POINT,
2439/*	p		q		r		s	*/
2440CASE_SPT_POINT,
2441CASE_SPT_POINT,
2442CASE_SPT_POINT,
2443CASE_SPT_POINT,
2444/*	t		u		v		w	*/
2445CASE_SPT_POINT,
2446CASE_SPT_POINT,
2447CASE_SPT_POINT,
2448CASE_SPT_POINT,
2449/*	x		y		z		{	*/
2450CASE_SPT_POINT,
2451CASE_SPT_POINT,
2452CASE_SPT_POINT,
2453CASE_SPT_POINT,
2454/*	|		}		~		DEL	*/
2455CASE_SPT_POINT,
2456CASE_SPT_POINT,
2457CASE_SPT_POINT,
2458CASE_SPT_POINT,
2459/*      0x80            0x81            0x82            0x83    */
2460CASE_IGNORE,
2461CASE_IGNORE,
2462CASE_IGNORE,
2463CASE_IGNORE,
2464/*      0x84            0x85            0x86            0x87    */
2465CASE_IGNORE,
2466CASE_IGNORE,
2467CASE_IGNORE,
2468CASE_IGNORE,
2469/*      0x88            0x89            0x8a            0x8b    */
2470CASE_IGNORE,
2471CASE_IGNORE,
2472CASE_IGNORE,
2473CASE_IGNORE,
2474/*      0x8c            0x8d            0x8e            0x8f    */
2475CASE_IGNORE,
2476CASE_IGNORE,
2477CASE_IGNORE,
2478CASE_IGNORE,
2479/*      0x90            0x91            0x92            0x93    */
2480CASE_IGNORE,
2481CASE_IGNORE,
2482CASE_IGNORE,
2483CASE_IGNORE,
2484/*      0x94            0x95            0x96            0x97    */
2485CASE_IGNORE,
2486CASE_IGNORE,
2487CASE_IGNORE,
2488CASE_IGNORE,
2489/*      0x99            0x99            0x9a            0x9b    */
2490CASE_IGNORE,
2491CASE_IGNORE,
2492CASE_IGNORE,
2493CASE_IGNORE,
2494/*      0x9c            0x9d            0x9e            0x9f    */
2495CASE_IGNORE,
2496CASE_IGNORE,
2497CASE_IGNORE,
2498CASE_IGNORE,
2499/*      nobreakspace    exclamdown      cent            sterling        */
2500CASE_IGNORE,
2501CASE_IGNORE,
2502CASE_IGNORE,
2503CASE_IGNORE,
2504/*      currency        yen             brokenbar       section         */
2505CASE_IGNORE,
2506CASE_IGNORE,
2507CASE_IGNORE,
2508CASE_IGNORE,
2509/*      diaeresis       copyright       ordfeminine     guillemotleft   */
2510CASE_IGNORE,
2511CASE_IGNORE,
2512CASE_IGNORE,
2513CASE_IGNORE,
2514/*      notsign         hyphen          registered      macron          */
2515CASE_IGNORE,
2516CASE_IGNORE,
2517CASE_IGNORE,
2518CASE_IGNORE,
2519/*      degree          plusminus       twosuperior     threesuperior   */
2520CASE_IGNORE,
2521CASE_IGNORE,
2522CASE_IGNORE,
2523CASE_IGNORE,
2524/*      acute           mu              paragraph       periodcentered  */
2525CASE_IGNORE,
2526CASE_IGNORE,
2527CASE_IGNORE,
2528CASE_IGNORE,
2529/*      cedilla         onesuperior     masculine       guillemotright  */
2530CASE_IGNORE,
2531CASE_IGNORE,
2532CASE_IGNORE,
2533CASE_IGNORE,
2534/*      onequarter      onehalf         threequarters   questiondown    */
2535CASE_IGNORE,
2536CASE_IGNORE,
2537CASE_IGNORE,
2538CASE_IGNORE,
2539/*      Agrave          Aacute          Acircumflex     Atilde          */
2540CASE_IGNORE,
2541CASE_IGNORE,
2542CASE_IGNORE,
2543CASE_IGNORE,
2544/*      Adiaeresis      Aring           AE              Ccedilla        */
2545CASE_IGNORE,
2546CASE_IGNORE,
2547CASE_IGNORE,
2548CASE_IGNORE,
2549/*      Egrave          Eacute          Ecircumflex     Ediaeresis      */
2550CASE_IGNORE,
2551CASE_IGNORE,
2552CASE_IGNORE,
2553CASE_IGNORE,
2554/*      Igrave          Iacute          Icircumflex     Idiaeresis      */
2555CASE_IGNORE,
2556CASE_IGNORE,
2557CASE_IGNORE,
2558CASE_IGNORE,
2559/*      Eth             Ntilde          Ograve          Oacute          */
2560CASE_IGNORE,
2561CASE_IGNORE,
2562CASE_IGNORE,
2563CASE_IGNORE,
2564/*      Ocircumflex     Otilde          Odiaeresis      multiply        */
2565CASE_IGNORE,
2566CASE_IGNORE,
2567CASE_IGNORE,
2568CASE_IGNORE,
2569/*      Ooblique        Ugrave          Uacute          Ucircumflex     */
2570CASE_IGNORE,
2571CASE_IGNORE,
2572CASE_IGNORE,
2573CASE_IGNORE,
2574/*      Udiaeresis      Yacute          Thorn           ssharp          */
2575CASE_IGNORE,
2576CASE_IGNORE,
2577CASE_IGNORE,
2578CASE_IGNORE,
2579/*      agrave          aacute          acircumflex     atilde          */
2580CASE_IGNORE,
2581CASE_IGNORE,
2582CASE_IGNORE,
2583CASE_IGNORE,
2584/*      adiaeresis      aring           ae              ccedilla        */
2585CASE_IGNORE,
2586CASE_IGNORE,
2587CASE_IGNORE,
2588CASE_IGNORE,
2589/*      egrave          eacute          ecircumflex     ediaeresis      */
2590CASE_IGNORE,
2591CASE_IGNORE,
2592CASE_IGNORE,
2593CASE_IGNORE,
2594/*      igrave          iacute          icircumflex     idiaeresis      */
2595CASE_IGNORE,
2596CASE_IGNORE,
2597CASE_IGNORE,
2598CASE_IGNORE,
2599/*      eth             ntilde          ograve          oacute          */
2600CASE_IGNORE,
2601CASE_IGNORE,
2602CASE_IGNORE,
2603CASE_IGNORE,
2604/*      ocircumflex     otilde          odiaeresis      division        */
2605CASE_IGNORE,
2606CASE_IGNORE,
2607CASE_IGNORE,
2608CASE_IGNORE,
2609/*      oslash          ugrave          uacute          ucircumflex     */
2610CASE_IGNORE,
2611CASE_IGNORE,
2612CASE_IGNORE,
2613CASE_IGNORE,
2614/*      udiaeresis      yacute          thorn           ydiaeresis      */
2615CASE_IGNORE,
2616CASE_IGNORE,
2617CASE_IGNORE,
2618CASE_IGNORE,
2619};
2620