xref: /plan9/sys/src/cmd/aux/vga/error.c (revision 9a747e4fd48b9f4522c70c07e8f882a15030f964)
17dd7cddfSDavid du Colombier #include <u.h>
27dd7cddfSDavid du Colombier #include <libc.h>
37dd7cddfSDavid du Colombier #include <bio.h>
47dd7cddfSDavid du Colombier 
5*9a747e4fSDavid du Colombier #include "pci.h"
67dd7cddfSDavid du Colombier #include "vga.h"
77dd7cddfSDavid du Colombier 
87dd7cddfSDavid du Colombier int vflag, Vflag;
97dd7cddfSDavid du Colombier 
107dd7cddfSDavid du Colombier void
error(char * format,...)117dd7cddfSDavid du Colombier error(char* format, ...)
127dd7cddfSDavid du Colombier {
1359cc4ca5SDavid du Colombier 	char buf[512], *out;
147dd7cddfSDavid du Colombier 	va_list arg;
157dd7cddfSDavid du Colombier 	int n;
167dd7cddfSDavid du Colombier 
177dd7cddfSDavid du Colombier 	sequencer(0, 1);
187dd7cddfSDavid du Colombier 	n = sprint(buf, "%s: ", argv0);
197dd7cddfSDavid du Colombier 	va_start(arg, format);
20*9a747e4fSDavid du Colombier 	out = vseprint(buf+n, buf+sizeof(buf)-n, format, arg);
217dd7cddfSDavid du Colombier 	va_end(arg);
227dd7cddfSDavid du Colombier 	if(vflag)
23*9a747e4fSDavid du Colombier 		Bprint(&stdout, "%s", buf+n);
247dd7cddfSDavid du Colombier 	Bflush(&stdout);
2559cc4ca5SDavid du Colombier 	write(2, buf, out-buf);
267dd7cddfSDavid du Colombier 	exits("error");
277dd7cddfSDavid du Colombier }
287dd7cddfSDavid du Colombier 
297dd7cddfSDavid du Colombier void
trace(char * format,...)307dd7cddfSDavid du Colombier trace(char* format, ...)
317dd7cddfSDavid du Colombier {
327dd7cddfSDavid du Colombier 	char buf[512];
337dd7cddfSDavid du Colombier 	va_list arg;
347dd7cddfSDavid du Colombier 
357dd7cddfSDavid du Colombier 	if(vflag || Vflag){
367dd7cddfSDavid du Colombier 		if(curprintindex){
377dd7cddfSDavid du Colombier 			curprintindex = 0;
387dd7cddfSDavid du Colombier 			Bprint(&stdout, "\n");
397dd7cddfSDavid du Colombier 		}
407dd7cddfSDavid du Colombier 		va_start(arg, format);
41*9a747e4fSDavid du Colombier 		vseprint(buf, buf+sizeof(buf), format, arg);
427dd7cddfSDavid du Colombier 		va_end(arg);
43*9a747e4fSDavid du Colombier 		Bprint(&stdout, "%s", buf);
447dd7cddfSDavid du Colombier 		if(Vflag)
45*9a747e4fSDavid du Colombier 			print("%s", buf);
467dd7cddfSDavid du Colombier 	}
477dd7cddfSDavid du Colombier }
48