+}
+
+accinputreset(addr, unit)
+ register struct accdevice *addr;
+ register int unit;
+{
+ register int i;
+
+ addr->icsr = ACC_RESET; DELAY(5000);
+ addr->icsr = IN_MRDY | IN_WEN; /* close the relay */
+ DELAY(10000);
+ /* YECH!!! */
+ for (i = 0; i < 500; i++) {
+ if ((addr->icsr & IN_HRDY) ||
+ (addr->icsr & (IN_RMR | IN_IMPBSY)) == 0)
+ return (1);
+ addr->icsr = IN_MRDY | IN_WEN; DELAY(10000);
+ /* keep turning IN_RMR off */
+ }
+ printf("acc%d: imp doesn't respond, icsr=%b\n", unit,
+ addr->icsr, ACC_INBITS);