Annotation of src/usr.bin/window/char.c, Revision 1.1
1.1 ! deraadt 1: /* $NetBSD: char.c,v 1.3 1995/09/28 10:34:00 tls Exp $ */
! 2:
! 3: /*
! 4: * Copyright (c) 1983, 1993
! 5: * The Regents of the University of California. All rights reserved.
! 6: *
! 7: * This code is derived from software contributed to Berkeley by
! 8: * Edward Wang at The University of California, Berkeley.
! 9: *
! 10: * Redistribution and use in source and binary forms, with or without
! 11: * modification, are permitted provided that the following conditions
! 12: * are met:
! 13: * 1. Redistributions of source code must retain the above copyright
! 14: * notice, this list of conditions and the following disclaimer.
! 15: * 2. Redistributions in binary form must reproduce the above copyright
! 16: * notice, this list of conditions and the following disclaimer in the
! 17: * documentation and/or other materials provided with the distribution.
! 18: * 3. All advertising materials mentioning features or use of this software
! 19: * must display the following acknowledgement:
! 20: * This product includes software developed by the University of
! 21: * California, Berkeley and its contributors.
! 22: * 4. Neither the name of the University nor the names of its contributors
! 23: * may be used to endorse or promote products derived from this software
! 24: * without specific prior written permission.
! 25: *
! 26: * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
! 27: * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
! 28: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
! 29: * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
! 30: * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
! 31: * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
! 32: * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
! 33: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
! 34: * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
! 35: * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
! 36: * SUCH DAMAGE.
! 37: */
! 38:
! 39: #ifndef lint
! 40: #if 0
! 41: static char sccsid[] = "@(#)char.c 8.1 (Berkeley) 6/6/93";
! 42: #else
! 43: static char rcsid[] = "$NetBSD: char.c,v 1.3 1995/09/28 10:34:00 tls Exp $";
! 44: #endif
! 45: #endif /* not lint */
! 46:
! 47: #include "char.h"
! 48:
! 49: char _cmap[] = {
! 50: _C|_U, _C|_U, _C|_U, _C|_U, /* ^@ - ^C */
! 51: _C|_U, _C|_U, _C|_U, _C|_U, /* ^D - ^G */
! 52: _C, _C|_P, _C, _C|_U, /* ^H - ^K */
! 53: _C|_U, _C, _C|_U, _C|_U, /* ^L - ^O */
! 54: _C|_U, _C|_U, _C|_U, _C|_U, /* ^P - ^S */
! 55: _C|_U, _C|_U, _C|_U, _C|_U, /* ^T - ^W */
! 56: _C|_U, _C|_U, _C|_U, _C|_U, /* ^U - ^[ */
! 57: _C|_U, _C|_U, _C|_U, _C|_U, /* ^\ - ^_ */
! 58:
! 59: _P|_U, _P|_U, _P|_U, _P|_U,
! 60: _P|_U, _P|_U, _P|_U, _P|_U,
! 61: _P|_U, _P|_U, _P|_U, _P|_U,
! 62: _P|_U, _P|_U, _P|_U, _P|_U,
! 63: _P|_U, _P|_U, _P|_U, _P|_U,
! 64: _P|_U, _P|_U, _P|_U, _P|_U,
! 65: _P|_U, _P|_U, _P|_U, _P|_U,
! 66: _P|_U, _P|_U, _P|_U, _P|_U,
! 67:
! 68: _P|_U, _P|_U, _P|_U, _P|_U,
! 69: _P|_U, _P|_U, _P|_U, _P|_U,
! 70: _P|_U, _P|_U, _P|_U, _P|_U,
! 71: _P|_U, _P|_U, _P|_U, _P|_U,
! 72: _P|_U, _P|_U, _P|_U, _P|_U,
! 73: _P|_U, _P|_U, _P|_U, _P|_U,
! 74: _P|_U, _P|_U, _P|_U, _P|_U,
! 75: _P|_U, _P|_U, _P|_U, _P|_U,
! 76:
! 77: _P|_U, _P|_U, _P|_U, _P|_U,
! 78: _P|_U, _P|_U, _P|_U, _P|_U,
! 79: _P|_U, _P|_U, _P|_U, _P|_U,
! 80: _P|_U, _P|_U, _P|_U, _P|_U,
! 81: _P|_U, _P|_U, _P|_U, _P|_U,
! 82: _P|_U, _P|_U, _P|_U, _P|_U,
! 83: _P|_U, _P|_U, _P|_U, _P|_U,
! 84: _P|_U, _P|_U, _P|_U, _C|_U,
! 85:
! 86: _C|_U, _C|_U, _C|_U, _C|_U,
! 87: _C|_U, _C|_U, _C|_U, _C|_U,
! 88: _C|_U, _C|_U, _C|_U, _C|_U,
! 89: _C|_U, _C|_U, _C|_U, _C|_U,
! 90: _C|_U, _C|_U, _C|_U, _C|_U,
! 91: _C|_U, _C|_U, _C|_U, _C|_U,
! 92: _C|_U, _C|_U, _C|_U, _C|_U,
! 93: _C|_U, _C|_U, _C|_U, _C|_U,
! 94:
! 95: _C|_U, _C|_U, _C|_U, _C|_U,
! 96: _C|_U, _C|_U, _C|_U, _C|_U,
! 97: _C|_U, _C|_U, _C|_U, _C|_U,
! 98: _C|_U, _C|_U, _C|_U, _C|_U,
! 99: _C|_U, _C|_U, _C|_U, _C|_U,
! 100: _C|_U, _C|_U, _C|_U, _C|_U,
! 101: _C|_U, _C|_U, _C|_U, _C|_U,
! 102: _C|_U, _C|_U, _C|_U, _C|_U,
! 103:
! 104: _C|_U, _C|_U, _C|_U, _C|_U,
! 105: _C|_U, _C|_U, _C|_U, _C|_U,
! 106: _C|_U, _C|_U, _C|_U, _C|_U,
! 107: _C|_U, _C|_U, _C|_U, _C|_U,
! 108: _C|_U, _C|_U, _C|_U, _C|_U,
! 109: _C|_U, _C|_U, _C|_U, _C|_U,
! 110: _C|_U, _C|_U, _C|_U, _C|_U,
! 111: _C|_U, _C|_U, _C|_U, _C|_U,
! 112:
! 113: _C|_U, _C|_U, _C|_U, _C|_U,
! 114: _C|_U, _C|_U, _C|_U, _C|_U,
! 115: _C|_U, _C|_U, _C|_U, _C|_U,
! 116: _C|_U, _C|_U, _C|_U, _C|_U,
! 117: _C|_U, _C|_U, _C|_U, _C|_U,
! 118: _C|_U, _C|_U, _C|_U, _C|_U,
! 119: _C|_U, _C|_U, _C|_U, _C|_U,
! 120: _C|_U, _C|_U, _C|_U, _C|_U
! 121: };
! 122:
! 123: char *_unctrl[] = {
! 124: "^@", "^A", "^B", "^C", "^D", "^E", "^F", "^G",
! 125: "^H", "^I", "^J", "^K", "^L", "^M", "^N", "^O",
! 126: "^P", "^Q", "^R", "^S", "^T", "^U", "^V", "^W",
! 127: "^X", "^Y", "^Z", "^[", "^\\", "^]", "^^", "^_",
! 128: " ", "!", "\"", "#", "$", "%", "&", "'",
! 129: "(", ")", "*", "+", ",", "-", ".", "/",
! 130: "0", "1", "2", "3", "4", "5", "6", "7",
! 131: "8", "9", ":", ";", "<", "=", ">", "?",
! 132: "@", "A", "B", "C", "D", "E", "F", "G",
! 133: "H", "I", "J", "K", "L", "M", "N", "O",
! 134: "P", "Q", "R", "S", "T", "U", "V", "W",
! 135: "X", "Y", "Z", "[", "\\", "]", "^", "_",
! 136: "`", "a", "b", "c", "d", "e", "f", "g",
! 137: "h", "i", "j", "k", "l", "m", "n", "o",
! 138: "p", "q", "r", "s", "t", "u", "v", "w",
! 139: "x", "y", "z", "{", "|", "}", "~", "^?",
! 140: "\\200","\\201","\\202","\\203","\\204","\\205","\\206","\\207",
! 141: "\\210","\\211","\\212","\\213","\\214","\\215","\\216","\\217",
! 142: "\\220","\\221","\\222","\\223","\\224","\\225","\\226","\\227",
! 143: "\\230","\\231","\\232","\\233","\\234","\\235","\\236","\\237",
! 144: "\\240","\\241","\\242","\\243","\\244","\\245","\\246","\\247",
! 145: "\\250","\\251","\\252","\\253","\\254","\\255","\\256","\\257",
! 146: "\\260","\\261","\\262","\\263","\\264","\\265","\\266","\\267",
! 147: "\\270","\\271","\\272","\\273","\\274","\\275","\\276","\\277",
! 148: "\\300","\\301","\\302","\\303","\\304","\\305","\\306","\\307",
! 149: "\\310","\\311","\\312","\\313","\\314","\\315","\\316","\\317",
! 150: "\\320","\\321","\\322","\\323","\\324","\\325","\\326","\\327",
! 151: "\\330","\\331","\\332","\\333","\\334","\\335","\\336","\\337",
! 152: "\\340","\\341","\\342","\\343","\\344","\\345","\\346","\\347",
! 153: "\\350","\\351","\\352","\\353","\\354","\\355","\\356","\\357",
! 154: "\\360","\\361","\\362","\\363","\\364","\\365","\\366","\\367",
! 155: "\\370","\\371","\\372","\\373","\\374","\\375","\\376","\\377"
! 156: };