home *** CD-ROM | disk | FTP | other *** search
Text File | 1991-09-04 | 51.0 KB | 1,530 lines |
- Newsgroups: comp.sources.misc
- From: Warren Tucker <wht@n4hgf.GA.US>
- Subject: v22i090: ecu - ECU async comm package rev 3.10, Patch05a/5
- Message-ID: <csm-v22i090=ecu.110028@sparky.imd.sterling.com>
- X-Md4-Signature: 3220e18692f97d844a5ffa8f68f5eb27
- Date: Wed, 4 Sep 1991 16:01:01 GMT
- Approved: kent@sparky.imd.sterling.com
-
- Submitted-by: Warren Tucker <wht@n4hgf.GA.US>
- Posting-number: Volume 22, Issue 90
- Archive-name: ecu/patch05a
- Environment: SCO, XENIX, ISC, SUNOS4.1, SYSVR4
- Patch-To: ecu: Volume 21, Issue 53-89
-
- This is patch 5 to ECU, enhancing all versions of ECU. Particular
- attention has been paid to:
- 1. qualifying Sun gcc usage and clearing up 386 gcc topics
- 2. addressing yet more nap/select problems
- 3. supplying memmove replacements or additions for i386 systems
- for those who want to experiment with them (not documented; for
- hacking only)
- 4. better handling sun and SVR4 environments (HDB Devices location, etc.,
- using termios on Sun in lieu of termio)
- 5. aiding local configuration requirements with config.local Makefile
- prefix and _rc.ep enhancement.
- 6. supplying fasi/fas.h and ckermit/ckutio-ecu.dif (not in original
- distribution as they were supposed to be)
-
- To apply, unshar all 5 parts, then
- a. patch -p < PATCH5.01
- b. read README.P5 and reread README
- c. play with timetest/ programs (if you are on a 386/486 system)
- d. perhaps build a config.local if you find something in steps b or c
- e. Configure
- f. make
- g. make install
-
- #!/bin/sh
- # This is ecu/patch05, a shell archive (shar 3.46)
- # made 09/04/1991 06:17 UTC by wht@n4hgf.Mt-Park.GA.US
- # Source directory /export/home/wht/src/ecu
- #
- # existing files will NOT be overwritten unless -c is specified
- #
- # This is part 1 of a multipart archive
- # do not concatenate these parts, unpack them in order with /bin/sh
- #
- # This shar contains:
- # length mode name
- # ------ ---------- ------------------------------------------
- # 6132 -rw-rw-r-- README.P5
- # 157801 -rw-rw-r-- PATCH5.01
- # 21859 -rw-r--r-- fasi/fas.h
- # 2337 -rw-r--r-- ckermit/ckutio-ecu.dif
- # 1169 -rw-rw-r-- memmove/README
- # 1143 -rw-rw-r-- memmove/memmove.s
- # 1745 -rw-r--r-- memmove/memmove286.asm
- # 1587 -rw-r--r-- memmove/memmove386.asm
- # 304 -rw-rw-r-- timetest/Makefile
- # 2342 -rw-r--r-- timetest/naptest.c
- # 2312 -rw-r--r-- timetest/naptest2.c
- # 1469 -rw-r--r-- timetest/naptest3.c
- # 863 -rw-r--r-- timetest/seltest.c
- #
- if test -r _shar_seq_.tmp; then
- echo 'Must unpack archives in sequence!'
- echo Please unpack part `cat _shar_seq_.tmp` next
- exit 1
- fi
- # ============= README.P5 ==============
- if test -f 'README.P5' -a X"$1" != X"-c"; then
- echo 'x - skipping README.P5 (File already exists)'
- rm -f _shar_wnt_.tmp
- else
- > _shar_wnt_.tmp
- echo 'x - extracting README.P5 (Text)'
- sed 's/^X//' << 'SHAR_EOF' > 'README.P5' &&
- XREADME.P5 ECU 3.10 Patch 5 Wed Sep 4 00:41:23 EDT 1991
- X
- XThis describes patch 5 to ECU 3.15, bringing the program to
- Xversion 3.15.
- X
- XFiles in Patch 5:
- XREADME.P5
- XPATCH5.01
- Xfasi/fas.h
- Xckermit/ckutio-ecu.dif
- Xmemmove/README
- Xmemmove/memmove.s
- Xmemmove/memmove286.asm
- Xmemmove/memmove386.asm
- Xtimetest/Makefile
- Xtimetest/naptest.c
- Xtimetest/naptest2.c
- Xtimetest/naptest3.c
- Xtimetest/seltest.c
- X
- XFirst, a note of apology to Sun users. I used the -mm nroff macros
- Xto write the manuals. Sun provides -ms and -me, but not -mm.
- XI'm looking for some PD replacements, but haven't succeeded yet.
- XI'll be glad to mail an updated manual to anyone who asks. I'm
- Xalso looking for a friendly ftp site to hold updates, hence manuals.
- X
- X1. Improvements in the SVR4 port have been made, but now
- XSVR4 almost certainly means an AT&T/Intel/ISC 386 port,
- X ^^^
- Xsince we expect to find /usr/include/sys/at_ansi.h and
- X/usr/include/sys/sys/kd.h files for console color capability.
- X(Color is not yet supported on Sun -- only monochrome xterms
- Xand the console without color manipulation).
- X
- XIf you have trouble with compiling ecutty.c for SVR4 (complaints
- Xabout not finding either of these header files), temporarily remove the
- XSVR4 condition for inclusion of them and for using the CONS_GET code
- Xnear the bottom of the source.
- X
- X2. Many improvements were made in the area of system independence.
- XThe build procedure configures the location of HDB Devices,
- XDialcodes and Dialers files among the various environments:
- XSCO /usr/lib/uucp
- XISC /usr/lib/uucp
- XSun /etc/uucp
- XSVR4 /etc/uucp
- X
- X3. A new feature of Configure is the inclusion of local configuration
- Xin the Makefiles it builds. If you build a file named "config.local"
- Xin the base source directory, it's contents will be placed ahead of
- Xall other make statements in each Makefile.
- X
- XExample customization include:
- XCFLAGS_EXTRA = -Dwhatever
- XGCC_CFLAGS_EXTRA = -fsoft-float #just an example :-)
- XCC_CGLAGS_EXTRA = -p
- XSYMBOLIC = -g # if you want sdb/dbx/gdb symbols in programs
- XBINTIME = /bin/time # if you want stats on each make step
- XLDFLAGS_EXTRA = -ljuicier-malloc
- X
- XJudicious use of this may help you avoid changing Make.src files
- Xthus making patch complain about future patches, but
- X
- X4. A patch from Andrew Chernov that fell out of the last version
- Xwas reapplied: Many SCO-style dialer programs do not care
- Xwhat is in argument 0 (the command name) when they are executed,
- Xbut some do. Before this patch, the argument passed was "ECUdial"
- Xsince the gendial dialers *can* make use of it. This usage
- Xconflicted with some of Andrew's dialers which need the actual
- Xname passed. So, starting with this edition, if you invoke
- Xa dialer program, its complete pathname will appear in argv[0].
- XIf you want the old behavior, add a file to the base directory
- Xcalled config.local and place in it the line:
- X
- X CFLAGS_EXTRA = -DECUdial
- X
- X3. The usefulness of _rc.ep has been enhanced by adding the
- X'setline' procedure command. This command is only valid during the
- Xexecution of _rc.ep. It allows you to override the selection of
- Xa default line as if you had used the -l switch. In fact, using
- Xthe commabnd overrides -l.
- X
- XUsage: setline <filename>
- X
- XThis command is an exact analog of the -l command line switch.
- X<filename> is used on the setup screen (if it is presented)
- Xas the default filename. If you do not edit this name, ECU will
- Xattempt to open the line when you press End or ^D.
- X
- X<filename> has the format of a complete pathanme in /dev or simple
- Xtty name.
- X
- XExample:
- X setline '/dev/tty1a'
- X setline 'tty1a'
- X setline 'cua0'
- X
- X5. Similarly, using the 'baud' and 'parity' procedure commands in
- X_rc.ep serve as an exact analog of the -b, -e and -e command line switches.
- XUsing 'baud' and 'parity' in rc_ep override the equivalent
- Xcommand line switches.
- X
- X6. On the Sun, STREAMS termios is used in lieu of termio. The code
- Xused for draining the line output queue ("wait for all transmitted
- Xdata to be sent over the line") has been improved, making
- Xexpect-respond, file transfer and other highly interactive operations
- Xmore reliable.
- X
- X7. The following files normally found in a personal ~/.ecu
- Xdirectory may now have a systedm default in ECULIBDIR:
- X
- X colors
- X keys
- X nonansikeys
- X
- X8. Unreported bugs in the format of the keys and nonansikeys files have
- Xbben fixed. Specifically, whitespace and comments are allowed after keyset
- Xor terminal names.
- X
- X9. On ISC 2.2 systems, the console was left in standout or bold
- Xmode at exit from ECU. I believe this problem is now fixed.
- X
- X10. The GCC compilation flags for 386 versions have been updated to use
- X-fcall-used-bx rather than -fcall-used-{ax,bx,cs,dx].
- X
- XIt turns out the only problem ECU had with strenuously optimized GCC
- Xoptions was that SCO's memmove clobbers the bx register, which is
- Xsupposed to be reserved for use as a register variable by all
- Xcompilers, MSC or otherwise.
- X
- XIf you use the new memmove routines supplied with this patch, you may
- Xomit this switch as well. It is probably not worth fooling with any
- Xof that unless you are just interested in the problem.
- X
- X11. I forgot to include the version 4F kermit diff file. It's included
- Xin here.
- X
- X12. In patch 2, I reported nap() in SCO UNIX systems to be faulty in varying
- Xmanners depending on x in the 3.2.x version number. ISC 2.2.1 nap also
- Xmisbehaves in a similar manner.
- X
- XSCO very promptly supplied me with an /etc/conf/pack.d/kernel/os.o for
- Xrelinking the kernel which fixes the problem somewhat, but not
- Xcompletely. Watch this space. Some testing programs can be found in
- Xtimetest/ as of this patch.
- X
- X13. I've thought for some time SCO select might also be buggy. I finally
- Xwrote some test programs and proved it. SCO select may appear to work
- Xcorrectly for a few iterations, but rapidly degenerates into rounding
- Xall timeout specifications to the nearest second. Run timetest/seltest
- Xfor a visual feel of what's going on.
- X
- XThe #define WORKING_SELECT is now supploied by the Configure procedure
- Xfor systems that have a usable select. See the updated README file
- Xnote 3 and ecuutil.c Nap() for details.
- X
- X
- SHAR_EOF
- chmod 0664 README.P5 ||
- echo 'restore of README.P5 failed'
- Wc_c="`wc -c < 'README.P5'`"
- test 6132 -eq "$Wc_c" ||
- echo 'README.P5: original size 6132, current size' "$Wc_c"
- rm -f _shar_wnt_.tmp
- fi
- # ============= PATCH5.01 ==============
- if test -f 'PATCH5.01' -a X"$1" != X"-c"; then
- echo 'x - skipping PATCH5.01 (File already exists)'
- rm -f _shar_wnt_.tmp
- else
- > _shar_wnt_.tmp
- echo 'x - extracting PATCH5.01 (Text)'
- sed 's/^X//' << 'SHAR_EOF' > 'PATCH5.01' &&
- XPrereq: 14
- X*** /export/home/wht/src/ecu314/patchlevel.h Wed Sep 4 00:25:09 1991
- X--- patchlevel.h Sun Sep 1 03:14:07 1991
- X***************
- X*** 1 ****
- X! #define PATCHLEVEL 14
- X--- 1 ----
- X! #define PATCHLEVEL 15
- X*** /export/home/wht/src/ecu314/Make.src Wed Sep 4 00:25:03 1991
- X--- Make.src Tue Sep 3 23:50:25 1991
- X***************
- X*** 13,18 ****
- X--- 13,21 ----
- X # squirrel away the release copy first. See zgcc for the -p1 hack.
- X #--------------------------------------------------------------------
- X #+:EDITS:
- X+ #:09-03-1991-23:47-wht@n4hgf2-add timetest directory
- X+ #:09-02-1991-19:25-wht@n4hgf2-ckutio dif and fas.h left out of distribution
- X+ #:09-01-1991-16:22-wht@n4hgf2-generalize HDB config location
- X #:08-23-1991-13:35-wht@n4hgf-sun porting (3.13)
- X #:07-25-1991-12:55-wht@n4hgf-ECU release 3.10
- X #:04-21-1991-12:43-wht@n4hgf-convert to Make.src
- X***************
- X*** 25,32 ****
- X .SUFFIXES: .o .c .h .l
- X .c.o:; $(BINTIME) $(CC) -c $(CFLAGS) $*.c
- X
- X! ECUSHARNAME=ecu314
- X! MANSHARNAME=ecumar314
- X
- X SRC = \
- X bamboozle.c\
- X--- 28,35 ----
- X .SUFFIXES: .o .c .h .l
- X .c.o:; $(BINTIME) $(CC) -c $(CFLAGS) $*.c
- X
- X! ECUSHARNAME=ecu315
- X! MANSHARNAME=ecuman315
- X
- X SRC = \
- X bamboozle.c\
- X***************
- X*** 157,171 ****
- X bperr/bperr.c \
- X help/{*.[ch],ecuhelp.src} \
- X ecuungetty/*.[ch] \
- X! z/*.[ch]\
- X sea/{*.[ch],*.{doc,imp}} \
- X gendial/{install_dialer,*.[ch]} \
- X! fasi/{Makefile,Master,Node,PATCHLEVEL}\
- X! fasi/{README,README.FASI,RELEASENOTES}\
- X! fasi/{Space.c,System,digi-pc8.h,fas.c,idfasi}\
- X ecufriend/*.[ch] \
- X! mapkey/README mapkey/keys.usa.ecu\
- X xsel386/* \
- X doc/{*.txt,runoff} models/* zgcc mkoldproto.l'
- X
- X # fasi/{README,README.FASI,INSTALLATION,Inittab,Makefile,Makefile.ATT}\
- X--- 160,177 ----
- X bperr/bperr.c \
- X help/{*.[ch],ecuhelp.src} \
- X ecuungetty/*.[ch] \
- X! z/*.[ch] \
- X! ckermit/*.dif \
- X sea/{*.[ch],*.{doc,imp}} \
- X gendial/{install_dialer,*.[ch]} \
- X! fasi/{Makefile,Master,Node,PATCHLEVEL} \
- X! fasi/{README,README.FASI,RELEASENOTES} \
- X! fasi/{Space.c,System,digi-pc8.h,fas.c,fas.h,idfasi} \
- X ecufriend/*.[ch] \
- X! mapkey/README mapkey/keys.usa.ecu \
- X xsel386/* \
- X+ memmove/{README,*.{s,asm}} \
- X+ timetest/{Makefile,*.c} \
- X doc/{*.txt,runoff} models/* zgcc mkoldproto.l'
- X
- X # fasi/{README,README.FASI,INSTALLATION,Inittab,Makefile,Makefile.ATT}\
- X***************
- X*** 252,263 ****
- X cd z; make install
- X cd sea; make install
- X cd help; make install
- X! @if [ ! -f /usr/lib/uucp/Devices ]; then \
- X cp models/*.mi $(ECULIBDIR); \
- X echo "==> edit $(ECULIBDIR)/*.mi for your tty lines per ecu.man"; \
- X fi
- X
- X! shar.fls:
- X csh -c 'ls $(SHARFLS) | sort > shar.fls'
- X
- X # for shar 3.46 or later
- X--- 258,269 ----
- X cd z; make install
- X cd sea; make install
- X cd help; make install
- X! @if [ ! -f $(HDBFILES)/Devices ]; then \
- X cp models/*.mi $(ECULIBDIR); \
- X echo "==> edit $(ECULIBDIR)/*.mi for your tty lines per ecu.man"; \
- X fi
- X
- X! shar.fls: Makefile
- X csh -c 'ls $(SHARFLS) | sort > shar.fls'
- X
- X # for shar 3.46 or later
- X***************
- X*** 285,299 ****
- X
- X neat:
- X rm -f core Makefile.bak tags cscope.out config makedate.c makedate.o
- X! -rm -f *~ *# *.orig *.rej make.log a.out
- X rm -f makedirs kbdtest kbdtest3
- X rm -f bperr/bperr
- X cd help;make neat
- X cd z;make neat
- X cd sea;make neat
- X! if [ $(USE_ECUUNGETTY) = yes ]; then \
- X! cd ecuungetty;make neat; \
- X! fi
- X
- X clean: neat
- X rm -f $(OBJ)
- X--- 291,304 ----
- X
- X neat:
- X rm -f core Makefile.bak tags cscope.out config makedate.c makedate.o
- X! rm -f *~ *# *.orig *.rej make.log a.out
- X! rm -f */*~ */*# */*.orig */*.rej
- X rm -f makedirs kbdtest kbdtest3
- X rm -f bperr/bperr
- X cd help;make neat
- X cd z;make neat
- X cd sea;make neat
- X! cd ecuungetty;make neat
- X
- X clean: neat
- X rm -f $(OBJ)
- X***************
- X*** 300,308 ****
- X cd help;make clean
- X cd z;make clean
- X cd sea;make clean
- X! if [ $(USE_ECUUNGETTY) = yes ]; then \
- X! cd ecuungetty;make clean; \
- X fi
- X
- X clobber: clean
- X rm -f $(PROGRAM) $(PROGRAM)~
- X--- 305,317 ----
- X cd help;make clean
- X cd z;make clean
- X cd sea;make clean
- X! cd ecuungetty;make clean;
- X! -if [ -f gendial/Makefile ]; then \
- X! cd gendial; make clean; \
- X fi
- X+ -if [ -f timetest/Makefile ]; then \
- X+ cd timetest; make clean; \
- X+ fi
- X
- X clobber: clean
- X rm -f $(PROGRAM) $(PROGRAM)~
- X***************
- X*** 309,317 ****
- X cd help;make clobber
- X cd z;make clobber
- X cd sea;make clobber
- X! if [ $(USE_ECUUNGETTY) = yes ]; then \
- X! cd ecuungetty;make clobber; \
- X! fi
- X
- X #regenerate .o:.h dependencies automatically
- X depend:
- X--- 318,324 ----
- X cd help;make clobber
- X cd z;make clobber
- X cd sea;make clobber
- X! cd ecuungetty;make clobber;
- X
- X #regenerate .o:.h dependencies automatically
- X depend:
- X*** /export/home/wht/src/ecu314/README Wed Sep 4 00:24:47 1991
- X--- README Tue Sep 3 23:25:35 1991
- X***************
- X*** 1,10 ****
- X .--------------------------------------------------------.
- X! | ecu README - last revised Sun Aug 25 22:56:51 EDT 1991 |
- X `--------------------------------------------------------'
- X
- X! This is ecu revision 3.10. Ecu is a asynchronous communications
- X! program for SCO UNIX System V/386 or XENIX System V/286 or 386 on
- X! AT-class computer systems. It incorporates typical interactive
- X communications capabilities with a rich procedure language, an
- X extended set of immediate (interactive) commands, and several file
- X transfer protocols. The operating system and development system is
- X--- 1,17 ----
- X .--------------------------------------------------------.
- X! | ecu README - last revised Tue Sep 3 23:00:47 EDT 1991 |
- X `--------------------------------------------------------'
- X
- X! This is ecu revision 3.15. ECU is a asynchronous communications
- X! program for these environments:
- X!
- X! XENIX System V/286
- X! XENIX System V/386
- X! SCO UNIX System V/386
- X! ISC System V Release 4
- X! SunOS 4.1.1 on Sparc, 1+, 2
- X!
- X! It incorporates typical interactive
- X communications capabilities with a rich procedure language, an
- X extended set of immediate (interactive) commands, and several file
- X transfer protocols. The operating system and development system is
- X***************
- X*** 12,23 ****
- X production version of SCO UNIX or ODT. Preliminary support for ISC
- X 386/ix 2.2 seems to be at least partially functional.
- X
- X- At patchlevel 3 or higher, at least partial (useful) support
- X- is provided for SunOS 4.1 X11 users on a Sparc and for ISC System
- X- V Release 4. I did the sun port. Lothar Hirschbiegel
- X- (aega84!lh) did the SVR4 port -- THANKS, Lothar!
- X- See README.P3 for elaboration on this new support.
- X-
- X Support for "non-ANSI" consoles is relatively stable and more
- X mature. I use it (almost exclusively now) with a Metro Link X11R4
- X xterm. Bugs are expected and reports will be greatly appreciated.
- X--- 19,24 ----
- X***************
- X*** 67,72 ****
- X--- 68,75 ----
- X their excellent X11R4 package. Yes, xecu has been born and is in
- X intensive care, but its chance of survival is pretty good.
- X
- X+ Lothar Hirschbiegel (aega84!lh) did the SVR4 port -- THANKS, Lothar!
- X+
- X --------------------------------------------------------------------
- X
- X NOTE TO PRE-REVISION-3 USERS:
- X***************
- X*** 104,118 ****
- X 2. Termination of file transfers by SIGINT did not cause termination
- X of procedfure execution in pre-3.10 versions. In this version, it does.
- X
- X! The appropriate manual sections have been updated to indicate:
- X! Integer variable $i0 receives the exit status from the transfer. Note:
- X! procedure execution IS terminated by a SIGINT to the spawned file
- X! transfer process. This is different than for versions prior to 3.10.
- X! If $i0 is set to -1, the file transfer program did not begin.
- X!
- X! If there is one serious flame on this, I'll make it run-time option
- X! to get the old behavior.
- X!
- X --------------------------------------------------------------------
- X
- X On SCO, TTY devices must be named in the style of:
- X--- 107,114 ----
- X 2. Termination of file transfers by SIGINT did not cause termination
- X of procedfure execution in pre-3.10 versions. In this version, it does.
- X
- X! 3. Several files that previously had to reside in ~/.ecu now may have
- X! system wide defaults in the ECU library directory (/usr/local/lib/ecu).
- X --------------------------------------------------------------------
- X
- X On SCO, TTY devices must be named in the style of:
- X***************
- X*** 291,311 ****
- X --------------------------------------------------------------------
- X Notes:
- X
- X! 0. ISC:
- X More progress has been made for a port to ISC 2.2. The
- X program compiles properly with the gcc or native cc compiler,
- X! but very little testing has been done. The shared dial-in,
- X! dial-out tty facility is very different between SCO and ISC and
- X! tty naming is different. Also, extended keys (like Home and End)
- X! generate different codes. I would appreciate any help and
- X! comments. John "Pappy" Dashner (jmd@wa4cyb) is responsible for
- X! the bulk of the effort to date. It still needs more work, though.
- X! The Configure procedure will ask you if you are on an ISC or
- X! SCO system. Answering 'i' should put you on the correct fork
- X! of the Yellow Brick Road and you will get at least some
- X service from it on virtual consoles using the "at386" terminal
- X type if you install models/nonansikeys in your ~/ecu directory.
- X
- X 1. KERMIT:
- X A XENIX/286 (lowest common denominator for SCO) binary of a suitable
- X ckermit is compress-shared in the ckermit subdirectory. You
- X--- 287,310 ----
- X --------------------------------------------------------------------
- X Notes:
- X
- X! 0. ISC, SVR4 and Sun:
- X More progress has been made for a port to ISC 2.2. The
- X program compiles properly with the gcc or native cc compiler,
- X! and seems to be woerking fairly well. You will get at least some
- X service from it on virtual consoles using the "at386" terminal
- X type if you install models/nonansikeys in your ~/ecu directory.
- X
- X+ At least one user is happy with ECU on ISC System V Release 4.
- X+ ("[Unix is now running on 10 machines. More installations are
- X+ anticpiated.]" -- Dennis Ritchie, 1972?).
- X+
- X+ A Sun port seems to be stable for xterms under X11R4.
- X+
- X+ This section of the README was spawned when ECU ran only on SCO nd
- X+ pitiful early porting efforts had just begun. Soon (:->) it will be
- X+ obsolete and dropped in favor of a more complete chunk of words for
- X+ each run time environment.
- X+
- X 1. KERMIT:
- X A XENIX/286 (lowest common denominator for SCO) binary of a suitable
- X ckermit is compress-shared in the ckermit subdirectory. You
- X***************
- X*** 323,329 ****
- X is released) will directly support ECU's use of it, even if patches
- X to ECU are required. Watch this space.
- X
- X! 2. SELECT(S)
- X SCO XENIX V/386 Release 2.3.1 (and evidently 2.3.2) have a
- X broken-dead, yet fixable, BSD-style select() feature. Also,
- X select() is missing from libc.a. While ecu does not *require*
- X--- 322,335 ----
- X is released) will directly support ECU's use of it, even if patches
- X to ECU are required. Watch this space.
- X
- X! 2. SELECT(S) and CFLAGS "WORKING_SELECT"
- X! ECU uses select() where possible for two purposes:
- X! 1. wait on a tty (comm line) read with timeout -and-
- X! 2. timeout (nap replacement).
- X!
- X! If you have a working select, use -DWORKING_SELECT.
- X! The Configure procedure does the job for you for systems I know about.
- X!
- X SCO XENIX V/386 Release 2.3.1 (and evidently 2.3.2) have a
- X broken-dead, yet fixable, BSD-style select() feature. Also,
- X select() is missing from libc.a. While ecu does not *require*
- X***************
- X*** 330,342 ****
- X select(S), it is much more efficient to use it. The x386sel
- X subdirectory in this release has information (thanks to
- X csch@netcs, ivar@acc, and ag@elgar) on how to fix the kernel and
- X! to add select() to libc.a.
- X
- X! Select(S) is fully functional in SCO UNIX.
- X
- X I found it in /usr/lib/libinet.a on the ISC system I used to
- X! compile for ISC.
- X
- X 3. SCO MULTISCREEN BUG
- X There has been a bug in the multiscreen driver for some time
- X wherein a MEDIA COPY (screen dump) sequence ("ESC [ 2 i") leaves
- X--- 336,355 ----
- X select(S), it is much more efficient to use it. The x386sel
- X subdirectory in this release has information (thanks to
- X csch@netcs, ivar@acc, and ag@elgar) on how to fix the kernel and
- X! to add select() to libc.a. You'll have to add WORKING_SELECT to
- X! config.local if you do this.
- X
- X! Select(S) is fully functional in SCO UNIX 3.2.0. I am unsure of ODT
- X! 1.0/UNIX 3.2.1. It is broken in ODT 1,1/UNIX 3.2v2. If you find it
- X! fixed in 3.3v3, add WORKING_SELECT to config.local and tell me the
- X! good news.
- X
- X I found it in /usr/lib/libinet.a on the ISC system I used to
- X! compile for ISC. It works fine there. I automatically put
- X! WORKING_SELECT into the Makefile.
- X
- X+ It works fine on the Sun and SVR4, naturally.
- X+
- X 3. SCO MULTISCREEN BUG
- X There has been a bug in the multiscreen driver for some time
- X wherein a MEDIA COPY (screen dump) sequence ("ESC [ 2 i") leaves
- X***************
- X*** 362,372 ****
- X
- X 4. GCC
- X
- X! In case you didn't know, GCC is a great C compiler. It generates excellent
- X! code and gives excellent diagnostics and warnings. There are more
- X! options available than for a Coup de Ville, so you have to be careful
- X! if you get too fancy. With Configure and config.c, I have tried to
- X! choose the best option set for ecu and it's utilities.
- X
- X I tried -pedantic and -ansi under SCO, but there
- X are just too many complaints about the development system heaader files:
- X--- 375,388 ----
- X
- X 4. GCC
- X
- X! In case you didn't know, GCC is a great C compiler. It generates
- X! excellent code and gives excellent diagnostics and warnings.
- X! There are more options available than for a Coup de Ville, so you
- X! have to be careful if you get too fancy. I should know -- I
- X! think I may have done it. With Configure and config.c, I have
- X! tried to choose the best option set for ECU and it's utilities.
- X! If you want to play around, you can place GCC_EXTRA_CFLAGS
- X! definitions in a config.local file and experiment away.
- X
- X I tried -pedantic and -ansi under SCO, but there
- X are just too many complaints about the development system heaader files:
- X***************
- X*** 382,388 ****
- X recommend you do it for purposes of making ECU. Hopefully since
- X I have done it and fixed what gcc reported, you don't have to.
- X
- X! Also, gcc's idea of prototype validity is just too much for me.
- X With MSC ANSI, prototype arguments are tested at *reference* time
- X not *definition* time. Thus with MSC it is convenient to define
- X a file (like stdio_lint.h, lint_args.h, etc) with all the
- X--- 398,415 ----
- X recommend you do it for purposes of making ECU. Hopefully since
- X I have done it and fixed what gcc reported, you don't have to.
- X
- X! On the Sun, you cannot use -ansi because of the whole way ioctl
- X! 2nd parameter defines are built. Compilation proceeds with no
- X! error, but few if any of your ioctls will work. Also, with
- X! -pedantic, you get one hundred gazillion complaints about text
- X! after #else and #endif. I hacked my compiler to omit that one
- X! pedantic complaint and made a test run with -ansi and -pedantic.
- X! As of version 3.15, I get no other warnings outside of some
- X! funkiness in va_args. With that exercise complete, I bid -ansi
- X! and -pedantic adieu for a while with a good feeling about the
- X! future should the ANSI KGB actually seize real power in Cyberdom.
- X!
- X! Gcc's idea of prototype validity is just too much for me.
- X With MSC ANSI, prototype arguments are tested at *reference* time
- X not *definition* time. Thus with MSC it is convenient to define
- X a file (like stdio_lint.h, lint_args.h, etc) with all the
- X*** /export/home/wht/src/ecu314/config.c Wed Sep 4 00:25:03 1991
- X--- config.c Tue Sep 3 22:42:36 1991
- X***************
- X*** 1,9 ****
- X /* CHK=0xD40E */
- X! char *rev = "3.13";
- X /*+-------------------------------------------------------------------------
- X config.c - Makefile configuration program for ECU
- X wht@n4hgf.Mt-Park.GA.US
- X
- X There are a few tricks in here for SCO multi-target development
- X system. If you compile this on a UNIX system, but specify the
- X target for a XENIX system, you get the cc -xenix switch. You
- X--- 1,13 ----
- X /* CHK=0xD40E */
- X! char *rev = "3.15";
- X /*+-------------------------------------------------------------------------
- X config.c - Makefile configuration program for ECU
- X wht@n4hgf.Mt-Park.GA.US
- X
- X+ This must be compiled with the *NATIVE* cc or else you must fake all
- X+ of the predefines the native compiler supplies. The Configure
- X+ script can pass stuff in CFLAGS to tickle config a bit.
- X+
- X There are a few tricks in here for SCO multi-target development
- X system. If you compile this on a UNIX system, but specify the
- X target for a XENIX system, you get the cc -xenix switch. You
- X***************
- X*** 10,20 ****
- X--- 14,31 ----
- X also get -Dconst= to avoid banging into some problems with the
- X XENIX stuff in the header files.
- X
- X+ To paraphrase Henry Spencer:
- X+ "Those who do not understand imake are doomed to reinvent it - poorly."
- X+ If this gets much more complicated, I'll make some imake rules.
- X+ Very soon, most of the systems ECU gets used on will have imake already.
- X+ We cannot assume that yet.
- X+
- X Defined functions:
- X gen_cc_cflags()
- X gen_gcc_cflags()
- X gen_isc_ldflags()
- X gen_sco_ldflags()
- X+ gen_sun_ldflags()
- X gen_svr4_ldflags()
- X generate_config(mdir)
- X goodbye(sig)
- X***************
- X*** 27,33 ****
- X
- X --------------------------------------------------------------------------*/
- X /*+:EDITS:*/
- X! /*:08-28-1991-14:07-wht@n4hgf2-SVR4 cleanup by slootman@dri.nl */
- X /*:08-25-1991-14:39-wht@n4hgf-SVR4 port thanks to aega84!lh */
- X /*:08-23-1991-01:37-wht@n4hgf-sun port */
- X /*:07-25-1991-12:55-wht@n4hgf-ECU release 3.10 */
- X--- 38,47 ----
- X
- X --------------------------------------------------------------------------*/
- X /*+:EDITS:*/
- X! /*:09-03-1991-12:53-wht@n4hgf2-iron out sun gcc options */
- X! /*:09-01-1991-16:32-wht@n4hgf2-show package and config versions */
- X! /*:09-01-1991-15:59-wht@n4hgf2-generalize HDB Devices, etc. files location */
- X! /*:08-28-1991-14:07-wht@n4hgf2-SVR4 cleanup by aega84!lh */
- X /*:08-25-1991-14:39-wht@n4hgf-SVR4 port thanks to aega84!lh */
- X /*:08-23-1991-01:37-wht@n4hgf-sun port */
- X /*:07-25-1991-12:55-wht@n4hgf-ECU release 3.10 */
- X***************
- X*** 42,47 ****
- X--- 56,62 ----
- X #include <termio.h>
- X #include <sys/types.h>
- X #include <sys/stat.h>
- X+ #include "patchlevel.h"
- X
- X #define S_SCO 0
- X #define S_ISC 1
- X***************
- X*** 62,70 ****
- X char *makedirs[] = {
- X ".",
- X "./ecufriend",
- X- #ifndef sun
- X "./ecuungetty",
- X- #endif
- X "./gendial",
- X "./help",
- X "./sea",
- X--- 77,83 ----
- X***************
- X*** 72,82 ****
- X (char *)0
- X };
- X
- X! char *strs_intro[] = {
- X "\n",
- X ".-------------------.\n",
- X "| ECU configuration |\n",
- X "`-------------------'\n",
- X "There are two types of responses, single character and string\n",
- X "Single character questions have the choices in () followed by a ?\n",
- X "String questions (with any defaults in []) are followed by a :\n",
- X--- 85,102 ----
- X (char *)0
- X };
- X
- X! char *strs_intro1[] = {
- X "\n",
- X ".-------------------.\n",
- X "| ECU configuration |\n",
- X "`-------------------'\n",
- X+ (char *)0
- X+ };
- X+ char *strs_intro2[] = {
- X+ #ifdef WHT
- X+ "WHT features enabled\n",
- X+ #endif
- X+ "\n",
- X "There are two types of responses, single character and string\n",
- X "Single character questions have the choices in () followed by a ?\n",
- X "String questions (with any defaults in []) are followed by a :\n",
- X***************
- X*** 128,141 ****
- X "\t-v\\\n",
- X #endif
- X "\t-fstrength-reduce -fpcc-struct-return -fwritable-strings\\\n",
- X- #if defined(i386) || defined(M_I286) || defined(M_SYSV) || defined(ISC)
- X- "\t-fcall-used-ax -fcall-used-bx -fcall-used-cx -fcall-used-dx\\\n",
- X- #endif
- X "\t-finline-functions -fforce-mem -fforce-addr\\\n",
- X "\t-W -Wunused -Wpointer-arith -Wcast-qual\\\n",
- X (char *)0
- X };
- X
- X char *sco_gcc_opts[] = {
- X "\t........what-goes-here?.........\\\n", /* XENIX/286 */
- X "\t-DM_XENIX -DM_SYSV -DM_SYS5 -DM_I386\\\n", /* XENIX/386 */
- X--- 148,163 ----
- X "\t-v\\\n",
- X #endif
- X "\t-fstrength-reduce -fpcc-struct-return -fwritable-strings\\\n",
- X "\t-finline-functions -fforce-mem -fforce-addr\\\n",
- X "\t-W -Wunused -Wpointer-arith -Wcast-qual\\\n",
- X (char *)0
- X };
- X
- X+ char *i86_gcc_opts[] = {
- X+ "\t-fcall-used-bx\\\n",
- X+ (char *)0
- X+ };
- X+
- X char *sco_gcc_opts[] = {
- X "\t........what-goes-here?.........\\\n", /* XENIX/286 */
- X "\t-DM_XENIX -DM_SYSV -DM_SYS5 -DM_I386\\\n", /* XENIX/386 */
- X***************
- X*** 149,155 ****
- X char *isc_sigtype = "\t-DSIGTYPE=void\\\n";
- X
- X char *sun_cc_opts = "\t-O -DBSD\\\n";
- X! char *sun_gcc_opts = "\t-O -DBSD\\\n";
- X char *sun_sigtype = "\t-DSIGTYPE=void\\\n";
- X
- X char *svr4_cc_opts = "\t-O -DSVR4 -DSYSV\\\n";
- X--- 171,177 ----
- X char *isc_sigtype = "\t-DSIGTYPE=void\\\n";
- X
- X char *sun_cc_opts = "\t-O -DBSD\\\n";
- X! char *sun_gcc_opts = "\t-pipe -O -Dsun -DBSD\\\n"; /* ansi gets __sun__ only */
- X char *sun_sigtype = "\t-DSIGTYPE=void\\\n";
- X
- X char *svr4_cc_opts = "\t-O -DSVR4 -DSYSV\\\n";
- X***************
- X*** 309,329 ****
- X break;
- X }
- X fputs("\t-DECULIBDIR='\"$(ECULIBDIR)\"'\\\n",fpmake);
- X! #if defined(WHT)
- X! #if defined(sun)
- X! fputs("\t-DWHT -DAUDIO -g\\\n",fpmake);
- X! #else
- X! fputs("\t-DWHT -DMORSE -DFASI -g\\\n",fpmake);
- X! #endif
- X! #else
- X! #if defined(MORSE)
- X! fputs("\t-DMORSE -g\\\n",fpmake);
- X! #endif /* MORSE */
- X! #if defined(FASI)
- X! fputs("\t-DFASI -g\\\n",fpmake);
- X! #endif /* FASI */
- X! #endif
- X! fputs("\t$(SYMBOLIC) $(CFLAGS_EXTRA)\n\n",fpmake);
- X }
- X
- X void
- X--- 331,338 ----
- X break;
- X }
- X fputs("\t-DECULIBDIR='\"$(ECULIBDIR)\"'\\\n",fpmake);
- X! fputs("\t-DHDBFILES='\"$(HDBFILES)\"'\\\n",fpmake);
- X! fputs("\t$(SYMBOLIC) $(CFLAGS_EXTRA) $*CC_CFLAGS_EXTRA)\n\n",fpmake);
- X }
- X
- X void
- X***************
- X*** 330,342 ****
- X gen_gcc_cflags()
- X {
- X fputs("CFLAGS = \\\n",fpmake);
- X- if(have_gcc_140)
- X- fputs("\t-DGCC140\\\n",fpmake);
- X tputstrsfp(gcc_opts);
- X switch(sys)
- X {
- X case S_SCO:
- X fputs(sco_gcc_opts[sco_type],fpmake);
- X if(sco_type == X_UNIX)
- X fputs(malloc_3x,fpmake);
- X fputs(sco_sigtype[sco_type],fpmake);
- X--- 339,350 ----
- X gen_gcc_cflags()
- X {
- X fputs("CFLAGS = \\\n",fpmake);
- X tputstrsfp(gcc_opts);
- X switch(sys)
- X {
- X case S_SCO:
- X fputs(sco_gcc_opts[sco_type],fpmake);
- X+ tputstrsfp(i86_gcc_opts);
- X if(sco_type == X_UNIX)
- X fputs(malloc_3x,fpmake);
- X fputs(sco_sigtype[sco_type],fpmake);
- X***************
- X*** 343,374 ****
- X break;
- X case S_ISC:
- X fputs(isc_gcc_opts,fpmake);
- X fputs(malloc_3x,fpmake);
- X fputs(isc_sigtype,fpmake);
- X break;
- X case S_SUN:
- X fputs(sun_gcc_opts,fpmake);
- X fputs(malloc_3x,fpmake);
- X fputs(sun_sigtype,fpmake);
- X break;
- X case S_SVR4:
- X fputs(svr4_gcc_opts,fpmake);
- X fputs(malloc_3x,fpmake);
- X fputs(svr4_sigtype,fpmake);
- X break;
- X }
- X fputs("\t-DECULIBDIR='\"$(ECULIBDIR)\"'\\\n",fpmake);
- X! #if defined(WHT)
- X! fputs("\t-DWHT -DMORSE -DFASI -DSHARE_DEBUG -g\\\n",fpmake);
- X! #else
- X! #if defined(MORSE)
- X! fputs("\t-DMORSE -g\\\n",fpmake);
- X! #endif /* MORSE */
- X! #if defined(FASI)
- X! fputs("\t-DFASI -g\\\n",fpmake);
- X! #endif /* FASI */
- X! #endif
- X! fputs("\t$(SYMBOLIC) $(CFLAGS_EXTRA)\n\n",fpmake);
- X }
- X
- X void
- X--- 351,382 ----
- X break;
- X case S_ISC:
- X fputs(isc_gcc_opts,fpmake);
- X+ tputstrsfp(i86_gcc_opts);
- X fputs(malloc_3x,fpmake);
- X+ fputs("\t-DWORKING_SELECT\\\n",fpmake);
- X fputs(isc_sigtype,fpmake);
- X break;
- X case S_SUN:
- X fputs(sun_gcc_opts,fpmake);
- X fputs(malloc_3x,fpmake);
- X+ fputs("\t-DWORKING_SELECT\\\n",fpmake);
- X fputs(sun_sigtype,fpmake);
- X break;
- X case S_SVR4:
- X fputs(svr4_gcc_opts,fpmake);
- X+ #if defined(i386)
- X+ tputstrsfp(i86_gcc_opts);
- X+ #endif
- X fputs(malloc_3x,fpmake);
- X+ fputs("\t-DWORKING_SELECT\\\n",fpmake);
- X fputs(svr4_sigtype,fpmake);
- X break;
- X }
- X fputs("\t-DECULIBDIR='\"$(ECULIBDIR)\"'\\\n",fpmake);
- X! fputs("\t-DHDBFILES='\"$(HDBFILES)\"'\\\n",fpmake);
- X! if(have_gcc_140)
- X! fputs("\t-DGCC140\\\n",fpmake);
- X! fputs("\t$(SYMBOLIC) $(CFLAGS_EXTRA) $(CC_CFLAGS_EXTRA)\n\n",fpmake);
- X }
- X
- X void
- X***************
- X*** 429,434 ****
- X--- 437,443 ----
- X char mkfl[128];
- X char s128[128];
- X FILE *fpsrc;
- X+ FILE *local = fopen("config.local","r");;
- X
- X sprintf(mksrc,"%s/Make.src",mdir);
- X sprintf(mkfl,"%s/Makefile",mdir);
- X***************
- X*** 460,465 ****
- X--- 469,483 ----
- X mksrc);
- X fprintf(fpmake,"#---- configured by ECU config rev %s\n\n",rev);
- X
- X+ if(local)
- X+ {
- X+ fprintf(fpmake,"# config.local inclusions\n");
- X+ while(fgets(s128,sizeof(s128),local))
- X+ fputs(s128,fpmake);
- X+ fclose(local);
- X+ fputs("\n",fpmake);
- X+ }
- X+
- X switch(compiler)
- X {
- X case C_CC:
- X***************
- X*** 490,511 ****
- X--- 508,537 ----
- X
- X fprintf(fpmake,"LBIN = %s\n",bindir);
- X fprintf(fpmake,"ECULIBDIR = %s\n",libdir);
- X+ /*
- X+ * we need this info in Makefiles, so it is put here rather
- X+ * than ecu.h; must also have this passed thru in CFLAGS
- X+ */
- X switch(sys)
- X {
- X case S_SCO:
- X fprintf(fpmake,"SYSTEM = %s\n",sco_system[sco_type]);
- X+ fprintf(fpmake,"HDBFILES = /usr/lib/uucp\n");
- X use_ecuungetty = "yes";
- X break;
- X case S_ISC:
- X fprintf(fpmake,"SYSTEM = %s\n",isc_system);
- X+ fprintf(fpmake,"HDBFILES = /usr/lib/uucp\n");
- X use_ecuungetty = "yes";
- X break;
- X case S_SUN:
- X fprintf(fpmake,"SYSTEM = %s\n",sun_system);
- X+ fprintf(fpmake,"HDBFILES = /etc/uucp\n");
- X use_ecuungetty = "no";
- X break;
- X case S_SVR4:
- X fprintf(fpmake,"SYSTEM = %s\n",svr4_system);
- X+ fprintf(fpmake,"HDBFILES = /etc/uucp\n");
- X use_ecuungetty = "no";
- X break;
- X }
- X***************
- X*** 586,596 ****
- X signal(itmp,goodbye);
- X
- X if(!debug)
- X! tputstrs(strs_intro);
- X!
- X! #ifdef WHT
- X! printf("WHT version enabled\n");
- X! #endif
- X
- X if(sys < 0)
- X {
- X--- 612,622 ----
- X signal(itmp,goodbye);
- X
- X if(!debug)
- X! {
- X! tputstrs(strs_intro1);
- X! printf("Package version 3.%d, config version %s\n",PATCHLEVEL,rev);
- X! tputstrs(strs_intro2);
- X! }
- X
- X if(sys < 0)
- X {
- X*** /export/home/wht/src/ecu314/doc/_features.txt Wed Sep 4 00:23:11 1991
- X--- doc/_features.txt Mon Sep 2 01:55:10 1991
- X***************
- X*** 114,120 ****
- X by testing all keystroke sequences again an internal table loaded
- X at the beginning of execution from the file ~/.ecu/nonansikeys.
- X A default nonansikeys may be placed in the ECU library directory
- X! (normally /usr/local/lib/ecu).
- X
- X NOTE that supported terminals MUST employ function keys which generate
- X sequences free of nulls and less than 33 characters in length.
- X--- 114,123 ----
- X by testing all keystroke sequences again an internal table loaded
- X at the beginning of execution from the file ~/.ecu/nonansikeys.
- X A default nonansikeys may be placed in the ECU library directory
- X! (normally /usr/local/lib/ecu). X11 xterms usually require special attention
- X! with VT100.Translations overrides. Sometimes an xmodmap must also be
- X! employed. Experimentation is the best teacher, but the supplied
- X! nonansikeys file and various READMEs offer some hints.
- X
- X NOTE that supported terminals MUST employ function keys which generate
- X sequences free of nulls and less than 33 characters in length.
- X***************
- X*** 680,700 ****
- X programs by Chuck Forsberg) present dynamic status displays similar to
- X the following:
- X .DS L
- X! .-[ ecusz 2.37 ]-- /tmp -----------------------------------.
- X! | ZMODEM/CRC32 Data xfer rate ~= 896 chars/sec |
- X! | File 1 of 1: ckermit-5a-130 |
- X! | File position: 34053 length: 34053 -rw-r--r-- |
- X! | Sending 34053 bytes total time ~= 0:40 |
- X! | tx: hdr ZFIN 0 rx: hdr ZFIN 0 |
- X! | Comm I/O: rx 175 tx 34393 bytes |
- X! | Baud rate: 9600 BINARY blklen: 1024 comm mode: NORMAL |
- X! | Time: started: 17:31:50 this file: 17:31:51 |
- X! | 17:32:29 elapsed: 00:00:39 00:00:38 |
- X! | Errors: this file: 0 total: 0 files skipped: 0 |
- X! | Total file bytes transferred: 34053 |
- X! | End of file |
- X! | Remote: CRC32 y duplex y continuous stream y |
- X! `- Connected to ki4xo - procedure put_ck5a ----------------'
- X .DE
- X
- X During file transfer, transfer rates are displayed from time to time.
- X--- 683,705 ----
- X programs by Chuck Forsberg) present dynamic status displays similar to
- X the following:
- X .DS L
- X! .-[ ecurz 3.14 ]-- /export/home/wht/tmp -------------------.
- X! | ZMODEM/CRC32 transfer rate ~= 1638 ch/sec (85%) R |
- X! | File 2 : test.data |
- X! | File position: 13312 length: 200599 -r--r--r-- |
- X! | Receive time this file ~= 1:55 |
- X! | tx: hdr ZRPOS 0 rx: data ZCRCG 1024 bytes |
- X! | Comm I/O: rx 599390 tx 84 bytes |
- X! | Baud rate: 19200 BINARY blklen: 1024 comm mode: RAW-f |
- X! | Time: started: 01:36:54 this file: 01:42:13 |
- X! | 01:42:21 elapsed: 00:05:27 00:00:08 |
- X! | Errors: this file: 0 total: 0 files skipped: 0 |
- X! | Total file bytes transferred: 560149 |
- X! | Receiving data (6% complete) |
- X! | Transfer: if destination nonexistent |
- X! | Output queue depth 0 RTS T CTS T |
- X! | Input queue depth 10 Input queue avail 490 |
- X! `- Connected to mp486 -------------------------------------'
- X .DE
- X
- X During file transfer, transfer rates are displayed from time to time.
- X***************
- X*** 712,717 ****
- X--- 717,736 ----
- X are skipped in a transfer session, you may be sure the transaction
- X rate will be (perhaps much) lower than the per-file rate.
- X
- X+ On some systems and driver options, sundry driver statistics are
- X+ displayed during X/Y/ZMODEM transfers. For instance, in the above
- X+ display from a Sun session. the driver's current output and input
- X+ queue depths and input queue space available are displayed along with
- X+ the current status of RTS and CTS. While such gay banter is rightly
- X+ relegated to the "bell and whistle" category, it does provide a rare
- X+ insight into driver operation. The ECU FAS/i driver for 386 systems
- X+ (after Uwe Doering's FAS driver) provided other information.
- X+
- X+ .DS L
- X+ | Output queue depth 0 RTS T CTS T |
- X+ | Input queue depth 10 Input queue avail 490 |
- X+ .DE
- X+
- X .*s 2 "Procedures (Scripts)"
- X
- X A powerful, language-style procedure language is incorporated
- X***************
- X*** 750,786 ****
- X ECU control files reside in the .ecu subdirectory of
- X each user's home directory. For example, in home directory /usr/wht:
- X .DS I
- X! /usr/wht/.ecu/dir CD interactive command history file
- X! /usr/wht/.ecu/keys function key mapping
- X! /usr/wht/.ecu/nonansikeys function key mapping
- X! /usr/wht/.ecu/log connect, file transfer history
- X! /usr/wht/.ecu/phone default dialing directory
- X! /usr/wht/.ecu/colors colors used by ECU
- X .DE
- X
- X! The .ecu directory is also searched for ECU procedure files
- X (having the '.ep' extension) in the procedure cannot be found in
- X the current working directory.
- X
- X .*s 2 "Lock Files"
- X
- X! ECU maintains lock files in /usr/spool/uucp in accordance with the
- X HoneyDanBer UUCP conventions (ASCII pids as 10-character strings
- X! followed by a newline). Lock files are created for the lower-case
- X! device names of
- X! a line and checked for in both cases.
- X! For example, both LCK..tty1a is created when
- X! /dev/tty1a OR /dev/tty1A is selected and neither LCK..tty1a nor
- X! LCK..tty1A are active. See the later section titled
- X! "HoneyDanBer UUCP Interface".
- X
- X .*s 2 "Dial-In/Dial-Out Line Support"
- X
- X ECU works with the SCO getty to support dialing out on a line
- X enabled for login. After use of the line is complete,
- X ECU signals the system to restore incoming call status to
- X the line.
- X See the later section titled "HoneyDanBer UUCP Interface".
- X
- X .*s 2 "Tools"
- X
- X--- 769,823 ----
- X ECU control files reside in the .ecu subdirectory of
- X each user's home directory. For example, in home directory /usr/wht:
- X .DS I
- X! /usr/wht/.ecu/dir CD interactive command history file
- X! * /usr/wht/.ecu/keys function key mapping
- X! * /usr/wht/.ecu/nonansikeys function key mapping
- X! /usr/wht/.ecu/log connect, file transfer history
- X! /usr/wht/.ecu/phone default dialing directory
- X! *% /usr/wht/.ecu/colors colors used by ECU
- X .DE
- X
- X! * The ecu library directory (normally /usr/local/lib/ecu) is searched for
- X! the "keys", "colors" and "nonansikeys" file if a personal version
- X! cannot be found.
- X!
- X! % The "colors" file does not apply to systems on which color is not yet
- X! supported.
- X!
- X! The .ecu directory is searched for ECU procedure files
- X (having the '.ep' extension) in the procedure cannot be found in
- X the current working directory.
- X
- X .*s 2 "Lock Files"
- X
- X! ECU maintains lock files in the standard directory in accordance with the
- X HoneyDanBer UUCP conventions (ASCII pids as 10-character strings
- X! followed by a newline). If porting to a machine with old-style
- X! integer pids, grep for HONEYDANBER in the sources for hints on
- X! where changes are needed.
- X
- X+ Standard lock directories for versions supported as of this writing:
- X+ .DS I
- X+ SCO /usr/spool/uucp
- X+ SunOS, SVR4 /usr/spool/locks
- X+ SunOS, SVR4 /var/spool/locks
- X+ .DE
- X+
- X+ .ul 1
- X+ World write access to this directory must be in effect.
- X+
- X+ See the later section titled "HoneyDanBer UUCP Interface".
- X+
- X .*s 2 "Dial-In/Dial-Out Line Support"
- X
- X+ On SCO XENIX and UNIX 3.2 systems,
- X ECU works with the SCO getty to support dialing out on a line
- X enabled for login. After use of the line is complete,
- X ECU signals the system to restore incoming call status to
- X the line.
- X See the later section titled "HoneyDanBer UUCP Interface".
- X+
- X+ This facility is not required in other environments.
- X
- X .*s 2 "Tools"
- X
- X*** /export/home/wht/src/ecu314/doc/_p_cmd.txt Wed Sep 4 00:25:10 1991
- X--- doc/_p_cmd.txt Sun Sep 1 20:49:36 1991
- X***************
- X*** 7,12 ****
- X--- 7,23 ----
- X This command sets the baud rate for the attached line.
- X The integer argument <baud-int> must be one of
- X 110, 300, 600, 1200, 2400, 4800, 9600, 19200 and 38400.
- X+
- X+ Using the 'baud' procedure command in the ECU initialization
- X+ procedure "_rc.ep" serves as an exact analog of the -b command. The
- X+ .B baud
- X+ command with the
- X+ .B setline
- X+ command gives you programatic control over the actual choice of the
- X+ line and rate or the defaults for the setup screen, depending upon
- X+ other options. NOTE: using the baud command in _rc.ep will override
- X+ any command line -b specification.
- X+
- X .DS L
- X Example:
- X baud 9600
- X***************
- X*** 1551,1556 ****
- X--- 1562,1596 ----
- X $s0 = 'abc' legal
- X set s0='abc' legal
- X s0 = 'abc' illegal
- X+ .DE
- X+ .*s 3 "setline"
- X+ .DS L
- X+ usage: setline <filename>
- X+ .DE
- X+ This command is an exact analog of the -l command line switch.
- X+ <filename> is used on the setup screen (if it is presented)
- X+ as the default filename. If you do not edit this name, ECU will
- X+ attempt to open the line when you press End or ^D.
- X+ <filename> has the format of a complete pathanme in /dev or simple
- X+ tty name.
- X+
- X+ .B setline
- X+ may only be used in _rc.ep. Using the
- X+ .B setline
- X+ command with the
- X+ .B baud
- X+ command gives you programatic control over the actual
- X+ choice of the line and rate or the defaults for the setup screen,
- X+ depending upon other options.
- X+
- X+ NOTE: using the setline command will override any command line -l
- X+ specification.
- X+
- X+ .DS L
- X+ Example:
- X+ setline '/dev/tty1a'
- X+ setline 'tty1a'
- X+ setline 'cua0'
- X .DE
- X .*s 3 "sk"
- X usage: sk [-a] <str>
- X*** /export/home/wht/src/ecu314/doc/_top.txt Wed Sep 4 00:25:11 1991
- X--- doc/_top.txt Sun Sep 1 05:07:33 1991
- X***************
- X*** 11,25 ****
- X .sp 2i
- X .ft B
- X .ce 10
- X! ECU 3.13
- X
- X (Extended Call Utility)
- X .ce 0
- X .sp 1i
- X .ce 100
- X! Professional and Engineering
- X Asynchronous Communications Package
- X! for UNIX and XENIX System V
- X .ce 0
- X .ft P
- X .sp 2i
- X--- 11,26 ----
- X .sp 2i
- X .ft B
- X .ce 10
- X! ECU 3.15
- X
- X (Extended Call Utility)
- X .ce 0
- X .sp 1i
- X .ce 100
- X! Research and Engineering
- X Asynchronous Communications Package
- X! for SCO UNIX 3.2 and XENIX System V,
- X! SunOS 4.1 and ISC System V Release 4
- X .ce 0
- X .ft P
- X .sp 2i
- X***************
- X*** 29,38 ****
- X .sp 1i
- X .ce 100
- X Technical Description
- X! Revision 3.13
- X \n(mo/\n(dy/\n(yr
- X .ce 0
- X .ls 1
- X .PH "'ECU Technical Description''%'"
- X .PF "'Public Domain by wht@n4hgf''\n(mo/\n(dy/\n(yr'"
- X .nr si 2n
- X--- 30,44 ----
- X .sp 1i
- X .ce 100
- X Technical Description
- X! Revision 3.15
- X \n(mo/\n(dy/\n(yr
- X .ce 0
- X+ .sp 1i
- X .ls 1
- X+ NOTE: Many sections of the manual are likely to be obsolete at any given
- X+ time until the writer get lots of free time. Much of it was written when
- X+ the program was supported only on SCO XENIX and UNIX.
- X+
- X .PH "'ECU Technical Description''%'"
- X .PF "'Public Domain by wht@n4hgf''\n(mo/\n(dy/\n(yr'"
- X .nr si 2n
- X*** /export/home/wht/src/ecu314/ecu.c Wed Sep 4 00:24:48 1991
- X--- ecu.c Mon Sep 2 21:58:59 1991
- X***************
- X*** 6,11 ****
- X--- 6,21 ----
- X main(argc,argv,envp)
- X xmtr()
- X
- X+ "Now tell me, old man, what's your name?"
- X+ "Holloway, sir. Charles William Holloway."
- X+ "Oh yes, the town's librarian."
- X+ "I have the honor, sir, and have had for many years."
- X+ "I believe all that time spent living through other men's lives,
- X+ other men's dreams, what a waste."
- X+ "Sometimes, a man can learn more from other men's dreams than he
- X+ can from his own. Come visit me sir, if you wish to improve your
- X+ education and I may improve yours." -- Something Wicked This Way Comes
- X+
- X ------------------------------------------------------------------------*/
- X /*+:EDITS:*/
- X /*:08-11-1991-19:56-wht@n4hgf-soup up -l for ISC vs. SCO */
- X***************
- X*** 31,36 ****
- X--- 41,53 ----
- X #undef NULL
- X #include <sys/param.h>
- X
- X+ #if defined(sun) && defined(FASI)
- X+ #undef FRASI
- X+ #endif
- X+ #if defined(sun) && defined(MORSE)
- X+ #undef FRASI
- X+ #endif
- X+
- X char *getenv();
- X
- X extern char *makedate; /* temporary make date */
- X***************
- X*** 54,59 ****
- X--- 71,77 ----
- X extern int tty_is_multiscreen;
- X extern char lopen_err_str[];
- X
- X+ char *eculibdir = ECULIBDIR;
- X char curr_dir[CURR_DIRSIZ]; /* current working directory of process */
- X char hello_str[128]; /* msg printed upon BOJ */
- X char errmsg[128];
- X***************
- X*** 68,73 ****
- X--- 86,92 ----
- X int xmtr_pid = 0;
- X int quit_on_init_proc_fail = 0;
- X int quit_on_init_proc_done = 0;
- X+ int rc_ep_has_run = 0;
- X int hz; /* HZ from environ or sys/param.h */
- X ulong hzmsec; /* clock period in msec rounded up */
- X struct timeb starting_timeb;
- X***************
- X*** 217,222 ****
- X--- 236,242 ----
- X shm_init(); /* open shared segment */
- X
- X keyset_init(); /* intialize keyset */
- X+ keyset_read("default");
- X
- X make_ecu_subdir(); /* needs to be very early before lots of init */
- X
- X***************
- X*** 306,316 ****
- X ttyinit(shm->ttyinit_param); /* init console tty mode handler */
- X ttymode(3); /* put user console in `raw' mode but SIGINT terms prog */
- X tcap_clear_screen();
- X! #ifdef WHT
- X xterm_title("ECU",0);
- X #endif
- X ff(se,"%s\r\n",hello_str);
- X
- X /* check out line */
- X if(!shm->Lline[0])
- X {
- X--- 326,347 ----
- X ttyinit(shm->ttyinit_param); /* init console tty mode handler */
- X ttymode(3); /* put user console in `raw' mode but SIGINT terms prog */
- X tcap_clear_screen();
- X! #if defined(WHT) || defined(XTERM_FRIEND)
- X xterm_title("ECU",0);
- X #endif
- X ff(se,"%s\r\n",hello_str);
- X
- X+ /* do the _rc.ep execution */
- X+ if(find_procedure(_rc))
- X+ {
- X+ if(do_proc(1,&_rc))
- X+ {
- X+ if(quit_on_init_proc_fail || quit_on_init_proc_done)
- X+ termecu(TERMECU_INIT_PROC_ERROR);
- X+ }
- X+ }
- X+ rc_ep_has_run = 1;
- X+
- X /* check out line */
- X if(!shm->Lline[0])
- X {
- X***************
- X*** 329,344 ****
- X strcpy(shm->Lline,default_tty);
- X Nap(1000L);
- X }
- X- }
- X- }
- X-
- X- /* do the _rc.ep execution */
- X- if(find_procedure(_rc))
- X- {
- X- if(do_proc(1,&_rc))
- X- {
- X- if(quit_on_init_proc_fail || quit_on_init_proc_done)
- X- termecu(TERMECU_INIT_PROC_ERROR);
- X }
- X }
- X
- X--- 360,365 ----
- X*** /export/home/wht/src/ecu314/ecu.h Wed Sep 4 00:25:04 1991
- X--- ecu.h Tue Sep 3 19:26:16 1991
- X***************
- X*** 20,28 ****
- X--- 20,33 ----
- X #define VOLATILE
- X #endif
- X
- X+ #if defined(__sun__) && !defined(sun)
- X+ #define sun
- X+ #endif
- X+
- X #if !defined(STDIO_H_INCLUDED)
- X #include <stdio.h>
- X #endif
- X+
- X #include <signal.h>
- X #include <ctype.h>
- X #include <sys/types.h>
- X***************
- X*** 29,42 ****
- X #include <errno.h>
- X #include <sys/timeb.h>
- X #include <string.h>
- SHAR_EOF
- true || echo 'restore of PATCH5.01 failed'
- fi
- echo 'End of ecu/patch05 part 1'
- echo 'File PATCH5.01 is continued in part 2'
- echo 2 > _shar_seq_.tmp
- exit 0
-
- exit 0 # Just in case...
-