/* 
 * Skeleton procedures to read and write bounded buffers
 *
 */

#include "dftest.h"

/*  writebuf(k,v) -- write value v to buffer k
 *
 */
void writebuf(k, v) int k, v; {
   bufrec * p;

   /* you'll have to do the write procedure */

   }

/*  readbuf(k) -- return a value from buffer k
 *
 */
int readbuf(k) int k; {
   bufrec * p;
   int v;
   p = (bufrec *) (sbase() + sizeof(bufrec)*k); 
   while (p->count == 0) sleep(1);
   v = (p->buf)[ p->out ] ;
   p->out = (p->out + 1) % BUFSIZE ;
   p->count = p->count - 1 ;
   return v;
   }

