Module Name: src Committed By: rillig Date: Sat Oct 12 19:26:24 UTC 2024
Modified Files: src/games/morse: morse.c Log Message: morse: clean up No binary change on amd64. To generate a diff of this commit: cvs rdiff -u -r1.22 -r1.23 src/games/morse/morse.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/games/morse/morse.c diff -u src/games/morse/morse.c:1.22 src/games/morse/morse.c:1.23 --- src/games/morse/morse.c:1.22 Sun Jun 16 18:09:45 2024 +++ src/games/morse/morse.c Sat Oct 12 19:26:24 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: morse.c,v 1.22 2024/06/16 18:09:45 rillig Exp $ */ +/* $NetBSD: morse.c,v 1.23 2024/10/12 19:26:24 rillig Exp $ */ /* * Copyright (c) 1988, 1993 @@ -30,18 +30,10 @@ */ #include <sys/cdefs.h> -#ifndef lint __COPYRIGHT("@(#) Copyright (c) 1988, 1993\ The Regents of the University of California. All rights reserved."); -#endif /* not lint */ - -#ifndef lint -#if 0 -static char sccsid[] = "@(#)morse.c 8.1 (Berkeley) 5/31/93"; -#else -__RCSID("$NetBSD: morse.c,v 1.22 2024/06/16 18:09:45 rillig Exp $"); -#endif -#endif /* not lint */ +/* @(#)morse.c 8.1 (Berkeley) 5/31/93 */ +__RCSID("$NetBSD: morse.c,v 1.23 2024/10/12 19:26:24 rillig Exp $"); #include <ctype.h> #include <stdio.h> @@ -91,7 +83,7 @@ static const char alph[][5] = { "--..", }; -static const struct punc { +static const struct { char c; const char morse[7]; } other[] = { @@ -129,14 +121,13 @@ main(int argc, char **argv) setgid(getgid()); while ((ch = getopt(argc, argv, "ds")) != -1) - switch((char)ch) { + switch ((char)ch) { case 'd': dflag = 1; break; case 's': sflag = 1; break; - case '?': default: fprintf(stderr, "usage: morse [-ds] [string ...]\n"); exit(1); @@ -202,53 +193,45 @@ main(int argc, char **argv) void decode(const char *s) { - int i; - - for (i = 0; i < 10; i++) + for (size_t i = 0; i < __arraycount(digit); i++) if (strcmp(digit[i], s) == 0) { putchar('0' + i); return; } - for (i = 0; i < 26; i++) + for (size_t i = 0; i < __arraycount(alph); i++) if (strcmp(alph[i], s) == 0) { putchar('A' + i); return; } - i = 0; - while (other[i].c) { + + for (size_t i = 0; other[i].c; i++) if (strcmp(other[i].morse, s) == 0) { putchar(other[i].c); return; } - i++; - } - if (strcmp("...-.-", s) == 0) + + if (strcmp("...-.-", s) == 0) /* SK */ return; + putchar('x'); /* line noise */ } void morse(int c) { - int i; - if (isalpha(c)) show(alph[c - (isupper(c) ? 'A' : 'a')]); else if (isdigit(c)) show(digit[c - '0']); else if (isspace(c)) show(""); /* could show BT for a pause */ - else { - i = 0; - while (other[i].c) { + else + for (int i = 0; other[i].c; i++) if (other[i].c == c) { show(other[i].morse); break; } - i++; - } - } } void