home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 19 Printer / 19-Printer.zip / lj2os2.zip / patches.os2 < prev    next >
Text File  |  1993-04-28  |  11KB  |  412 lines

  1. diff -c old/lj2.c new/lj2.c
  2. *** old/lj2.c    Fri Jul 31 16:21:04 1992
  3. --- new/lj2.c    Wed Apr 28 15:54:54 1993
  4. ***************
  5. *** 51,56 ****
  6. --- 51,61 ----
  7.    ** compiled under OS/2 2.0 using C set/2.
  8.    ** removed the message "printing page nn, line nn to make it look good under
  9.    ** IBM's Workframe
  10. +  *****************************************************************************
  11. +  ** Revised 28-Apr-93 by Darrel Hankerson hankedr@mail.auburn.edu.
  12. +  ** Output is now to stdout. Messages re-inserted. Perhaps a "quiet" mode
  13. +  ** is needed. Code involving chars and fgetc corrected. copyname() was
  14. +  ** broken. Makefile added for EMX and MSC.
  15.    **/
  16.   
  17.   #include <stdio.h>
  18. ***************
  19. *** 63,69 ****
  20.   #define MAXVERT 69         /* maximum lines per page on LaserJet */
  21.   
  22.   
  23. !  FILE *lp; 
  24.   
  25.   int line_no = 1;
  26.   int pagenum;
  27. --- 68,74 ----
  28.   #define MAXVERT 69         /* maximum lines per page on LaserJet */
  29.   
  30.   
  31. ! FILE *lp;
  32.   
  33.   int line_no = 1;
  34.   int pagenum;
  35. ***************
  36. *** 99,104 ****
  37. --- 104,113 ----
  38.   int first;
  39.   int jim;
  40.   
  41. + #ifdef __EMX__
  42. +     _wildcard (&argc, &argv);
  43. + #endif
  44.      if (argc <= 1)
  45.         {
  46.         usage();
  47. ***************
  48. *** 105,112 ****
  49.         exit(1);
  50.         }
  51.   
  52. !   lp = fopen("PRN","w+");
  53.   
  54.   /* initialize the LaserJet for landscape printing */
  55.   
  56. --- 114,121 ----
  57.         exit(1);
  58.         }
  59.   
  60. ! /*  lp = fopen("PRN","w+"); */
  61. !     lp = stdout;
  62.   
  63.   /* initialize the LaserJet for landscape printing */
  64.   
  65. ***************
  66. *** 113,119 ****
  67.      fprintf( lp,"\033E\033&l1O\033(s17H\033&l5.14C\033&l70F\033&l5E" );
  68.   
  69.      for (first = 1; first < argc; first++)  {
  70. !       if (*argv[first] != '/' && *argv[first] != '-') /* check for flags */
  71.            break;                    /* and exit if none */
  72.         argv[first]++;
  73.         switch (tolower(*argv[first]))  {
  74. --- 122,128 ----
  75.      fprintf( lp,"\033E\033&l1O\033(s17H\033&l5.14C\033&l70F\033&l5E" );
  76.   
  77.      for (first = 1; first < argc; first++)  {
  78. !       if (*argv[first] != '-') /* check for flags */
  79.            break;                    /* and exit if none */
  80.         argv[first]++;
  81.         switch (tolower(*argv[first]))  {
  82. ***************
  83. *** 130,136 ****
  84.            case 't':        /* Horizontal tab value */
  85.               tab = atoi(++argv[first]);
  86.               if (tab < 1 || tab > 8)  {
  87. !                 printf("Invalid tab value specified -- defaulting to 8\n");
  88.                   tab = 8;
  89.                   }
  90.               break;
  91. --- 139,145 ----
  92.            case 't':        /* Horizontal tab value */
  93.               tab = atoi(++argv[first]);
  94.               if (tab < 1 || tab > 8)  {
  95. !                 fprintf(stderr, "Invalid tab value specified -- defaulting to 8\n");
  96.                   tab = 8;
  97.                   }
  98.               break;
  99. ***************
  100. *** 137,143 ****
  101.            case 'l':
  102.               MAXLINE = atoi(++argv[first]);
  103.               if (MAXLINE < 1 || MAXLINE > MAXLINE_RESET)  {
  104. !                 printf("Invalid lines/page value specified -- defaulting to MAX\n");
  105.                   MAXLINE = MAXLINE_RESET;
  106.                   }
  107.               break;
  108. --- 146,152 ----
  109.            case 'l':
  110.               MAXLINE = atoi(++argv[first]);
  111.               if (MAXLINE < 1 || MAXLINE > MAXLINE_RESET)  {
  112. !                 fprintf(stderr, "Invalid lines/page value specified -- defaulting to MAX\n");
  113.                   MAXLINE = MAXLINE_RESET;
  114.                   }
  115.               break;
  116. ***************
  117. *** 161,177 ****
  118.               formfeed++;
  119.               break;
  120.            default:
  121. !             printf("Invalid Flag Specified ('%s') -- ignored.....\n",
  122.                       --argv[first]);
  123.               break;
  124.            }
  125.         }
  126.   
  127. !    printf("Lines per page set to %d\n",MAXLINE);
  128.   
  129.      if(duplex) {
  130.        if((argc - 1) > first) {
  131. !         printf("Only one file at a time may be printed when using DUPLEX mode.\n");
  132.           exit(1);
  133.        }
  134.      }
  135. --- 170,186 ----
  136.               formfeed++;
  137.               break;
  138.            default:
  139. !             fprintf(stderr, "Invalid Flag Specified ('%s') -- ignored.....\n",
  140.                       --argv[first]);
  141.               break;
  142.            }
  143.         }
  144.   
  145. !    fprintf(stderr, "Lines per page set to %d\n",MAXLINE);
  146.   
  147.      if(duplex) {
  148.        if((argc - 1) > first) {
  149. !         fprintf(stderr, "Only one file at a time may be printed when using DUPLEX mode.\n");
  150.           exit(1);
  151.        }
  152.      }
  153. ***************
  154. *** 182,192 ****
  155.            fp = fopen(fname ,"r");
  156.            if( fp == NULL )
  157.               {
  158. !             printf( "File %s doesn't exist.\n", fname );
  159.               }
  160.            else
  161.               {
  162. !             printf( "Now printing %s\n", fname );
  163.               printfile( fname );
  164.               fclose( fp );
  165.               }
  166. --- 191,201 ----
  167.            fp = fopen(fname ,"r");
  168.            if( fp == NULL )
  169.               {
  170. !             fprintf(stderr,  "File %s doesn't exist.\n", fname );
  171.               }
  172.            else
  173.               {
  174. !             fprintf(stderr,  "Now printing %s\n", fname );
  175.               printfile( fname );
  176.               fclose( fp );
  177.               }
  178. ***************
  179. *** 197,205 ****
  180.       fputc('\f', lp);
  181.   */
  182.      fprintf( lp, "\r\033E" );      /* clear LaserJet */
  183. !    fclose(lp);
  184.   
  185.   }
  186.   
  187.   /*************************************************************************
  188. --- 206,214 ----
  189.       fputc('\f', lp);
  190.   */
  191.      fprintf( lp, "\r\033E" );      /* clear LaserJet */
  192. !     if (lp != stdout)
  193. !         fclose(lp);
  194.   
  195.   }
  196.   
  197.   /*************************************************************************
  198. ***************
  199. *** 214,220 ****
  200.      int retval = 0;
  201.      int printed = 0;
  202.      int pass=0;
  203. !    char c2;
  204.      int f_feed=0;
  205.      int phys_pages=0;
  206.      int plus=1;
  207. --- 223,229 ----
  208.      int retval = 0;
  209.      int printed = 0;
  210.      int pass=0;
  211. !     int c2;
  212.      int f_feed=0;
  213.      int phys_pages=0;
  214.      int plus=1;
  215. ***************
  216. *** 232,238 ****
  217.            if(feof(fp)) break;
  218.            switch (c2) {
  219.               case EOF:
  220. -             case '\377':
  221.               case '\032':
  222.                   retval = -1;
  223.                   break;
  224. --- 241,246 ----
  225. ***************
  226. *** 264,270 ****
  227.            if(feof(fp)) break;
  228.            switch (c2) {
  229.               case EOF:
  230. -             case '\377':
  231.               case '\032':
  232.                   retval = -1;
  233.                   break;
  234. --- 272,277 ----
  235. ***************
  236. *** 310,316 ****
  237.           retval=0;
  238.           pagenum=1;
  239.           do_print = 0;
  240. !         printf("\nFlip the paper and press any key when ready\n");
  241.           z = getchar();
  242.           goto do_it_again;
  243.         }
  244. --- 317,323 ----
  245.           retval=0;
  246.           pagenum=1;
  247.           do_print = 0;
  248. !         fprintf(stderr, "\nFlip the paper and press any key when ready\n");
  249.           z = getchar();
  250.           goto do_it_again;
  251.         }
  252. ***************
  253. *** 326,332 ****
  254.   
  255.   printpage()
  256.   {
  257. !    char c;
  258.      int line,col;
  259.      static int cont = 0;
  260.      static char *cont1 = "---->";
  261. --- 333,339 ----
  262.   
  263.   printpage()
  264.   {
  265. !    int c;
  266.      int line,col;
  267.      static int cont = 0;
  268.      static char *cont1 = "---->";
  269. ***************
  270. *** 353,359 ****
  271.               case '\r':
  272.               case '\f':
  273.               case EOF:
  274. -             case '\377':
  275.               case '\032':
  276.                  break;
  277.               default:
  278. --- 360,365 ----
  279. ***************
  280. *** 370,389 ****
  281.            }
  282.   
  283.         if(col == 0) {
  284. !  /*********************************************/
  285. !  /* removed the following lines to make it work good under IBM's Workframe  *
  286. !  *         if(do_print) {
  287. !  *             printf("Printing page %4.4d line %4.4d\r",pagenum-1,line);
  288. !  *         }
  289. !  *         else {
  290. !  *             printf("Skipping page %4.4d line %4.4d\r",pagenum-1,line);
  291. !  *         }
  292. !  */
  293.             if(numbers) {
  294.                 if(do_print) fprintf(lp,"%4.4d:",line_no);
  295.                 col=5;
  296. !           }
  297. !           ++line_no;
  298.         }
  299.   
  300.         switch(c)
  301. --- 376,392 ----
  302.            }
  303.   
  304.         if(col == 0) {
  305. !             if(do_print) {
  306. !              fprintf(stderr, "Printing page %4.4d line %4.4d\r",pagenum-1,line);
  307. !          }
  308. !             else {
  309. !                 fprintf(stderr, "Skipping page %4.4d line %4.4d\r",pagenum-1,line);
  310. !          }
  311.             if(numbers) {
  312.                 if(do_print) fprintf(lp,"%4.4d:",line_no);
  313.                 col=5;
  314. !          }
  315. !          ++line_no;
  316.         }
  317.   
  318.         switch(c)
  319. ***************
  320. *** 407,413 ****
  321.                   line = MAXLINE;      /* force termination of loop */
  322.               break;
  323.            case EOF:            /* EOF mark */
  324. -          case '\377':         /* EOF mark */
  325.            case '\032':         /* EOF mark */
  326.               return(-1);
  327.            default:              /* no special case */
  328. --- 410,415 ----
  329. ***************
  330. *** 498,506 ****
  331.   copyname(to, from)
  332.   char *to, *from;
  333.   {
  334. !     while (*from)
  335. !         *to++ = toupper(*from++);
  336. !     *to = 0;
  337.   }
  338.   
  339.   /************************************************************************/
  340. --- 500,512 ----
  341.   copyname(to, from)
  342.   char *to, *from;
  343.   {
  344. ! #if __EMX__ || _MSC_VER
  345. !     strcpy(to, from);
  346. ! #else
  347. !     do {
  348. !         *to++ = toupper(*from);
  349. !     } while (*from++);
  350. ! #endif
  351.   }
  352.   
  353.   /************************************************************************/
  354. ***************
  355. *** 507,527 ****
  356.   
  357.   usage()
  358.   {
  359. !     printf("\nUSAGE:\n\n");
  360. !     printf("C>LJ2 [flags] filename1 [filename2 ..........]\n");
  361. !     printf("\tItems shown in brackets are optional.");
  362. !     printf("\n\n\tFilename(s) may include wildcards");
  363. !     printf("\n\n\tFlags are:\n");
  364. !     printf("\t\t-e (or /e) select Helv proportional 6 PT font\n");
  365. !     printf("\t\t-h (or /h) suppress page headers\n");
  366. !     printf("\t\t-tx (or /tx) set tab stop value (where x is 1 to 8)\n");
  367. !     printf("\t\t-p (or /p) do not leave blank half pages between files\n");
  368. !     printf("\t\t-s (or /s) shade every other line\n");
  369. !     printf("\t\t-n (or /n) print line numbers\n");
  370. !     printf("\t\t-b (or /b) indent for punching\n");
  371. !     printf("\t\t-d (or /d) for duplex printing\n");
  372. !     printf("\t\t-lxx (or /lxx) set lines/page to x(where x is 1 to 66)\n");
  373. !     printf("\t\t-i (or /l) ignore formfeed characters\n");
  374.   }
  375.   
  376.   
  377. --- 513,529 ----
  378.   
  379.   usage()
  380.   {
  381. !     fprintf(stderr, "\nUsage: lj2 [flags] file1 [file2 ...]\n\n");
  382. !    fprintf(stderr, "\t-e  select Helv proportional 6 PT font\n");
  383. !     fprintf(stderr, "\t-h  suppress page headers\n");
  384. !     fprintf(stderr, "\t-tx set tab stop value (where x is 1 to 8)\n");
  385. !     fprintf(stderr, "\t-p  do not leave blank half pages between files\n");
  386. !     fprintf(stderr, "\t-s  shade every other line\n");
  387. !     fprintf(stderr, "\t-n  print line numbers\n");
  388. !     fprintf(stderr, "\t-b  indent for punching\n");
  389. !     fprintf(stderr, "\t-d  for duplex printing\n");
  390. !    fprintf(stderr, "\t-lxx set lines/page to x(where x is 1 to 66)\n");
  391. !    fprintf(stderr, "\t-i  ignore formfeed characters\n");
  392.   }
  393.   
  394.   
  395. ***************
  396. *** 536,540 ****
  397.       fprintf (lp, "\033&f1S");
  398.   
  399.   }
  400. --- 538,540 ----
  401. Only in new: lj2.def
  402. Binary files old/lj2.exe and new/lj2.exe differ
  403. Only in new: lj2bnd.exe
  404. Only in new: makefile.os2
  405. Only in new: ORIG
  406. Only in new: readme.os2
  407.