home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / cmsoriginal / cmsv2.bwr < prev    next >
Text File  |  2020-01-01  |  71KB  |  1,657 lines

  1. CMS Kermit Version 2.01 - Known Bugs and Restrictions (as of 25 Oct 85):
  2.  
  3. * Current:
  4.  
  5.   CMS Kermit won't accept a "send-as" name that contains a space
  6.   separating the file name and file type.  You must include a dot,
  7.   which CMS Kermit will then translate to a space.  This may also
  8.   apply to the "get" name.
  9.  
  10.   If RECFM is fixed and FILE is text, the padding is wrong.  In the
  11.   routine OUTBUF, the line:
  12.     L         R15,=X'00000040'    Pad with spaces [2]
  13.   should be replaced with:
  14.     L         R15,=X'40000000'    Pad with spaces [2]
  15.  
  16. -----
  17.  
  18.   CMS Kermit processes command line arguments before the initialization
  19.   file, rather than the other way around (which would seem more natural).
  20.  
  21. -----
  22.  
  23.   CMS Kermit does not seem to close a TAKE file, so the TAKE command can't
  24.   be issued more than once.
  25.  
  26. -----
  27.  
  28.   When used with a 7171 front end, CMS Kermit will sometimes fail when files
  29.   are being sent to it.  This is apparently because the 7171 can become
  30.   overloaded and fail to allocate buffers fast enough.  One workaround seems
  31.   to be to reduce the packet size to 64 characters or less.
  32.  
  33. -----
  34.  
  35. Date: Tue, 17 Sep 85 00:19:12 EDT
  36. From: Peter DiCamillo <CMSMAINT@BROWNVM>
  37. Subject: CMS Kermit Server Logout Problem Solved
  38.  
  39. I think I've figured out why the CMS Kermit server doesn't log itself out
  40. correctly through a Series/1 or 7171.  There are two problems.  First, when CMS
  41. Kermit sends an ack to the logout or finish command, it uses transparent
  42. write/read, as if it expected a response.  The micro doesn't send a response,
  43. which I believe matches the Kermit protocol, so the user has to complete the
  44. read.  The following update to CMS Kermit corrects this problem by sending the
  45. final ack with just a transparent write:
  46.  
  47. ./ R 00846000       $ 846290 290                   09/16/85 22:44:58
  48.          DC     X'40',AL1(SBA),X'5D7F',AL1(SBA)             UPDATE1  00846290
  49. S1ORDAD  DC     X'0001'             addr. -> 0 for write    UPDATE1  00846580
  50. ./ I 01601000       $ 1601500 500                  09/16/85 22:44:58
  51.          XC     S1ORDAD(2),S1ORDAD  just write when ending  UPDATE1  01601500
  52. ./ I 02869000       $ 2869300 300                  09/16/85 22:44:58
  53.          CLC    S1ORDAD(2),=H'0'    was write/read done?    UPDATE1  02869300
  54.          BE     SPRET               no: return now          UPDATE1  02869600
  55.  
  56.              ^
  57. [Ed. - I've removed some spaces so this will fit on the screen.]
  58.  
  59. The second problem affects only the logout command.  Before issuing the
  60. CP LOG command, CMS Kermit uses the sequence of WRTERM and WAITT to send
  61. an XON to the micro and wait for the write to complete.  However, if the
  62. console is a Series/1 or 7171, CMS Kermit's own console interrupt handler
  63. is still in control, so CMS hangs when the WAITT is executed.  Also, to send
  64. an XON in this case would require another transparent write, since WRTERM
  65. cannot send control characters through a full-screen interface.  The following
  66. update solves this problem by bypassing the calls to WRTERM and WAITT for
  67. Series/1 and 7171 connections.  It seemed safe to skip them since they
  68. weren't working in this case anyway.
  69.  
  70. ./ I 01607000       $ 1607300 300                  09/16/85 22:44:58
  71.          TM     S1FLAGS,ISS1        Is console a S/1?       UPDATE2  01607300
  72.          BO     SERVLOG             Yes: skip line mode I/O UPDATE2  01607600
  73. ./ R 01611000       $ 1611490 490                  09/16/85 22:44:58
  74. SERVLOG  LA     1,=C'LOG'                                   UPDATE2  01611490
  75.  
  76.               ^
  77. [Ed. -   Ditto...]
  78.  
  79. These updates are for CMS Kermit Version 2.01, and assume serialization
  80. starting at 1000 with an increment of 1000.  I've tested them with
  81. success on both a Series/1 and a 7171.
  82.  
  83. -----
  84.  
  85. Date: Wed, 18 Sep 85 9:11:17 BST
  86. From: Andrew J Cole <ajcole@ucl-cs.arpa>
  87. Subject: CMS Kermit 2.01
  88.  
  89. CMS Kermit 2.01 works very well with one small exception (non-feature?).
  90. If server mode is entered directly from the CMS command line Kermit seems
  91. to fail to read the KERMINI files.
  92.  
  93. -----
  94.  
  95. * Updates since 2.00:
  96.  
  97.   There is a problem with repeat prefix receive.  If prefixing was
  98.   done on 'x' number of carriage returns or line feeds, the next 
  99.   'x' characters were written as nulls.  [fixed in 2.01]
  100.  
  101.   CMS Kermit does not handle the situation correctly if the other side
  102.   does not know about repeat prefixing.  [fixed in 2.01]
  103.  
  104.   Expects that CMS Kermit is run either via a TTY or a 3277.  This is
  105.   not necessarily true; 3278's and 3279's are possible.  [fixed in 2.01]
  106.  
  107. -----
  108.  
  109. Date: 9 October 1985, 13:36:52 EDT
  110. From: Philip Murton             (416) 978-5271       MURTON   at UTORONTO
  111. To:   DFTCU at CUVMA
  112. Re:   CMS Kermit V2.01
  113.  
  114. I think I found a small bug that is related to your edit [25],
  115. if you have FILE set to BINARY and have compression ON.  Here's the fix
  116. (some spaces deleted before the line numbers for readability):
  117.  
  118. Insert the following lines:
  119.  
  120.          TM        FLAGS,BINF          In binary mode? [e]             03815001
  121.          BO        DECOD72             Yes no check for eol [e]        03815002
  122.  
  123. And add the label DECOD72 to line 03815400:
  124.  
  125. DECOD72  LTR       R3,R3               More repeats to do [7] [e]      03815400
  126.  
  127. (Note, this fix has not been checked yet but if you experience problems with
  128. binary file transfer, try it out.)
  129.  
  130. -----
  131.  
  132. Date:         Tue, 15 Oct 85 09:13 EST
  133. From:         Dave Elbon  <SYSDAVE%UKCC.BITNET@WISCVM.ARPA>
  134. Subject:      Kermit-CMS Fixes
  135. To: Info-Kermit <INFO-KERMIT@CU20B.ARPA>
  136.  
  137. I have some fixes for Kermit-CMS 2.01.
  138.  
  139. 1) Kermit-CMS is confused when TERMINAL LINESIZE is set to OFF.
  140.  
  141. ./ R 00610000 00611000 $ 610090 90
  142.          LA        R2,=CL3'OFF'
  143.          L         R15,LINSIZ
  144.          LTR       R15,R15
  145.          BZ        RLSIZE
  146.          CVD       R15,PKVAR
  147.          UNPK      PKVAR(3),PKVAR+6(2)
  148.          OI        PKVAR+2,C'0'
  149.          LA        R2,PKVAR
  150. RLSIZE   DS        0H
  151.          LINEDIT   DOT=NO,DISP=CPCOMM,                                 +
  152.                TEXT='TERM LINES ...',                                  +
  153.  
  154. 2) The actual virtual console address is not used in a call to HNDINT,
  155.    which prevents Kermit-CMS from working if the address is not 009.
  156.    (Many, many thanks to Brick Verser of KSU for this.)
  157.  
  158. ./ D 00130000
  159. ./ R 00872000          $ 872490 490
  160. CONSADDR DS        AL2                 Console addr (CUU)
  161. ./ R 04175000          $ 4175190 190
  162.          LA        R1,CHNDPLST          Set interrupt handler
  163.          MVC       CHNDPADR,CONSADDR
  164.          SVC       202
  165.          DC        AL4(1)
  166. ./ I 04200000          $ 4200100 100
  167. CHNDPLST DC        CL8'HNDINT'         HNDINT SET P-List
  168.          DC        CL4'SET'
  169.          DC        CL4'CON1'
  170.          DC        AL4(CHNDLR)
  171. CHNDPADR DS        AL2                 Console address
  172.          DC        CL2'WC'
  173.          DC        XL4'FFFFFFFF'
  174.  
  175. 3) CP SET ACNT should be turned OFF along with MSG, WNG, and IMSG.
  176.  
  177. ./ R 00175000          $ 175190 190
  178. * Fields of variable LFLAGS2:
  179. FACNTON  EQU       X'80'               CP SET ACNT was ON
  180. *
  181. ./ I 00882000          $ 882500 500
  182. LFLAGS2  DC        X'00'
  183. ./ R 04017000          $ 4017290 290
  184. * If R1 is non-zero, get values user has set for MSG, WNG,
  185. * IMSG, and ACNT
  186. ./ R 04049000          $ 4049490 490
  187.          BNE       SETM2               no: skip
  188. ./ R 04051000          $ 4051090 90
  189. SETM2    DS        0H
  190.          LA        R3,ACNT4            get len-1,chars of token
  191.          BAL       R10,GETSET          we're looking for
  192.          CLC       CON,0(R4)           is following one "ON"?
  193.          BNE       SETM25
  194.          OI        LFLAGS,FACNTON      yes: flag SET ACNT ON
  195. SETM25   DS        0H
  196.          LA        R3,IMSG4            get len-1,chars of token
  197. ./ I 04061000          $ 4061200 200
  198.          LA        R2,ACNTOFF          Ditto for ACNT's
  199.          LA        R4,L'ACNTOFF
  200.          DIAG      R2,R4,X'0008'
  201. ./ R 04078000          $ 4078090 90
  202. SETM7    DS        0H
  203.          TM        LFLAGS,FACNTON      was CP SET ACNT ON?
  204.          BZ        SETM75              no: skip
  205.          LA        R2,ACNTON           yes: turn it ON via
  206.          LA        R4,L'ACNTON         diagnose X'08'
  207.          DIAG      R2,R4,X'0008'
  208. SETM75   DS        0H
  209.          TM        LFLAGS,FIMSGON      was CP SET IMSG ON?
  210. ./ I 04137000          $ 4137500 500
  211. ACNT4    DC        AL1(4-1),C'ACNT'    like ditto
  212. ./ I 04142000          $ 4142300 300
  213. ACNTOFF  DC        C'SET ACNT OFF'
  214. ACNTON   DC        C'SET ACNT ON'
  215.  
  216. When Series/1 mode is on it might be possible to set TERMINAL BREAKIN to
  217. GUESTCTL rather than changing all of the message settings.
  218. Acknowledge-To: Dave Elbon <SYSDAVE@UKCC>
  219.  
  220. -----
  221.  
  222. Date: Wed, 9 Oct 85 23:04 CDT
  223. From: Brick Verser <BAV@KSUVM>
  224. Subject: CMS KERMIT bugs
  225.  
  226. Here is another small CMS KERMIT problem.  If running on the 7171 (or
  227. Series/1, I think), CMS KERMIT 2.x doesn't work if the virtual machine
  228. console is not at address 9.  While all of the diagnoses know to use
  229. the dynamically determined console address, the HNDINT SET has address
  230. 9 hard coded.  The fix is simple and obvious, except that HNDINT doesn't
  231. allow a register for the console address field, so the HNDINT macro
  232. has to be replaced by the hand coded equivalent.
  233.  
  234. -----
  235.  
  236. Date: Wed, 16 Oct 85 14:25:24 pdt
  237. From: gts@ucbopal.Berkeley.EDU
  238. Subject: CMS-Kermit 2.01 RPACK bug for BLOCK=3 fix UCB06
  239.  
  240. diff -b kermit2.asm05 kermit2.asm06
  241. 27a28,32
  242. > * UCB    CMS.06    85-09-18    gts, CFC                ;UCB0601
  243. > *    Fix bug at RPACK4. Calculation of crck (block=3) must begin at    ;UCB0602
  244. > *    the first actual packet character not at RECPKT+1. Leading pad    ;UCB0603
  245. > *    or junk characters move it further down.  Use pointer RECPKTP.    ;UCB0604
  246. > *                                    ;UCB0605
  247. 914a920
  248. > RECPKTP     DS       F               RECEIVE PACKET BUFFER POINTER    ;UCB06
  249. 3110a3117
  250. >      ST       R7,RECPKTP           Save pointer to first char    ;UCB0606
  251. 3190,3191c3197
  252. < RPACK4     LA       R5,RECPKT           Address of input buffer        03117000
  253. <      LA       R5,1(R5)           Skip over the ^A            03118000
  254. ---
  255. > RPACK4     L       R5,RECPKTP           Address of first pkt char    ;UCB0607
  256.  
  257. Greg Small                                    (415)642-5979
  258. Microcomputer Networking & Communications     gts@ucbopal.Berkeley.ARPA
  259. 214 Evans Hall CFC                            ucbvax!ucbjade!ucbopal!gts
  260. University of California                      SPGGTS@UCBCMSA.BITNET
  261. Berkeley, Ca 94720
  262.  
  263. -----
  264.  
  265. Date: Wed, 16 Oct 85 14:24:16 pdt
  266. From: gts@ucbopal.Berkeley.EDU
  267. Subject: CMS-Kermit 2.01 MAXOUT/LRECL confusion bug fixes UCB05
  268.  
  269. diff -b kermit2.asm04 kermit2.asm05
  270. 27a28,40
  271. > * UCB    CMS.05    85-09-18    gts, CFC                ;UCB0501
  272. > *    Fix confusion and conflicts in use of MAXOUT and LRECL.        ;UCB0502
  273. > *    MAXOUT controls the amount of data collected for a write and    ;UCB0503
  274. > *    LRECL is used only during padding of recfm F records.        ;UCB0504
  275. > *    During SET FILE BIN, MAXOUT was set to LRECL and during SET    ;UCB0505
  276. > *    FILE TEXT it was set to MAXTXT!  This is clearly wrong.        ;UCB0506
  277. > *    Also, MAXOUT was set to LRECL during SET LRECL which causes    ;UCB0507
  278. > *    recfm V writes to be blocked to LRECL.                ;UCB0508
  279. > *                                    ;UCB0509
  280. > *    This fix removes the MAXOUT change during SET FILE. SET LRECL    ;UCB0510
  281. > *    is changed to set MAXOUT to MAXTXT for recfm V or to LRECL for    ;UCB0511
  282. > *    recfm F.  SET RECFM is changed to do the same.            ;UCB0512
  283. > *                                    ;UCB0513
  284. 1209c1222
  285. <      MVC       MAXOUT,LRECL           Max output buffer size        01155000
  286. ---
  287. > *                                    ;UCB0514
  288. 1214c1227
  289. <      MVC       MAXOUT,=A(MAXTXT)   Max output buffer size        01160000
  290. ---
  291. > *                                    ;UCB0515
  292. 1276c1289
  293. <      B       SETOK                        01222000
  294. ---
  295. >      B       GETRECX           And go adjust MAXOUT        ;UCB0516
  296. 1321c1334,1338
  297. <      MVC       MAXOUT,LRECL           Max output buffer size        01267000
  298. ---
  299. > GETRECX     MVC       MAXOUT,=A(MAXTXT)   Max output is maximum        ;UCB0517
  300. >      CLI       RFM,C'V'           = if recfm V.            ;UCB0518
  301. >      BE       GETRECX1           =                ;UCB0519
  302. >      MVC       MAXOUT,LRECL           Otherwise, lrecl for recfm F.    ;UCB0520
  303. > GETRECX1 DS       0H               =                ;UCB0521
  304.  
  305. Greg Small                                    (415)642-5979
  306. Microcomputer Networking & Communications     gts@ucbopal.Berkeley.ARPA
  307. 214 Evans Hall CFC                            ucbvax!ucbjade!ucbopal!gts
  308. University of California                      SPGGTS@UCBCMSA.BITNET
  309. Berkeley, Ca 94720
  310.  
  311. -----
  312.  
  313. Date: Tue 22 Oct 85 20:20:09-EDT
  314. From: Daphne Tzoar <Sy.Daphne@CU20B.COLUMBIA.EDU>
  315. Subject: Comment on Greg Small's comments
  316.  
  317.  You should double check with the source, but as I recall MAXOUT
  318.  was set to LRECL for binary files because the file is written out
  319.  with LRECL characters per record and the user can use the record
  320.  size he wants by setting LRECL.
  321.  
  322. -----
  323.  
  324. Date: Wed, 16 Oct 85 14:19:00 pdt
  325. From: gts@ucbopal.Berkeley.EDU
  326. Subject: CMS-Kermit 2.01 MAXLRECl/MAXTXT bug fix UCB04
  327.  
  328. diff -b kermit2.asm03 kermit2.asm04
  329. 27a28,35
  330. > * UCB    CMS.04    85-09-17    gts, CFC                ;UCB0401
  331. > *    Fix maximum LRECL to 65535 not 65536.  CMS allows only 65535    ;UCB0402
  332. > *    (64k-1). CMS aborts the write if lrecl 65536 for recfm V.  And    ;UCB0403
  333. > *    although CMS allows the write if lrecl 65536 for recfm F, most    ;UCB0404
  334. > *    products cannot handle such records.                ;UCB0405
  335. > *                                    ;UCB0406
  336. > *    Fix MAXTXT to be 65535 not 64536 (typo)!  Remove unused MAXBIN.    ;UCB0407
  337. > *                                    ;UCB0408
  338. 189,190c197
  339. < MAXTXT     EQU       64536           Max output buffer is 64K [6]    00147000
  340. < MAXBIN     EQU       80               Max output for binary files [1]    00148000
  341. ---
  342. > MAXTXT     EQU       65535           Max output buffer is 64K-1 [6]    ;UCB0409
  343. 1304c1311
  344. <      WRTERM       'Logical record length of 1-65536 (default of 80).'    01257000
  345. ---
  346. >      WRTERM       'Logical record length of 1-65535 (default of 80).'    ;UCB0410
  347. 1311c1318
  348. <      C       R7,=F'65536'           Max of 64K for lrecl [2]        01264000
  349. ---
  350. >      C       R7,=F'65535'           Max of 64K-1 for lrecl [2]    ;UCB0411
  351. 1316c1323
  352. < BADREC     WRTERM       'A number between 1 and 65536 (decimal).'        01269000
  353. ---
  354. > BADREC     WRTERM       'A number between 1 and 65535 (decimal).'        ;UCB0412
  355.  
  356. Greg Small                                    (415)642-5979
  357. Microcomputer Networking & Communications     gts@ucbopal.Berkeley.ARPA
  358. 214 Evans Hall CFC                            ucbvax!ucbjade!ucbopal!gts
  359. University of California                      SPGGTS@UCBCMSA.BITNET
  360. Berkeley, Ca 94720
  361.  
  362. -----
  363.  
  364. Date: Wed, 16 Oct 85 14:28:45 pdt
  365. From: gts@ucbopal.Berkeley.EDU
  366. Subject: CMS-Kermit 2.01 expand incomming text tabs UCB09
  367.  
  368. diff -b kermit2.asm08 kermit2.asm09
  369. 27a28,31
  370. > * UCB    CMS.09    85-10-08    gts, CFC                ;UCB0901
  371. > *    Change receive to expand tabs each 8 spaces (unix,cp/m,pcdos)    ;UCB0902
  372. > *    for text file receives.                        ;UCB0903
  373. > *                                    ;UCB0904
  374. 3895a3900,3907
  375. >      CLI       RPTVAL,X'05'           Is it an EBCDIC tab?        ;UCB0905
  376. >      BNE       DECOD6A           =                ;UCB0906
  377. >      L       R1,ARBUF           Output buffer address [2]    ;UCB0907
  378. >      AR       R1,R9           Plus displacement [2]        ;UCB0908
  379. >      MVC       0(8,R1),=X'2020202020202020'  Store 8 ASCII blanks    ;UCB0909
  380. >      LA       R9,8(R9)           Move to next tab stop in buffer    ;UCB0910
  381. >      N       R9,=X'FFFFFFF8'     = (every eight columns)        ;UCB0911
  382. >      B       DECOD6B                        ;UCB0912
  383. 3900c3912
  384. <      LA       R8,1(R8)           Bump input buffer pointer    03796000
  385. ---
  386. > DECOD6B     LA       R8,1(R8)           Bump input buffer pointer    ;UCB0913
  387.  
  388. Greg Small                                    (415)642-5979
  389. Microcomputer Networking & Communications     gts@ucbopal.Berkeley.ARPA
  390. 214 Evans Hall CFC                            ucbvax!ucbjade!ucbopal!gts
  391. University of California                      SPGGTS@UCBCMSA.BITNET
  392. Berkeley, Ca 94720
  393.  
  394. -----
  395.  
  396. Date: Wed, 16 Oct 85 14:29:56 pdt
  397. From: gts@ucbopal.Berkeley.EDU
  398. Subject: CMS Kermit 2.01 redisplay command/status after send/receive, UCB10
  399.  
  400. diff -b kermit2.asm09 kermit2.asm10
  401. 27a28,33
  402. > * UCB    CMS.10    85-10-08    gts, CFC                ;UCB1001
  403. > *    Redisplay the send or receive command at completion, followed    ;UCB1001
  404. > *    by the status message, then the completed or failed message.    ;UCB1002
  405. > *    This gives the user everything they need to know at one glance.    ;UCB1003
  406. > *    Initial status is "No send / receive done yet".            ;UCB1004
  407. > *                                    ;UCB1005
  408. 534,537c540,544
  409. < SSW1     LTR       R5,R5           CHECK THE RETCODE        00442000
  410. <      BZ       PROMPT           ALL OKAY                00443000
  411. <      WRTERM       'Error in sending file. Try again.'            00444000
  412. <      B       PROMPT           ERROR - TRY AGAIN        00445000
  413. ---
  414. > SSW1     WRTERM       INPUT,130           Redisplay the command input    ;UCB1006
  415. >      LTR       R5,R5           CHECK THE RETCODE        ;UCB1007
  416. >      BZ       GIVSTAT           Go report OK status to user    ;UCB1008
  417. >      WRTERM       'Error while sending file(s), check remote file(s).'    ;UCB1009
  418. >      B       GIVSTAT           Go report reason to user        ;UCB1010
  419. 555,558c562,566
  420. <      LTR       R5,R5           CHECK THE RETCODE        00463000
  421. <      BZ       PROMPT           ALL OKAY                00464000
  422. <      WRTERM       'Error in receiving file. Try again.'        00465000
  423. <      B       PROMPT           ERROR - TRY AGAIN        00466000
  424. ---
  425. > RSW1     WRTERM       INPUT,130           Redisplay the command input    ;UCB1011
  426. >      LTR       R5,R5           CHECK THE RETCODE        ;UCB1012
  427. >      BZ       GIVSTAT           Go report OK status to user    ;UCB1013
  428. >      WRTERM       'Error while receiving file(s), check CMS file(s)'    ;UCB1014
  429. >      B       GIVSTAT           Go report reason to user        ;UCB1015
  430. 886c894
  431. <      MVI       OLDERR,X'FF'           SAME HERE            00794000
  432. ---
  433. >      MVI       OLDERR,X'1A'           Set "No send/receive yet"    ;UCB1016
  434. 1183c1191,1192
  435. <      DC       CL20'Error writing file'     ERR MSG #25   [4]    01090000
  436. ---
  437. >      DC       CL20'Error writing file'     ERR MSG #25   [4]    ;UCB1017
  438. >      DC       CL20'No send/receive yet'     ERR MSG #26        ;UCB1018
  439.  
  440. Greg Small                                    (415)642-5979
  441. Microcomputer Networking & Communications     gts@ucbopal.Berkeley.ARPA
  442. 214 Evans Hall CFC                            ucbvax!ucbjade!ucbopal!gts
  443. University of California                      SPGGTS@UCBCMSA.BITNET
  444. Berkeley, Ca 94720
  445.  
  446. -----
  447.  
  448. Date: Wed, 16 Oct 85 14:30:54 pdt
  449. From: gts@ucbopal.Berkeley.EDU
  450. Subject: CMS-Kermit 2.01 recfm padding bug fix UCB03
  451.  
  452. diff -b kermit2.asm02 kermit2.asm03
  453. 27a28,30
  454. > * UCB    CMS.03    85-09-17    gts, CFC                ;UCB0301
  455. > *    Fix recfm f to pad lines with spaces not nulls.            ;UCB0302
  456. > *                                    ;UCB0303
  457. 3939c3942
  458. <      L       R15,=X'00000040'    Pad with spaces [2]        03876000
  459. ---
  460. >      L       R15,=X'40000000'    Pad with spaces [2]        ;UCB0304
  461.  
  462. Greg Small                                    (415)642-5979
  463. Microcomputer Networking & Communications     gts@ucbopal.Berkeley.ARPA
  464. 214 Evans Hall CFC                            ucbvax!ucbjade!ucbopal!gts
  465. University of California                      SPGGTS@UCBCMSA.BITNET
  466. Berkeley, Ca 94720
  467.  
  468. -----
  469.  
  470. Date: Wed, 16 Oct 85 14:26:28 pdt
  471. From: gts@opal
  472. Subject: CMS-Kermit 2.01 problem receiving odd parity CR LF fix UCB07
  473.  
  474. diff -b kermit2.asm06 kermit2.asm07
  475. 27a28,35
  476. > * UCB    CMS.07    85-09-29    gts, CFC                ;UCB0701
  477. > *    Change DECODE to interpret CR and LF from the EBCDIC after    ;UCB0702
  478. > *    translation with ATOE instead of from the seven bit ASCII. This    ;UCB0703
  479. > *    allows receive of text files that contain characters with the    ;UCB0704
  480. > *    eight bit set with the normal ATOE table,  or by altering the    ;UCB0705
  481. > *    the ATOE table allows receipt of text in any eight-bit code.    ;UCB0706
  482. > *    Also CR LF LF gives two lines based on CR LF then LF.        ;UCB0707
  483. > *                                    ;UCB0708
  484. 213a222,223
  485. > ECR     EQU       13               Ebcdic CR            ;UCB0709
  486. > ELF     EQU       37               Ebcdic LF            ;UCB0710
  487. 3847,3864c3857
  488. <      CLC       PAR,ZERO           If PAR <> 0 don't check [1]    03762000
  489. <      BNE       DECOD4           For CR/LF (it's 8A,8D) [1]    03763000
  490. <      TM       FLAGS,BINF           No check if binary mode [1]    03764000
  491. <      BO       DECOD4           Just skip it [1]            03765000
  492. <      C       R7,=X'0000004D'     Is it a CR? (CHAR(CR))        03766000
  493. <      BNE       DECOD3           No, check for LF            03767000
  494. <      MVI       PREV,X'4D'           Yes, remember we saw a CR    03768000
  495. <      LA       R8,1(R8)           Bump input pointer        03769000
  496. <      MVI       RPTVAL,ACR           Set in case of repeats [25]    03769100
  497. <      B       DECOD7           Write out record            03770000
  498. < DECOD3     C       R7,=X'0000004A'     Should we write out on LF?    03771000
  499. <      BNE       DECOD4           No keep going            03772000
  500. <      LA       R8,1(R8)           Bump input pointer        03773000
  501. <      CLI       PREV,X'4D'           Was last char CR?        03774000
  502. <      BE       DECOD0           Yes, so ignore LF        03775000
  503. <      MVI       RPTVAL,ALF           Set in case of repeats [25]    03775100
  504. <      B       DECOD7           Nope, so write out record    03776000
  505. < DECOD4     CR       R7,R4           Is it the quote char        03777000
  506. ---
  507. >      CR       R7,R4           Is it the quote char        ;UCB0711
  508. 3879c3872,3880
  509. <      L       R1,ARBUF           Output buffer address [2]    03792000
  510. ---
  511. >      TM       FLAGS,BINF           Skip translation if binary mode    ;UCB0712
  512. >      BO       DECOD6A           =                ;UCB0713
  513. >      STC       R7,RPTVAL           Save char for CR LF Check    ;UCB0714
  514. >      TR       RPTVAL,ATOE           Translate to EBCDIC        ;UCB0715
  515. >      CLI       RPTVAL,ECR           Is is an EBCDIC CR?        ;UCB0716
  516. >      BE       DECOD7C           =                ;UCB0717
  517. >      CLI       RPTVAL,ELF           Is it an EBCDIC LF?        ;UCB0718
  518. >      BE       DECOD7L           =                ;UCB0719
  519. > DECOD6A     L       R1,ARBUF           Output buffer address [2]    ;UCB0720
  520. 3894c3895,3903
  521. < *DECOD7     L       R15,=A(OUTBUF)      Routine to write out record [22] 03807000
  522. ---
  523. > DECOD7C     MVI       RPTVAL,ACR           Set repeat as CR            ;UCB0721
  524. >      LA       R8,1(R8)           Bump input buffer pointer    ;UCB0722
  525. >      MVI       PREV,ACR           Set previous as CR        ;UCB0723
  526. >      B       DECOD7           Go write buffer            ;UCB0724
  527. > DECOD7L     MVI       RPTVAL,ALF           Set repeat as LF            ;UCB0725
  528. >      LA       R8,1(R8)           Bump input buffer pointer    ;UCB0726
  529. >      CLI       PREV,ACR           Check if previous was CR        ;UCB0727
  530. >      MVI       PREV,ALF           Set previous as LF        ;UCB0728
  531. >      BE       DECOD0           Ignore LF if followed CR        ;UCB0729
  532.  
  533. Greg Small                                    (415)642-5979
  534. Microcomputer Networking & Communications     gts@ucbopal.Berkeley.ARPA
  535. 214 Evans Hall CFC                            ucbvax!ucbjade!ucbopal!gts
  536. University of California                      SPGGTS@UCBCMSA.BITNET
  537. Berkeley, Ca 94720
  538.  
  539. -----
  540.  
  541. Date: Wed, 16 Oct 85 14:27:48 pdt
  542. From: gts@opal
  543. Subject: CMS-Kermit 2.01 remove trailing ^Z for text receive UCB08
  544.  
  545. diff -b kermit2.asm07 kermit2.asm08
  546. 27a28,33
  547. > * UCB    CMS.08    85-10-08    gts, CFC                ;UCB0801
  548. > *    Fix receive to discard the trailing control-Z for text files    ;UCB0802
  549. > *    This catches all cases except where the control-Z has already    ;UCB0803
  550. > *    been written to disk, e.g. the 65535th character of the last    ;UCB0804
  551. > *    recfm V record or the lreclth character of the last recfm F.    ;UCB0805
  552. > *                                    ;UCB0806
  553. 3684c3690,3700
  554. <      L       R15,=A(OUTBUF)      WRITE OUT BUFFER [1] [6]        03595000
  555. ---
  556. >      TM       FLAGS,BINF           In binary mode?            ;UCB0807
  557. >      BO       RDWR1               Yes no check for control-Z EOF    ;UCB0808
  558. >      L       R1,ARBUF           Output buffer address        ;UCB0809
  559. >      AR       R1,R9           Plus displacement        ;UCB0810
  560. >      BCTR       R1,0               Minus one            ;UCB0811
  561. >      CLI       0(R1),X'1A'           Is the last character control-Z?    ;UCB0812
  562. >      BNE       RDWR1           No                ;UCB0813
  563. >      BCTR       R9,0               Ignore trailing ctrl-Z        ;UCB0814
  564. >      LTR       R9,R9           HOW MUCH DATA LEFT [1]        ;UCB0815
  565. >      BZ       BUFMT           NONE LEFT, SEND ACK [1]        ;UCB0816
  566. > RDWR1     L       R15,=A(OUTBUF)      WRITE OUT BUFFER [1] [6]        ;UCB0817
  567.  
  568. Greg Small                                    (415)642-5979
  569. Microcomputer Networking & Communications     gts@ucbopal.Berkeley.ARPA
  570. 214 Evans Hall CFC                            ucbvax!ucbjade!ucbopal!gts
  571. University of California                      SPGGTS@UCBCMSA.BITNET
  572. Berkeley, Ca 94720
  573.  
  574. -----
  575.  
  576. 21-Oct-85 01:46:20-EDT,2006;000000000001
  577. Return-Path: <gts@opal>
  578. Received: from UCB-VAX by CU20B.COLUMBIA.EDU with TCP; Mon 21 Oct 85 01:46:15-EDT
  579. Received: by UCB-VAX (5.28/5.13)
  580.     id AA24623; Sun, 20 Oct 85 19:37:08 PDT
  581. Received: from ucbopal.Berkeley.Edu (ucbopal.ARPA)
  582.     by ucbjade.Berkeley.Edu (4.19/4.40)
  583.     id AA09763; Sun, 20 Oct 85 19:37:08 pdt
  584. Received: by ucbopal.Berkeley.Edu (4.19/4.39.1)
  585.     id AA04779; Sun, 20 Oct 85 19:37:34 pdt
  586. Date: Sun, 20 Oct 85 19:37:34 pdt
  587. From: gts@opal
  588. Message-Id: <8510210237.AA04779@ucbopal.Berkeley.Edu>
  589. To: info-kermit@cu20b.columbia.edu
  590. Subject: CMS-Kermit 2.01 Binary Compressed CR/LF bug/fix confirmed UCB13
  591.  
  592. 27a28,37
  593. > * UCB    CMS.13    85-10-20    gts, CFC                ;UCB1301
  594. > *    Fix bug in DECOD7 with FILE BINARY and compressed CR or LF.    ;UCB1302
  595. > *    Confirms report and fix by MURTON@UTORONTO of 10-9-85.        ;UCB1303
  596. > *    After a file write, DECOD7 ignored binary mode and did a second    ;UCB1304
  597. > *    decrement of RPTCT thus reducing the number of chars expanded.    ;UCB1305
  598. > *    This would be quite rare in recfm V because a write occurs only    ;UCB1306
  599. > *    every 65535 bytes and would have to conincide with a compressed    ;UCB1307
  600. > *    CR or LF.  The problem can be demonstrated easily with recfm F.    ;UCB1308
  601. > *    Occasionally, CMS-KERMIT crashes with addressing violation.    ;UCB1309
  602. > *                                    ;UCB1310
  603. 3972c3982,3984
  604. <      IC       R3,RPTCT           Get no. of repetitions [7]    03815000
  605. ---
  606. >      IC       R3,RPTCT           Get no. of repetitions [7]    ;UCB1311
  607. >      TM       FLAGS,BINF           Ignore CR LF repeats if binary    ;UCB1312
  608. >      BO       DECOD72           =                ;UCB1313
  609. 3977c3989
  610. <      LTR       R3,R3           More repeats to do [7]        03816000
  611. ---
  612. > DECOD72     LTR       R3,R3           More repeats to do [7]        03816000
  613.  
  614. Greg Small                                    (415)642-5979
  615. Microcomputer Networking & Communications     gts@ucbopal.Berkeley.ARPA
  616. 214 Evans Hall CFC                            ucbvax!ucbjade!ucbopal!gts
  617. University of California                      SPGGTS@UCBCMSA.BITNET
  618. Berkeley, Ca 94720
  619.  
  620. ------------------------------
  621.  
  622. Date: Sat, 19 Oct 85  23:07 EDT
  623. Subject: CMS Kermit "Enhancements"
  624. From: ("Bob Shields <VBOB@UMDB>") <@UMD2.UMD.EDU:VBOB@UMDB.BITNET>
  625.  
  626. In one of the latest "info-kermit" digests I read that someone had modified
  627. CMS Kermit to "automatically" expand tab characters to 8 column boundaries.
  628. If this is being considered as a standard operation, I would like to cast my
  629. vote against it.  I have found that XEDIT will expand tabs just fine (see
  630. the "EXPAND" and "COMPRESS" commands), and will do it to whatever columns
  631. *I* specify, not just every *8*.  I more often use a tab setting of every 4
  632. columns, and sometimes use ones that are not at fixed intervals (like 10,
  633. 16, 30,...  for CMS ASSEMBLE files).  Maybe this can be resolved with "yet
  634. another SET command" in CMS Kermit.
  635.  
  636. [Ed. - You're right, it shouldn't be hardwired into the program.]
  637.  
  638. ------------------------------
  639.  
  640. Date: Thu 24 Oct 85 22:24:06-EDT
  641. From: Peter A Kronenberg <EN4.PA-KRONENBERG@CU20C.COLUMBIA.EDU>
  642.  
  643.    I'm having a  problem with  MS-Kermit 2.27 <==>  CMS Kermit  2.1 with  large
  644. files (on the  order of 100K).   Everything starts out  fine, and I'm  watching
  645. everything happen on the PC screen.  Then all of a sudden, it retries a  packet
  646. again and again until it gives up and gives me the MS-KERMIT> prompt again.   I
  647. connect to the mainframe and find I have dropped into CP.  Typing Begin  causes
  648. CMS-Kermit to continue sending or receiving,  whatever he was doing, but  there
  649. is no way to continue on the PC.
  650.    The really wierd thing about this is that if I do it again, it seems to  die
  651. at the same place.  For instance, if I am transfering a 100K file, and it  dies
  652. after 20K, if I  do it again, it  dies at 20K again.   Sometimes it's a  little
  653. different, but always similar.
  654.    At first  we thought  it was  caused by  the mainframe  (a teeny-tiny  4341)
  655. hanging up when there was a heavy  load...but we set qdrop off, set favor,  set
  656. favor %, set priority 1...and everything else, but nothing helps.
  657.  
  658.    Any help would be appreciated.
  659.  
  660.    Peter Kronenberg
  661.    NASA/GISS
  662.  
  663. ------------------------------
  664.  
  665. Date: 23 October 1985, 14:35:14 PLT
  666. From: CANNON   at WSUVM1
  667. To:   DFTCU at CUVMB
  668.  
  669. We have a copy of Kermit CMS Version 2.01, May 20, 1985.  I noticed that
  670. MAXTXT is EQU'd to 64536 (line 147) and the address of a second buffer
  671. is calculated by adding 64536 (line 261).  Both statements have comments
  672. referring to "64K".  Could it be that the numbers should be 65536 and not
  673. 64536 as that is usually what 64K means?  On line 1264, 65536 was used.
  674.  
  675. [Looks like a type -- Daphne]
  676.  
  677. ------------------------------
  678.  
  679. Date: Sun, 27 Oct 85 21:44:59 pst
  680. From: gts%ucbopal@columbia.arpa
  681. To: info-kermit%cu20b@columbia.arpa, vbob%vmdb.BITNET@UCB-VAX.Berkeley.EDU
  682. Subject: CMS-Kermit expanding tabs on receive
  683.  
  684. I struggled over whether to expand tabs during receive or not.  Clearly
  685. leaving the file alone is more flexible for the experienced CMS user.
  686. However, most of our users do not want to bring up XEDIT and EXPAND tabs
  687. on every file they upload.  Most of the systems that use Kermit to send to CMS
  688. use the tab8 convention and use it freely without the users direct knowledge
  689. of it (msdos,cpm,unix).  I have decided to make tab expansion on receive the
  690. default and use a modeless prefix to disable it.
  691.  
  692. Also, that mod I submitted (UCB09) is flawed because it depends on being able
  693. to overflow the ARBUF by 8 characters which is only OK because CMS-Kermit 2.01
  694. misallocates the buffer in the first place.  Please remove UCB09 until I fix
  695. it.
  696.  
  697.  
  698. Greg Small                                    (415)642-5979
  699. Microcomputer Networking & Communications     gts@ucbopal.Berkeley.ARPA
  700. 214 Evans Hall CFC                            ucbvax!ucbjade!ucbopal!gts
  701. University of California                      SPGGTS@UCBCMSA.BITNET
  702. Berkeley, Ca 94720
  703.  
  704. ------------------------------
  705.  
  706. Date:         Thu, 31 Oct 85 00:13:17 EST
  707. From:         Peter DiCamillo <CMSMAINT@BROWNVM>
  708. To:           Info-Kermit@CU20B
  709. Subject:      Resequenced CMS Kermit updates
  710.  
  711. The CMS Kermit updates of mine which appeared in Volume 3 Number 20
  712. were sequenced for a copy of the source which had been reserialized
  713. to have uniform increments of 1000 between lines.  This has caused
  714. some confusion, since the Kermit source from Columbia doesn't have
  715. completely uniform increments.  Here are new copies of the same updates
  716. resequenced for the Columbia source:
  717.  
  718. First update:
  719. ./ R  00838000           $  00838290  00000290
  720.          DC     X'40',AL1(SBA),X'5D7F',AL1(SBA)             UPDATE1
  721. S1ORDAD  DC     X'0001'             addr. -> 0 for write    UPDATE1
  722. ./ I  01593000           $  01593500  00000500
  723.          XC     S1ORDAD(2),S1ORDAD  just write when ending  UPDATE1
  724. ./ I  02859000           $  02859300  00000300
  725.          CLC    S1ORDAD(2),=H'0'    was write/read done?    UPDATE1
  726.          BE     SPRET               no: return now          UPDATE1
  727.  
  728. Second update:
  729. ./ I  01599000           $  01599300  00000300
  730.          TM     S1FLAGS,ISS1        Is console a S/1?       UPDATE2
  731.          BO     SERVLOG             Yes: skip line mode I/O UPDATE2
  732. ./ R  01603000           $  01603490  00000490
  733. SERVLOG  LA     1,=C'LOG'                                   UPDATE2
  734.  
  735. Peter DiCamillo
  736. CMSMAINT@BROWNVM.BITNET
  737.  
  738. ------------------------------
  739.  
  740. Date: Fri, 01 Nov 85 11:05:31 cet
  741. To: INFO-KERMIT@CU20B
  742. From: PCSC%WUVMD.BITNET@WISCVM.ARPA
  743. Subject:  7171/Series 1 and Kermit-MS interaction
  744.  
  745. We have found that our new 7171 protocol converters work much less well for
  746. us than the Series 1 boxes for Kermit file uploading with the newer
  747. generation of IBM-like PCs.  The symptoms are a 7171 hang up when uploading
  748. files from the PC AT or Zenith 158s over 9600 bps direct connect lines.  We
  749. have been using Kermit heavily for about a year, and normally these devices
  750. upload fine, but if the Kermit-MS 2.28 they are running is YAKing faster
  751. than normal due to (1) use of a mono screen (2) use of a faster crystal (3)
  752. use of FANSI-CONSOLE to speed screen writing, then the 7171 hangs in a
  753. pretty big way.  Multiple master resets must be sent to the 7171 to get
  754. session control back again.  If one SETs DEBUG ON in Kermit-MS, then the
  755. time spent writing the packets to a color screen slows things down enough
  756. to work unless FANSI-CONSOLE is in there speeding things up again.  The
  757. evidence is as follows:
  758.  
  759. Connected through 7171 to Kermit-CMS 2.01:
  760. IBM PC AT, 8mhz, EGA & ECD, with DEBUG OFF --> failure
  761. IBM PC AT, 8mhz, EGA & ECD, with DEBUG ON  --> success
  762. As above w/ FCONSOLE, DEBUG ON or OFF      --> failure
  763. Zenith 158, 8mhz, monochrome, DEBUG ON|OFF --> failure
  764. Zenith 158, 8mhz, color, DEBUG OFF         --> failure
  765. Zenith 158, 8mhz, color, DEBUG ON          --> success
  766.  
  767. Connected through a Series 1 all of the above succeed.  The SEND PACKET in
  768. all cases was 64 since the 7171's won't work from my AT under any
  769. conditions with a larger size.  The only conclusion I have been able to
  770. draw is that the slow screen writing routines of the color BIOS slow
  771. Kermit-MS down enough such that when DEBUG is ON the YAK packet from
  772. Kermit-MS does not go back until the 7171 is ready.  I assume this is
  773. because the incoming packet is being written to the screen before the YAK
  774. is sent (though I have not checked the Kermit code to verify this).  I am
  775. inferring that the problem is due to the 7171 because (1) it works through
  776. the Series 1 (2) many Master Resets are required to wrest control back, but
  777. conceivably the issue is one of CMS Kermit's control of the 7171 rather
  778. than the box's internals.
  779.  
  780. Any suggestions or relevant experiences would be appreciated.
  781. Michael Palmer
  782. Washington University Computing Facilites
  783. Bitnet address:  PCSC@WUVMD
  784.  
  785. ------------------------------
  786.  
  787. 22-Dec-85 17:14:05-EST,1862;000000000011
  788. Return-Path: <gts%ucbopal@BERKELEY.EDU>
  789. Received: from ucbvax.berkeley.edu by CU20B.COLUMBIA.EDU with TCP; Sun 22 Dec 85 17:13:57-EST
  790. Received: by ucbvax.berkeley.edu (5.31/1.7)
  791.     id AA07665; Sun, 22 Dec 85 13:33:52 PST
  792. Received: from ucbopal.Berkeley.Edu (ucbopal.ARPA)
  793.     by ucbjade.Berkeley.Edu (4.19/4.41.3)
  794.     id AA04904; Sun, 22 Dec 85 13:34:10 pst
  795. Received: by ucbopal.Berkeley.Edu (4.19/4.42)
  796.     id AA02497; Sun, 22 Dec 85 13:34:16 pst
  797. Date: Sun, 22 Dec 85 13:34:16 pst
  798. From: gts%ucbopal@BERKELEY.EDU
  799. Message-Id: <8512222134.AA02497@ucbopal.Berkeley.Edu>
  800. To: info-kermit@cu20b.columbia.edu
  801. Subject: CMS Kermit 2.01 Replacements for Old UCB fixes 04,05,09
  802.  
  803. In three seperate mailings following this one are upgraded versions of
  804. UCB fixes submitted previously.   Please put them in cmsmit.bwr and delete
  805. the previous versions.  UCB04 fixed various max record size problems but
  806. had missed one instance.  UCB05 fixed some serious problems related to LRECL
  807. and MAXOUT, but completely failed to understand how they were used (BLUSH!)
  808. and hence failed to identify the single code error that had caused all the 
  809. observed problems.  The new UCB05 actually fixes the problem and changes
  810. the comments on several lines to improve the code self documentation.
  811. UCB09 provided for tab8 expansion on text receive, but failed to make this
  812. user setable and relied on being able to overrun the receive buffer (which had
  813. been misdefined in the original code).  The new UCB09 has tab expansion for
  814. TEXT receive but adds TABSTEXT file mode for no expansion.
  815.  
  816. Greg Small                                    (415)642-5979
  817. Microcomputer Networking & Communications     gts@ucbopal.Berkeley.EDU
  818. 214 Evans Hall CFC                            ucbvax!ucbjade!ucbopal!gts
  819. University of California                      SPGGTS@UCBCMSA.BITNET
  820. Berkeley, Ca 94720
  821. 22-Dec-85 17:14:22-EST,2311;000000000001
  822. Return-Path: <gts%ucbopal@BERKELEY.EDU>
  823. Received: from ucbvax.berkeley.edu by CU20B.COLUMBIA.EDU with TCP; Sun 22 Dec 85 17:14:15-EST
  824. Received: by ucbvax.berkeley.edu (5.31/1.7)
  825.     id AA07670; Sun, 22 Dec 85 13:36:10 PST
  826. Received: from ucbopal.Berkeley.Edu (ucbopal.ARPA)
  827.     by ucbjade.Berkeley.Edu (4.19/4.41.3)
  828.     id AA04914; Sun, 22 Dec 85 13:36:27 pst
  829. Received: by ucbopal.Berkeley.Edu (4.19/4.42)
  830.     id AA02515; Sun, 22 Dec 85 13:36:32 pst
  831. Date: Sun, 22 Dec 85 13:36:32 pst
  832. From: gts%ucbopal@BERKELEY.EDU
  833. Message-Id: <8512222136.AA02515@ucbopal.Berkeley.Edu>
  834. To: info-kermit@cu20b.columbia.edu
  835. Subject: CMS-Kermit 2.01 Replacement Fix UCB04
  836.  
  837. diff -b kermit2.asm01 kermit2.asm04
  838. > *                                    ;UCB0227
  839. > * UCB    CMS.04    85-09-17    gts, CFC                ;UCB0401
  840. > *    Fix maximum LRECL to 65535 not 65536.  CMS allows only 65535    ;UCB0402
  841. > *    (64k-1). CMS aborts the write if lrecl 65536 for recfm V.  And    ;UCB0403
  842. > *    although CMS allows the write if lrecl 65536 for recfm F, most    ;UCB0404
  843. > *    products cannot handle such records.                ;UCB0405
  844. > *                                    ;UCB0406
  845. > *    Fix MAXTXT to be 65535 not 64536 (typo)!  Remove unused MAXBIN.    ;UCB0407
  846. > *                                    ;UCB0408
  847. 155,156c197
  848. < MAXTXT     EQU       64536           Max output buffer is 64K [6]    00147000
  849. < MAXBIN     EQU       80               Max output for binary files [1]    00148000
  850. ---
  851. > MAXTXT     EQU       65535           Max output buffer is 64K-1 [6]    ;UCB0409
  852. 269c310
  853. <      A       R1,=F'64536'           SECOND BUFFER IS 64K ...        00261000
  854. ---
  855. >      A       R1,=F'65536'           SECOND BUFFER IS 64K ...        ;UCB0413
  856. 1265c1311
  857. <      WRTERM       'Logical record length of 1-65536 (default of 80).'    01257000
  858. ---
  859. >      WRTERM       'Logical record length of 1-65535 (default of 80).'    ;UCB0410
  860. 1272c1318
  861. <      C       R7,=F'65536'           Max of 64K for lrecl [2]        01264000
  862. ---
  863. >      C       R7,=A(MAXTXT)       Max of 64K-1 for lrecl [2]    ;UCB0411
  864. 1277c1323
  865. < BADREC     WRTERM       'A number between 1 and 65536 (decimal).'        01269000
  866. ---
  867. > BADREC     WRTERM       'A number between 1 and 65535 (decimal).'        ;UCB0412
  868.  
  869. Greg Small                                    (415)642-5979
  870. Microcomputer Networking & Communications     gts@ucbopal.Berkeley.EDU
  871. 214 Evans Hall CFC                            ucbvax!ucbjade!ucbopal!gts
  872. University of California                      SPGGTS@UCBCMSA.BITNET
  873. Berkeley, Ca 94720
  874. 22-Dec-85 17:14:58-EST,5024;000000000001
  875. Return-Path: <gts%ucbopal@BERKELEY.EDU>
  876. Received: from ucbvax.berkeley.edu by CU20B.COLUMBIA.EDU with TCP; Sun 22 Dec 85 17:14:45-EST
  877. Received: by ucbvax.berkeley.edu (5.31/1.7)
  878.     id AA07686; Sun, 22 Dec 85 13:38:30 PST
  879. Received: from ucbopal.Berkeley.Edu (ucbopal.ARPA)
  880.     by ucbjade.Berkeley.Edu (4.19/4.41.3)
  881.     id AA04938; Sun, 22 Dec 85 13:38:47 pst
  882. Received: by ucbopal.Berkeley.Edu (4.19/4.42)
  883.     id AA02529; Sun, 22 Dec 85 13:38:51 pst
  884. Date: Sun, 22 Dec 85 13:38:51 pst
  885. From: gts%ucbopal@BERKELEY.EDU
  886. Message-Id: <8512222138.AA02529@ucbopal.Berkeley.Edu>
  887. To: info-kermit@cu20b.columbia.edu
  888. Subject: CMS-Kermit 2.01 Replacement Fix for UCB09
  889.  
  890. diff -b kermit2.asm01 kermit2.asm09
  891. > *                                    ;UCB0227
  892. > * UCB    CMS.09    85-10-08    gts, CFC                ;UCB0901
  893. > *    Change RECEIVE to expand tabs each 8 spaces (DECOD6) as per    ;UCB0902
  894. > *    unix, cp/m and pcdos for TEXT file receives.  Add file type    ;UCB0903
  895. > *    TABSTEXT for text files to be received without tab expansions.    ;UCB0904
  896. > *    Creates addtional flag byte, FLAGS+1 with flag FLG1TABF.    ;UCB0905
  897. > *    As written, this mod requires prior mod set UCB07.        ;UCB0906
  898. > *                                    ;UCB0907
  899. 165c243,245
  900. < DEBUG     EQU       X'01'           Debug mode ON/OFF [10]        00157000
  901. ---
  902. > DEBUG     EQU       X'01'           Debug mode ON/OFF [10]        ;UCB0908
  903. > * Fields of variable FLAGS+1:                        ;UCB0909
  904. > FLG1TABF EQU       X'80'           ONE := No tab expansion        ;UCB0910
  905. 793c878,879
  906. <      MVI       FLAGS,X'00'           CLEAR ALL FLAGS            00785000
  907. ---
  908. >      MVI       FLAGS,X'00'           CLEAR ALL FLAGS            ;UCB0911
  909. >      MVI       FLAGS+1,X'00'       =                ;UCB0912
  910. 881c968
  911. < FLAGS     DC       X'00'           USE TO TEST OUR FLAGS        00873000
  912. ---
  913. > FLAGS     DC       2X'0000'           Flag bytes for operating modes    ;UCB0913
  914. 900c987,988
  915. < FILMSG1     DC       C'File type is text.'             [17]    00892000
  916. ---
  917. > FILMSG1     DC       C'File type is text with received tab expansion.'    ;UCB0914
  918. > FILMSG1T DC       C'File type is text with no received tab expansion.'    ;UCB0915
  919. 1158c1246
  920. <      WRTERM       'BINARY or TEXT'                    01150000
  921. ---
  922. >      WRTERM       'BINARY or TEXT or TABSTEXT'                ;UCB0916
  923. 1162c1250,1251
  924. <      OI       FLAGS,BINF           Set binary on            01154000
  925. ---
  926. >      NI       FLAGS+1,X'FF'-FLG1TABF  Set tabs expansion on    ;UCB0917
  927. >      OI       FLAGS,BINF           Set binary on            ;UCB0918
  928. 1167c1256,1257
  929. <      NI       FLAGS,X'FF'-BINF    Set it OFF            01159000
  930. ---
  931. >      NI       FLAGS+1,X'FF'-FLG1TABF  Set tabs expansion on    ;UCB0919
  932. > STBN0A     NI       FLAGS,X'FF'-BINF    Set binary off            ;UCB0920
  933. 1170c1260,1264
  934. < STBN1     WRTERM       'Invalid operand'                    01162000
  935. ---
  936. > STBN1     CLC       0(8,R6),=CL8'TABSTEXT'  Setting to TABSTEXT?        ;UCB0921
  937. >      BNE       STBN2           No then it's wrong        ;UCB0922
  938. >      OI       FLAGS+1,FLG1TABF    Set tabs expansion off        ;UCB0923
  939. >      B       STBN0A           And finish as for TEXT        ;UCB0924
  940. > STBN2     WRTERM       'Invalid operand'                    ;UCB0925
  941. 1416,1417c1512,1518
  942. <      BNO       SHO01           Yes.                01408000
  943. <      LA       R3,FILMSG2           Mode is binary            01409000
  944. ---
  945. >      BO       SHO00B           No.                ;UCB0926
  946. >      TM       FLAGS+1,FLG1TABF    Is tabstext mode on?        ;UCB0927
  947. >      BNO       SHO01           No.                ;UCB0928
  948. >      LA       R3,FILMSG1T           Assume tabstext            ;UCB0929
  949. >      LA       R4,L'FILMSG1T       Get msg length            ;UCB0930
  950. >      B       SHO01           =                ;UCB0931
  951. > SHO00B     LA       R3,FILMSG2           Mode is binary            ;UCB093A
  952. 3810c3904,3929
  953. <      L       R1,ARBUF           Output buffer address [2]    03792000
  954. ......   more  UCB07 ...........................................................
  955. <      BE       DECOD7L           =                ;UCB0719
  956. ---
  957. >      BE       DECOD7L           =                ;UCB0719
  958. >      CLI       RPTVAL,X'05'           Is it an EBCDIC tab?        ;UCB0932
  959. >      BNE       DECOD6A           =                ;UCB0933
  960. >      TM       FLAGS+1,FLG1TABF    Is tab expansion mode on?    ;UCB0934
  961. >      BO       DECOD6A           =                ;UCB0935
  962. >      L       R1,ARBUF           Output buffer address [2]    ;UCB0936
  963. >      AR       R1,R9           Plus displacement [2]        ;UCB0937
  964. >      LA       R3,8(R9)           Calc end point for tab stop    ;UCB0938
  965. >      N       R3,=X'FFFFFFF8'     = (every eight columns)        ;UCB0939
  966. >      C       R3,MAXOUT           = (but not more than MAXOUT)    ;UCB0940
  967. >      BNH       DECOD6C           =                ;UCB0941
  968. >      L       R3,MAXOUT           =                ;UCB0942
  969. > DECOD6C     MVI       0(R1),X'20'           Store ASCII blanks up to stop    ;UCB0943
  970. >      LA       R1,1(R1)           = (Increment store address)    ;UCB0944
  971. >      LA       R9,1(R9)           = (Increment store pointer)    ;UCB0945
  972. >      CR       R3,R9           = (Loop up to tab stop)        ;UCB0946
  973. >      BH       DECOD6C           =                ;UCB0947
  974. >      B       DECOD6B                        ;UCB0948
  975. > DECOD6A     L       R1,ARBUF           Output buffer address [2]    ;UCB0720
  976. 3814c3933
  977. <      LA       R8,1(R8)           Bump input buffer pointer    03796000
  978. ---
  979. > DECOD6B     LA       R8,1(R8)           Bump input buffer pointer    ;UCB0949
  980.  
  981. Greg Small                                    (415)642-5979
  982. Microcomputer Networking & Communications     gts@ucbopal.Berkeley.EDU
  983. 214 Evans Hall CFC                            ucbvax!ucbjade!ucbopal!gts
  984. University of California                      SPGGTS@UCBCMSA.BITNET
  985. Berkeley, Ca 94720
  986. 22-Dec-85 17:42:45-EST,2451;000000000001
  987. Return-Path: <gts%ucbopal@BERKELEY.EDU>
  988. Received: from ucbvax.berkeley.edu by CU20B.COLUMBIA.EDU with TCP; Sun 22 Dec 85 17:42:37-EST
  989. Received: by ucbvax.berkeley.edu (5.31/1.7)
  990.     id AA07681; Sun, 22 Dec 85 13:37:32 PST
  991. Received: from ucbopal.Berkeley.Edu (ucbopal.ARPA)
  992.     by ucbjade.Berkeley.Edu (4.19/4.41.3)
  993.     id AA04927; Sun, 22 Dec 85 13:37:51 pst
  994. Received: by ucbopal.Berkeley.Edu (4.19/4.42)
  995.     id AA02522; Sun, 22 Dec 85 13:37:56 pst
  996. Date: Sun, 22 Dec 85 13:37:56 pst
  997. From: gts%ucbopal@BERKELEY.EDU
  998. Message-Id: <8512222137.AA02522@ucbopal.Berkeley.Edu>
  999. To: info-kermit@cu20b.columbia.edu
  1000. Subject: CMS-Kermit 2.01 Replacement Fix UCB05
  1001.  
  1002. diff -b kermit2.asm01 kermit2.asm05
  1003. > *                                    ;UCB0227
  1004. > * UCB    CMS.05    85-12-10    gts, CFC                ;UCB0501
  1005. > *    Fix set lrecl to reset MAXOUT only if file mode is binary.    ;UCB0502
  1006. > *    MAXOUT controls the number of EBCDIC characters collected for    ;UCB0503
  1007. > *    a write (DECOD1).  For recfm F text files, MAXOUT = MAXTXT to    ;UCB0504
  1008. > *    collect up to 65535 characters in DECODE before LRECL is used    ;UCB0505
  1009. > *    for truncation or padding in OUTBUF.  Recfm V text files are    ;UCB0506
  1010. > *    not truncated.  For binary text files,  MAXOUT = LRECL so that    ;UCB0507
  1011. > *    both recfm F and recfm V data is blocked to LRECL record size.    ;UCB0508
  1012. > *                                    ;UCB0509
  1013. 813c868
  1014. <      MVC       MAXOUT,=A(MAXTXT)   Max output buffer size [6]    00805000
  1015. ---
  1016. >      MVC       MAXOUT,=A(MAXTXT)   Maximum characters for write    ;UCB0510
  1017. 980c1035
  1018. < MAXOUT     DS       F               Max output buffer [6]        00972000
  1019. ---
  1020. > MAXOUT     DS       F               Max characters for a write    ;UCB0511
  1021. 1163c1218
  1022. <      MVC       MAXOUT,LRECL           Max output buffer size        01155000
  1023. ---
  1024. >      MVC       MAXOUT,LRECL           Block binary records to lrecl    ;UCB0512
  1025. 1168c1223
  1026. <      MVC       MAXOUT,=A(MAXTXT)   Max output buffer size        01160000
  1027. ---
  1028. >      MVC       MAXOUT,=A(MAXTXT)   Allow max before lrecl truncate    ;UCB0513
  1029. 1275c1330,1332
  1030. <      MVC       MAXOUT,LRECL           Max output buffer size        01267000
  1031. ---
  1032. >      TM       FLAGS,BINF           If binary file,            ;UCB0514
  1033. >      BNO       SETOK           =                ;UCB0515
  1034. >      MVC       MAXOUT,LRECL           = set blocking to lrecl        ;UCB0516
  1035.  
  1036. Greg Small                                    (415)642-5979
  1037. Microcomputer Networking & Communications     gts@ucbopal.Berkeley.EDU
  1038. 214 Evans Hall CFC                            ucbvax!ucbjade!ucbopal!gts
  1039. University of California                      SPGGTS@UCBCMSA.BITNET
  1040. Berkeley, Ca 94720
  1041. 23-Dec-85 00:11:48-EST,3552;000000000001
  1042. Return-Path: <gts%ucbopal@BERKELEY.EDU>
  1043. Received: from ucbvax.berkeley.edu by CU20B.COLUMBIA.EDU with TCP; Mon 23 Dec 85 00:11:38-EST
  1044. Received: by ucbvax.berkeley.edu (5.31/1.7)
  1045.     id AA10302; Sun, 22 Dec 85 17:56:40 PST
  1046. Received: from ucbopal.Berkeley.Edu (ucbopal.ARPA)
  1047.     by ucbjade.Berkeley.Edu (4.19/4.41.3)
  1048.     id AA07575; Sun, 22 Dec 85 17:57:26 pst
  1049. Received: by ucbopal.Berkeley.Edu (4.19/4.42)
  1050.     id AA01425; Sun, 22 Dec 85 17:57:14 pst
  1051. Date: Sun, 22 Dec 85 17:57:14 pst
  1052. From: gts%ucbopal@BERKELEY.EDU
  1053. Message-Id: <8512230157.AA01425@ucbopal.Berkeley.Edu>
  1054. To: info-kermit@cu20b.columbia.edu
  1055. Subject: CMS-Kermit 2.10 Change to do SHOW xxx after any SET xxx (UCB12)
  1056.  
  1057. diff -b kermit2.asm01 kermit2.asm12
  1058. > *                                    ;UCB0227
  1059. > * UCB    CMS.12    85-10-19    gts, CFC                ;UCB1201
  1060. > *    Change "SET xxx" to do a "SHOW xxx" when done.  Change "SHOW"    ;UCB1202
  1061. > *    to do "SHOW ALL".  Fix "SET QUOTE" to restore previous RQUOTE    ;UCB1203
  1062. > *    rather than reset to DQUOTE for any SET error.            ;UCB1204
  1063. > *                                    ;UCB1205
  1064. 1244c1361,1362
  1065. < GETQUO     MVC       RQUOTE(1),0(R6)     SET NEW QUOTE CHAR        01236000
  1066. ---
  1067. > GETQUO     MVC       TEMP(1),RQUOTE      Save previous RQUOTE        ;UCB1207
  1068. >      MVC       RQUOTE(1),0(R6)     SET NEW QUOTE CHAR        ;UCB1208
  1069. 1249c1367,1368
  1070. <      B       SETERR                        01241000
  1071. ---
  1072. >      MVC       RQUOTE(1),TEMP      Restore previous RQUOTE        ;UCB1209
  1073. >      B       SETERR                        ;UCB1210
  1074. 1259c1378,1379
  1075. <      B       SETERR                        01251000
  1076. ---
  1077. >      MVC       RQUOTE(1),TEMP      Restore previous RQUOTE        ;UCB1211
  1078. >      B       SETERR                        ;UCB1212
  1079. 1323c1445
  1080. <      B       SETOK                        01315000
  1081. ---
  1082. >      B       SETOKX           Return but no SHOW        ;UCB1213
  1083. 1340c1462
  1084. <      B       SETOK           All done                01332000
  1085. ---
  1086. >      B       SETOKX           Return but no SHOW        ;UCB1214
  1087. 1342c1464
  1088. <      B       SETERR                        01334000
  1089. ---
  1090. >      B       SETERRX           Return error but no SHOW        ;UCB1215
  1091. 1344c1466
  1092. <      BNE       SETERR                        01336000
  1093. ---
  1094. >      BNE       SETERRX           Return error but no SHOW        ;UCB1216
  1095. 1371,1374c1493,1503
  1096. < SETERR     MVI       RQUOTE,DQUOTE       Reset value, just in case [4]    01363000
  1097. <      LA       R15,4           SET A NON-ZERO RETCODE        01364000
  1098. <      B       SETRET                        01365000
  1099. < SETOK     SR       R15,R15           RETCODE OF 0            01366000
  1100. ---
  1101. > SETERR     L       R15,=A(SHOW)           Go SHOW the current setting    ;UCB1217
  1102. >      L       R6,4(R13)           (R6=callers save area address)    ;UCB1218
  1103. >      L       R6,20+6*4(R6)       (R6=tokenized command address)    ;UCB1219
  1104. >      BALR       R14,R15           =                ;UCB1220
  1105. > SETERRX     LA       R15,4           SET A NON-ZERO RETCODE        ;UCB1221
  1106. >      B       SETRET                        ;UCB1222
  1107. > SETOK     L       R15,=A(SHOW)           Go SHOW the current setting    ;UCB1223
  1108. >      L       R6,4(R13)           (R6=callers save area address)    ;UCB1224
  1109. >      L       R6,20+6*4(R6)       (R6=tokenized command address)    ;UCB1225
  1110. >      BALR       R14,R15           =                ;UCB1226
  1111. > SETOKX     SR       R15,R15           RETCODE OF 0            ;UCB1227
  1112. 1407,1408c1536,1539
  1113. <      CLC       0(3,R6),=CL3'ALL'   Show all options?        01399000
  1114. <      BNE       SHO0               No find specific one        01400000
  1115. ---
  1116. >      CLC       0(8,R6),=8X'FF'     Show all options? Default.    ;UCB1228
  1117. >      BE       SHOA0           No find specific one        ;UCB1229
  1118. >      CLC       0(3,R6),=CL3'ALL'   Show all options?        ;UCB1230
  1119. > SHOA0     BNE       SHO0               No find specific one        ;UCB1231
  1120.  
  1121. Greg Small                                    (415)642-5979
  1122. Microcomputer Networking & Communications     gts@ucbopal.Berkeley.EDU
  1123. 214 Evans Hall CFC                            ucbvax!ucbjade!ucbopal!gts
  1124. University of California                      SPGGTS@UCBCMSA.BITNET
  1125. Berkeley, Ca 94720
  1126. 23-Dec-85 01:12:58-EST,9471;000000000011
  1127. Return-Path: <gts%ucbopal@BERKELEY.EDU>
  1128. Received: from ucbvax.berkeley.edu by CU20B.COLUMBIA.EDU with TCP; Mon 23 Dec 85 01:12:33-EST
  1129. Received: by ucbvax.berkeley.edu (5.31/1.7)
  1130.     id AA10341; Sun, 22 Dec 85 18:01:20 PST
  1131. Received: from ucbopal.Berkeley.Edu (ucbopal.ARPA)
  1132.     by ucbjade.Berkeley.Edu (4.19/4.41.3)
  1133.     id AA07751; Sun, 22 Dec 85 18:02:04 pst
  1134. Received: by ucbopal.Berkeley.Edu (4.19/4.42)
  1135.     id AA01468; Sun, 22 Dec 85 18:01:50 pst
  1136. Date: Sun, 22 Dec 85 18:01:50 pst
  1137. From: gts%ucbopal@BERKELEY.EDU
  1138. Message-Id: <8512230201.AA01468@ucbopal.Berkeley.Edu>
  1139. To: info-kermit@cu20b.columbia.edu
  1140. Subject: CMS-Kermit 2.01 Fix RPACK clobber when len char garbled (UCB18)
  1141.  
  1142. diff -b kermit2.asm01 kermit2.asm18
  1143. > *                                    ;UCB0227
  1144. > * UCB    CMS.18    85-12-15    gts, CFC                ;UCB1801
  1145. > *    Fix RPACK to prevent malfunction due to garbled input.        ;UCB1802
  1146. > *                                    ;UCB1803
  1147. > *    Always stop scanning at end of received data.  Previously,    ;UCB1804
  1148. > *    RPACK depended on the unchecked packet length character and    ;UCB1805
  1149. > *    would clobber KERMIT while copying data from RECPKT to RDAT.    ;UCB1806
  1150. > *    Rigidly enforcing the received data limit while collecting    ;UCB1807
  1151. > *    the checksum also improves data validity.            ;UCB1808
  1152. > *                                    ;UCB1809
  1153. > *    Fix the checksum length "heuristics" (RPK0) to reset CHKLEN    ;UCB1810
  1154. > *    only after checksum has been verified.                ;UCB1811
  1155. > *                                    ;UCB1812
  1156. > *    After a length character or checksum error, scan for another    ;UCB1813
  1157. > *    packet if there are more received characters.            ;UCB1814
  1158. > *                                    ;UCB1815
  1159. 1566c1775
  1160. < SERV0     MVI       CHKLEN,DCHKLEN      Set checksum length to one    01558000
  1161. ---
  1162. > SERV0     MVI       CHKLEN,X'01'        Set checksum length to one    ;UCB1816
  1163. 2965,2966c3174,3175
  1164. < * RDAT buffer.    Registers used: R5 to calculate checksum, R8 as        02955000
  1165. < * pointer in input buffer.  R9 as output buffer pointer.  [8]        02956000
  1166. ---
  1167. > * RDAT buffer.  R0 pending error code,     R3 provisional CHKLEN, R5    ;UCB1817
  1168. > * working checksum, R8 input buffer pointer,  R9 output buffer pointer.    ;UCB1818
  1169. 3012c3221,3222
  1170. <      SR       R6,R0           subt residue cnt from read    03002000
  1171. ---
  1172. >      SR       R6,R0           subt residue cnt from read    ;UCB1819
  1173. >      STH       R6,WTRDLEN           keep data length for later    ;UCB1820
  1174. 3037c3245,3248
  1175. < RPACK0     LA       R7,RECPKT(R8)       Address of next input char    03027000
  1176. ---
  1177. > RPACK0     CH       R8,WTRDLEN           Quit if received data exceeded    ;UCB1821
  1178. >      L       R0,=X'00000003'     = ("No SOH encountered")        ;UCB1822
  1179. >      BNL       RPACK7EX           =                ;UCB1823
  1180. >      LA       R7,RECPKT(R8)       Address of next input char    ;UCB1824
  1181. 3041,3046c3252,3256
  1182. <      C       R8,=F'130'           See if exceed buffer size    03031000
  1183. <      BL       RPACK0           No, can keep checking        03032000
  1184. <      MVI       ERRNUM,X'03'           Yes so no "SOH" error        03033000
  1185. <      B       RPACK71                        03034000
  1186. < RPACK1     SR       R9,R9           Zero output buffer pointer    03035000
  1187. <      LA       R8,1(R8)           Increment input buffer pointer    03036000
  1188. ---
  1189. >      B       RPACK0           =                ;UCB1825
  1190. > RPACK1     LA       R8,1(R8)           Increment input buffer pointer    ;UCB1826
  1191. >      CH       R8,WTRDLEN           Quit if received data exceeded    ;UCB1827
  1192. >      L       R0,=X'00000004'     = ("Bad Character count")    ;UCB1828
  1193. >      BNL       RPACK7EX           =                ;UCB1829
  1194. 3047a3258
  1195. >      ST       R7,RECPKTP           Save pointer to first char    ;UCB0606
  1196. 3050,3056c3261,3262
  1197. <      CLI       0(R7),DQUOTE           Equal or above the min        03040000
  1198. <      BNL       RPACK11           Continue if yes            03041000
  1199. <      MVI       ERRNUM,X'04'           Bad packet length        03042000
  1200. <      B       RPACK71                        03043000
  1201. < RPACK11     IC       R5,0(R7)           Start checksum            03044000
  1202. <      LR       R7,R5           Get size field            03045000
  1203. <      STC       R7,LRDAT+3           Data field & control info    03046000
  1204. ---
  1205. >      IC       R5,0(R7)           Start checksum            ;UCB1830
  1206. >      LR       R4,R5           Save length character        ;UCB1831
  1207. 3071,3081c3277,3278
  1208. <      LA       R8,1(R8)           Go to next byte            03061000
  1209. < * Start of change.                            03062000
  1210. < * Now determine block check type for this packet.  Here we violate the    03063000
  1211. < * layered nature of the protocol by inspecting the packet type in    03064000
  1212. < * order to detect when the two sides get out of sync.  Two heuristics    03065000
  1213. < * allow us to resync here:                        03066000
  1214. < *   a. An S packet always has a type 1 checksum.            03067000
  1215. < *   b. A NAK never contains data, so its block check type is        03068000
  1216. < *      PACKET LEN-2.                            03069000
  1217. <      L       R4,LRDAT           Get back the size        03070000
  1218. <      S       R4,=F'34'           Unchar(len)-2 (for SEQ & TYPE)    03071000
  1219. ---
  1220. >      S       R4,=F'34'           Unchar(len)-2 (for SEQ & TYPE)    ;UCB1833
  1221. >      BNH       RPACK7E           Error if too small        ;UCB1834
  1222. 3090,3097c3287,3297
  1223. < RPK1     STC       R3,CHKLEN           Then this is chksum length    03080000
  1224. <      SR       R4,R3           Real size of data        03081000
  1225. <      ST       R4,LRDAT           Save correct size        03082000
  1226. < * End of change.                            03083000
  1227. <      LTR       R4,R4           How much data did we get        03084000
  1228. <      BZ       RPACK3           None so that's it        03085000
  1229. < RPACK2     XC       TEMP,TEMP           Zero it out            03086000
  1230. <      LA       R7,RECPKT(R8)       Next location in buffer        03087000
  1231. ---
  1232. > RPK1     SR       R4,R3           Data = len -2 -chklen        ;UCB1835
  1233. >      ST       R4,LRDAT           Save the data length        ;UCB1836
  1234. >      BZ       RPACK3           No data, go do checksum        ;UCB1837
  1235. >      BL       RPACK7E           Error if too small        ;UCB1838
  1236. >      AR       R4,R8           Data last = index-1 + length    ;UCB1839
  1237. >      CH       R4,WTRDLEN           Quit if received data exceeded    ;UCB1840
  1238. >      BNL       RPACK7E           =                ;UCB1841
  1239. >      XC       TEMP,TEMP           Zero out temp            ;UCB1842
  1240. >      SR       R9,R9           Zero output buffer pointer    ;UCB1843
  1241. > RPACK2     LA       R8,1(R8)           Bump input buffer pointer    ;UCB1844
  1242. >      LA       R7,RECPKT(R8)       Next location in buffer        ;UCB1845
  1243. 3104,3111c3304,3311
  1244. <      LA       R8,1(R8)           Bump input buffer pointer    03094000
  1245. <      LA       R9,1(R9)           Bump output buffer pointer    03095000
  1246. <      BCTR       R4,0               Decrement amount of input    03096000
  1247. <      LTR       R4,R4           Any left?            03097000
  1248. <      BNZ       RPACK2           Yes get another character    03098000
  1249. < RPACK3     SR       R7,R7           Zero out register        03099000
  1250. <      IC       R7,RECPKT(R8)       Get checksum            03100000
  1251. <      LA       R8,1(R8)           Bump input pointer        03101000
  1252. ---
  1253. >      LA       R9,1(R9)           Bump output buffer pointer    ;UCB1846
  1254. >      CR       R8,R4           Loop if more data to go        ;UCB1847
  1255. >      BL       RPACK2           =                ;UCB1848
  1256. > RPACK3     LA       R8,1(R8)           Bump input buffer pointer    ;UCB1849
  1257. >      CH       R8,WTRDLEN           Length error if past receive    ;UCB1850
  1258. >      BNL       RPACK7EX           =                ;UCB1851
  1259. >      SR       R7,R7           Zero out register        ;UCB1852
  1260. >      IC       R7,RECPKT(R8)       Get checksum            ;UCB1853
  1261. 3116c3316
  1262. <      CLI       CHKLEN,X'02'           Using what checksum length    03106000
  1263. ---
  1264. >      C       R3,=X'00000002'     Test provisional checksum length    ;UCB1854
  1265. 3125,3128c3325,3328
  1266. <      BE       RPACK8           Successful            03115000
  1267. <      B       RPACK7           We failed            03116000
  1268. < RPACK4     LA       R5,RECPKT           Address of input buffer        03117000
  1269. <      LA       R5,1(R5)           Skip over the ^A            03118000
  1270. ---
  1271. >      BNE       RPACK7           We failed            ;UCB1855
  1272. > RPACK80     STC       R3,CHKLEN           OK, so reset checksum length    ;UCB1856
  1273. >      B       RPACK8           And return normally        ;UCB1857
  1274. > RPACK4     L       R5,RECPKTP           Address of first pkt char    ;UCB0607
  1275. 3130c3330
  1276. <      BCTR       R8,0               Go back one char            03120000
  1277. ---
  1278. > *                                     ;UCB1858
  1279. 3132c3332
  1280. <      LA       R8,1(R8)           Next char to pick up        03122000
  1281. ---
  1282. > *                                     ;UCB1859
  1283. 3142,3143c3342,3345
  1284. <      IC       R7,RECPKT(R8)       Get next char of checksum    03132000
  1285. <      LA       R8,1(R8)           Bump input pointer        03133000
  1286. ---
  1287. >      LA       R8,1(R8)           Bump input buffer pointer    ;UCB1860
  1288. >      CH       R8,WTRDLEN           Length error if past receive    ;UCB1861
  1289. >      BNL       RPACK7EX           =                ;UCB1862
  1290. >      IC       R7,RECPKT(R8)       Get next char of checksum    ;UCB1863
  1291. 3153,3154c3355,3358
  1292. <      IC       R7,RECPKT(R8)       Get checksum            03143000
  1293. <      LA       R8,1(R8)           Bump input pointer        03144000
  1294. ---
  1295. >      LA       R8,1(R8)           Bump input buffer pointer    ;UCB1864
  1296. >      CH       R8,WTRDLEN           Length error if past receive    ;UCB1865
  1297. >      BNL       RPACK7EX           =                ;UCB1866
  1298. >      IC       R7,RECPKT(R8)       Get checksum            ;UCB1867
  1299. 3160c3364
  1300. <      BE       RPACK8           Yes                03150000
  1301. ---
  1302. >      BE       RPACK80           Yes                ;UCB1868
  1303. 3165,3166c3369,3378
  1304. <      MVI       ERRNUM,X'05'           Bad checksum error        03155000
  1305. < RPACK71     MVI       RTYPE,AN           Return a NAK            03156000
  1306. ---
  1307. >      L       R0,=X'00000005'     "Bad checksum"            ;UCB1869
  1308. > RPACK7E     LA       R8,1(R8)           Bump input buffer pointer    ;UCB1870
  1309. >      CH       R8,WTRDLEN           Exit if received data exceeded    ;UCB1871
  1310. >      BNL       RPACK7EX           =                ;UCB1872
  1311. >      LA       R7,RECPKT(R8)       Address of next input char    ;UCB1873
  1312. >      CLI       0(R7),SOH           Is it Control-A            ;UCB1874
  1313. >      BNE       RPACK7E           If not, keep scanning        ;UCB1875
  1314. >      B       RPACK1           If SOH, go process packet    ;UCB1876
  1315. > RPACK7EX STC       R0,ERRNUM           Set final error number        ;UCB1877
  1316. >      MVI       RTYPE,AN           Return a NAK            ;UCB1878
  1317.  
  1318. Greg Small                                    (415)642-5979
  1319. Microcomputer Networking & Communications     gts@ucbopal.Berkeley.EDU
  1320. 214 Evans Hall CFC                            ucbvax!ucbjade!ucbopal!gts
  1321. University of California                      SPGGTS@UCBCMSA.BITNET
  1322. Berkeley, Ca 94720
  1323. 23-Dec-85 02:42:02-EST,5436;000000000001
  1324. Return-Path: <gts%ucbopal@BERKELEY.EDU>
  1325. Received: from ucbvax.berkeley.edu by CU20B.COLUMBIA.EDU with TCP; Mon 23 Dec 85 02:41:44-EST
  1326. Received: by ucbvax.berkeley.edu (5.31/1.7)
  1327.     id AA10313; Sun, 22 Dec 85 17:58:59 PST
  1328. Received: from ucbopal.Berkeley.Edu (ucbopal.ARPA)
  1329.     by ucbjade.Berkeley.Edu (4.19/4.41.3)
  1330.     id AA07696; Sun, 22 Dec 85 17:59:34 pst
  1331. Received: by ucbopal.Berkeley.Edu (4.19/4.42)
  1332.     id AA01432; Sun, 22 Dec 85 17:59:21 pst
  1333. Date: Sun, 22 Dec 85 17:59:21 pst
  1334. From: gts%ucbopal@BERKELEY.EDU
  1335. Message-Id: <8512230159.AA01432@ucbopal.Berkeley.Edu>
  1336. To: info-kermit@cu20b.columbia.edu
  1337. Subject: CMS-Kermit 2.01 Fix command line, multiple takes, etc. (UCB14)
  1338.  
  1339. diff -b kermit2.asm01 kermit2.asm14
  1340. > *                                    ;UCB0227
  1341. > * UCB    CMS.14    85-10-20    gts, CFC                ;UCB1401
  1342. > *    Fix problems relating to CMS-KERMIT command sources.        ;UCB1402
  1343. > *    TAKE now closes files so that multipe TAKEs work.        ;UCB1403
  1344. > *    Fix SERVER not to exit, no other commands do.            ;UCB1404
  1345. > *    Eliminate some unnecessary long literals (CSECT short on space)    ;UCB1405
  1346. > *                                    ;UCB1406
  1347. > *    The command line operands are saved for execution as the first    ;UCB1407
  1348. > *    command after the KERMINI files are done.  Additional commands    ;UCB1408
  1349. > *    seperated by LINEND characters were stacked by CMS and will    ;UCB1409
  1350. > *    execute next.  Prompts are not suppressed. (Previously, any    ;UCB1410
  1351. > *    argument on the command line suppressed the prompt, prevented    ;UCB1411
  1352. > *    load of KERMINI files, and caused null input to act as an EXIT.    ;UCB1412
  1353. > *    This was not useful behavior.)                    ;UCB1413
  1354. > *                                    ;UCB1414
  1355. 174c298
  1356. < CMDL     EQU       X'01'           Data on cmd line [11]        00166000
  1357. ---
  1358. > *                                    ;UCB1415
  1359. 300,305c424,431
  1360. <      MVI       EXTFLG,X'00'           Don't exit yet [11]        00292000
  1361. <      OI       LFLAGS,CMDL           Set if info on cmd line [11]    00293000
  1362. <      LA       R6,8(R6)                        00294000
  1363. <      CLC       0(8,R6),=8X'FF'     ALL COMMAND ON ONE LINE?        00295000
  1364. <      BNE       NOPRO           NO PROMPT IF YES            00296000
  1365. <      NI       LFLAGS,X'FF'-CMDL   Nothing at command line [11]    00297000
  1366. ---
  1367. >      MVC       CMDLINEF,8(R6)      Command flag is param1 (none=FF)    ;UCB1416
  1368. >      LA       R5,CMDLINE           Save the command line        ;UCB1417
  1369. >      XC       CMDLINE,CMDLINE     =                ;UCB1418
  1370. > INIF3     MVC       0(8,R5),0(R6)       = (Up to terminator)        ;UCB1419
  1371. >      CLC       0(8,R6),=8X'FF'     =                ;UCB1420
  1372. >      LA       R5,8(R5)           =                ;UCB1421
  1373. >      LA       R6,8(R6)           =                ;UCB1422
  1374. >      BNE       INIF3           =                ;UCB1423
  1375. 313,317c439
  1376. < PROMPT     CLI       EXTFLG,X'FF'           Time to exit? [11]        00305000
  1377. <      BE       LV2               Yup [11]                00306000
  1378. <      TM       LFLAGS,CMDL           Data on cmd line? [11]        00307000
  1379. <      BO       PRO4               Yes go check [11]        00308000
  1380. <      TM       LFLAGS,TAKON           Using TAKE file? [15 start]    00309000
  1381. ---
  1382. > PROMPT     TM       LFLAGS,TAKON           Using TAKE file? [15 start]    ;UCB1424
  1383. 332c454,455
  1384. < PRO3     SR       R2,R2                        00324000
  1385. ---
  1386. > PRO3     FSCLOSE   (R2)               Close the take file        ;UCB1425
  1387. >      SR       R2,R2                        ;UCB1426
  1388. 341c463,470
  1389. < PRO4     RDTERM       INPUT           No prompt [11]            00333000
  1390. ---
  1391. >      CLI       CMDLINEF,X'FF'      If no command line pending,    ;UCB1427
  1392. >      BE       PRO4               = then get actual input        ;UCB1428
  1393. >      MVI       CMDLINEF,X'FF'      Turn off pending flag        ;UCB1429
  1394. >      LA       R6,CMDLINE+8           Use tokenized command line    ;UCB1430
  1395. >      MVC       INPUT(122),0(R6)    = (but leave image in INPUT)    ;UCB1431
  1396. >      B       PRO5               =                ;UCB1432
  1397. > PRO4     RDTERM       INPUT           Get actual input            ;UCB1433
  1398. 350c484
  1399. < NOPRO     MVI       ERRNUM,X'FF'           RESET ERROR FOR THIS TIME    00342000
  1400. ---
  1401. > PRO5      MVI       ERRNUM,X'FF'           RESET ERROR FOR THIS TIME    ;UCB1434
  1402. 356,357c490,491
  1403. <      CLC       0(8,R6),=8X'FF'     No more input? [11]        00348000
  1404. <      BE       NOPRO2           Go check [11]            00349000
  1405. ---
  1406. >      CLC       0(8,R6),=8X'FF'     Null input OK            ;UCB1435
  1407. >      BE       PROMPT           =                ;UCB1436
  1408. 363,365c497
  1409. < NOPRO2     TM       LFLAGS,CMDL           No more info on cmd line [11]    00355000
  1410. <      BO       LV2               Yes so just exit [11]        00356000
  1411. <      B       PROMPT           No, blank line at prompt [11]    00357000
  1412. ---
  1413. > *                                    ;UCB1437
  1414. 409,411c541
  1415. < SNAM     MVC       NAME,=18X'20'       BLANK IT     OUT            00401000
  1416. <      MVC       FILNAM,=18X'20'     BLANK IT OUT TOO            00402000
  1417. <      MVC       NAME(8),0(R6)       PICK UP THE FNAME        00403000
  1418. ---
  1419. > SNAM     MVC       NAME(8),0(R6)       PICK UP THE FNAME        ;UCB1438
  1420. 515c647
  1421. <      MVC       0(18,R2),=18X'40'   Blank area for file name        00507000
  1422. ---
  1423. > *                                    ;UCB1439
  1424. 650,651c782
  1425. < PRSF2     MVC       FILNAM,=18X'20'     Blank it out            00642000
  1426. <      MVC       FILNAM(8),0(R6)     Get fn                00643000
  1427. ---
  1428. > PRSF2     MVC       FILNAM(8),0(R6)     Get fn                ;UCB1440
  1429. 894c1027,1029
  1430. < INPUT     DS       CL130           INPUT BUFFER            00886000
  1431. ---
  1432. > INPUT     DS       CL130           INPUT BUFFER            ;UCB144A
  1433. > CMDLINEF DC       X'FF'           Command line flag        ;UCB1441
  1434. > CMDLINE  DS       CL130           Tokenized first command line    ;UCB1442
  1435. 934c1070
  1436. < EXTFLG     DS       X               Exit flag [11]            00926000
  1437. ---
  1438. > *                                    ;UCB1443
  1439. 1616c1778
  1440. <      MVI       EXTFLG,X'FF'           Set exit flag            01608000
  1441. ---
  1442. > *                                    ;UCB1444
  1443.  
  1444. Greg Small                                    (415)642-5979
  1445. Microcomputer Networking & Communications     gts@ucbopal.Berkeley.EDU
  1446. 214 Evans Hall CFC                            ucbvax!ucbjade!ucbopal!gts
  1447. University of California                      SPGGTS@UCBCMSA.BITNET
  1448. Berkeley, Ca 94720
  1449. 16-Jan-86 17:58:01-EST,3201;000000000011
  1450. Received: from CUVMA by CU20B with HASP; 16 Jan 86 17:57:56 EST
  1451. Received: from CORNELLA(MAL) by CUVMA (Mailer X1.23a) id 1357;
  1452.           Thu, 16 Jan 86 17:57:52 EST
  1453. Received: by CORNELLA (Mailer X1.21) id 7316; Thu, 16 Jan 86 17:57:58 EST
  1454. Date: 16 January 86 17:57 EST
  1455. From: NJG@CORNELLA
  1456. Subject: CMS KERMIT 2.01 bugs fixed
  1457. To: INFO-KERMIT@CU20B
  1458.  
  1459. I have discovered (and corrected!) a couple of bugs in CMS KERMIT
  1460. version 2.01. The following file 'CMSKERM CNTRL' can be use with
  1461. VMFASM and the other files referenced here to build a new CMSKERM
  1462. TEXT deck which can be used to build a new MODULE.
  1463. The contents of CMSKERM CNTRL are:
  1464. TEXT MACS DMSSP CMSLIB TSOMAC
  1465. TEXT AUXDIST
  1466.  
  1467. The contents of CMSKERM AUXDIST are:
  1468. FIXBYE  - DON'T 'XON' FOR 'BYE' ON A 7171. NJG 16JAN86.
  1469. FIXPAD - FIX PAD CHAR FOR RECFM F TEXT FILES. -NJG 9/85
  1470. TAKCLOSE - CLOSE TAKE FILES. NJG, 9/85.
  1471.  
  1472. If CMS KERMIT is executed more than once from an EXEC without returning
  1473. to CMS command level any attempt to 'take' a file more than once will
  1474. fail as the file has been left open.
  1475. This can be fixed by closeing the file.
  1476. The contents of CMSKERM TAKCLOSE are:
  1477. ./ I 00016350          $ 16450 5                      09/05/85 20:11:19
  1478. *      Sep  85: Close TAKE and system initialization files     takclose
  1479. *               when done with them so we can use them again   takclose
  1480. *               if we want to.                                 takclose
  1481. *               Nick Gimbrone, Cornell University              takclose
  1482. ./ R 00324000          $ 324190 190                   09/05/85 20:11:19
  1483. PRO3     DS        0H                                          takclose
  1484.          FSCLOSE   (R2)                Close the file          takclose
  1485.          SR        R2,R2                                       takclose
  1486.  
  1487. Update 2 to version 2.00 of CMSKERM does not pad RECFM F files
  1488. with spaces as it claimed, it pads with hex 0's.
  1489. The contents of CMSKERM FIXPAD are:
  1490. ./ I 00016465          $ 16480 5                      09/05/85 20:11:19
  1491. *      Sept 85: Pad RECFM F files with space, not X'00'.         fixpad
  1492. *               Nick Gimbrone, Cornell University                fixpad
  1493. ./ R 03876000          $ 3876490 490                  09/05/85 21:09:01
  1494.          L         R15,=X'40000000'    Pad with spaces           fixpad
  1495.  
  1496. When processing a SERVER 'bye' request on a 7171 (or Series/1) line
  1497. no XON should be sent before issuing the CP LOGOFF command. If it is
  1498. the CONWAIT following the WRTERM will wait forever.
  1499. The content of file CMSKERM FIXBYE are:
  1500. ./ I 00016485          $ 16500 5                      09/05/85 20:11:19
  1501. *      Jan  86: Don't send XON before 'logoff' on a 7171.        fixbye
  1502. *               Nick Gimbrone, Cornell University                fixbye
  1503. ./ I 01599000          $ 1599300 300                  01/16/86 16:51:45
  1504.          TM        S1FLAGS,ISS1        Is console a S/1?         fixbye
  1505.          BNZ       SERV21A              Yes, no XON needed.      fixbye
  1506. ./ I 01602000          $ 1602500 500                  01/16/86 16:51:45
  1507. SERV21A  DS        0H                                            fixbye
  1508.  
  1509. "8-)" Nick Gimbrone <NJG@CORNELLA.BITNET> (607)256-3747
  1510.  
  1511. ------------------------------
  1512.  
  1513. Date: Fri, 7 Mar 86 12:12:27 +0100
  1514. From: mcvax!eurifb!benno@seismo.CSS.GOV
  1515. Subject: bug in kermit for VM/CMS
  1516.  
  1517. A problem erupted when we tried to send lots of packets from a UNIX machine
  1518. via a 7171 over a 70-foot line. The 7171 guarantees only 50 foot, and lots
  1519. of acknowledgement-packets were garbled, and UNIX-kermit did a retry.
  1520. This was all OK, exept when the old packet-number was 63 ('_').
  1521. VM/CMS kermit wrapped around to 0 (' ') and didn't
  1522. recognise the resent packet as a retry.
  1523. It appeared that masking was forgotten on several occasions. I have tried to
  1524. locate all the spots where it should be needed, and inserted them (see the 
  1525. lines with BN-860227).
  1526. It works fine now (upto now for approx. 100 MB).
  1527.  
  1528. Ben Noordzij,
  1529. Erasmus University, Rotterdam, The netherlands
  1530. ......!mcvax!eurifb!benno
  1531.  
  1532. ROLD    L    R3,OLDTRY
  1533.     LA    R3,1(R3)            INCREMENT COUNTER
  1534.     ST    R3,OLDTRY
  1535.     L    R3,SPKNUM           GET PACKET NUMBER SENT
  1536.     BCTR    R3,0                SUBTRACT ONE FROM IT
  1537.     N    R3,=X'00000037'     WRAP AROUND         (BN-860227)
  1538.     C    R3,RPKNUM           RPKNUM MUST EQUAL SPKNUM-1
  1539.     BE    RNUM
  1540.     MVI    ERRNUM,X'08'        PREVIOUS PACKET MISSING
  1541.     B    RNAK                SEND A NAK
  1542. RNUM    MVI    STYPE,AY            ACK PACKET
  1543.     ST    R3,SPKNUM           MAKE SEND SEQ NO. = SPKNUM-1
  1544.     L    R15,=A(RPAR)        Get packet with our values [5]
  1545.     BALR    R14,R15
  1546.     ST    R15,LSDAT           Size of packet [5]
  1547.     L    R15,=A(SPACK)
  1548.     BALR    R14,R15             GO TO SPACK AND RETURN
  1549.     CLI    STATE,C'A'
  1550.     BE    RABORT
  1551.     L    R4,SPKNUM
  1552.     LA    R4,1(R4)            ADD ONE
  1553.     ST    R4,SPKNUM           RESTORE N TO PROPER VALUE
  1554.     NC    SPKNUM(4),=X'0000003F'   WRAP AROUND     (BN-860227)
  1555.     XC    NUMTRY,NUMTRY       RESET COUNTER TO ZERO
  1556.     B    RLOOP
  1557. RNZ    CLI    RTYPE,AZ
  1558.     BNE    RNF                 MAYBE IT'S AN 'F'
  1559.     CLC    OLDTRY,MAXTRY       CAN WE TRY AGAIN?
  1560.     BL    ROLD2
  1561.     MVI    STATE,C'A'          ELSE,ABORT
  1562.     B    RLOOP
  1563. ROLD2    L    R3,OLDTRY
  1564.     LA    R3,1(R3)            INCREMENT COUNTER
  1565.     ST    R3,OLDTRY
  1566.     L    R3,SPKNUM           GET PACKET NUMBER SENT
  1567.     BCTR    R3,0                SUBTRACT ONE FROM IT
  1568.     N    R3,=X'00000037'     WRAP AROUND         (BN-860227)
  1569.     C    R3,RPKNUM           RPKNUM MUST EQUAL SPKNUM-1
  1570.     BE    RNUM2
  1571.     MVI    ERRNUM,X'08'        PREVIOUS PACKET MISSING
  1572.     B    RNAK                SEND A NAK
  1573. RNUM2    MVI    STYPE,AY            ACK PACKET
  1574.     ST    R3,SPKNUM           SEND SEQ := SPKNUM-1
  1575.     XC    LSDAT,LSDAT         NO DATA
  1576.     L    R15,=A(SPACK)
  1577.     BALR    R14,R15
  1578.     CLI    STATE,C'A'
  1579.     BE    RABORT
  1580.     L    R4,SPKNUM
  1581.     LA    R4,1(R4)            ADD ONE
  1582.     ST    R4,SPKNUM           RESTORE SPKNUM TO PROPER VALUE
  1583.     NC    SPKNUM(4),=X'0000003F'   WRAP AROUND         (BN-860227)
  1584.     XC    NUMTRY,NUMTRY       RESET COUNTER TO ZERO
  1585.     B    RLOOP
  1586.  
  1587. ************************************
  1588. no changes between these lines
  1589. ************************************
  1590.  
  1591. DIFNUM    L    R4,OLDTRY
  1592.     LA    R4,1(R4)
  1593.     ST    R4,OLDTRY           INCREMENT THIS COUNTER
  1594.     L    R4,SPKNUM
  1595.     BCTR    R4,0
  1596.     N    R4,=X'0000003F'     WRAP AROUND BACKWARDS    (BN-860227)
  1597.     C    R4,RPKNUM           RPKNUM MUST EQUAL SPKNUM-1
  1598.     BE    DIFOK
  1599.     MVI    ERRNUM,X'08'        PREVIOUS PACKET MISSING
  1600.     B    RDN1                SEND A NAK
  1601. DIFOK    XC    NUMTRY,NUMTRY       RESET COUNTER TO ZERO
  1602.     MVI    STYPE,AY            ACK PACKET
  1603.     XC    LSDAT,LSDAT         NO DATA
  1604.     ST    R4,SPKNUM           DECREMENT TO RESEND PACKET
  1605.     L    R15,=A(SPACK)
  1606.     BALR    R14,R15             SEND THE PACKET
  1607.     CLI    STATE,C'A'
  1608.     BE    RABORT
  1609.     L    R4,SPKNUM
  1610.     LA    R4,1(R4)            ADD ONE
  1611.     ST    R4,SPKNUM           RESTORE TO PROPER VALUE
  1612.     NC    SPKNUM(4),=X'0000003F'   WRAP AROUND     (BN-860227)
  1613.     B    RLOOP               AND RETURN
  1614. RDF    CLI    RTYPE,AF            SENDING FILENAME AGAIN?
  1615.     BNE    RDZ
  1616.     CLC    OLDTRY,MAXTRY       CAN WE DO IT?
  1617.     BL    FILOVER             TRYING IT AGAIN
  1618.     MVI    STATE,C'A'          IF NO, ABORT
  1619.     B    RLOOP
  1620. FILOVER    L    R4,OLDTRY
  1621.     LA    R4,1(R4)
  1622.     ST    R4,OLDTRY           SAVE INCREMENTED VALUE
  1623.     L    R4,SPKNUM
  1624.     BCTR    R4,0                NEED VALUE OF N-1
  1625.     N    R4,=X'0000003F'     WRAP AROUND BACKWARD     (BN-860227)
  1626.     C    R4,RPKNUM           SPKNUM-1 MUST EQUAL RPKNUM
  1627.     BE    FILOK
  1628.     MVI    ERRNUM,X'08'        PREVIOUS PACKET MISSING
  1629.     B    RDN1                SEND A NAK
  1630. FILOK    XC    NUMTRY,NUMTRY       RESET TO ZERO
  1631.     XC    LSDAT,LSDAT         NO DATA
  1632.     MVI    STYPE,AY            ACK PACKET AGAIN
  1633.     ST    R4,SPKNUM           DECREMENT FOR NOW
  1634.     L    R15,=A(SPACK)
  1635.     BALR    R14,R15
  1636.     CLI    STATE,C'A'
  1637.     BE    RABORT
  1638.     L    R4,SPKNUM
  1639.     LA    R4,1(R4)            ADD ONE
  1640.     ST    R4,SPKNUM           RESTORE TO PROPER VALUE
  1641.     NC    SPKNUM(4),=X'0000003F'   WRAP AROUND     (BN-860227)
  1642.     B    RLOOP               AND RETURN
  1643.  
  1644. ------------------------------
  1645.  
  1646. Date: 7-Jan-1986
  1647. From: BRIAN@UOFT02.BITNET
  1648. Subject: IBM VM/CMS Kermit vs VM Optimizer
  1649.  
  1650. The systems group for the IBM system here recently installed a package from
  1651. BMC Corp. called VM Optimizer, one feature of which is compression of data
  1652. to 3270 type terminals.  Using this will cause CMS S/1 Kermit to fail.  If
  1653. something like this is used, it should be disabled for 7171 and S/1 lines.
  1654.  
  1655. ------------------------------
  1656.  
  1657.