-/* $NetBSD: bcd.c,v 1.10 2000/05/08 07:56:02 mycroft Exp $ */
+/* $NetBSD: bcd.c,v 1.17 2009/08/12 05:21:28 dholland Exp $ */
/*
* Copyright (c) 1989, 1993
* 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. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 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.
*
#include <sys/cdefs.h>
#ifndef lint
-__COPYRIGHT("@(#) Copyright (c) 1989, 1993\n\
- The Regents of the University of California. All rights reserved.\n");
+__COPYRIGHT("@(#) Copyright (c) 1989, 1993\
+ The Regents of the University of California. All rights reserved.");
#endif /* not lint */
#ifndef lint
#if 0
static char sccsid[] = "@(#)bcd.c 8.2 (Berkeley) 3/20/94";
#else
-__RCSID("$NetBSD: bcd.c,v 1.10 2000/05/08 07:56:02 mycroft Exp $");
+__RCSID("$NetBSD: bcd.c,v 1.17 2009/08/12 05:21:28 dholland Exp $");
#endif
#endif /* not lint */
#include <sys/types.h>
#include <stdio.h>
+#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <unistd.h>
-const u_short holes[256] = {
+static const u_short holes[256] = {
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
*/
#define bit(w,i) ((w)&(1<<(i)))
-int main __P((int, char *[]));
-void printcard __P((char *));
+static void printcard(char *);
int
-main(argc, argv)
- int argc;
- char **argv;
+main(int argc, char **argv)
{
char cardline[80];
#define COLUMNS 48
-void
-printcard(str)
- char *str;
+static void
+printcard(char *str)
{
static const char rowchars[] = " 123456789";
int i, row;
- unsigned char *p;
+ char *p;
/* ruthlessly remove newlines and truncate at 48 characters. */
if ((p = strchr(str, '\n')))
/* make string upper case. */
for (p = str; *p; ++p)
- if (isascii(*p) && islower(*p))
- *p = toupper(*p);
+ if (isascii((unsigned char)*p) && islower((unsigned char)*p))
+ *p = toupper((unsigned char) *p);
/* top of card */
putchar(' ');
p = str;
putchar('/');
for (i = 1; *p; i++, p++)
- if (holes[(int)*p])
+ if (holes[(unsigned char)*p])
putchar(*p);
else
putchar(' ');
for (row = 0; row <= 11; ++row) {
putchar('|');
for (i = 0, p = str; *p; i++, p++) {
- if (bit(holes[(int)*p], 11 - row))
+ if (bit(holes[(unsigned char)*p], 11 - row))
putchar(']');
else
putchar(rowchars[row]);