AC Alter TSX+ memory allocation ; 51 06-Jun-86 09:52:57 K11PRT.MAC Get rid of .HRESET for XC handler ; 51 04-Jun-86 11:16:07 Misc. More changes to get K11XM.SAV to run ; in the Foreground on RT11 v5. ; 51 29-May-86 13:50:00 K11CMD.MAC Remove first (unneeded) call to SETCC ; so we can wait for XINIT to do a .QSET ; as we need extra one for the control ; C watcher on RT11. ; 51 29-May-86 13:46:07 K11RT4.MAC Add a real control C trap. IE, start a ; watchdog timer to check the terminal ; status word. ; 51 27-May-86 11:33:23 K11RCO.MAC Kludge for bug in the RT 5.1 XL handler ; 51 25-May-86 09:33:12 K11RT4.MAC Move XINIT out into K11RTI.MAC and put ; K11RTI.MAC into an overlay. Also redo the overlay ; K11XM.COM to cut down autoload vectors on RT XM. ; 51 23-May-86 11:49:44 A few Allocate ALBUFF at run time. ; 51 23-May-86 10:50:16 K11RCO.MAC Check for SJ exec having a clock ; 51 08-May-86 15:54:56 K11RCO.MAC Rewrote RT11 connect code. ; 51 08-May-86 13:20:33 K11CM1.MAC Fix TYPE command for large recordsize ; files. ; 50 04-Apr-86 19:59:36 K11M41.MAC Enable echoing for local terminal in ; case of task abort w/o characteristics ; getting reset. ; 50 04-Apr-86 19:57:27 K11PCO.MAC Look for spawning PRO/COMM if PROCOM ; K11DAT.MAC global ne 0. Set via SET POS [NO]DTE ; K11ST0.MAC and via tkb GBLPAT option. SET code ; K11STD.MAC in K11ST0, cmd def in K11STD. ; 50 02-Apr-86 15:53:27 K11ECO.MAC Rewrote RSTS/E connect code for speed ; 49 28-Mar-86 09:25:10 K11HLP.MAC Rewrote help routine ; 49 24-Mar-86 12:16:33 K11ATR.MAC Fix protocol error for attribute ; packets. See K11INS.DOC and K11.BWR, ; also see K11ATR.MAC ; 48 21-Mar-86 16:54:53 K11DIA.MAC Don't go to sleep for 2 secs after ; successfull connection unless M or M+ ; 48 21-Mar-86 16:54:26 K11PCO.MAC Extend flushing of XOFFS to P/OS ; 48 13-Mar-86 14:28:10 K11SHO.MAC SHOW PHONE ; 48 17-Mar-86 13:22:19 K11ECO.MAC Ignore XOFF's from connected host. ; (have a fubarred DHU11 on my 785). ; 47 07-Mar-86 18:17:30 K11RMS.MAC BINFIL return(text) for FB$FTN files ; This means that FD.FTN files will be ; converted to text files. ; 47 05-Mar-86 12:48:19 K11PCO.MAC Trash K11CON, K11PCO is for P/OS, ; K11RXY is for RSX, K11ECO RSTS/E, ; K11RTC RT11. ; 46 21-Feb-86 11:45:01 K11RMS.MAC Add TLOG$S call to see if the ; filespec is a logical name. ; 45 20-Feb-86 15:28:56 K11DIA.MAC Added SET PHONE NUMBER ; K11ST0.MAC ; 45 18-Feb-86 11:14:04 K11ST0.MAC Added SET DIAL ; 45 14-Feb-86 13:46:55 K11E80.MAC Modify RSTS packet reader to cancel ; XOFF'ed line, requires SYSIO priv. ; 45 12-Feb-86 16:56:35 K11M41.MAC Find out terminal type for RSX & POS ; 45 11-Feb-86 12:17:09 K11RT4.MAC Pass kmon command BYE for server ; logout on TSX+ ; 45 11-Feb-86 12:27:42 K11RTD.MAC Skip volume verify for LDn: ; 45 11-Feb-86 12:28:06 K11PRT.MAC Do s SET CLn LFOUT when closing line ; 45 11-Feb-86 15:44:36 K11E80.MAC Rewrote support for SERVER logout to ; use RSTS/E v9 features, also hangup ; line if logout will succeed. ; 45 10-Feb-86 11:56:37 K11ECO.MAC Creation, RSTS/E ONLY connect code. ; 45 10-Feb-86 11:52:21 K11CON.MAC Removed RSTS/E and RT11 code ; 45 10-Feb-86 11:30:41 Misc Final MODS from Steve Heflin ; 44 08-Feb-86 06:13:26 K11RXY.MAC Added Robin Miller's new high speed ; connect code as SET RSX CONNECT ALT ; 44 07-Feb-86 16:02:52 K11M41.MAC Follow Heflin's EXST$S with EXIT$S ; 44 07-Feb-86 16:00:00 K11E80.MAC Try to UNDO DEC's feature of turning ; C1 characters into ESCAPE sequences. ; 44 07-Feb-86 15:48:45 K11PAK.MAC Change Steve Heflin's exiting Kermit ; if the wait for SOH reads a contrl Z ; to require TWO control Z's in a row. ; 44 07-Feb-86 13:58:09 K11DAT.MAC Data for displaying TIMEOUT count ; K11INI.MAC Display TIMEOUT count ; 44 04-Feb-86 09:00:12 K11PRT.MAC Implicit SET CL NOLFOUT for TSX+ ; Write SET SPEED code for CL (TSX+) ; 44 03-Feb-86 12:4K11CMDMAC[.050032]K11CMD.MAC[.050032]    X14|H [4;Ik(&'( k ߫H&P` \RrPP2PPzPP{PPPPP2P~\$\\TD 0D \~ hi) +\ ^( n ^( np\^txY\^ˀ\!kVk<\F˰<˴ˬ\VVkˤ1`@lP ABCDEFGHIJKLMNOPQRSTUVWXYZ$.?0123456789<@<SЬTЬ UQS>?\\\\\\\\\`:#@'="\abcdefghi\\\\\\\jklmnopqr\\\\\\\~stuvwxyz\\\\\\\\\\\\\\\\\\\\\\{ABCDEFGHI\\\\\\}JKLMNOPQR\\\\\\\\STUVWXYZ\\\\\\0123456789\\\\\  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ABCDEFGHIJKLMNOPQRSTUVWXYZ{|}~@ggh<i|o<m<4p<p<k|Zn<l fr rwx<x<x<x޺<w@]@@fjnr]Ze@@|> | |v<H|  |  |xz|  |zt f r   < &^ @&@'*/V,"?Lh:hmBmz|z{x`y~|fN|@@|@͂|@ ݃ƃ<ns<|Ŏ |️|ep|u|-@率|<ᄇ2ֻr||ZRM | ntB|xyvZw|J=|R>|J? nnaa|bddfn and fake using TSX ; TT: code. ; 38 09-Nov-85 12:35:05 K11M41.MAC Alter XBINREAD to use MRKT$S for the ; read timeout and do an IO.KIL if it ; fails then convert IE.ABO to IS.TMO ; 38 07-Nov-85 15:13:06 K11M41.MAC Rewrite handling for REMOTE DIR server ; K11E80.MAC processing so that we do not fill up ; K11RTD.MAC a file with the directory listing and ; K11SER.MAC then send the file. Instead stuff ; GETROUTINE: with &SDODIR. ; 38 06-Nov-85 16:20:33 K11SER.MAC Change REM HELP to use asciz sender ; instead of dumping to file and sending ; the file for the extended response. ; ; 38 06-Nov-85 15:17:36 K11RT4.MAC Change EPT name GETCR0 to FGETCR0 ; 38 06-Nov-85 15:17:36 K11RMS.MAC Change EPT name GETCR0 to FGETCR0 ; 38 06-Nov-85 15:13:59 K11PAK.MAC Moved GETCR0 to call actual next_char ; routine via CALL @GETROUTINE so we can ; support the use of alternate routines. ; This allows extended server responses ; to use memory or whatever instead of ; temporary files. ; 37 05-Nov-85 10:19:47 K11PRT.MAC Added .TWAIT for 1/3 second in TTYFIN ; to avoid turning the XC/XL driver off ; before all I/O has been sent to host. ; 37 04-Nov-85 17:23:30 K11PRT.MAC Put back in the kludges for the lack ; K11RTT.MAC of a clock, which somehow got lost in ; subspace somewhere (RT11 specific). ; 37 04-Nov-85 15:25:08 K11PRT.MAC Various mods for CL: handler for TSX+ ; K11RT4.MAC to allow the use of 8BIT mode on the ; K11TSX.MAC handler, also avoid dropping DTR when ; K11RTT.MAC we close CL line. Dummy EPT's stuffed ; K11DSP.MAC in K11TSX and K11RTT for reset @ exit ; code. ; 37 04-Nov-85 13:23:52 K11REC.MAC Insure call to FPARSE for case where ; user says GET remote_name local_name ; 37 01-Nov-85 10:51:33 K11INI.MAC Get defensive in RPAR so we can catch ; short SINIT packets better and fix(?) ; them. Needed for FIDO Kermit. ; 37 29-Oct-85 17:01:53 K11M41.MAC Add code for IO.BRK on P/OS. ; 37 28-Oct-85 17:40:52 K11M41.MAC Stuff *.*;* into DEFDIR in DODIR: iif ; the first byte of DEFDIR is \0 (null) ; 37 28-Oct-85 13:37:44 K11CON.MAC Added code re Steve Heflin to (1) do ; a MRKT$S iif 'TC.DLU' does a zero to ; non-zero transition, and (2) alter ; function code for REMWRITE QIO if the ; TC.DLU == 2 to IO.WBT!TF.WAL, a must ; do for M+ V3 and MicroRsx V3. Would ; assume not needed for packet sending ; as currently packet sending is block- ; ing (ie, its half duplex). ; 37 19-Oct-85 17:17:49 K11DIA.MAC Add DIAL command ; 37 19-Oct-85 17:00:01 K11ST0.MAC Added SET MODEM command ; 36 13-Oct-85 15:27:45 K11SEN.MAC Fix up control C aborts. Add new state ; K11REC.MAC called STA.CCABORT for processng ctl C ; K11M41.MAC aborts. Added IO.KIL in ctrl C ast ; K11E80.MAC code for RSX and P/OS to stop current ; i/o operation. Can't do this on RSTS. ; 36 10-Oct-85 14:53:55 K11CON.MAC Save and reset speed if change TC.DLU ; 36 10-Oct-85 14:51:33 K11PAK.MAC Fix call from M$RETRY to ERROR() ; 36 24-Sep-85 12:29:53 K11E80.MAC Added REMOTE LOGIN and support for it ; K11SER.MAC in the server. The server support makes ; K11COM.MAC sense only for RSTS/E V9.x since RSTS ; K11CMD.MAC is the only PDP exec supporting logins ; via executive directives. REM LOGIN was ; a request by Dale Handy for a specific ; application. ; K11CMD.MAC Disabled for SEND if wilcarded filename ; K11SEN.MAC and GET filename destination_filename ; 36 17-Sep-85 10:55:06 K11REC.MAC Allow SEN filename destination_filename ; 36 17-Sep-85 10:54:11 K11ST0.MAC Added SET RT11 CREATE_SIZE value to ; for allocation for small disks on file ; creates, sometimes needed for Kermit-11 ; to non Kermit-11 transfers. ; 36 13-Sep-85 12:30:12 K11ST1.MAC Added SET REC START-OF-PACKET, also ; K11PAK.MAC SET SEN STA . Also added ; SET START-OF-PACKET which forces both ; SOP's to same value. ; 36 10-Sep-85 13:K11CMDMAC[.050032]K11CMD.MAC[.050032]    X14|H [4;Ik(&'( k ߫H&P` \RrPP2PPzPP{PPPPP2P~\$\\TD 0D \~ hi) +\ ^( n ^( np\^txY\^ˀ\!kVk<\F˰<˴ˬ\VVkˤ1`@lP ABCDEFGHIJKLMNOPQRSTUVWXYZ$.?0123456789<@<SЬTЬ UQS>?\\\\\\\\\`:#@'="\abcdefghi\\\\\\\jklmnopqr\\\\\\\~stuvwxyz\\\\\\\\\\\\\\\\\\\\\\{ABCDEFGHI\\\\\\}JKLMNOPQR\\\\\\\\STUVWXYZ\\\\\\0123456789\\\\\  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ABCDEFGHIJKLMNOPQRSTUVWXYZ{|}~@ggh<i|o<m<4p<p<k|Zn<l fr rwx<x<x<x޺<w@]@@fjnr]Ze@@|> | |v<H|  |  |xz|  |zt f r   < &^ @&@'*/V,"?Lh:hmBmz|z{x`y~|fN|@@|@͂|@ ݃ƃ<ns<|Ŏ |️|ep|u|-@率|<ᄇ2ֻr||ZRM | ntB|xyvZw|J=|R>|J? nnaa|bddfSET FILE [TYPE] arg ; 28 22-Apr-85 10:34:56 K11RT4.MAC Kludge if RT system does not have a ; K11RTT.MAC clock. ; 28 20-Apr-85 09:22:01 K11ST1.MAC Added SET BINARY-TYPE .filetype for ; K11CVT.MAC overriding the built-in binary file ; type list. ; 27 XX-Apr-85 K11M41.MAC Fix ASSDEV: for stack problem ; 27 19-Mar-85 15:59:06 K11SEN.MAC Fix losing attribute packets in case ; we timed out or were naked. ; 26 28-Feb-85 14:01:08 K11RMS.MAC Change % to ? in wildcards for RSTS/E ; K11SER.MAC server to kludge around the problem ; that some Kermits mangle ? in cmdline ; 26 28-Feb-85 14:00:30 K11RT4.MAC Fixes for TSX+ ; K11DSP.MAC ; K11TSX.MAC ; 26 20-Feb-85 15:13:05 K11E80.MAC Changed default record format from ; FILES-11 variable to STREAM ASCII. ; 25 29-Jan-85 09:40:22 K11SEN.MAC Fix things up for ^e,^x and ^z inter- ; K11REC.MAC upts on getting and sending files. ; 25 28-Jan-85 15:30:01 K11SER.MAC Get rid of imbedded crlfs in the short ; server reply string. ; 25 17-Jan-85 10:56:03 K11HLP.HLP More explanation about BINARY files as ; there seems to be a lot of confusion ; about binary file transfer. ; 25 17-Jan-85 10:53:17 K11CON BDN Added SET CONSOLE 7, SET CONSOLE 8 to ; K11ST1 BDN force P/OS Kermit11 to junk bit 7 when ; in terminal mode, thus avoiding DEC's ; multinational character set. ; 25 17-Jan-85 10:52:38 K11DSP BDN Clear PROFLG in ASSDEV if SET LINE is ; done and device is not X?: for RT11. ; 25 17-Jan-85 10:51:58 K11SEN BDN Added abort (^E,^X & ^Z) for SENDing. ; 25 16-Jan-85 13:20:45 K11E80 BDN Mods for much faster packet reading. ; Sped file get up by about 35% for RSTS ; 24 26-Nov-84 11:46:53 K11E80 BDN Fix a UU.TRM call for RSTS T9.0-07. ; 24 09-Nov-84 15:35:17 K11TSX BDN Creation from NED RHODE'S modifications ; to K11RTT for TSX+. Note that this one ; I can never test as I do not use TSX. ; 24 09-Nov-84 15:35:05 K11DSP BDN Creation. ; 24 09-Nov-84 15:32:36 K11RT? BDN Virtual overlays for XM, K11DSP to call ; the correct terminal i/o overlay based ; on the exec and line type (ie, TSX+ and ; XC/XL). We can now AVOID generating a ; differnt save image for each config. ; 23 25-Oct-84 16:47:20 K11XXX BDN This is getting to be a drag having to ; generate six different versions of the ; Kermit-11 each time I change something. ; 23 25-Oct-84 16:46:01 K11CON BDN Removed break sending code to specific ; executive support modules. ; 23 25-Oct-84 16:45:36 K11PRT BDN Real break sending for the PRO/RT11 ; 23 25-Oct-84 16:45:11 K11ST1 BDN SET REPEAT ON/OFF ; 23 25-Oct-84 16:44:52 K11PAK BDN Repeat count prefixing added. ; 23 21-Oct-84 16:37:57 K11??? BDN Got sick of working on PRO/RT11. ; 23 21-Oct-84 16:38:36 K11CMD BDN Moved printing of banner. ; 23 21-Oct-84 16:37:16 K11REC BDN Added error logging and got all state ; switches parameterized. ; 23 21-Oct-84 16:36:51 K11CVT BDN Added new filetypes for binary mode. ; 23 16-Oct-84 15:32:31 K11CM1 BDN Removed number of commands from K11CMD ; to save space for PRO/RT11 version. ; 23 15-Oct-84 13:52:09 K11RT? BDN Fixed all the .FETCH stuff ; 23 15-Oct-84 13:39:22 K11ST1 BDN Creation, split K11STT in half for RT11 ; 23 15-Oct-84 13:39:22 K11ST0 BDN Creation, split K11STT in half for RT11 ; 23 15-Oct-84 13:39:05 K11CMD BDN Moved C$SET back in ; 23 14-Oct-84 16:01:22 K11PRT BDN New module for XC port communications ; with PRO/RT11 version 5.1 ; 23 14-Oct-84 15:20:13 K11SEN BDN Creation, split receive and send state ; K11REC out from K11PAK to save space for the ; PRO/RT11 version of Kermit. ; 22 20-Aug-84 14:51:05 K11M41 BDN Mods for P/OS ; 22 15-Aug-84 09:15:32 K11M41 BDN Slave the connect line at SET LINE in ; routine ASSDEV (restored @ exit). Also ; add RPOI$S call to ...BYE for generic ; logout from server. ; 22 14-Aug-84 10:24:23 K11RTU BDN Added code for ASCTIM for RT11 Kermit. ; 22 14-Aug-84 10K11CMDMAC[.050032]K11CMD.MAC[.050032]    X14|H [4;Ik(&'( k ߫H&P` \RrPP2PPzPP{PPPPP2P~\$\\TD 0D \~ hi) +\ ^( n ^( np\^txY\^ˀ\!kVk<\F˰<˴ˬ\VVkˤ1`@lP ABCDEFGHIJKLMNOPQRSTUVWXYZ$.?0123456789<@<SЬTЬ UQS>?\\\\\\\\\`:#@'="\abcdefghi\\\\\\\jklmnopqr\\\\\\\~stuvwxyz\\\\\\\\\\\\\\\\\\\\\\{ABCDEFGHI\\\\\\}JKLMNOPQR\\\\\\\\STUVWXYZ\\\\\\0123456789\\\\\  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ABCDEFGHIJKLMNOPQRSTUVWXYZ{|}~@ggh<i|o<m<4p<p<k|Zn<l fr rwx<x<x<x޺<w@]@@fjnr]Ze@@|> | |v<H|  |  |xz|  |zt f r   < &^ @&@'*/V,"?Lh:hmBmz|z{x`y~|fN|@@|@͂|@ ݃ƃ<ns<|Ŏ |️|ep|u|-@率|<ᄇ2ֻr||ZRM | ntB|xyvZw|J=|R>|J? nnaa|bddfT for slaved terminal re M+ 2.1 ; and RSX v4.1 kits (curse you, K. Olsen). ; The 'new' versions of M+ and M disable ; typeahead for slaved lines unless the ; device is attached (?). Rather odd (?) ; 17 11-Jun-84 11:21:51 K11CVT BDN Add code to decide if a file is binary ; based on the filetype (ala .SAV, .BAC..) ; 17 10-Jun-84 16:44:50 K11RTT BDN Reduce tt read overhead for RT11 version ; K11RT4 BDN Dummy out K11LCL for RT11 to save space. ; K11RT4 BDN Timing bug in file open routine (?) ; K11RT4 Fix overlay error (K11ATR with K11SUB). ; 16 28-May-84 15:55:08 K11PAK BDN Insure that 'BUFEMP' does not try to CTL ; characters that could not have been set. ; Defensive response to the CPM Kermit 3.9 ; which ALWAYS sends ampersands over with ; the CTL quote, '#'. Note: 20KERMIT does ; this also. Fix should be in CPM Kermit, ; but it's simple to fix at this end. ; 16 28-May-84 09:10:19 K11CMD BDN Fix call to TTYRST for Kermit-11/RT ; 16 28-May-84 09:09:40 K11RTT BDN Kermit-11 now runs under the FB moniter ; for Rt11 version 5 with MT support. ; 16 28-May-84 09:08:47 Version 3.0.051 of VMS Kermit fixed the ; above problem of ACK length. ; 16 25-May-84 15:40:35 K11PAK BDN Problem with VMSKERIT not liking 10 char ; acks for 'S' packets, changed ACK packet ; size to 11 for the time being until the ; problem can be isolated. ; 16 25-May-84 15:39:26 K11STT BDN Moved command definitions for the 'SET' ; command to K11COM.MAC to save space. ; 16 25-May-84 12:18:08 K11DEB BDN Added 'DISPLAY globalsym' command. This ; prints out values of variables in module ; K11DAT.MAC for debugging purposes. ; 16 21-May-84 17:01:56 K11PAK BDN Don't retry until MAXTRY the SINFO ('I') ; packet since older Kermit's will not be ; able to understand 'I' packets. The old ; Kermits will ALWAYS send NAKS for SINFO. ; 16 18-May-84 10:29:02 K11SER BDN The code for response to an 'R' packet ; was sending the RMS error text after the ; routine GETNXT already sent error packet ; 16 14-May-84 09:38:50 K11CON BDN Check for errors from the qio's for RSX. ; In particular, catch the IE.DNR in case ; the carrier drops. ; 15 08-May-84 11:15:35 K11PAK BDN Insure R0 cleared in BUFEMP in case the ; the data packet was null. ; 15 06-May-84 11:33:56 K11PAK BDN Moved the ACK for the EOF packet to be ; send AFTER the output file is closed. An ; occasional RSX problem in that the BREAK ; packet was lost due to timing required ; this mod, though if the line is set up ; properly this would not be a problem. ; 15 06-May-84 11:33:38 K11RMS BDN Increased record buffersize to 160 ; 15 04-May-84 13:56:21 K11M41 BDN Fixed read timeouts in RBD's version of ; BINREA. Also hooked BINREA into CANTYP. ; 15 03-May-84 10:29:22 K11E80 BDN Added UU.SPL stuff for the PRINT command ; K11M41 Dummy support for it on RSX since PRINT$ ; macro needs FCS, not RMS, support. Will ; check RMS out or else SPAWN a PRINT cmd. ; 15 03-May-84 10:25:46 K11M41 BDN Fixed the faking of BREAK for RSX. Pass ; K11CON a LUN to use for the set speed QIO. ; 15 02-May-84 11:03:57 K11RMS BDN Found out that either INIDM from SYSLIB ; or the GSA code from the RMS v2 kit will ; fail if th e task size is exactly on a 1 ; KW boundary. In this case the high limit ; was 113777, causing $INIDM to crash at ; startup. ; 15 01-May-84 11:41:49 K11ATR BDN Added support for attribute packets. ; Allow auto determination of binary mode. ; Support for getting the IFAB data will ; only work between like Kermits. ; Added SET ATTRIBUTES OFF command to dis- ; able any attribute sending even if the ; other Kermit's CAPAS field indicates the ; support of it (ie, handle incompatible ; protocal versions or bugs) ; 14 18-Apr-84 10:41:34 K11RMS BDN Added 'inited' flag for lun being active ; K11CMDMAC[.050032]K11CMD.MAC[.050032]    X14|H [4;Ik(&'( k ߫H&P` \RrPP2PPzPP{PPPPP2P~\$\\TD 0D \~ hi) +\ ^( n ^( np\^txY\^ˀ\!kVk<\F˰<˴ˬ\VVkˤ1`@lP ABCDEFGHIJKLMNOPQRSTUVWXYZ$.?0123456789<@<SЬTЬ UQS>?\\\\\\\\\`:#@'="\abcdefghi\\\\\\\jklmnopqr\\\\\\\~stuvwxyz\\\\\\\\\\\\\\\\\\\\\\{ABCDEFGHI\\\\\\}JKLMNOPQR\\\\\\\\STUVWXYZ\\\\\\0123456789\\\\\  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ABCDEFGHIJKLMNOPQRSTUVWXYZ{|}~@ggh<i|o<m<4p<p<k|Zn<l fr rwx<x<x<x޺<w@]@@fjnr]Ze@@|> | |v<H|  |  |xz|  |zt f r   < &^ @&@'*/V,"?Lh:hmBmz|z{x`y~|fN|@@|@͂|@ ݃ƃ<ns<|Ŏ |️|ep|u|-@率|<ᄇ2ֻr||ZRM | ntB|xyvZw|J=|R>|J? nnaa|bddftion FU$DIR is <> 0 (see K11RMS.MAC) ; ; 12 14-Mar-84 10:49:37 K11E80 BDN Don't set 8BIT mode for the cpu console ; if we are running Kermit from it as a ; local Kermit dialing out (RSTS/E only). ; 12 14-Mar-84 10:45:39 K11CON BDN Added 'BIC #^C177,R1' in front of both ; of the 'CMPB R1,CONESC' to fix problem ; using Kermit's connect command from the ; console (TT00: or KB0:) ; 12 08-Mar-84 12:33:59 K11CMD BDN Added default of '.CMD' for TAKE ; 12 08-Mar-84 11:56:14 K11CMD BDN Move 'remlst' and 'cmdlst' into K11COM ; which is overlayed in the ERROR segment. ; Added calls to LOACMD and LOAREM to get ; the overlay with K11COM resident and to ; return a pointer to the command list. It ; saves about 3000 (8) bytes in task size. ; Note that this does not sit well with ; what $AUTO likes to do. ; If it causes a problem, put K11COM back ; into the root. ; Also had to make all RM$xxx epts in the ; module K11CMD global. ; 12 07-Mar-84 12:28:16 K11TRA BDN Added routine to 'brute force' a file to ; a remote line. Needed it to get the new ; (and not yet done) RT11 version onto the ; RT11 system being used for testing which ; is, would you believe, a real PDT150. ; 12 06-Mar-84 16:05:42 K11CMD BDN Mods to override auotmatic use of local ; terminal name if we're running in server ; mode and the user did a SET LINE TTnn: ; 11 05-Mar-84 10:22:48 Sent version 2.11 to Columbia and DEC. ; Did NOT include Bob Denny's RSX mods. ; ; 11 02-Mar-84 11:27:22 K11CMD BDN Modified init stuff to look for the init ; file KERMIT.INI in SY: then if not there ; to try LB:[1,2], SY:[1,2] and KERMIT: ; ; ; The following mods were done by: ; Bob Denny ; Alisa Systems, Inc. ; Pasadena, Ca ; ; 10 xx-Mar-84 xx:xx:xx K11M41 Bob also rewrote much of the RSX i/o ; support and wrote the connect code for ; RSX using asynch qios. ; 10 07-mar-84 14:47:00 K11CPY Close input file if $create failed. ; ; 10 05-Mar-84 15:47:30 K11CPY Remove defaulting to SY: so Decnet will ; work with systems that don't understand ; SY: ; 10 04-Mar-84 02:55:47 K11RMS Many small changes to allow DECNET (DAP) ; remote file access. See comments in ; K11RMS.MAC ; 10 04-Mar-84 01:10:03 K11M41 Remove FCS style filename parsing and ; allow DAp remote file specifications. ; 10 03-Mar-84 20:44:35 DAP11S.ODL Created this for sequential-only DAP ; support RMS. General purpose, though. ; 10 03-Mar-84 20:41:10 K11DAP.ODL Add new odl for Decnet (DAP) remote file ; support for RSX11M. ; 10 03-Mar-84 20:34:18 K11RSX.ODL Remove FCS parsing factor ; ; ; The following mods were done by: ; Brian Nelson ; Change Software, Inc. ; Toledo, Ohio ; ; 10 17-Feb-84 15:08:05 K11CMD BDN Did some trial stuff on talking to IBM ; mainframes, but the CMS Kermit makes ; things difficult as it can't time out. ; Added Set Handshake and show for it. Not ; yet done with handshake garbage. ; 10 17-Feb-84 15:07:14 K11PAK BDN Mods for doing ^X and ^Z things. Also ; affected K11M41 and K11E80. ; 09 10-Feb-84 12:25:17 K11M41 BDN Add HANGUP via IO.HNG qio, added code to ; spawn MCR SET /SPEED=TTnn:xxxx:xxxx if ; the SF.SMC call to change speed fails ; with an IE.PRI error, also changed the ; cli for SPWN$S to CLI... from MCR... ; Also use MCR spawn for disabling echo. ; 08 09-Feb-84 21:33:55 K11RSX.ODL Overlayed CSI1, CSI2 and PARSE which are ; used to get the simple filename.ext from ; the RMS11 expanded name string. ; 07 09-Feb-84 09:20:34 K11E80 BDN Try to anticipate the DHV11 q bus inter- ; face for showing and setting speed. No ; changes needed to K11M41 for rsx. ; 07 08-Feb-84 15:19:58 K11SER BDN Force mode to be remote if we are to run ; as a server. Not really needed, but what ; about doing a SET LINE and then SERVER ? ; 06 06-Feb-84 10:34:04 K11PAK BDN Added SETTMO tK11CMDMAC[.050032]K11CMD.MAC[.050032]    X14|H [4;Ik(&'( k ߫H&P` \RrPP2PPzPP{PPPPP2P~\$\\TD 0D \~ hi) +\ ^( n ^( np\^txY\^ˀ\!kVk<\F˰<˴ˬ\VVkˤ1`@lP ABCDEFGHIJKLMNOPQRSTUVWXYZ$.?0123456789<@<SЬTЬ UQS>?\\\\\\\\\`:#@'="\abcdefghi\\\\\\\jklmnopqr\\\\\\\~stuvwxyz\\\\\\\\\\\\\\\\\\\\\\{ABCDEFGHI\\\\\\}JKLMNOPQR\\\\\\\\STUVWXYZ\\\\\\0123456789\\\\\  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ABCDEFGHIJKLMNOPQRSTUVWXYZ{|}~@ggh<i|o<m<4p<p<k|Zn<l fr rwx<x<x<x޺<w@]@@fjnr]Ze@@|> | |v<H|  |  |xz|  |zt f r   < &^ @&@'*/V,"?Lh:hmBmz|z{x`y~|fN|@@|@͂|@ ݃ƃ<ns<|Ŏ |️|ep|u|-@率|<ᄇ2ֻr||ZRM | ntB|xyvZw|J=|R>|J? nnaa|bddf1CMD BDN Added REMOTE, SPACE and REMOTE SPACE ; commands. Support added to K11E80 and ; K11SER for generic U command. ; 02 17-Jan-84 K11CMD BDN Added commands NOTE and COMMENT for ; echoing text from indirect files. ; 02 17-Jan-84 K11CMD BDN Allow open for KERMIT.INI ; 02 17-Jan-84 K11PAK BDN Allow 12 bit and CRC-CCITT Checksums ; The user should always set the checksum ; type for both KERMITS. ; 02 16-Jan-84 K11CMD BDN Allow underscore and digits in command ; names. ; 02 16-Jan-84 K11PAK BDN Redo checksum processing to accomadate ; 12 bit and CRC types. ; 02 16-Jan-84 K11CMD BDN Add Set Block-Check-Type and SHOW BLOCK ; 02 13-Jan-84 K11CMD BDN Moved C$HELP to module K11HLP ; 02 13-Jan-84 K11M41 BDN More rsxm/m+ code added ; 02 13-Jan-84 K11CMD BDN Added showing speed for SHOW LINE ; 02 13-Jan-84 K11CMD BDN Added TAKE and @ commands ; 02 12-Jan-84 K11PAK BDN Fix checking for X , Z in ACK for Sdata ; 02 11-Jan-84 K11CMD BDN Added RENAME command ; 02 11-Jan-84 K11RMS BDN Added RMS rename ; 01 08-Jan-84 K11PAK BDN Fix .asicz for ERROR: SPACK ; 01 08-Jan-84 K11CMD BDN Added call to XINIT for initialization ; based on the operating system. ; 01 08-Jan-84 K11PAK BDN Change timeout to MYTIME from MAXTIME ; if remote's SINIT packet had a value of ; zero for the timeout (CMS kermit?) ; 01 08-Jan-84 K11CMD BDN fix SET PARITY .sbttl define macros and things we want for KERMIT-11 .include /IN:K11MAC.MAC/ .include /IN:K11CDF.MAC/ .iif ndf, k11inc, .error ; INCLUDE for IN:K11MAC.MAC failed .macro $NAME junk .endm $NAME .psect $code cc$max == 2 .enabl gbl .sbttl the main program code .enabl lsb ; For I/D space kermit::message tst do$ver ; /41/ Always print version #? beq 5$ ; /41/ No call sho$ve ; print version and edit number print #warn$ ; /49/ Warning messages 5$: call drpprv ; drop temp privs (for RSTS) clr cccnt ; clear control C count mov #stack ,sp ; initialize a large stack clr exstac ; /41/ Clear exit status now clr exstal ; /41/ Clear exit status now call kerini ; try to open SY:KERMIT.INI call binini ; 10$: calls setcc ,<#cctrap> ; command loop reading call drpprv ; insure no privs are up now mov argbuf ,argpnt ; insure arg pointer is reset call fixchk ; restore setted crc type clr cccnt ; no control C's call getcmd ; read and parse the command tst r0 ; but did it work out ? blt 70$ ; no jsr pc ,@cmdadr ; dispatch to the command cmpb jobtype ,#JOB$BAT ; /45/ Batch job today ? bne 11$ ; /45/ No tst status ; /45/ Status OK so far ? bne 14$ ; /45/ Batch and bad status, DIE 11$: tst exireq ; /41/ Server force an exit ? bne 15$ ; /41/ Yes, do it then tst logreq ; /41/ Logout from CONNECT? beq 90$ ; /41/ No 14$: call c$hang ; /41/ Yes, Send logout string and ; /41/ Hang the line up 15$: jmp c$exit ; /41/ Exit normally now ; Parse errors or EOF comes here 70$: cmp r0 ,#cmd$ex ; control Z typed bne 80$ ; no jmp c$exit ; yes, exit normally 80$: mov #-IE.ITS,exstac ; /41/ Assume inconsistent exit cmp r0 ,#cmd$ba ; invalid command ? bne 85$ ; no print #200$ ; yes, print out an error message br 90$ ; and go back for more 85$: cmp r0 ,#cmd$un ; /39/ not unique? bne 90$ ; /39/ no print #210$ ; /39/ yes 90$: tst exstac ; /41/ Take exit with STATUS now ? beq 100$ ; /41/ No tst cmdlun ; /41/ Indirect command file running? beq 100$ ; /41/ No, ignore the error calls close ,<#LUN.TA> ; /41/ Yes, abort the command file clr cmdlun ; /41/ No more indirect file active tst mcrind ; /41/ Were we running KER @Filename? beq 100$ ; /41/ No, drop to interactive mode jmp c$exit ; /41/ Yes, exit with STATUS please 100$: clr exstac ; /41/ Clear exit status br 10$ ; back to the command loop .save .psect $PDATA ,D 200$: .asciz /Unrecognized command/ 210$: .asciz /%Command not unique./?\\\\\\\\\`:#@'="\abcdefghi\\\\\\\jklmnopqr\\\\\\\~stuvwxyz\\\\\\\\\\\\\\\\\\\\\\{ABCDEFGHI\\\\\\}JKLMNOPQR\\\\\\\\STUVWXYZ\\\\\\0123456789\\\\\  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ABCDEFGHIJKLMNOPQRSTUVWXYZ{|}~@ggh<i|o<m<4p<p<k|Zn<l fr rwx<x<x<x޺<w@]@@fjnr]Ze@@|> | |v<H|  |  |xz|  |zt f r   < &^ @&@'*/V,"?Lh:hmBmz|z{x`y~|fN|@@|@͂|@ ݃ƃ<ns<|Ŏ |️|ep|u|-@率|<ᄇ2ֻr||ZRM | ntB|xyvZw|J=|R>|J? nnaa|bddfsbttl exit kermit-11 c$exit::call sd$off 10$: tst outopn beq 20$ calls close ,<#lun.ou> 20$: jmp exit global c$nop:: return ; a NO-OP command ??? .sbttl bye, finish and get rmtbye:: c$bye:: $name call ckremote ; must not be remote for this bcs 100$ ; we are remote, abort this call rembye ; tell a server to logout 100$: return ; back to command loop rmtfin:: c$fin:: $name call ckremote ; must not be remote for this bcs 100$ ; we are remote, abort this call remfin ; tell a server to exit 100$: return ; back to command loop .enabl lsb rmtget:: c$get:: $name call ckremote ; must not be remote for this bcs 100$ ; we are remote, abort this clrb asname ; /36/ assume no names call nextarg ; /36/ if two files present use last one tstb @r1 ; /36/ for new name (first file only) beq 10$ ; /36/ nothing present strcpy #asname ,r1 ; /36/ something there, copy it please clrb -(r1) ; /36/ get rid of last arg now 10$: calls tlog , ; /46/ Do any needed logical xlates calls remget , ; tell a server to get a file tst r0 ; success ? beq 100$ ; yes calls printm ,<#1,#gmsg> ; no inc status ; /45/ Failed br 110$ 100$: message ,CR 110$: message clrb asname ; /36/ always fix [as file] name to null return ; back to command loop .save .psect $PDATA ,D gmsg: .asciz /Get from server aborted/ .even .restore .dsabl lsb rmtspa::$name call remspa ; issue a space ('U') generic command 100$: return rmthlp::$name call remhlp ; issue a space ('U') generic command 100$: return rmthos::$name calls remhos , return rmtdir::$name calls remdir , ; issue a dir ('D') generic command return rmttyp::$name calls remtyp , ; issue a typ ('T') generic command return rmtwho::$name calls remwho , ; issue a who ('W') generic command return rmtdel::$name calls remera , ; issue a erase ('E') generic command return rmtcwd::$name ; Change Working Directory mov argbuf ,r1 ; check for optional password 10$: tstb @r1 ; find eos yet ? beq 30$ ; yes exit cmpb (r1)+ ,#40 ; look for a space bne 10$ ; nothing 20$: tstb @r1 ; null here ? beq 30$ ; yes, no password present calls remcwd , ; send password over also br 100$ ; and exit 30$: calls remcwd , ; send the command to the server 100$: return ; without any password trash rmtlgi::$name ; Login mov argbuf ,r1 ; check for optional password 10$: tstb @r1 ; find eos yet ? beq 30$ ; yes exit cmpb (r1)+ ,#40 ; look for a space bne 10$ ; nothing 20$: tstb @r1 ; null here ? beq 30$ ; yes, no password present clrb -1(r1) ; insert null over the calls remlgi , ; send password over also br 100$ ; and exit 30$: calls remlgi , ; send the command to the server 100$: return ; without any password trash rmtren::$name ; do a remote rename please call gettwo ; insure both arguments are here tst r0 ; but did that work out ok ? bne 100$ ; no, just exit then please calls remren ,; send a generic 'r' please 100$: return ; bye rmtcop::$name ; do a remote Kopy please call gettwo ; insure both arguments are here tst r0 ; but did that work out ok ? bne 100$ ; no, just exit then please calls remcop ,; send a generic 'K' please 100$: return ; bye ckremo: tst remote ; are we local or remote bne 100$ ; local, ok clc ; ok return ; bye 100$: message ,cr sec return global global global global .sbttl get the next command .enK11CMDMAC[.050032]K11CMD.MAC[.050032]    X14|H [4;Ik(&'( k ߫H&P` \RrPP2PPzPP{PPPPP2P~\$\\TD 0D \~ hi) +\ ^( n ^( np\^txY\^ˀ\!kVk<\F˰<˴ˬ\VVkˤ1`@lP ABCDEFGHIJKLMNOPQRSTUVWXYZ$.?0123456789<@<SЬTЬ UQS>?\\\\\\\\\`:#@'="\abcdefghi\\\\\\\jklmnopqr\\\\\\\~stuvwxyz\\\\\\\\\\\\\\\\\\\\\\{ABCDEFGHI\\\\\\}JKLMNOPQR\\\\\\\\STUVWXYZ\\\\\\0123456789\\\\\  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ABCDEFGHIJKLMNOPQRSTUVWXYZ{|}~@ggh<i|o<m<4p<p<k|Zn<l fr rwx<x<x<x޺<w@]@@fjnr]Ze@@|> | |v<H|  |  |xz|  |zt f r   < &^ @&@'*/V,"?Lh:hmBmz|z{x`y~|fN|@@|@͂|@ ݃ƃ<ns<|Ŏ |️|ep|u|-@率|<ᄇ2ֻr||ZRM | ntB|xyvZw|J=|R>|J? nnaa|bddft stream tst r0 ; and exit if it failed for whatever bne 120$ ; oops tst cccnt ; time to exit on control C ? bne 120$ ; yep calls cvt$$ ,; remove junk, convert to upcase tst r0 ; anything left ? beq 10$ ; no, reprompt and try again add cmdbuf ,r0 ; clrb @r0 ; .asciz call loacmd ; get the command list overlay calls getcm0 , ; search for the command mov r1 ,cmdadr ; store address of routine away mov r0 ,cmdnum ; store index of command away mov r0 ,r3 ; did we actually find a command ? bmi 110$ ; no call loacmd calls getcm1 , ; now get the rest of the commandline tst r0 ; or prompt for extra. Did it work bmi 110$ ; no 100$: mov cmdnum ,r0 110$: return 120$: mov #cmd$ex ,r0 return global .sbttl getcm1 check for additional input needed ; G E T C M 1 ; ; input: @r5 current command buffer ; 2(r5) command table address ; 4(r5) index of the current command ; ; output: r0 index of current command or < 0 for error ; argbuf any additional input or rest of the command line getcm1: save tst wasnul ; /45/ Was the command for ? beq 10$ ; /45/ No clr wasnul ; /45/ Not null anymore clr r0 ; /45/ Yes, return index 0 br 110$ ; /45/ Exit 10$: mov @r5 ,r1 scan #40 ,r1 ; look for a space that might delimit tst r0 ; the command name from an argument beq 30$ ; nothing there add r1 ,r0 ; point to the string after the space copyz r0,argbuf,#200 ; copy the command arg over please br 100$ ; and exit 30$: mov 4(r5) ,r3 ; get the command index mul #$listl*2,r3 ; if no arg given, see if one is needed add 2(r5) ,r3 ; add in base address of command table mov .cmdar(r3),r3 ; get the argument prompt now tstb @r3 ; anything there that is required ? beq 100$ ; no 40$: calls kbredi , ; read a command from the keyboard tst r0 ; and exit if it failed for whatever bne 90$ ; oops tst cccnt bne 90$ calls cvt$$ ,; remove junk, convert to upcase tst r0 ; anything left ? beq 40$ ; no, reprompt and try again mov r0 ,r1 add argbuf ,r1 clrb @r1 br 100$ 90$: mov #cmd$ab ,r0 br 110$ 100$: mov 4(r5) ,r0 110$: unsave return global .sbttl getcm0 find the command in the table ; input: @r5 command buffer ; 2(r5) first command descriptor block ; output: r0 command index ; r1 dispatch address ; ; errors: r0 -1 (CMD$BAD) unrecognized command ; r0 -4 (CMD$UN) not unique ; ; descriptor block: ; ; .word commandname text ; .word minimum length ; .word address of command itself ; .word required argument prompt or a null for nothing ; .word type of argument .enabl lsb ; /45/ getcm0::save clr wasnul ; /45/ Not NULL (ie, ?) anymore clr -(sp) ; /39/ temp mov @r5 ,r1 ; the passed command buffer strlen r1 ; get the command length mov r0 ,r3 ; error if nothing is there beq 110$ ; oops cmpb @r1 ,#'? ; /45/ Help desired today ? bne 9$ ; /45/ No mov 2(r5) ,r4 ; /45/ Yes, get start of list message ; /45/ A crlf 5$: mov .name(r4),r1 ; /45/ Anything to dump? beq 8$ ; /45/ No, exit print r1 ; /45/ The command text allowed print #300$ ; /45/ Move over mov .cmdar(r4),r1 ; /45/ Get address of prompt tstb @r1 ; /45/ Prompting text? beq 7$ ; /45/ No print .cmdar(r4) ; /45/ The prompt text next 7$: message ; /45/ A crlf add #$listl*2,r4 ; /45/ Jump to the next entry br 5$ ; /45/ Yes, dump it 8$: mov #nulcmd ,r1 ; /45/ No, return NULCMD mov sp ,wasnul ; /45/ Flag as having been NULL clr r0 ; /45/ No errors from GETCM0 br 200$ ; /45/ Exit please 9$: clr r2 ; length := 0 10$: scan (r1)+ ,#cmdch ; is this character ok in name? tst r0 ; find it in the list ? beq 20$ ; no, we have found enough inc r2 ; command name len and pointer sob r3 ,10$ ; next 20$: tst r2 ; anything useful in cmd line ble K11CMDMAC[.050032]K11CMD.MAC[.050032]    X14|H [4;Ik(&'( k ߫H&P` \RrPP2PPzPP{PPPPP2P~\$\\TD 0D \~ hi) +\ ^( n ^( np\^txY\^ˀ\!kVk<\F˰<˴ˬ\VVkˤ1`@lP ABCDEFGHIJKLMNOPQRSTUVWXYZ$.?0123456789<@<SЬTЬ UQS>?\\\\\\\\\`:#@'="\abcdefghi\\\\\\\jklmnopqr\\\\\\\~stuvwxyz\\\\\\\\\\\\\\\\\\\\\\{ABCDEFGHI\\\\\\}JKLMNOPQR\\\\\\\\STUVWXYZ\\\\\\0123456789\\\\\  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ABCDEFGHIJKLMNOPQRSTUVWXYZ{|}~@ggh<i|o<m<4p<p<k|Zn<l fr rwx<x<x<x޺<w@]@@fjnr]Ze@@|> | |v<H|  |  |xz|  |zt f r   < &^ @&@'*/V,"?Lh:hmBmz|z{x`y~|fN|@@|@͂|@ ݃ƃ<ns<|Ŏ |️|ep|u|-@率|<ᄇ2ֻr||ZRM | ntB|xyvZw|J=|R>|J? nnaa|bddf110$ ; No leading letters ???? mov 2(r5) ,r4 ; the list of edit commands clr r3 ; R3 will have the command # 30$: tst .name(r4) ; anything left in the command list beq 110$ ; no strlen .name(r4) ; get the length of the command name calls instr, <.name(r4),r0,@r5,r2> ; the next command? cmp r0 ,#1 ; /39/ find anything ? bne 35$ ; /39/ no mov r0 ,@sp ; /39/ save it 35$: cmpb r2 ,.minle(r4) ; check if command length is ok blo 40$ ; no, not enough for the command dec r0 ; if match = position 1 we have it beq 100$ ; then 'found the command' 40$: inc r3 ; commandnum := commandnum + 1 add #$listl*2,r4 ; cmdsaddr := succ( cmdsaddr) br 30$ 100$: mov r3 ,r0 ; return command index and exit mov .cmdad(r4),r1 ; return the command address also br 200$ 110$: mov #cmd$ba ,r0 ; bad command dec @sp ; /39/ command not unique? bne 120$ ; /39/ no mov #cmd$un ,r0 ; /39/ yes, say so 120$: br 200$ 200$: tst (sp)+ ; /39/ pop it unsave return .save .psect $PDATA ,D 300$: .asciz / / .even cmdch: .asciz /0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-@_./ .even .restore .dsabl lsb .sbttl cctrap the control C trap .enabl lsb cctrap::cmp cccnt ,#cc$max bhi 100$ calls setcc ,<#cctrap> inc cccnt return 100$: tst inserv beq 110$ call rstsrv 110$: tst infomsg ; /43/ beq 120$ ; /43/ message ,cr ; /43/ 120$: jmp c$exit global .dsabl lsb ; D I R E R $ ; ; called from DIRERR value macro .enabl lsb direr$::mov r0 ,-(sp) ; direrr will select whether or not mov 4(sp) ,r0 ; to call rms error or FIP (or DIR) beq 10$ ; error based on whether the error calls syserr , ; code is < 0 (implies RMS) or > 0 print #errtxt ; which implies either FIP (RSTS) message ; or a DIRECTIVE error (RSX). Thus 10$: mov (sp)+ ,r0 ; for RSX all error codes should be mov @sp ,2(sp) ; made > 0 for non RMS errors. tst (sp)+ ; error 0 is a no-op. return .dsabl lsb nextar::mov argbuf ,r1 10$: tstb @r1 beq 100$ cmpb (r1)+ ,#40 bne 10$ 100$: return nulcmd::clr r0 ; /45/ No errors return ; /45/ Exit .end kermit