The only change necessary in the read(D2oddi) routine is the addition of the run_ld routine as in:
/* replacing: (*linesw[tp->t_line].l_read) (tp); */ run_ld(tp, DIST_LINESW_READ);