lobase

Linux port of OpenBSDs userland.
Log | Files | Refs | README

commit d57ddb5fa408a448989d9bb2576b3e2278587768
parent bf6f00af6559cbd30509baa5d4bd72c07560835a
Author: Duncaen <mail@duncano.de>
Date:   Wed,  8 Mar 2017 23:56:15 +0100

usr.bin/banner: import

Diffstat:
usr.bin/Makefile | 2+-
usr.bin/banner/Makefile | 18++++++++++++++++++
usr.bin/banner/banner.1 | 46++++++++++++++++++++++++++++++++++++++++++++++
usr.bin/banner/banner.c | 164+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
usr.bin/banner/banner.h | 35+++++++++++++++++++++++++++++++++++
usr.bin/banner/chset.c | 2118+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
6 files changed, 2382 insertions(+), 1 deletion(-)

diff --git a/usr.bin/Makefile b/usr.bin/Makefile @@ -5,6 +5,6 @@ SUBDIR= apply awk basename bc biff cal calendar cmp colrm col column comm \ mktemp nice nl nohup paste patch printenv printf readlink renice rev \ rs sed shar sort spell split stat tee time touch tr true tsort tty ul \ units uname unexpand uniq unvis uudecode uuencode vis wc what which \ - xinstall hexdump htpasswd cu newsyslog sdiff + xinstall hexdump htpasswd cu newsyslog sdiff banner SKIPDIR=file cu include ${.TOPDIR}/mk/bsd.subdir.mk diff --git a/usr.bin/banner/Makefile b/usr.bin/banner/Makefile @@ -0,0 +1,18 @@ +# $OpenBSD: Makefile,v 1.4 2014/07/16 20:06:27 okan Exp $ + +.TOPDIR?=../.. + +PROG= banner + +SRCS= $(PROG).c chset.c + +# if you want to make chars from the letter involved (like lpd), then +# un-comment the following. +#CFLAGS+= -DNOHASH_ONLY + +# if you want to use the same char set that lpd uses then un-comment +# the following. Lpd uses a much nicer character set but banner +# output will not be the same as the real thing. +#CFLAGS+= -DLPD_CHSET + +include ${.TOPDIR}/mk/bsd.prog.mk diff --git a/usr.bin/banner/banner.1 b/usr.bin/banner/banner.1 @@ -0,0 +1,46 @@ +.\" $OpenBSD: banner.1,v 1.8 2007/08/06 19:16:06 sobrado Exp $ +.\" $NetBSD: banner.1,v 1.1.1.1 1995/04/09 05:53:04 cgd Exp $ +.\" +.\" @(#)Copyright (c) 1995, Simon J. Gerraty. +.\" +.\" This is free software. It comes with NO WARRANTY. +.\" Permission to use, modify and distribute this source code +.\" is granted subject to the following conditions. +.\" 1/ that the above copyright notice and this notice +.\" are preserved in all copies and that due credit be given +.\" to the author. +.\" 2/ that any changes to this code are clearly commented +.\" as such so that the author does not get blamed for bugs +.\" other than his own. +.\" +.\" Please send copies of changes and bug-fixes to: +.\" sjg@zen.void.oz.au +.\" +.Dd $Mdocdate: August 6 2007 $ +.Dt BANNER 1 +.Os +.Sh NAME +.Nm banner +.Nd print strings in large letters +.Sh SYNOPSIS +.Nm banner +.Ar string ... +.Sh DESCRIPTION +.Nm +prints up to 10 characters of each +.Ar string +in large letters on the standard output. +.Sh EXAMPLES +The command +.Ic banner openbsd +displays: +.Bd -literal -offset indent + #### ##### ###### # # ##### #### ##### + # # # # # ## # # # # # # + # # # # ##### # # # ##### #### # # + # # ##### # # # # # # # # # + # # # # # ## # # # # # # + #### # ###### # # ##### #### ##### +.Ed +.Sh SEE ALSO +.Xr echo 1 diff --git a/usr.bin/banner/banner.c b/usr.bin/banner/banner.c @@ -0,0 +1,164 @@ +/* $OpenBSD: banner.c,v 1.12 2015/11/03 04:54:07 mmcc Exp $ */ +/* $NetBSD: banner.c,v 1.2 1995/04/09 06:00:15 cgd Exp $ */ + +/* + * Changes for banner(1) + * + * @(#)Copyright (c) 1995, Simon J. Gerraty. + * + * This is free software. It comes with NO WARRANTY. + * Permission to use, modify and distribute this source code + * is granted subject to the following conditions. + * 1/ that the above copyright notice and this notice + * are preserved in all copies and that due credit be given + * to the author. + * 2/ that any changes to this code are clearly commented + * as such so that the author does not get blamed for bugs + * other than his own. + * + * Please send copies of changes and bug-fixes to: + * sjg@zen.void.oz.au + */ + +/* + * Copyright (c) 1983, 1993 + * The Regents of the University of California. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include <stdio.h> +#include <unistd.h> +#include <stdlib.h> +#include <string.h> +#include <err.h> + +#include "banner.h" + +static long PW = LINELEN; + +/* the char gen code below is lifted from lpd */ + +static char * +scnline(int key, char *p, int c) +{ + int scnwidth; + + /* + * <sjg> lpd makes chars out of the letter in question. + * the results are somewhat mixed. Sticking to '#' as + * banner(1) does is more consistent. + */ +#ifndef NOHASH_ONLY + c = '#'; +#endif + + for (scnwidth = WIDTH; --scnwidth;) { + key <<= 1; + *p++ = key & 0200 ? c : BACKGND; + } + return (p); +} + +#define TRC(q) (((q)-' ')&0177) + + +static int +dropit(int c) +{ + switch(c) { + + case TRC('_'): + case TRC(';'): + case TRC(','): + case TRC('g'): + case TRC('j'): + case TRC('p'): + case TRC('q'): + case TRC('y'): + return (DROP); + + default: + return (0); + } +} + +static void +scan_out(int scfd, char *scsp, int dlm) +{ + char *strp; + int nchrs, j; + char outbuf[LINELEN+1], *sp, c, cc; + int d, scnhgt; + extern char scnkey[][HEIGHT]; /* in lpdchar.c */ + + for (scnhgt = 0; scnhgt++ < HEIGHT+DROP; ) { + strp = &outbuf[0]; + sp = scsp; + for (nchrs = 0; *sp != dlm && *sp != '\0'; ) { + cc = *sp++; + if ((unsigned char)cc < ' ' || + (unsigned char)cc > 0x7f) + cc = INVALID; + + c = TRC(cc); + d = dropit(c); + if ((!d && scnhgt > HEIGHT) || (scnhgt <= DROP && d)) + for (j = WIDTH; --j;) + *strp++ = BACKGND; + else + strp = scnline(scnkey[(int)c][scnhgt-1-d], strp, cc); + if (nchrs++ >= PW/(WIDTH+1)-1) + break; + *strp++ = BACKGND; +#ifdef LPD_CHSET /* <sjg> */ + *strp++ = BACKGND; +#endif + } + while (*--strp == BACKGND && strp >= outbuf) + ; + strp++; + *strp++ = '\n'; + (void) write(scfd, outbuf, strp-outbuf); + } +} + +/* + * for each word, print up to 10 chars in big letters. + */ +int +main(int argc, char *argv[]) +{ + char word[10+1]; /* strings limited to 10 chars */ + + if (pledge("stdio", NULL) == -1) + err(1, "pledge"); + + while (*++argv) { + (void)strlcpy(word, *argv, sizeof (word)); + scan_out(1, word, '\0'); + } + exit(0); +} diff --git a/usr.bin/banner/banner.h b/usr.bin/banner/banner.h @@ -0,0 +1,35 @@ +/* $OpenBSD: banner.h,v 1.3 2003/03/13 23:11:16 tedu Exp $ */ +/* $NetBSD: banner.h,v 1.2 1995/04/09 06:00:23 cgd Exp $ */ + +/* + * Various defines needed for code lifted from lpd. + * + * @(#)Copyright (c) 1995, Simon J. Gerraty. + * + * This is free software. It comes with NO WARRANTY. + * Permission to use, modify and distribute this source code + * is granted subject to the following conditions. + * 1/ that the above copyright notice and this notice + * are preserved in all copies and that due credit be given + * to the author. + * 2/ that any changes to this code are clearly commented + * as such so that the author does not get blamed for bugs + * other than his own. + * + * Please send copies of changes and bug-fixes to: + * sjg@zen.void.oz.au + */ + +#define LINELEN 132 +#define BACKGND ' ' +#define INVALID '_' + +#ifdef LPD_CHSET +#define HEIGHT 9 /* height of characters */ +#define DROP 3 /* offset to drop characters with descenders */ +#else +#define HEIGHT 8 /* height of characters */ +#define DROP 0 /* offset to drop characters with descenders */ +#endif +#define WIDTH 8 /* width of characters */ + diff --git a/usr.bin/banner/chset.c b/usr.bin/banner/chset.c @@ -0,0 +1,2118 @@ +/* $OpenBSD: chset.c,v 1.5 2009/10/27 23:59:35 deraadt Exp $ */ +/* $NetBSD: chset.c,v 1.2 1995/04/09 06:00:26 cgd Exp $ */ + +/* + * Changes for banner(1) + * @(#)Copyright (c) 1995, Simon J. Gerraty. + * + * This is free software. It comes with NO WARRANTY. + * Permission to use, modify and distribute this source code + * is granted subject to the following conditions. + * 1/ that the above copyright notice and this notice + * are preserved in all copies and that due credit be given + * to the author. + * 2/ that any changes to this code are clearly commented + * as such so that the author does not get blamed for bugs + * other than his own. + * + * Please send copies of changes and bug-fixes to: + * sjg@zen.void.oz.au + */ + +/* + * Copyright (c) 1983, 1993 + * The Regents of the University of California. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include "banner.h" + +/* + * <sjg> the following were all re-generated by a perl script, + * to fill in the gaps needed by the banner(1) char set. + */ +#define c_______ 0 +#define c______1 1 +#define c_____1_ 2 +#define c_____11 3 +#define c____1__ 4 +#define c____1_1 5 +#define c____11_ 6 +#define c____111 7 +#define c___1___ 8 +#define c___1__1 9 +#define c___1_1_ 10 +#define c___1_11 11 +#define c___11__ 12 +#define c___11_1 13 +#define c___111_ 14 +#define c___1111 15 +#define c__1____ 16 +#define c__1___1 17 +#define c__1__1_ 18 +#define c__1__11 19 +#define c__1_1__ 20 +#define c__1_1_1 21 +#define c__1_11_ 22 +#define c__1_111 23 +#define c__11___ 24 +#define c__11__1 25 +#define c__11_1_ 26 +#define c__11_11 27 +#define c__111__ 28 +#define c__111_1 29 +#define c__1111_ 30 +#define c__11111 31 +#define c_1_____ 32 +#define c_1____1 33 +#define c_1___1_ 34 +#define c_1___11 35 +#define c_1__1__ 36 +#define c_1__1_1 37 +#define c_1__11_ 38 +#define c_1__111 39 +#define c_1_1___ 40 +#define c_1_1__1 41 +#define c_1_1_1_ 42 +#define c_1_1_11 43 +#define c_1_11__ 44 +#define c_1_11_1 45 +#define c_1_111_ 46 +#define c_1_1111 47 +#define c_11____ 48 +#define c_11___1 49 +#define c_11__1_ 50 +#define c_11__11 51 +#define c_11_1__ 52 +#define c_11_1_1 53 +#define c_11_11_ 54 +#define c_11_111 55 +#define c_111___ 56 +#define c_111__1 57 +#define c_111_1_ 58 +#define c_111_11 59 +#define c_1111__ 60 +#define c_1111_1 61 +#define c_11111_ 62 +#define c_111111 63 +#define c1______ 64 +#define c1_____1 65 +#define c1____1_ 66 +#define c1____11 67 +#define c1___1__ 68 +#define c1___1_1 69 +#define c1___11_ 70 +#define c1___111 71 +#define c1__1___ 72 +#define c1__1__1 73 +#define c1__1_1_ 74 +#define c1__1_11 75 +#define c1__11__ 76 +#define c1__11_1 77 +#define c1__111_ 78 +#define c1__1111 79 +#define c1_1____ 80 +#define c1_1___1 81 +#define c1_1__1_ 82 +#define c1_1__11 83 +#define c1_1_1__ 84 +#define c1_1_1_1 85 +#define c1_1_11_ 86 +#define c1_1_111 87 +#define c1_11___ 88 +#define c1_11__1 89 +#define c1_11_1_ 90 +#define c1_11_11 91 +#define c1_111__ 92 +#define c1_111_1 93 +#define c1_1111_ 94 +#define c1_11111 95 +#define c11_____ 96 +#define c11____1 97 +#define c11___1_ 98 +#define c11___11 99 +#define c11__1__ 100 +#define c11__1_1 101 +#define c11__11_ 102 +#define c11__111 103 +#define c11_1___ 104 +#define c11_1__1 105 +#define c11_1_1_ 106 +#define c11_1_11 107 +#define c11_11__ 108 +#define c11_11_1 109 +#define c11_111_ 110 +#define c11_1111 111 +#define c111____ 112 +#define c111___1 113 +#define c111__1_ 114 +#define c111__11 115 +#define c111_1__ 116 +#define c111_1_1 117 +#define c111_11_ 118 +#define c111_111 119 +#define c1111___ 120 +#define c1111__1 121 +#define c1111_1_ 122 +#define c1111_11 123 +#define c11111__ 124 +#define c11111_1 125 +#define c111111_ 126 +#define c1111111 127 + + +char scnkey[][HEIGHT] = /* this is relatively easy to modify */ + /* just look: */ +{ +#ifdef LPD_CHSET /* <sjg> */ + { c_______, + c_______, + c_______, + c_______, + c_______, + c_______, + c_______, + c_______, + c_______ }, /* */ + + { c__11___, + c__11___, + c__11___, + c__11___, + c__11___, + c_______, + c_______, + c__11___, + c__11___ }, /* ! */ + + { c_1__1__, + c_1__1__, + c_______, + c_______, + c_______, + c_______, + c_______, + c_______, + c_______ }, /* " */ + + { c_______, + c__1_1__, + c__1_1__, + c1111111, + c__1_1__, + c1111111, + c__1_1__, + c__1_1__, + c_______ }, /* # */ + + { c___1___, + c_11111_, + c1__1__1, + c1__1___, + c_11111_, + c___1__1, + c1__1__1, + c_11111_, + c___1___ }, /* $ */ + + { c_1_____, + c1_1___1, + c_1___1_, + c____1__, + c___1___, + c__1____, + c_1___1_, + c1___1_1, + c_____1_ }, /* % */ + + { c_11____, + c1__1___, + c1___1__, + c_1_1___, + c__1____, + c_1_1__1, + c1___11_, + c1___11_, + c_111__1 }, /* & */ + + { c___11__, + c___11__, + c___1___, + c__1____, + c_______, + c_______, + c_______, + c_______, + c_______ }, /* ' */ + + { c____1__, + c___1___, + c__1____, + c__1____, + c__1____, + c__1____, + c__1____, + c___1___, + c____1__ }, /* ( */ + + { c__1____, + c___1___, + c____1__, + c____1__, + c____1__, + c____1__, + c____1__, + c___1___, + c__1____ }, /* ) */ + + { c_______, + c___1___, + c1__1__1, + c_1_1_1_, + c__111__, + c_1_1_1_, + c1__1__1, + c___1___, + c_______ }, /* * */ + + { c_______, + c___1___, + c___1___, + c___1___, + c1111111, + c___1___, + c___1___, + c___1___, + c_______ }, /* + */ + + { c_______, + c_______, + c_______, + c_______, + c__11___, + c__11___, + c__1____, + c_1_____, + c_______ }, /* , */ + + { c_______, + c_______, + c_______, + c_______, + c1111111, + c_______, + c_______, + c_______, + c_______ }, /* - */ + + { c_______, + c_______, + c_______, + c_______, + c_______, + c_______, + c_______, + c__11___, + c__11___ }, /* . */ + + { c_______, + c______1, + c_____1_, + c____1__, + c___1___, + c__1____, + c_1_____, + c1______, + c_______ }, /* / */ + + { c_11111_, + c1_____1, + c1____11, + c1___1_1, + c1__1__1, + c1_1___1, + c11____1, + c1_____1, + c_11111_ }, /* 0 */ + + { c___1___, + c__11___, + c_1_1___, + c___1___, + c___1___, + c___1___, + c___1___, + c___1___, + c_11111_ }, /* 1 */ + + { c_11111_, + c1_____1, + c______1, + c_____1_, + c__111__, + c_1_____, + c1______, + c1______, + c1111111 }, /* 2 */ + + { c_11111_, + c1_____1, + c______1, + c______1, + c__1111_, + c______1, + c______1, + c1_____1, + c_11111_ }, /* 3 */ + + { c_____1_, + c____11_, + c___1_1_, + c__1__1_, + c_1___1_, + c1____1_, + c1111111, + c_____1_, + c_____1_ }, /* 4 */ + + { c1111111, + c1______, + c1______, + c11111__, + c_____1_, + c______1, + c______1, + c1____1_, + c_1111__ }, /* 5 */ + + { c__1111_, + c_1_____, + c1______, + c1______, + c1_1111_, + c11____1, + c1_____1, + c1_____1, + c_11111_ }, /* 6 */ + + { c1111111, + c1_____1, + c_____1_, + c____1__, + c___1___, + c__1____, + c__1____, + c__1____, + c__1____ }, /* 7 */ + + { c_11111_, + c1_____1, + c1_____1, + c1_____1, + c_11111_, + c1_____1, + c1_____1, + c1_____1, + c_11111_ }, /* 8 */ + + { c_11111_, + c1_____1, + c1_____1, + c1_____1, + c_111111, + c______1, + c______1, + c1_____1, + c_1111__ }, /* 9 */ + + { c_______, + c_______, + c_______, + c__11___, + c__11___, + c_______, + c_______, + c__11___, + c__11___ }, /* : */ + + + { c__11___, + c__11___, + c_______, + c_______, + c__11___, + c__11___, + c__1____, + c_1_____, + c_______ }, /* ; */ + + { c____1__, + c___1___, + c__1____, + c_1_____, + c1______, + c_1_____, + c__1____, + c___1___, + c____1__ }, /* < */ + + { c_______, + c_______, + c_______, + c1111111, + c_______, + c1111111, + c_______, + c_______, + c_______ }, /* = */ + + { c__1____, + c___1___, + c____1__, + c_____1_, + c______1, + c_____1_, + c____1__, + c___1___, + c__1____ }, /* > */ + + { c__1111_, + c_1____1, + c_1____1, + c______1, + c____11_, + c___1___, + c___1___, + c_______, + c___1___ }, /* ? */ + + { c__1111_, + c_1____1, + c1__11_1, + c1_1_1_1, + c1_1_1_1, + c1_1111_, + c1______, + c_1____1, + c__1111_ }, /* @ */ + + { c__111__, + c_1___1_, + c1_____1, + c1_____1, + c1111111, + c1_____1, + c1_____1, + c1_____1, + c1_____1 }, /* A */ + + { c111111_, + c_1____1, + c_1____1, + c_1____1, + c_11111_, + c_1____1, + c_1____1, + c_1____1, + c111111_ }, /* B */ + + { c__1111_, + c_1____1, + c1______, + c1______, + c1______, + c1______, + c1______, + c_1____1, + c__1111_ }, /* C */ + + { c11111__, + c_1___1_, + c_1____1, + c_1____1, + c_1____1, + c_1____1, + c_1____1, + c_1___1_, + c11111__ }, /* D */ + + { c1111111, + c1______, + c1______, + c1______, + c111111_, + c1______, + c1______, + c1______, + c1111111 }, /* E */ + + { c1111111, + c1______, + c1______, + c1______, + c111111_, + c1______, + c1______, + c1______, + c1______ }, /* F */ + + { c__1111_, + c_1____1, + c1______, + c1______, + c1______, + c1__1111, + c1_____1, + c_1____1, + c__1111_ }, /* G */ + + { c1_____1, + c1_____1, + c1_____1, + c1_____1, + c1111111, + c1_____1, + c1_____1, + c1_____1, + c1_____1 }, /* H */ + + { c_11111_, + c___1___, + c___1___, + c___1___, + c___1___, + c___1___, + c___1___, + c___1___, + c_11111_ }, /* I */ + + { c__11111, + c____1__, + c____1__, + c____1__, + c____1__, + c____1__, + c____1__, + c1___1__, + c_111___ }, /* J */ + + { c1_____1, + c1____1_, + c1___1__, + c1__1___, + c1_1____, + c11_1___, + c1___1__, + c1____1_, + c1_____1 }, /* K */ + + { c1______, + c1______, + c1______, + c1______, + c1______, + c1______, + c1______, + c1______, + c1111111 }, /* L */ + + { c1_____1, + c11___11, + c1_1_1_1, + c1__1__1, + c1_____1, + c1_____1, + c1_____1, + c1_____1, + c1_____1 }, /* M */ + + { c1_____1, + c11____1, + c1_1___1, + c1__1__1, + c1___1_1, + c1____11, + c1_____1, + c1_____1, + c1_____1 }, /* N */ + + { c__111__, + c_1___1_, + c1_____1, + c1_____1, + c1_____1, + c1_____1, + c1_____1, + c_1___1_, + c__111__ }, /* O */ + + { c111111_, + c1_____1, + c1_____1, + c1_____1, + c111111_, + c1______, + c1______, + c1______, + c1______ }, /* P */ + + { c__111__, + c_1___1_, + c1_____1, + c1_____1, + c1_____1, + c1__1__1, + c1___1_1, + c_1___1_, + c__111_1 }, /* Q */ + + { c111111_, + c1_____1, + c1_____1, + c1_____1, + c111111_, + c1__1___, + c1___1__, + c1____1_, + c1_____1 }, /* R */ + + { c_11111_, + c1_____1, + c1______, + c1______, + c_11111_, + c______1, + c______1, + c1_____1, + c_11111_ }, /* S */ + + { c1111111, + c___1___, + c___1___, + c___1___, + c___1___, + c___1___, + c___1___, + c___1___, + c___1___ }, /* T */ + + { c1_____1, + c1_____1, + c1_____1, + c1_____1, + c1_____1, + c1_____1, + c1_____1, + c1_____1, + c_11111_ }, /* U */ + + { c1_____1, + c1_____1, + c1_____1, + c_1___1_, + c_1___1_, + c__1_1__, + c__1_1__, + c___1___, + c___1___ }, /* V */ + + { c1_____1, + c1_____1, + c1_____1, + c1_____1, + c1__1__1, + c1__1__1, + c1_1_1_1, + c11___11, + c1_____1 }, /* W */ + + { c1_____1, + c1_____1, + c_1___1_, + c__1_1__, + c___1___, + c__1_1__, + c_1___1_, + c1_____1, + c1_____1 }, /* X */ + + { c1_____1, + c1_____1, + c_1___1_, + c__1_1__, + c___1___, + c___1___, + c___1___, + c___1___, + c___1___ }, /* Y */ + + { c1111111, + c______1, + c_____1_, + c____1__, + c___1___, + c__1____, + c_1_____, + c1______, + c1111111 }, /* Z */ + + { c_1111__, + c_1_____, + c_1_____, + c_1_____, + c_1_____, + c_1_____, + c_1_____, + c_1_____, + c_1111__ }, /* [ */ + + { c_______, + c1______, + c_1_____, + c__1____, + c___1___, + c____1__, + c_____1_, + c______1, + c_______ }, /* \ */ + + { c__1111_, + c_____1_, + c_____1_, + c_____1_, + c_____1_, + c_____1_, + c_____1_, + c_____1_, + c__1111_ }, /* ] */ + + { c___1___, + c__1_1__, + c_1___1_, + c1_____1, + c_______, + c_______, + c_______, + c_______ }, /* ^ */ + + { c_______, + c_______, + c_______, + c_______, + c_______, + c_______, + c_______, + c1111111, + c_______ }, /* _ */ + + { c__11___, + c__11___, + c___1___, + c____1__, + c_______, + c_______, + c_______, + c_______, + c_______ }, /* ` */ + + { c_______, + c_______, + c_______, + c_1111__, + c_____1_, + c_11111_, + c1_____1, + c1____11, + c_1111_1 }, /* a */ + + { c1______, + c1______, + c1______, + c1_111__, + c11___1_, + c1_____1, + c1_____1, + c11___1_, + c1_111__ }, /* b */ + + { c_______, + c_______, + c_______, + c_1111__, + c1____1_, + c1______, + c1______, + c1____1_, + c_1111__ }, /* c */ + + { c_____1_, + c_____1_, + c_____1_, + c_111_1_, + c1___11_, + c1____1_, + c1____1_, + c1___11_, + c_111_1_ }, /* d */ + + { c_______, + c_______, + c_______, + c_1111__, + c1____1_, + c111111_, + c1______, + c1____1_, + c_1111__ }, /* e */ + + { c___11__, + c__1__1_, + c__1____, + c__1____, + c11111__, + c__1____, + c__1____, + c__1____, + c__1____ }, /* f */ + + { c_111_1_, + c1___11_, + c1____1_, + c1____1_, + c1___11_, + c_111_1_, + c_____1_, + c1____1_, + c_1111__ }, /* g */ + + { c1______, + c1______, + c1______, + c1_111__, + c11___1_, + c1____1_, + c1____1_, + c1____1_, + c1____1_ }, /* h */ + + { c_______, + c___1___, + c_______, + c__11___, + c___1___, + c___1___, + c___1___, + c___1___, + c__111__ }, /* i */ + + { c____11_, + c_____1_, + c_____1_, + c_____1_, + c_____1_, + c_____1_, + c_____1_, + c_1___1_, + c__111__ }, /* j */ + + { c1______, + c1______, + c1______, + c1___1__, + c1__1___, + c1_1____, + c11_1___, + c1___1__, + c1____1_ }, /* k */ + + { c__11___, + c___1___, + c___1___, + c___1___, + c___1___, + c___1___, + c___1___, + c___1___, + c__111__ }, /* l */ + + { c_______, + c_______, + c_______, + c1_1_11_, + c11_1__1, + c1__1__1, + c1__1__1, + c1__1__1, + c1__1__1 }, /* m */ + + { c_______, + c_______, + c_______, + c1_111__, + c11___1_, + c1____1_, + c1____1_, + c1____1_, + c1____1_ }, /* n */ + + { c_______, + c_______, + c_______, + c_1111__, + c1____1_, + c1____1_, + c1____1_, + c1____1_, + c_1111__ }, /* o */ + + { c1_111__, + c11___1_, + c1____1_, + c1____1_, + c11___1_, + c1_111__, + c1______, + c1______, + c1______ }, /* p */ + + { c_111_1_, + c1___11_, + c1____1_, + c1____1_, + c1___11_, + c_111_1_, + c_____1_, + c_____1_, + c_____1_ }, /* q */ + + { c_______, + c_______, + c_______, + c1_111__, + c11___1_, + c1______, + c1______, + c1______, + c1______ }, /* r */ + + { c_______, + c_______, + c_______, + c_1111__, + c1____1_, + c_11____, + c___11__, + c1____1_, + c_1111__ }, /* s */ + + { c_______, + c__1____, + c__1____, + c11111__, + c__1____, + c__1____, + c__1____, + c__1__1_, + c___11__ }, /* t */ + + { c_______, + c_______, + c_______, + c1____1_, + c1____1_, + c1____1_, + c1____1_, + c1___11_, + c_111_1_ }, /* u */ + + { c_______, + c_______, + c_______, + c1_____1, + c1_____1, + c1_____1, + c_1___1_, + c__1_1__, + c___1___ }, /* v */ + + { c_______, + c_______, + c_______, + c1_____1, + c1__1__1, + c1__1__1, + c1__1__1, + c1__1__1, + c_11_11_ }, /* w */ + + { c_______, + c_______, + c_______, + c1____1_, + c_1__1__, + c__11___, + c__11___, + c_1__1__, + c1____1_ }, /* x */ + + { c1____1_, + c1____1_, + c1____1_, + c1____1_, + c1___11_, + c_111_1_, + c_____1_, + c1____1_, + c_1111__ }, /* y */ + + { c_______, + c_______, + c_______, + c111111_, + c____1__, + c___1___, + c__1____, + c_1_____, + c111111_ }, /* z */ + + { c___11__, + c__1____, + c__1____, + c__1____, + c_1_____, + c__1____, + c__1____, + c__1____, + c___11__ }, /* } */ + + { c___1___, + c___1___, + c___1___, + c___1___, + c___1___, + c___1___, + c___1___, + c___1___, + c___1___ }, /* | */ + + { c__11___, + c____1__, + c____1__, + c____1__, + c_____1_, + c____1__, + c____1__, + c____1__, + c__11___ }, /* } */ + + { c_11____, + c1__1__1, + c____11_, + c_______, + c_______, + c_______, + c_______, + c_______, + c_______ }, /* ~ */ + + { c_1__1__, + c1__1__1, + c__1__1_, + c_1__1__, + c1__1__1, + c__1__1_, + c_1__1__, + c1__1__1, + c__1__1_ } /* rub-out */ + +#else /* LPD_CHSET */ + + /* <sjg> this is the real banner char set */ + { + c_______, + c_______, + c_______, + c_______, + c_______, + c_______, + c_______, + c_______ + }, /* */ + + { + c__111__, + c__111__, + c__111__, + c___1___, + c_______, + c__111__, + c__111__, + c_______ + }, /* ! */ + { + c111_111, + c111_111, + c_1___1_, + c_______, + c_______, + c_______, + c_______, + c_______ + }, /* " */ + { + c__1_1__, + c__1_1__, + c1111111, + c__1_1__, + c1111111, + c__1_1__, + c__1_1__, + c_______ + }, /* # */ + { + c_11111_, + c1__1__1, + c1__1___, + c_11111_, + c___1__1, + c1__1__1, + c_11111_, + c_______ + }, /* $ */ + { + c111___1, + c1_1__1_, + c111_1__, + c___1___, + c__1_111, + c_1__1_1, + c1___111, + c_______ + }, /* % */ + { + c__11___, + c_1__1__, + c__11___, + c_111___, + c1___1_1, + c1____1_, + c_111__1, + c_______ + }, /* & */ + { + c__111__, + c__111__, + c___1___, + c__1____, + c_______, + c_______, + c_______, + c_______ + }, /* ' */ + { + c___11__, + c__1____, + c_1_____, + c_1_____, + c_1_____, + c__1____, + c___11__, + c_______ + }, /* ( */ + { + c__11___, + c____1__, + c_____1_, + c_____1_, + c_____1_, + c____1__, + c__11___, + c_______ + }, /* ) */ + { + c_______, + c_1___1_, + c__1_1__, + c1111111, + c__1_1__, + c_1___1_, + c_______, + c_______ + }, /* * */ + { + c_______, + c___1___, + c___1___, + c_11111_, + c___1___, + c___1___, + c_______, + c_______ + }, /* + */ + { + c_______, + c_______, + c_______, + c__111__, + c__111__, + c___1___, + c__1____, + c_______ + }, /* , */ + { + c_______, + c_______, + c_______, + c_11111_, + c_______, + c_______, + c_______, + c_______ + }, /* - */ + { + c_______, + c_______, + c_______, + c_______, + c__111__, + c__111__, + c__111__, + c_______ + }, /* . */ + { + c______1, + c_____1_, + c____1__, + c___1___, + c__1____, + c_1_____, + c1______, + c_______ + }, /* / */ + { + c__111__, + c_1___1_, + c1_____1, + c1_____1, + c1_____1, + c_1___1_, + c__111__, + c_______ + }, /* 0 */ + { + c___1___, + c__11___, + c_1_1___, + c___1___, + c___1___, + c___1___, + c_11111_, + c_______ + }, /* 1 */ + { + c_11111_, + c1_____1, + c______1, + c_11111_, + c1______, + c1______, + c1111111, + c_______ + }, /* 2 */ + { + c_11111_, + c1_____1, + c______1, + c_11111_, + c______1, + c1_____1, + c_11111_, + c_______ + }, /* 3 */ + { + c1______, + c1____1_, + c1____1_, + c1____1_, + c1111111, + c_____1_, + c_____1_, + c_______ + }, /* 4 */ + { + c1111111, + c1______, + c1______, + c111111_, + c______1, + c1_____1, + c_11111_, + c_______ + }, /* 5 */ + { + c_11111_, + c1_____1, + c1______, + c111111_, + c1_____1, + c1_____1, + c_11111_, + c_______ + }, /* 6 */ + { + c1111111, + c1____1_, + c____1__, + c___1___, + c__1____, + c__1____, + c__1____, + c_______ + }, /* 7 */ + { + c_11111_, + c1_____1, + c1_____1, + c_11111_, + c1_____1, + c1_____1, + c_11111_, + c_______ + }, /* 8 */ + { + c_11111_, + c1_____1, + c1_____1, + c_111111, + c______1, + c1_____1, + c_11111_, + c_______ + }, /* 9 */ + { + c___1___, + c__111__, + c___1___, + c_______, + c___1___, + c__111__, + c___1___, + c_______ + }, /* : */ + { + c__111__, + c__111__, + c_______, + c__111__, + c__111__, + c___1___, + c__1____, + c_______ + }, /* ; */ + { + c____1__, + c___1___, + c__1____, + c_1_____, + c__1____, + c___1___, + c____1__, + c_______ + }, /* < */ + { + c_______, + c_______, + c_11111_, + c_______, + c_11111_, + c_______, + c_______, + c_______ + }, /* = */ + { + c__1____, + c___1___, + c____1__, + c_____1_, + c____1__, + c___1___, + c__1____, + c_______ + }, /* > */ + { + c_11111_, + c1_____1, + c______1, + c___111_, + c___1___, + c_______, + c___1___, + c_______ + }, /* ? */ + { + c_11111_, + c1_____1, + c1_111_1, + c1_111_1, + c1_1111_, + c1______, + c_11111_, + c_______ + }, /* @ */ + { + c___1___, + c__1_1__, + c_1___1_, + c1_____1, + c1111111, + c1_____1, + c1_____1, + c_______ + }, /* A */ + { + c111111_, + c1_____1, + c1_____1, + c111111_, + c1_____1, + c1_____1, + c111111_, + c_______ + }, /* B */ + { + c_11111_, + c1_____1, + c1______, + c1______, + c1______, + c1_____1, + c_11111_, + c_______ + }, /* C */ + { + c111111_, + c1_____1, + c1_____1, + c1_____1, + c1_____1, + c1_____1, + c111111_, + c_______ + }, /* D */ + { + c1111111, + c1______, + c1______, + c11111__, + c1______, + c1______, + c1111111, + c_______ + }, /* E */ + { + c1111111, + c1______, + c1______, + c11111__, + c1______, + c1______, + c1______, + c_______ + }, /* F */ + { + c_11111_, + c1_____1, + c1______, + c1__1111, + c1_____1, + c1_____1, + c_11111_, + c_______ + }, /* G */ + { + c1_____1, + c1_____1, + c1_____1, + c1111111, + c1_____1, + c1_____1, + c1_____1, + c_______ + }, /* H */ + { + c__111__, + c___1___, + c___1___, + c___1___, + c___1___, + c___1___, + c__111__, + c_______ + }, /* I */ + { + c______1, + c______1, + c______1, + c______1, + c1_____1, + c1_____1, + c_11111_, + c_______ + }, /* J */ + { + c1____1_, + c1___1__, + c1__1___, + c111____, + c1__1___, + c1___1__, + c1____1_, + c_______ + }, /* K */ + { + c1______, + c1______, + c1______, + c1______, + c1______, + c1______, + c1111111, + c_______ + }, /* L */ + { + c1_____1, + c11___11, + c1_1_1_1, + c1__1__1, + c1_____1, + c1_____1, + c1_____1, + c_______ + }, /* M */ + { + c1_____1, + c11____1, + c1_1___1, + c1__1__1, + c1___1_1, + c1____11, + c1_____1, + c_______ + }, /* N */ + { + c1111111, + c1_____1, + c1_____1, + c1_____1, + c1_____1, + c1_____1, + c1111111, + c_______ + }, /* O */ + { + c111111_, + c1_____1, + c1_____1, + c111111_, + c1______, + c1______, + c1______, + c_______ + }, /* P */ + { + c_11111_, + c1_____1, + c1_____1, + c1_____1, + c1___1_1, + c1____1_, + c_1111_1, + c_______ + }, /* Q */ + { + c111111_, + c1_____1, + c1_____1, + c111111_, + c1___1__, + c1____1_, + c1_____1, + c_______ + }, /* R */ + { + c_11111_, + c1_____1, + c1______, + c_11111_, + c______1, + c1_____1, + c_11111_, + c_______ + }, /* S */ + { + c1111111, + c___1___, + c___1___, + c___1___, + c___1___, + c___1___, + c___1___, + c_______ + }, /* T */ + { + c1_____1, + c1_____1, + c1_____1, + c1_____1, + c1_____1, + c1_____1, + c_11111_, + c_______ + }, /* U */ + { + c1_____1, + c1_____1, + c1_____1, + c1_____1, + c_1___1_, + c__1_1__, + c___1___, + c_______ + }, /* V */ + { + c1_____1, + c1__1__1, + c1__1__1, + c1__1__1, + c1__1__1, + c1__1__1, + c_11_11_, + c_______ + }, /* W */ + { + c1_____1, + c_1___1_, + c__1_1__, + c___1___, + c__1_1__, + c_1___1_, + c1_____1, + c_______ + }, /* X */ + { + c1_____1, + c_1___1_, + c__1_1__, + c___1___, + c___1___, + c___1___, + c___1___, + c_______ + }, /* Y */ + { + c1111111, + c_____1_, + c____1__, + c___1___, + c__1____, + c_1_____, + c1111111, + c_______ + }, /* Z */ + { + c_11111_, + c_1_____, + c_1_____, + c_1_____, + c_1_____, + c_1_____, + c_11111_, + c_______ + }, /* [ */ + { + c1______, + c_1_____, + c__1____, + c___1___, + c____1__, + c_____1_, + c______1, + c_______ + }, /* \ */ + { + c_11111_, + c_____1_, + c_____1_, + c_____1_, + c_____1_, + c_____1_, + c_11111_, + c_______ + }, /* ] */ + { + c___1___, + c__1_1__, + c_1___1_, + c_______, + c_______, + c_______, + c_______, + c_______ + }, /* ^ */ + { + c_______, + c_______, + c_______, + c_______, + c_______, + c_______, + c1111111, + c_______ + }, /* _ */ + { + c__111__, + c__111__, + c___1___, + c____1__, + c_______, + c_______, + c_______, + c_______ + }, /* ` */ + { + c_______, + c___11__, + c__1__1_, + c_1____1, + c_111111, + c_1____1, + c_1____1, + c_______ + }, /* a */ + { + c_______, + c_11111_, + c_1____1, + c_11111_, + c_1____1, + c_1____1, + c_11111_, + c_______ + }, /* b */ + { + c_______, + c__1111_, + c_1____1, + c_1_____, + c_1_____, + c_1____1, + c__1111_, + c_______ + }, /* c */ + { + c_______, + c_11111_, + c_1____1, + c_1____1, + c_1____1, + c_1____1, + c_11111_, + c_______ + }, /* d */ + { + c_______, + c_111111, + c_1_____, + c_11111_, + c_1_____, + c_1_____, + c_111111, + c_______ + }, /* e */ + { + c_______, + c_111111, + c_1_____, + c_11111_, + c_1_____, + c_1_____, + c_1_____, + c_______ + }, /* f */ + { + c_______, + c__1111_, + c_1____1, + c_1_____, + c_1__111, + c_1____1, + c__1111_, + c_______ + }, /* g */ + { + c_______, + c_1____1, + c_1____1, + c_111111, + c_1____1, + c_1____1, + c_1____1, + c_______ + }, /* h */ + { + c_______, + c____1__, + c____1__, + c____1__, + c____1__, + c____1__, + c____1__, + c_______ + }, /* i */ + { + c_______, + c______1, + c______1, + c______1, + c______1, + c_1____1, + c__1111_, + c_______ + }, /* j */ + { + c_______, + c_1____1, + c_1___1_, + c_1111__, + c_1__1__, + c_1___1_, + c_1____1, + c_______ + }, /* k */ + { + c_______, + c_1_____, + c_1_____, + c_1_____, + c_1_____, + c_1_____, + c_111111, + c_______ + }, /* l */ + { + c_______, + c_1____1, + c_11__11, + c_1_11_1, + c_1____1, + c_1____1, + c_1____1, + c_______ + }, /* m */ + { + c_______, + c_1____1, + c_11___1, + c_1_1__1, + c_1__1_1, + c_1___11, + c_1____1, + c_______ + }, /* n */ + { + c_______, + c__1111_, + c_1____1, + c_1____1, + c_1____1, + c_1____1, + c__1111_, + c_______ + }, /* o */ + { + c_______, + c_11111_, + c_1____1, + c_1____1, + c_11111_, + c_1_____, + c_1_____, + c_______ + }, /* p */ + { + c_______, + c__1111_, + c_1____1, + c_1____1, + c_1__1_1, + c_1___1_, + c__111_1, + c_______ + }, /* q */ + { + c_______, + c_11111_, + c_1____1, + c_1____1, + c_11111_, + c_1___1_, + c_1____1, + c_______ + }, /* r */ + { + c_______, + c__1111_, + c_1_____, + c__1111_, + c______1, + c_1____1, + c__1111_, + c_______ + }, /* s */ + { + c_______, + c__11111, + c____1__, + c____1__, + c____1__, + c____1__, + c____1__, + c_______ + }, /* t */ + { + c_______, + c_1____1, + c_1____1, + c_1____1, + c_1____1, + c_1____1, + c__1111_, + c_______ + }, /* u */ + { + c_______, + c_1____1, + c_1____1, + c_1____1, + c_1____1, + c__1__1_, + c___11__, + c_______ + }, /* v */ + { + c_______, + c_1____1, + c_1____1, + c_1____1, + c_1_11_1, + c_11__11, + c_1____1, + c_______ + }, /* w */ + { + c_______, + c_1____1, + c__1__1_, + c___11__, + c___11__, + c__1__1_, + c_1____1, + c_______ + }, /* x */ + { + c_______, + c__1___1, + c___1_1_, + c____1__, + c____1__, + c____1__, + c____1__, + c_______ + }, /* y */ + { + c_______, + c_111111, + c_____1_, + c____1__, + c___1___, + c__1____, + c_111111, + c_______ + }, /* z */ + { + c__111__, + c_1_____, + c_1_____, + c11_____, + c_1_____, + c_1_____, + c__111__, + c_______ + }, /* { */ + { + c___1___, + c___1___, + c___1___, + c_______, + c___1___, + c___1___, + c___1___, + c_______ + }, /* | */ + { + c__111__, + c_____1_, + c_____1_, + c_____11, + c_____1_, + c_____1_, + c__111__, + c_______ + }, /* } */ + { + c_11____, + c1__1__1, + c____11_, + c_______, + c_______, + c_______, + c_______, + c_______ + }, /* ~ */ + + { + c_1__1__, + c1__1__1, + c__1__1_, + c_1__1__, + c1__1__1, + c__1__1_, + c_1__1__, + c1__1__1 + } /* rub-out */ +#endif /* LPD_CHSET */ +}; +