From:	CSBVAX::MRGATE!KARNEY%PPC.MFENET@NMFECC.ARPA@SMTP  8-AUG-1988 17:00
To:	ARISIA::EVERHART
Subj:	BOSS 2.5 1/4


Received: from ppc.mfenet by ccc.mfenet with Tell via MfeNet ;
	Mon, 8 Aug 88 12:13:29 PDT
Date:	  Mon, 8 Aug 88 12:13:29 PDT
From:     KARNEY%PPC.MFENET@NMFECC.ARPA
Message-Id: <880808121329.20200218@NMFECC.ARPA>
Subject:   BOSS 2.5 1/4
To:       Everhart%Arisia.decnet@ge-crd.arpa
Comment: From KARNEY@PPC.MFENET on  8-AUG-1988 13:22:12.01 EDT

....................... Cut between dotted lines and save. .....................
$!.............................................................................
$! VAX/VMS archive file created by VMS_SHARE V06.00 26-May-1988.
$!
$! VMS_SHARE was written by James Gray (Gray:OSBUSouth@Xerox.COM) from
$! VMS_SHAR by Michael Bednarek (U3369429@ucsvc.dn.mu.oz.au).
$!
$! To unpack, simply save, concatinate all parts into one file and
$! execute (@) that file.
$!
$! This archive was created by user KARNEY
$! on  5-AUG-1988 10:09:36.76.
$!
$! ATTENTION: To keep each article below 45 blocks (23040 bytes), this
$!            program has been transmitted in 4 parts.  You should
$!            concatenate ALL parts to ONE file and execute (@) that file.
$!
$! It contains the following 6 files:
$!        BOSS.README
$!        BOSS.HLP
$!        BOSS.C
$!        BOSS_CLD.CLD
$!        BOSS_BUILD.COM
$!        BOSS_INSTALL.COM
$!
$!==============================================================================
$ SET SYMBOL/SCOPE=( NOLOCAL, NOGLOBAL )
$ VERSION = F$GETSYI( "VERSION" )
$ IF VERSION .GES "V4.4" THEN GOTO VERSION_OK
$ WRITE SYS$OUTPUT "You are running VMS ''VERSION'; ", -
    "VMS_SHARE V06.00 26-May-1988 requires VMS V4.4 or higher."
$ EXIT 44 
$VERSION_OK:
$ GOTO START
$
$UNPACK_FILE:
$ WRITE SYS$OUTPUT "Creating ''FILE_IS'"
$ DEFINE/USER_MODE SYS$OUTPUT NL:
$ EDIT/TPU/COMMAND=SYS$INPUT/NODISPLAY/OUTPUT='FILE_IS'/NOSECTION -
    VMS_SHARE_DUMMY.DUMMY
b_part := CREATE_BUFFER( "{Part}", GET_INFO( COMMAND_LINE, "file_name" ) )
; s_file_spec := GET_INFO( COMMAND_LINE, "output_file" ); SET( OUTPUT_FILE
, b_part, s_file_spec ); b_errors := CREATE_BUFFER( "{Errors}" ); i_errors 
:= 0; pat_beg_1 := ANCHOR & "-+-+-+ Beginning"; pat_beg_2 := LINE_BEGIN 
& "+-+-+-+ Beginning"; pat_end := ANCHOR & "+-+-+-+-+ End"; POSITION
( BEGINNING_OF( b_part ) ); i_append_line := 0; LOOP EXITIF MARK( NONE 
) = END_OF( b_part ); s_x := ERASE_CHARACTER( 1 ); IF s_x = "+" THEN r_skip 
:= SEARCH( pat_beg_1, FORWARD, EXACT ); IF r_skip <> 0 THEN s_x := ""
; MOVE_HORIZONTAL( -CURRENT_OFFSET ); ERASE_LINE; ENDIF; ENDIF
; IF s_x = "-" THEN r_skip := SEARCH( pat_end, FORWARD, EXACT ); IF r_skip <
> 0 THEN s_x := ""; MOVE_HORIZONTAL( -CURRENT_OFFSET ); m_skip := MARK( NONE )
; r_skip := SEARCH( pat_beg_2, FORWARD, EXACT ); IF r_skip <> 0 THEN POSITION
( END_OF( r_skip ) ); MOVE_HORIZONTAL( -CURRENT_OFFSET ); MOVE_VERTICAL( 1 )
; MOVE_HORIZONTAL( -1 ); ELSE POSITION( END_OF( b_part ) ); ENDIF; ERASE
( CREATE_RANGE( m_skip, MARK( NONE ), NONE ) ); ENDIF; ENDIF
; IF s_x = "V" THEN s_x := ""; IF i_append_line <> 0 THEN APPEND_LINE
; MOVE_HORIZONTAL( -CURRENT_OFFSET ); ENDIF; i_append_line := 1; MOVE_VERTICAL
( 1 ); ENDIF; IF s_x = "X" THEN s_x := ""; IF i_append_line <
> 0 THEN APPEND_LINE; MOVE_HORIZONTAL( -CURRENT_OFFSET ); ENDIF
; i_append_line := 0; MOVE_VERTICAL( 1 ); ENDIF; IF s_x <> "" THEN i_errors 
:= i_errors + 1; s_text := CURRENT_LINE; POSITION( b_errors ); COPY_TEXT
( "The following line could not be unpacked properly:" ); SPLIT_LINE
; COPY_TEXT( s_x ); COPY_TEXT( s_text ); POSITION( b_part ); MOVE_VERTICAL( 1 
); ENDIF; ENDLOOP; POSITION( BEGINNING_OF( b_part ) ); LOOP r_x := SEARCH( "`"
, FORWARD, EXACT ); EXITIF r_x = 0; POSITION( r_x ); ERASE_CHARACTER( 1 )
; IF CURRENT_CHARACTER = "`" THEN MOVE_HORIZONTAL( 1 ); ELSE COPY_TEXT( ASCII
( INT( ERASE_CHARACTER( 3 ) ) ) ); ENDIF; ENDLOOP; IF i_errors = 0 THEN SET
( NO_WRITE, b_errors, ON ); ELSE POSITION( BEGINNING_OF( b_errors ) )
; COPY_TEXT( FAO( "The following !UL errors were detected while unpacking !AS"
, i_errors, s_file_spec ) ); SPLIT_LINE; SET( OUTPUT_FILE, b_errors
, "SYS$COMMAND" ); ENDIF; EXIT; 
$ DELETE VMS_SHARE_DUMMY.DUMMY;*
$ CHECKSUM 'FILE_IS
$ WRITE SYS$OUTPUT " CHECKSUM ", -
  F$ELEMENT( CHECKSUM_IS .EQ. CHECKSUM$CHECKSUM, ",", "failed!,passed." )
$ RETURN
$
$START:
$ FILE_IS = "BOSS.README"
$ CHECKSUM_IS = 1159258229
$ COPY SYS$INPUT VMS_SHARE_DUMMY.DUMMY
XThis is BOSS version 2.5 (July 22, 1988).  It consists of 6 files
X    BOSS.README`009      This file
X    BOSS.HLP`009      The user help file
X    BOSS.C`009      The source code
X    BOSS_CLD.CLD      The command language definitions
X    BOSS_BUILD.COM    The procedure for compiling and linking BOSS
X    BOSS_INSTALL.COM  The procedure for installing BOSS
X
XBOSS requires that pseudo TTY (PTY) drivers be installed on your system.
XThis should be the latest version posted to INFO-VAX by Kevin Carosso in
XAugust 1988.  This is recommended version for both VMS 4.x and VMS 5.0.
XContact me if you need a copy of the PTY drivers.
X
XIf you plan to use BOSS/UW (to get multi-window operation on a Macintosh),
Xyou will need the UW terminal emulator.  I can send you that too.
X
XYou should edit BOSS_INSTALL.COM to refer to the directory where BOSS.EXE
Xresides.  BOSS should be installed with both PHY_IO and OPER privileges.
XYou can get by without these privileges--see the comments in BOSS.C.
X
XBOSS needs to be defined as a foreign command, i.e.,
X    $ BOSS == "$<dev>:[<dir>]BOSS"
XBOSS.HLP tells the user to do
X    $ SETUP BOSS
Xbefore running BOSS.  SETUP on our system runs a .COM file which does the
Xnecessary initialization for various utilities.  You will probably need to
Xedit BOSS.HLP to insert the incantation appropriate for your site.
XBOSS.HLP should of course be installed in some easily accessible help
Xlibrary.  Something like
X    $ LIBRARY/HELP/REPLACE HLP$LIBRARY_1 BOSS
Xshould do the trick.
X
XThe new features in this version (v. 2.5) compared with the last release
X(v. 2.4) are:
X
X* BOSS/UW supports the multi-window Macintosh terminal emulator UW
X* BOSS/PROCESS_DEFAULT sets the default process-type (TOP_LEVEL or SUBPROCESS)
X* VT52 terminals supported
X* C-\ C-k kills current process
X
X    Charles Karney
X    Plasma Physics Laboratory`009Phone:`009 +1 609 243 2607
X    Princeton University`009MFEnet:`009 Karney@PPC.MFEnet
X    PO Box 451`009`009`009ARPAnet: Karney%PPC.MFEnet@NMFECC.ARPA
X    Princeton, NJ 08543-0451`009Bitnet:`009 Karney%PPC.MFEnet@ANLVMS.Bitnet
X
X------------------------------------------------------------------------------
X
XThe remainder of this file is specific to people running BOSS/UW.
X
XThe user documentation is in HELP BOSS Windows and its subtopics.
X
XYou will get a separate mailing containing the three files
X    UNIX-UW-42.HQX`009The UW terminal emulator and documentation
X    UWPROTO.TXT`009`009Internal documentation on UW protocols
X    MACMOUSE.EL`009`009Mouse support for Gnu Emacs
X
XUNIX-UW-42.HQX should be downloaded to a Mac as a text file and run through
Xthe BinHeX and Packit programs to give uw (the terminal emulator) and
Xuw.doc (the documentation in MacWrite format).
X
XUWPROTO.TXT describes the protocol used by UW and BOSS/UW.  Can be ignored
Xif you like.
X
XIf you have Gnu Emacs:
X
XMACMOUSE.EL should be moved to EMACS_LIBRARY:[LISP].
XAdd a uw entry in EMACS_LIBRARY:[ETC] with:
X
X# Macintosh/UW termcap  (same as Mac without the cs, and has km = meta)
Xd0|uw|uw-am|unix-windows:\
X`009:cr=`094M:do=`094J:nl=`094J:bl=`094G:co#80:li#24:cl=50`094O\E[;H\E[2J:\
X`009:le=`094H:bs:am:cm=5\E[%i%d;%dH:nd=2\E[C:up=2\E[A:\
X`009:ce=3\E[K:cd=50\E[J:so=\E[7m:se=\E[m:us=\E[4m:ue=\E[m:\
X`009:md=\E[1m:mr=\E[7m:mb=\E[5m:me=\E[m:is=\E[1;24r\E[4l\E[24;1H:\
X`009:rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:\
X`009:ks=\E=\E[?1h:ke=\E>\E[?1l:\
X`009:ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:kb=`094H:\
X`009:ho=\E[H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:ta=`094I:pt:sr=5\EM:vt#3:xn:\
X`009:ic=7\E[1@:dc=7\E[1P:al=9\E[1L:dl=9\E[1M:\
X`009:sc=\E7:rc=\E8:\
X`009:IC=7\E[%d@:DC=7\E[%dP:AL=3*\E[%dL:DL=3*\E[%dM:km:
X
XPostscript:
X
XI still prefer VersaTerm PRO to UW, even though it doesn't have multi-
Xwindow support.  There are too many VersaTerm features that I need which
Xare absent in UW.
X
XI've only implemented the most basic level of UW service under BOSS
X(protocol 1 in UWPROTO.TXT).  The next level allows windows to be retitled
Xfrom the VAX, as well as setting many of the other attributes of windows.
XThis will most likely not get implemented, unless multi-window support
Xappears in VersaTerm.
X
XThe main reason for implementing the UW features in BOSS was to show that
Xthe Macintosh can provide a multi-window enviroment for the VAXes.  Now we
Xhave to get Lonnie Abelbeck to modify VersaTerm to support the UW
Xprotocol...
$ GOSUB UNPACK_FILE
$ FILE_IS = "BOSS.HLP"
$ CHECKSUM_IS = 5013425
$ COPY SYS$INPUT VMS_SHARE_DUMMY.DUMMY
X1 BOSS
XBOSS is an interactive job controller.  It lets you run several interactive
Xjobs simultaneously.  Before running BOSS put
X
X    $ SETUP BOSS
X
Xinto your login.com file.  In order to run BOSS type
X
X    $ BOSS
X
XBOSS can operate in one of two modes:
X* regular mode.  This works with any terminal.  See subtopic Description for
X  an overview.
X* multi-window mode; this ONLY works with a Macintosh running the UW terminal
X  emulator.  See subtopics Windows for an overview and further details.
X2 Description
XBOSS lets you create up to 8 processes on a VAX/VMS system.  Each process is
Xidentified by a single letter (A thru Z).  This letter is used in the
Xprocess name and in the DCL prompt.  At most one of these processes is
X``current'.  What you type is sent to that process, and output from that
Xprocess is sent to your terminal.  A process which is not current can run
Xbut normally cannot do output.  (What happens to the output is governed by
Xthe output flag for a particular process.  See topic Output_flags.)  You
Xusually switch between processes by typing control-\ followed by the
Xidentifying letter.  It is also possible to have have of your processes
Xinitiate the switch.  (See topic Communicating.)
X
XYou can run any program under BOSS.  For example, you might
X    run Emacs or EVE                   in process E
X    SET HOST to another machine        in process H
X    run NETTY to the B machine         in process B
X    do a FORTRAN compilation           in process F
X    execute DCL commands               in process D
X    talk to your colleague using PHONE in process P
Xand so on.
X
XOf course, you would normally not need to run so many processes.  (Indeed
Xyour subprocess quota may only let you run 5 processes.)  When you are
Xthrough with a process, you should log out of it (with ``logout') and switch
Xto some other process.
X
XBOSS makes no attempt to keep track of what is on your screen.  Usually when
Xswitching to a process which manages the screen in an advanced manner, you
Xshould issue a command to the program to get it to re-draw the screen.
X(This is control-w for EVE, PHONE, SPELL; control-l for Emacs.)
X
XBOSS uses needs to know the escape sequences for clearing your screen, etc.
XBy default, it uses the VT100 sequences which work for a wide range of
Xterminals.  See topic Terminal_types.
X2 Commands   `032
XUsually, all commands to BOSS begin with the command character which by
Xdefault is C-\ (control-\).  The command character can be changed by using
Xthe /COMMAND_CHARACTER qualifier to BOSS.  The command character is not
Xrequired is when there is no current process (i.e., initially and
Ximmediately after logging out of a process).  In that case the command
Xcharacter is optional.
X
XThe commands are:
X
X    C-h (or BS) Print command summary
X    C-z     Quit (asking confirmation if there are processes)
X    a       Switch to process labeled A (and similarly with a thru z)
X    A       Clear screen and then switch to process A
X    C-n a   Create new process A as a subprocess (C-n A clears screen first)
X    C-t a   Create process A at top level (C-t A clears screen first)
X    C-k     Kill the current process (asks for confirmation)
X    C-b     Buffer output for this process
X    C-o     Discard output for this process
X    C-p     Print output from this process
X    C-w     Stop output from this process
X    ?       List processes and output flags
X             (* means current, +/- means waiting for output)
X    C-\     Sends the command character to the current process
X    DEL     Do nothing
X    other   Sound the bell on the terminal
X2 Qualifiers
XWhen starting BOSS you can provide the following qualifiers:
X
X/COMMAND_CHARACTER
X /COMMAND_CHARACTER=num
X Default: /COMMAND_CHARACTER=%O34 (i.e., C-\)
X
XUse the character whose ASCII code is num as the command character instead
Xof C-\.  E.g.,
X  BOSS/COMMAND_CHARACTER=%X1F   ! set command character to C-_
X  BOSS/COMMAND_CHARACTER=%O37                   ! the same
X  BOSS/COMMAND_CHARACTER=31                     ! the same
X  BOSS/COMMAND_CHARACTER='F$CVSI(0,6,"_")'      ! the same
X  BOSS/COMMAND_CHARACTER='F$CVSI(0,8,"``")'      ! set to `` (backquote)
XRepeating the command character twice sends the character to the current
Xprocess.  C-z is disallowed as a command character since otherwise you
Xwouldn't be able to quit.
X
X/START_PROCESS
X /START_PROCESS=(process-1,process-2,...)
X
XBOSS immediately starts up the specified processes.  E.g.,
X  BOSS/START_PROCESS=A
Xstarts process A.  You are left in the last process specified; e.g.,
X  BOSS/START_PROCESS=(E,D)
Xstarts E and D and sets D to be the current process
X
X/STUFF_STRING
X /STUFF_STRING=(string-1,string-2,...)
X
XThis qualifier is processed in parallel with /START_PROCESS.  string-n is
Xsent the process-n when it is started.  A carriage return is added to the
Xstring unless the string is empty.  If the /STUFF_STRING list is shorter
Xthan the /START_PROCESS list, then nothing is sent to the remaining
Xprocesses.  E.g.,
X  BOSS/START=(E,D)/STUFF=EMACS
Xstarts process E runs Emacs in it.  Then BOSS starts process D (and sends
Xnothing to it).  To send more than one command to a process, you can do,
Xe.g.,
X  BOSS/START=(B,B)/STUFF=("SHOW TIME",FINGER)
Xwhich start process B and sends runs both SHOW TIME and FINGER.  (Or else
Xyou can construct a DCL string with an imbedded carriage return.
X
X/OUTPUT_FLAGS
X /OUTPUT_FLAGS=(flag-1,flag-2,...)  flag-n is one of b, o, w, p
X
XThis qualifier is processed in parallel with /START_PROCESS.  The output
Xflag for process-n is set to flag-n.  If the /OUTPUT_FLAGS list is shorter
Xthan the /START_PROCESS list, then the output flags for the remaining
Xprocesses are set to the default.
X
X/DEFAULT_OUTPUT_FLAG
X /DEFAULT_OUTPUT_FLAG=flag (one of b, o, w, p)
X Default: /DEFAULT_OUTPUT_FLAG=b
X
XThis sets the default output flag.  See topic Output_flags.
X
X/BEGIN_PROMPT
X /BEGIN_PROMPT=string
X Default: /NOBEGIN_PROMPT
X
XThis specifies the part of the DCL prompt which appears before the process
Xlabel.  E.g.,
X  BOSS/BEGIN_PROMPT="--"/END_PROMPT=">> "
Xgives you DCL prompts of the form "--Q>> ".
X
X/END_PROMPT
X /END_PROMPT=string
X Default: /END_PROMPT="> "
X
XThis specifies the part of the DCL prompt which appears after the process
Xlabel.
X
X/SWITCH_CREATE
X /SWITCH_CREATE
X Default: /NOSWITCH_CREATE
X
XBy default, you have to create a process with either C-\ C-n x or C-\ C-t
Xx.  If /SWITCH_CREATE is set, then switching to nonexistent process
Xcreates it as a subprocess.  (I.e., C-\ x is equivalent to C-\ C-n x).  If
Xyou always want /SWITCH_CREATE set, then put
X    $ setup boss
X    $ boss == "''boss'/switch_create"
Xinto your LOGIN.COM file.
X
X/PROCESS_DEFAULT
X /PROCESS_DEFAULT=process-type (one of SUBPROCESS and TOP_LEVEL)
X Default: /PROCESS_DEFAULT=SUBPROCESS
X
XThis governs the types of the processes created by /START_PROCESS, process
Xswitching initiated by BOSS$SWITCH.  (I.e., all process creation except for
Xvia C-\ C-n x and C-\ C-t x.)
X
X/FLOW_CONTROL
X /FLOW_CONTROL
X Default: /NOFLOW_CONTROL
X
XNormally, everything you type is passed on to the current process.  This
Xincludes the flow-control characters control-s and control-q.  This results
Xin some delay in these characters being acted upon.  Your terminal may
Xtherefore receive many additional characters after a C-s is typed, causing
Xyou to lose information off the top of your screen or your terminal's input
Xbuffer to overflow.  With
X    BOSS/FLOW_CONTROL
XC-s and C-q are intercepted by the terminal driver and used as flow-
Xcontrol.  This cause C-s to be acted on more promptly.  The drawback is
Xthat you can never send C-s and C-q to your program.  This breaks certain
Xprograms, notably Emacs, which need to be able to receive all the ASCII
Xcharacters.  A second drawback is that once the output is stopped with C-s,
Xonly a C-q can get it going again.  You can't interrupt it with a C-y as
Xyou can normally.  (This is because BOSS/FLOW_CONTROL only treats C-s and
XC-q as special.  C-y and C-c are treated as ordinary characters.)
X
X/DELETE_CHARACTER
X /DELETE_CHARACTER=num
X Default: /DELETE_CHARACTER=%O177 (i.e., DEL)
X
XUse the character whose ASCII code is num as the delete character instead
Xof DEL.  This is useful on some terminals with weird keyboards.  E.g., on
Xsome ADM terminals, the delete key is shift-underscore.  If you do
X  BOSS/DELETE_CHARACTER='F$CVSI(0,8,"_")'
Xthen underscore and delete are interchanged.  (I.e., the underscore key
Xsends a delete to your program, and the shift-underscore key sends an
Xunderscore to your program.)
X
X/UW
X /UW
X Default: /NOUW
X
XEnter BOSS in multi-window mode.  You must be running the UW multi-window
Xterminal emulator on a Macintosh computer.  See topic Windows for more
Xinformation.
X2 Terminal_types
XWhen switching processes, BOSS tries either to clear the screen or to move
Xto the bottom of the screen.  By default, it uses VT100 escape sequences for
Xthese operations.  However, if you define the logical name BOSS$TERM to be
Xthe name of some other terminal, then it will use the escape sequence for
Xthat terminal.
X
XE.g., if you're using an ADM3A terminal, you should do
X    $ DEFINE/NOLOG BOSS$TERM ADM3A
Xbefore starting BOSS.  (ADM3A users would probably also want to set the
Xdelete character to underscore.  See topic /DELETE_CHARACTER.)
X
XAt present BOSS only knows about three types of terminals: VT100, VT52,
XADM3A, and UNKNOWN.  The last choice makes minimal assumptions about the
Xterminal, and should always give a reasonable display.
X2 Process_types
XBOSS deals with two types of processes: subprocesses and top-level
Xprocesses.
X
XSubprocesses are what you get with the DCL command SPAWN.  They inherit
Xsymbols and logical names from the parent process (i.e., BOSS itself) at
Xcreation time.  The resources it uses count against the parent's quotas.
XThe number of subprocesses is governed by your subprocess quota.
XSubprocesses share the job logical name with the parent process.  This gives
Xa way for subprocesses to communicate with one another and with their
Xparent.
X
XTop-level processes acts just like an entirely new login session (as though
Xyou had done SET HOST 0).  Indeed, you have to log in to get the process
Xgoing.  The resources that such processes use do not count against the
Xparent's quotas.  SHOW USERS will show that you are logged in multiple
Xtimes.
X
XWhich type of process should you use?
X
XIn most cases subprocesses are best.  These usually are quicker to get
Xstarted (since you don't have to go through the login procedure again).
XBOSS is able to set the process name and DCL prompt to include the process
Xlabel.  Synchronous switching to another process from a subprocess is
Xpossible using the BOSS$SWITCH and BOSS$STUFF job logical names.
X
XWhen should you use a top-level process?  Here are some cases:
X* You need to log in as someone else.
X* You need to run a large program that uses all of one of your quotas.
X* You need to run with a different CLI. Log in with e.g., /CLI=SHELL.
X* Your subprocess quota is too low to allow you to create subprocesses.
X
XType C-\ C-n a to start subprocess A; type C-\ C-t b to start top-level
Xprocess B.
X2 Output_flags
XEach process has an output flag which may be set by C-\ followed by one of
XC-b, C-o, C-p, or C-w (this sets the flag to b, o, p, or w, resp.).  This
Xflag governs what BOSS does to the output of a process which is not current.
X(The current process always gets its output displayed immediately.)  The
Xmeanings of these settings are
X
X b  Buffer output for this process.  Output is saved in a 4k buffer.  Buffer
X    is output when the process becomes current.  The process hangs when this
X    buffer fills.  This is useful for running a program which dribbles
X    output which you do not want to lose.  In the process list (obtained by
X    C-\ ?), a - indicates that there is output ready to be displayed, and a
X    + indicates that the buffer is full (and the process is probably
X    hanging).
X
X o  Discard output for this process.  Only the most recent write will by
X    output when the process becomes current.  This is useful for running a
X    program which periodically outputs some straightforward information such
X    as ``Processing record 103', where all you care about is the most recent
X    output.  In the process list, + means that there is output available
X    (but the process is continuing to run).
X
X p  Print output from this process.  Output is output to the terminal
X    regardless of whether this is the current process or not.  This is
X    useful if you need to be informed when a program completes.  Also it can
X    be used to display status information periodically on your screen (see
X    subtopic Examples).
X
X w  Stop output from this process.  The process can do a single write which
X    will be accepted and saved by BOSS.  The process will then hang when it
X    attempts to do the next write.  In the process list + means that there
X    is output available (and the process is probably hanging).
X
XThe default output flag is b.  The default can be changed by using the
XDEFAULT_OUTPUT_FLAG qualifier or by issuing one of the flag setting commands
Xwhen there is no current process (i.e., immediately after starting BOSS or
Xafter logging out of a process).
X
XThe best setting of the output flag very much depends on your application.
XYou will probably find the best setting to be b (the default).  If one
-+-+-+-+-+ End of part 1 +-+-+-+-+-

CC:
        hydrovax%nmt@relay.cs.net
        BUHLE@XRT.UPENN.EDU
        UNOCC07%ZEUS.DNET@FERGVAX.UNL.EDU
        MARK%ISIS@MITVMA.MIT.EDU
        eric@geology.tn.cornell.edu
        Everhart%Arisia.decnet@ge-crd.arpa
        gkn@Sds.MFEnet
        ROBIN%CSVA.SAINET@NMFECC.ARPA
        LUNDIN@URVAX.BITNET
