+ switch(c) {
+ case TUF_CONT: /* got the expected continue */
+ tu.tu_flag = 0;
+ tudata.pk_flag = TUF_DATA;
+ tudata.pk_mcount = MIN(128, tu.tu_count);
+ tudata.pk_chksum =
+ tuchk(*((short *)&tudata), (caddr_t)tu.tu_addr,
+ (int)tudata.pk_mcount);
+ tu.tu_state = TUS_SENDH;
+ tu.tu_wbptr = (u_char *)&tudata;
+ tu.tu_wcnt = 2;
+ tuxintr();
+ break;
+
+ case TUF_CMD: /* sending us an END packet...error */
+ tu.tu_state = TUS_GET;
+ tu.tu_rbptr = (u_char *) &tudata;
+ tu.tu_rcnt = sizeof (tudata);
+ tu.tu_flag = 1;
+ mtpr (CSTS, 0);
+ goto top;
+
+ case TUF_INITF:
+ tureset();
+ break;
+
+ default: /* something random...bad news */