.
. BUFFER SINK
.
.
. (C) Copyright 1972-1978 John Walker
.
. This software is in the public domain
.
AXR$
DEFUNCT$
FANG
PURE CODE
.
. THIS ROUTINE WORKS JUST LIKE WRITE, BUT DOESN'T.
.
. MAY BE ENTERED AS AN ASYNCHRONOUS SINK BY:
.
. LX,U X10,<INPUT FCT>
. LMJ A2,SINK
. <RETURN>
.
. OR AS A SYNCHRONOUS SINK BY:
.
. LX,U X10,<INPUT FCT>
. J SINKI
.
SINK* FORK SINKI CREATE A SINK ACTIVITY
J 0,A2 RETURN
.
SINKI* GET IOBB,X10 GET A BLOCK FROM THE BOUNDED BUFFER
LA A2,IBLAST,A1 LOAD LAST FLAG FROM BUFFER
BRELP A1 RELEASE THE BLOCK BUFFER
JZ A2,SINKI LOOP IF NOT LAST BUFFER
V IOBB+QL,X9 INDICATE COMPLETION
EXIT . ALL DONE
END