home *** CD-ROM | disk | FTP | other *** search
/ Garbo / Garbo.cdr / mac / util / raytracr.sit / conv.c.bin / conv.c
Encoding:
C/C++ Source or Header  |  1988-11-13  |  791 b   |  43 lines  |  [TEXT/KAHL]

  1. #include <stdio.h>
  2.   
  3. extern errno;
  4.  
  5. _main(argc, argv)
  6. int argc;
  7. char *argv[];
  8.  
  9. {
  10.   char *mlalloc();
  11.   char *cd,*d;
  12.   short *bm,*c;
  13.   int fd, cont;
  14.  register int a,b;
  15.  
  16.     cont = 60; 
  17. /*    if((argc == 2) && (atoi(argv[1]) >1) && (atoi(argv[1]) <100))
  18.         cont = atoi(argv[1]);*/
  19.  
  20.     if ((fd=open(argv[1],O_RDONLY|O_NDELAY))==0) {
  21.       fprintf("couldn't open %s for read\n", argv[1]);
  22.       exit(-1);
  23.     }
  24.     if(lseek(fd,8,0)<0)
  25.       exit(-1);
  26.     cd=mlalloc(134400);
  27.     if(read(fd,cd,134400)!=134400)
  28.       exit(-1);
  29.     bm=mlalloc(14974);
  30.     c=bm+7487;
  31.     for(a=287;a>=0;a--) {
  32.       d=a*420+cd;
  33.       for(b=415;b>=0;b--) {
  34.         if(!(b&15))
  35.           c-=1;
  36.         *c=(*c<<1)|(*(d+b)>60);
  37.       }
  38.     }
  39.     cd=bm;
  40.     a = 0;
  41.     while(a++ != 14974)
  42.         fprintf(stdout, "%c", *cd++);
  43. }