From b8d8ee2340c82a2859dc2a55aa0c5fd31058790f Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Mon, 26 Oct 2009 02:45:44 +0000 Subject: add more chars --- 7seg.c | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/7seg.c b/7seg.c index bc7a01c..280c459 100644 --- a/7seg.c +++ b/7seg.c @@ -18,17 +18,22 @@ #include #include +char allowed[] = "0123456789:.-"; + char *seg[][3] = { - [0] = { " _ ", "| |", "|_|" }, - [1] = { " ", " |", " |" }, - [2] = { " _ ", " _|", "|_ " }, - [3] = { " _ ", " _|", " _|" }, - [4] = { " ", "|_|", " |" }, - [5] = { " _ ", "|_ ", " _|" }, - [6] = { " _ ", "|_ ", "|_|" }, - [7] = { " _ ", " |", " |" }, - [8] = { " _ ", "|_|", "|_|" }, - [9] = { " _ ", "|_|", " _|" } + ['0'] = { " _ ", "| |", "|_|" }, + ['1'] = { " ", " |", " |" }, + ['2'] = { " _ ", " _|", "|_ " }, + ['3'] = { " _ ", " _|", " _|" }, + ['4'] = { " ", "|_|", " |" }, + ['5'] = { " _ ", "|_ ", " _|" }, + ['6'] = { " _ ", "|_ ", "|_|" }, + ['7'] = { " _ ", " |", " |" }, + ['8'] = { " _ ", "|_|", "|_|" }, + ['9'] = { " _ ", "|_|", " _|" }, + [':'] = { " ", " * ", " * " }, + ['.'] = { " ", " ", " * " }, + ['-'] = { " ", " _ ", " " }, }; char ** @@ -44,9 +49,8 @@ sevenseg(char *s) for (i = 0; i < 3; i++) { t[i] = calloc(sz, sizeof(char)); for (p = s; *p; p++) { - if (*p < '0' || *p > '9') - continue; - strlcat(t[i], seg[*p - '0'][i], sz); + if (strchr(allowed, *p) != NULL) + strlcat(t[i], seg[*p][i], sz); } } -- cgit v1.2.3