Add original unix v6
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
int optr;
|
||||
|
||||
char obuf[512];
|
||||
|
||||
int nflush;
|
||||
|
||||
put(string,n)
|
||||
char *string;
|
||||
{
|
||||
extern utmp;
|
||||
int i;
|
||||
char *o;
|
||||
|
||||
/*printf("%d %c %d\n",fil,*string,n);/*DEBUG*/
|
||||
|
||||
string--;
|
||||
|
||||
if((i = optr + n - 512) >= 0) {
|
||||
n =- i;
|
||||
o = &obuf[optr] -1;
|
||||
while(--n >= 0)
|
||||
*++o = *++string;
|
||||
optr = 512;
|
||||
flsh(1);
|
||||
n = i;
|
||||
}
|
||||
|
||||
o = &obuf[optr] - 1;
|
||||
optr =+ n;
|
||||
|
||||
while(--n >= 0) {
|
||||
*++o = *++string;
|
||||
}
|
||||
return(0);
|
||||
}
|
||||
|
||||
flsh(fil)
|
||||
{
|
||||
extern tp[],utmp;
|
||||
|
||||
if(optr <= 0) return(optr);
|
||||
|
||||
nflush++;
|
||||
if(write(tp[0],obuf,optr) != optr)
|
||||
return(-1);
|
||||
optr = 0;
|
||||
return(0);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user