From: Alan Cox Date: Sun, 10 May 2015 22:50:50 +0000 (+0100) Subject: sh: ANSIfy printing X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=339a7dc84340cdfcb5cb90068edf13c59c203832;p=FUZIX.git sh: ANSIfy printing --- diff --git a/Applications/V7/cmd/sh/defs.h b/Applications/V7/cmd/sh/defs.h index 3ec13daf..65bbd7ee 100644 --- a/Applications/V7/cmd/sh/defs.h +++ b/Applications/V7/cmd/sh/defs.h @@ -111,8 +111,6 @@ void post(); void exname(); void printnam(); void printflg(); -void prs(); -void prc(); #define attrib(n,f) (n->namflg |= f) #define round(a,b) (((int)((ADR(a)+b)-1))&~((b)-1)) @@ -311,11 +309,21 @@ extern TREPTR cmd(int sym, int flg); /* error.c */ extern void exitset(void); extern void sigchk(void); -extern void failed(const STRING s1, const STRING s2); -extern void error(const STRING s); +extern void failed(const char *s1, const char *s2); +extern void error(const char *s); extern void exitsh(int xno); extern void done(void); extern void rmtemp(IOPTR base); +/* print.c */ +extern void newline(void); +extern void blank(void); +extern void prp(void); +extern void prs(const char *as); +extern void prc(char c); +extern void prt(L_INT t); +extern void prn(int n); +extern void itos(int n); +extern int stoi(const char *icp); /* stak.c */ extern STKPTR getstak(int asize); extern STKPTR locstak(void); @@ -324,10 +332,6 @@ extern STKPTR endstak(register STRING argp); extern void tdystak(register STKPTR x); extern void stakchk(void); extern STKPTR cpystak(STKPTR x); - - - - /* string.c */ extern char *movstr(register const char *a, register char *b); extern int any(char c, const char *s); diff --git a/Applications/V7/cmd/sh/error.c b/Applications/V7/cmd/sh/error.c index 28b98414..8e8cd79c 100644 --- a/Applications/V7/cmd/sh/error.c +++ b/Applications/V7/cmd/sh/error.c @@ -29,7 +29,7 @@ void sigchk(void) exitsh(SIGFAIL); } -void failed(const STRING s1, const STRING s2) +void failed(const char *s1, const char *s2) { prp(); prs(s1); @@ -42,7 +42,7 @@ void failed(const STRING s1, const STRING s2) exitsh(ERROR); } -void error(const STRING s) +void error(const char *s) { failed(s, NIL); } diff --git a/Applications/V7/cmd/sh/print.c b/Applications/V7/cmd/sh/print.c index b1e5c5cf..210687f9 100644 --- a/Applications/V7/cmd/sh/print.c +++ b/Applications/V7/cmd/sh/print.c @@ -16,47 +16,40 @@ CHAR numbuf[6]; /* printing and io conversion */ -newline() +void newline(void) { prc(NL); } -blank() +void blank(void) { prc(SP); } -prp() +void prp(void) { if ((flags & prompt) == 0 && cmdadr) { prs(cmdadr); prs(colon); - ; } } -void prs(as) -STRING as; +void prs(const char *as) { - register STRING s; + register const char *s; - if (s = as) { + if (s = as) write(output, s, length(s) - 1); - ; - } } -void prc(c) -CHAR c; +void prc(char c) { - if (c) { + if (c) write(output, &c, 1); - ; - } } -prt(t) -L_INT t; +/* FIXME: time_t is not safely L_INT ! */ +void prt(L_INT t) { register int hr, min, sec; @@ -68,7 +61,6 @@ L_INT t; if (hr = t / 60) { prn(hr); prc('h'); - ; } prn(min); prc('m'); @@ -76,14 +68,14 @@ L_INT t; prc('s'); } -prn(n) -int n; +void prn(int n) { itos(n); prs(numbuf); } -itos(n) +/* FIXME: use libc */ +void itos(int n) { register char *abuf; register POS a, i; @@ -102,12 +94,12 @@ itos(n) *abuf++ = 0; } -stoi(icp) -STRING icp; +/* FIXME: use libc */ +int stoi(const char *icp) { - register CHAR *cp = icp; + register const char *cp = icp; register int r = 0; - register CHAR c; + register char c; while ((c = *cp, digit(c)) && c && r >= 0) { r = r * 10 + c - '0';