home *** CD-ROM | disk | FTP | other *** search
/ Between Heaven & Hell 2 / BetweenHeavenHell.cdr / 500 / 470 / rccl080 < prev    next >
Text File  |  1987-03-02  |  1KB  |  53 lines

  1. /*
  2.  * RTC  Version 2.0           Author :  Vincent Hayward
  3.  *                                      School of Electrical Engineering
  4.  *                                      Purdue University
  5.  *      Dir     : rtc
  6.  *      File    : mkenc.c
  7.  *      Remarks : Utility, convert angles to playable encoders values.
  8.  *      Usage   : make mkenc
  9.  */
  10.  
  11. #include <stdio.h>
  12.  
  13. main(argc, argv)
  14. int argc;
  15. char **argv;
  16. {
  17.     int fo = creat("@@@.out", 0644);
  18.     int code;
  19.     double a[6];
  20.     unsigned short e[7];
  21.     FILE *file;
  22.  
  23.     switch (argc) {
  24.     case 1 :
  25.         file = stdin;
  26.         break;
  27.  
  28.     case 2 :
  29.         file = fopen(*(argv + 1), "r");
  30.         if (file == NULL) {
  31.             fprintf(stderr, "can't open %s\n", *(argv + 1));
  32.             exit (1);
  33.         }
  34.         break;
  35.  
  36.     default :
  37.         fprintf(stderr, "usage : mkenc [file]\n");
  38.         exit(2);
  39.     }
  40.     while (
  41. fscanf(file, "%f%f%f%f%f%f", &a[0], &a[1], &a[2], &a[3], &a[4], &a[5]) == 6) {
  42.         if (code = angtoenc(e, a)) {
  43.             fprintf(stderr,
  44.             "Joints %c%c%c%c%c%c%c limited\n",
  45.             (code & 01) ? '1' : ' ', (code & 02) ? '2' : ' ' ,
  46.             (code & 04) ? '3' : ' ', (code & 010) ? '4' : ' ' ,
  47.             (code & 020) ? '5' : ' ', (code & 040) ? '6' : ' ' ,
  48.             (code & 0400) ? 'D' : ' ');
  49.         }
  50.         write(fo, e, sizeof(e));
  51.     }
  52. }
  53.