home *** CD-ROM | disk | FTP | other *** search
/ Atari FTP / ATARI_FTP_0693.zip / ATARI_FTP_0693 / Mint / mntlib32.zoo / getw.c < prev    next >
C/C++ Source or Header  |  1992-09-17  |  887b  |  62 lines

  1. #include <stdio.h>
  2.  
  3. short getw(fp)
  4.     register FILE *fp;
  5.     {
  6.     register short n, c;
  7.  
  8.     if((c = getc(fp)) == EOF)
  9.         return(EOF);
  10.     n = (c << 8);
  11.     if((c = getc(fp)) == EOF)
  12.         return(EOF);
  13.     n |= (c & 0xFF);
  14.     return(n);
  15.     }
  16.  
  17. #ifdef __STDC__
  18. short putw(short n, FILE *fp)
  19. #else
  20. short putw(n, fp)
  21.     register short n;
  22.     register FILE *fp;
  23. #endif
  24.     {
  25.     register short m;
  26.  
  27.     m = (n >> 8);
  28.     if(fputc((m & 0xFF), fp) == EOF)
  29.         return(EOF);
  30.     if(fputc((n & 0xFF), fp) == EOF)
  31.         return(EOF);
  32.     return(n);
  33.     }
  34.  
  35. long getl(fp)
  36.     register FILE *fp;
  37.     {
  38.     register long n, c;
  39.  
  40.     if((c = getw(fp)) == EOF)
  41.         return(EOF);
  42.     n = (c << 16);
  43.     if((c = getw(fp)) == EOF)
  44.         return(EOF);
  45.     n |= (c & 0xFFFF);
  46.     return(n);
  47.     }
  48.  
  49. long putl(n, fp)
  50.     register long n;
  51.     register FILE *fp;
  52.     {
  53.     register long m;
  54.  
  55.     m = (n >> 16);
  56.     if(putw((m & 0xFFFFL), fp) == EOF)
  57.         return(EOF);
  58.     if(putw((n & 0xFFFFL), fp) == EOF)
  59.         return(EOF);
  60.     return(n);
  61.     }
  62.