Path: utzoo!utgpu!watserv1!watmath!att!emory!wuarchive!uunet!sparky!kent From: wht@n4hgf (Warren Tucker) Newsgroups: comp.sources.misc Subject: v16i024: ECU async comm package rev 3.0 manual, Part03/03 Message-ID: <1991Jan5.062536.3978@sparky.IMD.Sterling.COM> Date: 5 Jan 91 06:25:36 GMT Sender: kent@sparky.IMD.Sterling.COM (Kent Landfield) Organization: Sterling Software, IMD Lines: 649 Approved: kent@sparky.imd.sterling.com X-Checksum-Snefru: b52d3155 3f20e92e 1c45718d 88d74d25 Submitted-by: Warren Tucker Posting-number: Volume 16, Issue 24 Archive-name: ecuman3/part03 ---- Cut Here and feed the following to sh ---- #!/bin/sh # this is ecuman3.03 (part 3 of ecuman3) # do not concatenate these parts, unpack them in order with /bin/sh # file doc/ecu.man continued # if touch 2>&1 | fgrep 'amc' > /dev/null then TOUCH=touch else TOUCH=true fi if test ! -r _shar_seq_.tmp; then echo 'Please unpack part 1 first!' exit 1 fi (read Scheck if test "$Scheck" != 3; then echo Please unpack part "$Scheck" next! exit 1 else exit 0 fi ) < _shar_seq_.tmp || exit 1 echo 'x - continuing file doc/ecu.man' sed 's/^X//' << 'SHAR_EOF' >> 'doc/ecu.man' && X 0030 61 63 6B | ack | X X hexdump %left($s0,9) X 0000 54 68 65 20 71 75 69 63 6B | The quick | X X hexdump -ts 'Example hex dump' %left($s0,9) X Example hex dump X 0000 54 68 65 20 71 75 69 63 6B | The quick | X X hexdump -s %left($s0,9) X 0000 54 68 65 20 71 75 69 63 6B | The quick | X X X X 5.2.36 home X X usage: home X X This command homes the video cursor. X X X 5.2.37 icolor X X usage: icolor X X This command sets the normal and reverse foreground and background X colors according to , an integer value in the format as that X returned by the %colors integer function. X X This command is provided primarily to be able to save the color state, X modify it temporarily and then restore it. X X Example: X X mkvar $icolor_save; $icolor_save = %colors X color red; echo 'Connection seems to be dead' X icolor $icolor_save # restore previous colors X X X X 5.2.38 ifi X X X X X X Public Domain by wht@n4hgf 12/26/90 X X X X X X X X ECU Technical Description 65 X X X X usage: ifi X ifi X X ifi X { X any kind or number of statements X } X X X This command selectively executes one or more statements based on a test X of two integer quantities. See the description of the break, continue, X and else commmands for examples of how the command is used. X X X 5.2.39 ifs X X usage: ifs X ifs X X ifs X { X any kind or number of statements X } X X X This command selectively executes one or more statements based on a test X of two string values. See the description of the break, continue, and X else commmands and many other examples throughout the document, for X examples of how the command is used. X X X 5.2.40 lbreak X X usage: lbreak X X This command transmits a break to the remote system. X X X 5.2.41 lgets X X X usage: lgets [-er] [] X X -e echo received characters to screen X -r raw read (retain carriage returns) X X X This command reads a string from the attached communications line. X is the number of tenths of seconds before timing out waiting X for the first character to be received. is the number of X tenths of seconds before timing out on later characters. is X X X X Public Domain by wht@n4hgf 12/26/90 X X X X X X X X ECU Technical Description 66 X X X X an optional argument, which if received, immediately terminates the X read. Integer variable $i0 is set to the count of characters received. X X If the specified string variable is filled with characters before the X has been encountered or before a timeout occurs, then the X command returns with $i0 set to the maximum size of the variable. Refer X to the section on string variables above and the section describing the X mkvar command below for information on the size of string variables. X X X 5.2.42 insline X X usage: insline X X This command inserts a line onto the video screen at the current line. X X X 5.2.43 logevent X X usage: logevent X X X This command writes a log item to ~/.ecu/log. X X X Example: X X $s0='/tmp/alm.log' X log 'appending alarm info to '+$s0 X X writes: X 10-02-1989-17:39-01261-PROC appending alarm info to /tmp/alm.log X X assuming the transmitter process pid is 1261 and you are living in 1989. X X 5.2.44 lookfor X X lookfor [-e] [quiet | ] [] X X -e echo to screen while "looking" X X This command is used to read from the attached commuications line until X one of two user-specified conditions occurs. X X The 'quiet' option waits for the line to become quiet for the number of X tenths of seconds specified by . X X The other option reads the line until is read from the line or X until tenths of seconds elapses. With this option, X integer variable $i0 is set to 1 if is found within the timeout X period or 0 if not. X X X X Public Domain by wht@n4hgf 12/26/90 X X X X X X X X ECU Technical Description 67 X X X X Examples: X X lookfor -e quiet 20 wait for quiet line for 2 secs X lookfor 'word:' 50 wait for 'word:' for up to 5 secs X X 5.2.45 mkvar X X usage: mkvar [$]i X mkvar [$]s() X X X This command creates one or more named (temporary) integer or string X variables. The variable type is determines by the first character of X the variable, which must be 'i' or 's'. The size of a string variable X must be specified via the argument. An optional '$' may be X supplies for neatness, but may be omitted if desired. X X X 5.2.45.1 Variable Names X X The names for created (named, temporary) variables consist of a dollar X sign ('$'), an 'i' for integer or 's' for string and up to fifteen X characters from the set [A-Za-z0-9_]. X X The first character after the 'i' or 's' in must be non-numeric. X '$sxyz' and '$s_3xyz' are legal, but '$s3xyz' is not (it would be X interpreted as '$s3' followed by the illegal command sequence 'xyz'). X X The space for integer and string variables are separate. It is X possible to have an integer variable named '$ixyz' and a string variable X named '$sxyz'. X X X 5.2.45.2 Variable Life and Scope X X The life and scope of created variables is for the duration of the X execution of the creating procedure. Procedures called by the creating X procedure (by 'do') can reference temporary variables declared by a X previous procedure. When created, integer variables are set to zero and X string variables are set to zero length. These features differ from X numbered variables which retain their scope and values at all times, X even when procedure execution terminates and ECU returns to interactive X mode. X X Variables may be created by the same name more than once. The latest X mkvar execution specifies the variable referenced. Thus if proc1 X declares '$ixx' and calls proc2 which also declares '$ixx', proc2's X variable is distinct from proc1's and disappears when proc2 terminates, X thus making proc1's available to it again, containing the same value as X it had at the time proc2 was called. X X X X X Public Domain by wht@n4hgf 12/26/90 X X X X X X X X ECU Technical Description 68 X X X X 5.2.45.3 String Variable Size X X The maximum value for is 5120. Regardless of the size specified X in the creation of a string variable, ECU will expand it's size as X necessary up to the 5120 character maximum. X X X Examples: X X mkvar i_count X mkvar $i_count X mkvar s20(20),s80(80),i_timeout,$i_colors X X X X 5.2.46 nap X usage: nap X nap -m X X This command suspends procedure execution for tenths of seconds if X -m is not specified. If -m is used, execution is suspended for X milliseconds. Note: the actual period execution is suspended depends, X as usual, on the scheduling load of the system. For small -m values, be X aware that the granularity of the nap duration is set by the system, 20 X milliseconds for XENIX 286 and 386, 10 milliseconds for UNIX. X X If you need to know the frequency of the system clock, something like X X $i0 = %stoi(%getenv("HZ")) X X will obatin the value for you (provided HZ is in the process' X environment). X X X X Examples: X X nap 30 X nap $i0*$i2 X nap -m 50 X X X X 5.2.47 parity X X usage: parity [even | odd | none] X parity X X X This command sets the parity for the attached communications line. If X is supplied, the first character must be 'e', 'o' or 'n'. X X X X Public Domain by wht@n4hgf 12/26/90 X X X X X X X X ECU Technical Description 69 X X X X Uppercase equivalents are also accepted. X X X Examples: X X parity even X parity 'e' X parity 'Even now as we speak' X X X X 5.2.48 pclose X usage: pclose X X This command should be issued when a command started by the interactive X popen commandf completes. X X X 5.2.49 plog X X usage: plog X plog X plog off X X X This command controls logging to a file of the screen output during X procedure execution. With no argument, the command displays the status X of logging. specifies a log file pathname, while the 'off' X argument turns logging off. X X If procedure execution terminates due to an error, procedure logging is X turned off. However, if procedure execution terminates normally while X logging is active, erratic and unpredictable portions of interactive X mode screen output will continue to be logged to the current log file. X X The interactive mode command plog may also be used to control procedure X logging. X X Example: X X mkvar s_logname(128) X $s_logname = %dir+'logname' X plog $s_logname X echo 'Test' X plog off;cd 'somewhere_else';plog $s_logname X echo 'Test' X X X X X X X X X Public Domain by wht@n4hgf 12/26/90 X X X X X X X X ECU Technical Description 70 X X X X 5.2.50 popen X usage: popen [-switches] X X This command executes a shell command defined by the string argument X and associates it with the user-chosen file number X (which must be an integer value between 0 and 4, inclusive). X X The argument switches govern whether the command is to receive input X from ECU or output to ECU and must be chosen from this list: X X -r The command will output to ECU. X X -w The command will receive input from ECU. X X The switches parameter may be omitted; in such cases, the file is opened X as though '-r' had been supplied. However, if procedure tracing is X enabled (see the description of the interactive and procedure command X ptrace), a warning message will be issued. X X The command sets $i0 = 0 if successful, else to the errno from the X associated system call (refer to the %errstr string function and/or X /usr/include/sys/errno.h). X X Example: X X popen 0 -r 'ls -l *.log' X popen 1 -w 'cat | sort > /tmp/sorted' X X X X X 5.2.51 prompt X usage: prompt X X This command allows selection of an alternate prompt to the interactive X mode HOME command trigger. Refer to the section titled "ECUPROMPT" for X more information on the interactive mode prompt. X X Note: the interactive and procedure hangup commands both cause the X default prompt to be reestablished. X X X Example: X X prompt %rname+' >' use remote name in prompt X X X X 5.2.52 ptrace X X X X X X Public Domain by wht@n4hgf 12/26/90 X X X X X X X X ECU Technical Description 71 X X X X usage: ptrace [ | off ] X X X This command controls procedure execution tracing. Trace output is X written to the screen and varys in its nature depending upon the command X being traced. Specifically, any change to a string or integer variable X is noted. If tracing is enabled, the output will also be written to any X active procedure log file (see the plog interactive and procedure X commands). X X X 5.2.53 putf X X Not yet implemented. X X X 5.2.54 return X usage: return [] X X This command serves two functions: to return from a gosub to or return X from a procedure execution. X X If no gosub is active, return causes the currently executing procedure X to terminate, returning either to a calling procedure or to the X interactive mode. If is supplied and it's value is nonzero, then X all procedure execution is terminated and the integer status is printed X on the screen along with the name of the executing procedure. X X If a gosub is active, return or return 0 causes control to return to the X statement immediately following the gosub which invoked the subroutine. X If is supplied and it's value is nonzero, then all procedure X execution is terminated and the integer status is printed on the screen X along with the name of the executing procedure. X X It is not possible to terminate a procedure with normal status from X within a subroutine. X X X X X X X X X X X X X X X X X X X Public Domain by wht@n4hgf 12/26/90 X X X X X X X X ECU Technical Description 72 X X X X Example: X X #--------------------- X # gosub.ep X #--------------------- X echo 'main'; gosub SUB; echo 'back to main' X return X X SUB X echo 'sub' X gosub SUB2 X echo 'back to sub' X return X X X SUB2 X echo 'sub2' X return X X X X X 5.2.55 rk X usage: rk [-a] X X This command invokes the Kermit file receive protocol. If switch '-a' X is omitted, the received files are stored as received; otherwise X carriage return/linefeed pairs are converted to newlines. The remote X sender must have been started prior the the execution of this command. X X X 5.2.56 rname X usage: rname X X Normally, the %rname string function returns the same string as the X logical dialing directory entry. This command allows the default value X to be overridden with a user-selected value (63-character maximum). X X This feature is useful in situations where one system is initially X dialed, but a connection is made to yet another system from the dialed X system via networking. X X X 5.2.57 rs X usage: rs X X This command invokes the SEAlink file receive protocol. There is no X provision in the SEAlink protocol to convert carriage return/linefeed X pairs to newlines, so the received files are stored as received. The X remote sender must have been started prior the the execution of this X command. X X X X Public Domain by wht@n4hgf 12/26/90 X X X X X X X X ECU Technical Description 73 X X X X 5.2.58 rtscts X usage: rtscts [ off| on | no | yes | 0 | 1 | 2 | 3 ] X X This command control RTS/CTS hardware flow control, which may or may not X work with your serial driver. What the command does is to manipulate X the RTSFLOW and CTSFLOW bits of the termio c_cflag word (see termio(S)). X X ******************** X ERROR:(0)input line 3773:DS:missing DE X ******************** X******************** XERROR:(0)input line 3773:DS:missing DE X******************** XProcessing has been terminated. SHAR_EOF echo 'File doc/ecu.man is complete' && $TOUCH -am 1226042690 'doc/ecu.man' && chmod 0644 doc/ecu.man || echo 'restore of doc/ecu.man failed' Wc_c="`wc -c < 'doc/ecu.man'`" test 119841 -eq "$Wc_c" || echo 'doc/ecu.man: original size 119841, current size' "$Wc_c" rm -f _shar_seq_.tmp echo You have unpacked the last part exit 0 -------------------------------------------------------------------- Warren Tucker, TuckerWare emory!n4hgf!wht or wht@n4hgf.Mt-Park.GA.US Hacker Extraordinaire d' async PADs, pods, proteins and protocols exit 0 # Just in case... -- Kent Landfield INTERNET: kent@sparky.IMD.Sterling.COM Sterling Software, IMD UUCP: uunet!sparky!kent Phone: (402) 291-8300 FAX: (402) 291-4362 Please send comp.sources.misc-related mail to kent@uunet.uu.net.