/* $Log: diagnostics.c,v $ * Revision 0.8 92/11/23 19:46:39 19:46:39 bt (Bo Thide') * Fixed resolution bug. Portable downloading. Added/changed options. PJXL color support * * Revision 0.7 92/11/13 02:41:23 02:41:23 bt (Bo Thide') * More bug fixes and improvements. Support for PaintJet XL * * Revision 0.6 92/11/10 21:47:39 21:47:39 bt (Bo Thide') * Bug fixes. Added -R option. Better font handling. * * Revision 0.5 92/11/09 16:25:26 16:25:26 bt (Bo Thide') * Rewrite of dospecial.c. Extended \special support * * Revision 0.4 92/11/08 02:45:41 02:45:41 bt (Bo Thide') * Changed to portable bit manipulations. Replaced strrstr for non-POSIX compliant C. Fixed numerous bugs. Added support for more \special's. * * Revision 0.3 92/08/24 12:43:18 12:43:18 bt (Bo Thide') * Fixed 8 bit (dc font) support. * * Revision 0.2 92/08/23 17:28:55 17:28:55 bt (Bo Thide') * Source cleaned up. Changed certain function calls. Removed globals. * * Revision 0.1 92/08/22 23:58:47 23:58:47 bt (Bo Thide') * First Release. * */ #include #include "globals.h" static char rcsid[] = "$Header: diagnostics.c,v 0.8 92/11/23 19:46:39 bt Exp $"; /* * This procedure is included for debugging and monitoring purposes. It prints * out memory usage if the debug option was chosen. It also creates a font * usage file 'filname.usg' that contains the font->use_count table for each * font, used in the document. */ void diagnostics(usgfile) FILE *usgfile; { int i,j; int n; char *p; fprintf(usgfile,"Font use count table:\n"); n = 0; for(i = 0 ; i < MAXFONTS ; i++) if(font = fontptr[i]) { n++; p = names + font->name; if(*p) fprintf(usgfile,"%s:\n",p); while(*p++); fprintf(usgfile,"%s\n",p); cbase = font->chr; for(j = 0 ; j < 256 ; j++) if((cbase+j)->use_count) fprintf(usgfile,"%3d %ld\n", j, (cbase+j)->use_count); } fprintf(usgfile,"Number of pages processed: %d\n", actualpagecount); fprintf(usgfile,"Name string pool usage: %d out of %d bytes\n", nextnamesfree - names, NAMESIZE); fprintf(usgfile,"Font description information: %d bytes\n" , 1564*n); fprintf(usgfile,"Printer memory used for fonts: %ld out of %ld bytes\n", printermem_used, printer.mem); fclose(usgfile); fprintf(stderr,"Number of pages processed: %d\n", actualpagecount); fprintf(stderr,"Name string pool usage: %d out of %d bytes\n", nextnamesfree - names, NAMESIZE); fprintf(stderr,"Font description information: %d bytes\n" , 1564*n); fprintf(stderr,"Printer memory used for fonts: %ld out of %ld bytes\n", printermem_used, printer.mem); }