|
|
1.1 ! root 1: /* dlcputc.c - dlcputc */ ! 2: ! 3: #include <conf.h> ! 4: #include <kernel.h> ! 5: #include <slu11.h> ! 6: #include <proc.h> ! 7: #include <sleep.h> ! 8: #include <dlc.h> ! 9: ! 10: /*------------------------------------------------------------------------ ! 11: * dlcputc -- write non-blockmode character (used for acks & resets) ! 12: *------------------------------------------------------------------------ ! 13: */ ! 14: dlcputc(devptr, ch) ! 15: struct devsw *devptr; ! 16: char ch; ! 17: { ! 18: char ps; ! 19: struct dlblk *dptr; ! 20: struct csr *cptr; ! 21: ! 22: disable(ps); ! 23: if ( (dptr = devptr->dvioblk)->dostate != DLOINIT) { ! 24: restore(ps); ! 25: return(SYSERR); ! 26: } ! 27: dptr->dochar = ch; ! 28: dptr->dovalid = TRUE; ! 29: (dptr->dioaddr)->ctstat = SLUENABLE; ! 30: restore(ps); ! 31: return(OK); ! 32: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.