From: Francis Wright Date: Wed, 11 Feb 87 10:56:50 GMT Subject: Getting Kermit to work on Acorn Cambridge Workstation In reply to Dudley Long's query, yes, it does work at least on an Acorn Cambridge Coprocessor, although attempts to change the line speed from within kermit do not seem to work. However, the speed can be changed with *fx calls before kermit is entered, and that seems to work. We are actually running a version that we got on disc, which omits the files ACKERM.DOC and ACKERM.HLP that are online at Lancaster. The latter is the release notice, which contains a brief description of which source file does what, and so is of some minor use. (However, I hope that there are less errors in the source files than there are in ACKERM.HLP!) ACKERM.DOC is just an identical (as far as I can see) copy of the Unix C-Kermit manual, with no description of the peculiarities of Panos-Kermit, so I wasted my time pulling it from Lancs! [Ed. Actually, ACKERM.DOC is just a copy of the C-Kermit manual that I added to the files. I don't have any Panos-specific documentation at all - if anyone has some on a machine, please mail it in and I'll it to the files. ACKERM.HLP is my typing in of the release notes that Acorn sent me. Any typographical errors are my fault!] From: Majoc@uk.ac.nott.maths 3-APR-1987 17:09 To: SYSKERMIT Subj: ACW Kermit - baud rate bug fix Received: from Tuck.Maths.Nott.AC.UK by Robin.Cs.Nott.AC.UK id a029132; 3 Apr 87 16:44 BST Date: 03 Apr 87 15:44:02 UT (Fri) To: syskermit@uk.ac.lancaster.central.vax1 Cc: my-kermit Subject: ACW Kermit - baud rate bug fix From: Martin J Carter Sender: Majoc@uk.ac.nott.maths There's a pernicious bug in Acorn's version of C-Kermit for the ACW443. This prevents baud-rate changes from being obeyed when the poor unsuspecting user goes into connect mode (to set up a remote server Kermit), but only when ACW Kermit (attempts to) start file transactions. This is most confusing, especially to first-time Kermiteers ... The bug fix is to re-instate some missing code from conect() in ckpcon-c (alias acpcon.c), which appears to have been rewritten from scratch. Herewith the context diffs: +++++++++++++++ *** oldpcon.c Mon Mar 2 12:19:42 1987 --- newpcon.c Fri Apr 3 08:48:06 1987 *************** --- 32,53 ----- #define send(c) putinbf(rs423outbf, c) /****************************************************/ /* Procedures to do Unix termcap functions on ACW */ /****************************************************/ extern int XFindOutput() asm; extern XSWriteByte() asm; + extern int speed; /* [majoc 870312] needed to pass on to ttvt() */ + extern int flow; /* [majoc 870312] ditto (?) */ int rawvdu = -1; vdus(s) char *s; { while(*s) XSWriteByte(rawvdu, *s++); } #define vdu(c) XSWriteByte(rawvdu, c) bbc_wipe(lx,ly,ux,uy) int lx,ly,ux,uy; { if (lx > ux) return; if (ly < uy) return; vdu(28); vdu(lx); vdu(ly); vdu(ux); vdu(uy); vdu(12); vdu(26); } *************** *** 230 ! initrs(); emul_start(); send(CR); --- 222,250 ----- /**************************************************/ /* C O N E C T -- Perform terminal connection */ /**************************************************/ conect() { int key,max,min,block,doneCtrlS,ok,userok; int head = 0, tail = 0, size = 0; char buf[BUFSZ]; printf("\nYou are now connected to your host computer\n"); printf("Press SHIFT-F0 to return to local kermit\n\n"); ! /* Inserted 870311 by M J Carter [majoc], Nottingham Uni. */ ! if (ttvt (speed, flow) < 0) { ! conres(); ! printf ("Sorry: can't condition line (ttvt() failure)\n"); ! return (-2); ! } ! /* else printf ("conect(): ttvt() succeeds\n"); /* debugging insult. */ ! /* End of majoc's insert (copied from original ckucon.c). */ ! initrs(); emul_start(); /* send(CR); */ doneCtrlS = 1; ok = userok = 1; max = min = 0; for (;;) { if (doneCtrlS) { if (min+size < FEW) ok = 1; if (ok && userok) { send(CTRL_Q); doneCtrlS = 0; } } else if ((min+size == 0) || (max > FEW)) { min = nrsbuf(); if ((min > LOTS) || (size > BUFHI)) ok = 0; if (! (ok && userok)) { send(CTRL_S); doneCtrlS = 1; } } +++++++++++++++ I've also left a copy of the complete file in /usr/spool/uucppublic/kermit/ac/acpcon.c on cs.nott.ac.uk, in case that makes it any easier for you to update the Lancs copy; if you can't get it, I can mail it you under seperate cover. Apologies for holding back on this ... I haven't even got round to that nervous breakdown I promised myself once the rush was off. Share and Enjoy, Martin J Carter PS: on scanning this code afresh before sending this message, it's occurred to me that I probably haven't done things right. If anybody cares to do it properly, I shall be duly repentent.