/*
 * mysub.c
 * Submodule template file
 * [eichin:19880511.2039EST]
 */

#include <msimdecl.h>
#define FUNCTION delay_func
#define DELAY(C, A, del) make_binop(delay_func, C, A, del)
#define DONE
/*
 * delay.c
 * z = delay(a, b): z = a delayed by b.genericint
 */ 

delay_func(dep)
     Generics dep;
{
  STATE result;
  Wire outwire;
  Time del;
  
  SAVEOUTWIRE(dep, outwire);
  
  READNEXTSTATE(dep, result);
  READNEXTTIME(dep, del);
  
  SETOUTPUT(outwire, result, globaltime+del);
}
