+#ifdef EDDT
+getcon(cs) register char *cs; {
+register char *p=cs;
+for(;;) {
+ putchar(*p++=getcnsl());
+ if (p[-1]=='\r') {putchar(p[-1]='\n'); *p++='\0'; return;}
+ if (p[-1]=='\\') {p[-1]=getcnsl(); continue;}
+ if (p[-1]=='#') {p -= 2; continue;}
+ if (p[-1]=='@') {putchar('\r'); putchar('\n'); p=cs; continue;}
+}}
+
+getcnsl() {
+# define RXCS 32 /* receiver control/staus */
+# define RXDB 33 /* receiver data */
+# define RXCS_DONE 0x80 /* receiver done */
+while ((mfpr(RXCS) & RXCS_DONE)==0);
+return (mfpr(RXDB) & 0177);
+}
+#endif