1*2029Swnj /* @(#)rdwr.c 4.1 (Berkeley) 12/21/80 */ 2*2029Swnj #include <stdio.h> 3*2029Swnj 4*2029Swnj fread(ptr, size, count, iop) 5*2029Swnj unsigned size, count; 6*2029Swnj register char *ptr; 7*2029Swnj register FILE *iop; 8*2029Swnj { 9*2029Swnj register c; 10*2029Swnj unsigned ndone, s; 11*2029Swnj 12*2029Swnj ndone = 0; 13*2029Swnj if (size) 14*2029Swnj for (; ndone<count; ndone++) { 15*2029Swnj s = size; 16*2029Swnj do { 17*2029Swnj if ((c = getc(iop)) >= 0) 18*2029Swnj *ptr++ = c; 19*2029Swnj else 20*2029Swnj return(ndone); 21*2029Swnj } while (--s); 22*2029Swnj } 23*2029Swnj return(ndone); 24*2029Swnj } 25*2029Swnj 26*2029Swnj fwrite(ptr, size, count, iop) 27*2029Swnj unsigned size, count; 28*2029Swnj register char *ptr; 29*2029Swnj register FILE *iop; 30*2029Swnj { 31*2029Swnj register unsigned s; 32*2029Swnj unsigned ndone; 33*2029Swnj 34*2029Swnj ndone = 0; 35*2029Swnj if (size) 36*2029Swnj for (; ndone<count; ndone++) { 37*2029Swnj s = size; 38*2029Swnj do { 39*2029Swnj putc(*ptr++, iop); 40*2029Swnj } while (--s); 41*2029Swnj if (ferror(iop)) 42*2029Swnj break; 43*2029Swnj } 44*2029Swnj return(ndone); 45*2029Swnj } 46