home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 592b.lha / XTime_v1.0 / source / VMS-UNIX_XTime.c < prev    next >
C/C++ Source or Header  |  1991-09-19  |  2KB  |  67 lines

  1. /* XTime v. 1.00
  2.    Copyright 1991 by Kurt R. Krueger and the Sirius Cybernetics Corp.
  3.    This program is freely distributable in an unmodified form. */
  4.  
  5. #define XFER_RATE 232
  6.  
  7. extern long atol();
  8. extern int atoi();
  9. char *param, k[] = "-k", r[] = "-r", r_string[4];
  10. int n = 1, i = 0, r_len, mins, min_xfer = 5L;
  11. int x_rate = 232;
  12. long secs, byte;
  13.  
  14. main (argc, argv)
  15.  
  16. int argc;
  17. char *argv[];
  18.  
  19. {
  20.   if (argc == 1)
  21.     {
  22.     help();
  23.     exit(0);
  24.     }
  25.   byte = atol(argv[argc-1]);
  26.   if (byte == 0)
  27.     {
  28.     help();
  29.     exit(0);
  30.     }
  31.   param = argv[n];
  32.   while (param[0] == '-')
  33.     {
  34.     if (strcmp(argv[n], k) == 0)
  35.       byte *= 1000;
  36.  
  37. /* Extract the number after -r if -r exists */
  38.     if (strncmp(argv[n], r, 2) == 0)   /* if <0 then -r was found */
  39.       {
  40.       r_len = strlen(argv[n]) - 2;  /* len of the value after -r */
  41.       for (i = 0; i < r_len; i++)
  42.         r_string[i] = argv[n][i+2];  /* concatenate a string */
  43.       x_rate = atoi(r_string);
  44.       if (x_rate == 0)
  45.         x_rate = XFER_RATE;
  46.       }
  47.  
  48.     param = argv[n++];
  49.     }
  50.   secs = byte / x_rate;
  51.   mins = secs / 60;
  52.   secs = secs - (mins * 60);
  53.   if (secs <= min_xfer)
  54.     secs = min_xfer;
  55.   printf ("\nAt a rate of %d cps, the transfer will take:\n", x_rate);
  56.   printf ("%d m %ld s\n", mins, secs);
  57. }
  58.  
  59. help()
  60.   {
  61.   printf("\nXTime v. 1.00\n");
  62.   printf("Copyright 1991 by Kurt R. Krueger\n\n");
  63.   printf("Syntax: XTime [-k] [-r<cps>] <file size in bytes>\n\n");
  64.   printf("-k: file size is in K\n");
  65.   printf("-r: Assumed transfer rate is r characters/sec\n\n");
  66.   }
  67.