xref: /plan9-contrib/sys/src/nboot/bitsy/print.c (revision 529c1f209803c78c4f2cda11b13818a57f01c872)
1 #include "u.h"
2 #include "lib.h"
3 #include "fns.h"
4 #include "dat.h"
5 
6 
7 #define	SIZE	1024
8 
9 int
print(char * fmt,...)10 print(char *fmt, ...)
11 {
12 	char buf[SIZE], *out;
13 	va_list arg;
14 
15 	va_start(arg, fmt);
16 	out = donprint(buf, buf+SIZE, fmt, arg);
17 	va_end(arg);
18 	serialputs(buf, out-buf);
19 	return out-buf;
20 }
21 
22 int
sprint(char * buf,char * fmt,...)23 sprint(char *buf, char *fmt, ...)
24 {
25 	char *out;
26 	va_list arg;
27 
28 	va_start(arg, fmt);
29 	out = donprint(buf, buf+SIZE, fmt, arg);
30 	va_end(arg);
31 	return out-buf;
32 }
33 
34 int
snprint(char * buf,int len,char * fmt,...)35 snprint(char *buf, int len, char *fmt, ...)
36 {
37 	char *out;
38 	va_list arg;
39 
40 	va_start(arg, fmt);
41 	out = donprint(buf, buf+len, fmt, arg);
42 	va_end(arg);
43 	return out-buf;
44 }
45 
46 char*
seprint(char * buf,char * e,char * fmt,...)47 seprint(char *buf, char *e, char *fmt, ...)
48 {
49 	char *out;
50 	va_list arg;
51 
52 	va_start(arg, fmt);
53 	out = donprint(buf, e, fmt, arg);
54 	va_end(arg);
55 	return out;
56 }
57