moved to fifo.c fifo.h