home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / enterprs / c128 / util / 128c.arc / PRINT.C < prev    next >
Text File  |  1993-03-04  |  1KB  |  69 lines

  1. #INCLUDE <STDIO.H>
  2.  
  3. #DEFINE  ╬┴═┼╙╔┌┼  20
  4. #DEFINE  ┼╥╥        1
  5. #DEFINE  ═┴╪╠╔╬┼   81
  6. #DEFINE  ═┴╥╟╔╬1    3
  7. #DEFINE  ═┴╥╟╔╬2    3
  8. #DEFINE  ╨┴╟┼╠┼╬   66
  9. #DEFINE  ┬╧╘╘╧═    63
  10.  
  11. MAIN (ARGC, ARGV)
  12. UNSIGNED ARGC;
  13. CHAR **ARGV;
  14.    ╞╔╠┼ FIN;
  15.  
  16.    IF (ARGC == 1)
  17.       FPRINT ("STDIN", STDIN);
  18.    ELSE
  19.       WHILE (--ARGC) █
  20.          IF ((FIN = FOPEN(*++ARGV, "R")) == ╬╒╠╠ ▀▀ FERROR()) █
  21.             PRINTF ("CANT'T OPEN %S\N", *ARGV);
  22.             EXIT();
  23.          ▌
  24.          FPRINT (*ARGV, FIN);
  25.          FCLOSE (FIN);
  26.       ▌
  27.  
  28. FPRINT (NAME, FIN)
  29. CHAR *NAME;
  30. ╞╔╠┼ FIN;
  31.    CHAR LINE[═┴╪╠╔╬┼];
  32.    UNSIGNED PAGENO, LINENO;
  33.  
  34.    PAGENO = 0;
  35.    LINENO = 0;
  36.    WHILE (FGETS (LINE, ═┴╪╠╔╬┼, FIN) != ╬╒╠╠) █
  37.       IF (LINENO == 0) █
  38.          SKIP (═┴╥╟╔╬1);
  39.          PAGENO++;
  40.          HEAD (NAME, PAGENO);
  41.          SKIP (═┴╥╟╔╬2);
  42.          LINENO = ═┴╥╟╔╬1 + ═┴╥╟╔╬2 + 1;
  43.       ▌
  44.       FPUTS (LINE, STDOUT);
  45.       LINENO++;
  46.       IF (LINENO >= ┬╧╘╘╧═) █
  47.          SKIP (╨┴╟┼╠┼╬ - LINENO);
  48.          LINENO = 0;
  49.       ▌
  50.    ▌
  51.    IF (LINENO > 0)
  52.       SKIP (╨┴╟┼╠┼╬ - LINENO);
  53.  
  54. SKIP (N)
  55.    WHILE (N--)
  56.       PUTCHAR ('\N');
  57.  
  58. HEAD (NAME, PAGENO)
  59. CHAR *NAME;
  60.    PRINTF ("%-30S╨AGE %D\N", NAME, PAGENO);
  61.