-/*
- * Simulate DMA input from the TU58,
- * usually 128 bytes plus the 2 byte checksum
- * will be read, leaving the CPU `dead' for
- * approximately 0.135 seconds @ 9600 baud
- */
-uu_getblk(buffer, data, uuaddr)
- register u_char *buffer;
- register struct uudevice *uuaddr;
- struct packet *data;
-{
- int s;
- int count = (unsigned) data->pk_mcount + 2;
-
- s = spl5(); /* make sure we don't get interrupted by */
- /* disk i/o */
- uuaddr->rcs = 0; /* disable interrupts temporarily */
- while (count--) {
- while ((uuaddr->rcs & UUCS_READY) == 0)
- ;
- *buffer++ = uuaddr->rdb & UUDB_DMASK;
- if (count == 2)
- buffer = (u_char *)&data->pk_chksum;
- }
- uuaddr->rcs = UUCS_INTR;
- (void) splx(s);
-}