Files
Digital-Research-Source-Code/CPM OPERATING SYSTEMS/CPM 68K/1.0X SOURCES/v103/clib/getc.c
Sepp J Morris 31738079c4 Upload
Digital Research
2020-11-06 18:50:37 +01:00

35 lines
547 B
C

/*
Copyright 1983
Alcyon Corporation
8716 Production Ave.
San Diego, CA 92121
@(#) getc.c - Sep 12, 1983 REGULUS 4.1
*/
/* v6 getc library routines */
#define BSIZE 512
struct iob {
int fd; /* file descriptor */
int cc; /* char count */
char *cp; /* ptr to next char */
char cbuf[BSIZE]; /* char buffer */
};
getc(ibuf)
struct iob *ibuf;
{
if (ibuf->cc <= 0) {
ibuf->cp = &(ibuf->cbuf[0]);
ibuf->cc = read(ibuf->fd,ibuf->cp,BSIZE);
}
if (ibuf->cc <= 0)
return(-1);
ibuf->cc--;
return((int)((*(ibuf->cp)++)&0xff));
}