-A Add Members
-B Brief Toggle
-C Close Library
-D Delete Members
-E Extract Members
-F Filesweep Mode
-G Get Filespec
-H Help
-K Krunch Library
-L List Members
-N Rename Members
-O Open Library
-P Print Members/Files
-Q Unsqueeze Members
-R Replace Members
-S String Search
-T Replace/Add Members
-U Drive/User Change
-V View Members
-W Wildcard Open
-X Exit Nulu
-Y Disk Directory
-Z Zap Disk Files
-< Redirect Imput
-> Redirect Output
:-A	 ADD MEMBERS
	 Syntax: -a filespec[ filespec...]

Use  this command to add files from disk to the current  library.
NULU will make a series of passes through the  directory,  adding
files as it goes,  until the list of matching files is exhausted.
If  a matching filename already exists as an active member in the
library,  its  name  will be displayed and the file will  not  be
added.

In  all file addition and replacement operations,  if  a  deleted
entry  of  identical  size can be located,  that disk  space  and
directory entry will be used rather than allocating new space for
the file.  This means that it will be necessary to reclaim wasted
disk space less often.

An LU style CRC will be generated for each file added.
:-B	 BRIEF TOGGLE
	 Syntax: -b

This toggles the prompting mode.   The release version of NULU is
setup to print the full name of the current mode for a prompt, as
in  "-Add  members A0:>".   If BRIEF is turned on the  user  will
simply see "-A A0:>".  NULU may be permanently patched to default
to BRIEF ON or OFF.  See NULU MODIFICATION file.
:-C	 CLOSE THE LIBRARY
	 Syntax: -c

This command closes the current library, writing its directory to
disk if any changes have been made to the directory.  The library
directory is NEVER written except when the library is closed,  so
be  sure to do it.   If you forget to do so and remove the  disk,
NULU  will  prompt  you for the disk again and  will  attempt  to 
recover.

Some other operations that cause the current library to be closed
are: -k, -o, -w, -x
:-D	 DELETE MEMBERS/FILES
	 Syntax: -d filespec[ filespec (filespec)...]
	 Syntax: -d du:filespec[ du:filespec...]

If the drive/user specification is included,  the DELETE function
will  apply  to files on disk,  otherwise it applies  to  library
member files.

Member  files  matching the given filespec will be given  deleted
status  in  the library directory,  except when the  filespec  is
enclosed in parenthesis.   In that case matching deleted  members
will  be given active status.   That is,  they will be undeleted.
If the filename of a matching deleted member file already  exists
as an active member,  the filename will be displayed and the file
will not be undeleted.

If the member file being deleted has a size of zero sectors,  its
entry  will  be  entirely  REMOVED from  the  library  directory,
thereby creating a new, free entry.
:-E	 EXTRACT MEMBERS
	 Syntax: -e filespec[=newfilespec filespec du:filespec...]

Use  this command to extract active member files.   If extraction
to the current drive/user area is desired,  no further syntax  is
necessary.   To  indicate another drive,  however,  a destination
drive/user  area  may be included in the  source  filespec.   For
example  "-e a5:**" would extract all active members to drive  A,
user  area  5.   Files may be renamed as well  as  redirected  by
indicating  a filespec along with,  or in place of,  a drive user
specification following an equals sign.

Examples: 1.  "-e *asm=*bak"
          Extract all files with a type of .ASM to the default
          drive/user renaming them with the filetype of .BAK.

	  2.  "-e *asm=5:*.txt"
          Extract  all files of type .ASM to user area 5  of  the
          default drive, renaming each with the .TXT filetype.
~
	  3.  "-e fred.txt=sam.txt jane.inf=c8:girls.dbf"
          Extract   the  member  file  FRED.TXT  to  the  default
          drive/user under the name of SAM.TXT,  and extract  the
          member  file JANE.INF to user area 8 of drive  C:  with
          the filename GIRLS.DBF.

The two redirection rules to remember are:

     1.   If  a destination filespec is entered it cannot be  any
     less ambiguous than the source filespec,  i.e.,  "*asm=*bak"
     is valid while "**=*bak" is not valid.

     2.   Any filespec following an equals sign takes  precedence
     over  any  drive/user specification in the source  filespec,
     i.e.,  "-e   6:*asm=*bak" would extract all member files  to
     the current drive/user,  renaming them, and would ignore the
     "6:" specification.
~
During extraction,  a CRC is generated for each file.   After the
destination  file  has  been closed,  the  CRC  so  generated  is
compared  to  the CRC for that library member that was stored  in
the  library  directory,  if that value  was  non-zero.   If  the
results  are  not identical,  an error message will be  displayed
before the next member file or filespec will be  processed.   The
erroneous  destination   file  will not be deleted from  disk  by
NULU as a result of this error.
:-F	 FILESWEEP MODE
	 Syntax: -f

This  command  places NULU in its second  operational  mode,  the
filesweep  mode.   This  allows  the  user to  move  through  the
directory of active member files as if they were individual files
being  examined by a program like NSWEEP.   The filesweep  mode's
command list is as follows:

	 A Next member		    B Previous member
	 C Close library	    D Delete member
	 E Extract member	    F Find member
	 L Log new drive/user	    M Mass operations
	 O Open new library	    P Print member
	 Q Unsqueeze member	    R Rename member
	 T Tag member		    U Untag member
	 V View member		    W Wildcard rename
	 X Exit NULU		    Y Disk directory
	 Z NULU command mode	    ? Help!

Because of the extreme similarity between these commands and  the
commands of NULU's command mode, only a short description of each
command will be given.
         A  --	Advance to next member
		(spacebar, cr, or lf produces the same result)
	 B  --	Back up to previous member
	 C  --	Close the current library
	 D  --	Delete current member file
	 E  --	Extract current member file
		(prompt allows redirection)
	 F  --	Find first member matching input filespec
	 L  --	Change drive/user defaults
		(returns file pointer to the top of the file list
		 and untags all member files)
	 M  --	Mass operations on all tagged files
		(allows    Deletion,     Extraction,    Printing,
                 Unsqueezing, or Viewing)
	 O  --	Open new library (closes the current library)
	 P  --	Dumps the current member file to LST:
		(unsqueezes if needed)
	 Q  --	Extract  current  member  file,   unsqueezing  if
		necessary (prompt allows redirection)
	 R  --	Rename current member file
	 T  --	Tag current member
	 U  --	Untag current member
	 V  --	View current member file (unsqueezes if needed)
	 W  --	Wildcard  rename (prompts for oldname & newname)
	 X  --	Exit NULU (closes all files)
	 Y  --	Get disk directory for default drive/user
		(returns file pointer to the top of the file list
		 and untags all member files)
	 Z  --	Return	to NULU command  mode
		(current library remains open)
	 ?  --	Print the filesweep mode menu
~
If,  when the filesweep mode is entered,  or after a library  has
been closed, there is not a library currently open, the filesweep
mode  will prompt with "No library open" and will accept only the
following commands: L,O,X,Y,Z,?

Likewise,  if a library is open but only has a directory with  no
other  active  members,  the  message "No member files"  will  be
printed and only the commands listed above will be accepted.

During filesweep operation, each file will be listed in the order
in which it is found in the directory,  along with the size in  K
that  the  file would occupy if it were extracted to the  default
drive.

If  the  filesweep  mode is terminated by a return  to  the  NULU
command mode,  any commands that followed the "-F" command on the
previous NULU command line will be executed.
:-G	 GET FILESPEC
	 Syntax: -g filespec

NULU  will  search for the filespec indicated.   If it is  found,
processing continues.  If not, the user is prompted to insert the
disk  containing  that filespec.   The drive is  then  reset  and
search again.   The program will prompt forever until it receives
the  proper  filespec or until a ^C is entered,  forcing NULU  to
continue without the filespec being found.

This  command  can  be  useful when attempting  to  control  NULU
through a submit utility like DRI's SUBMIT.COM.

For  example,  one might type "nulu -o a:asm -g  b5:-work.005  -e
b10:  -g a0:-5.005 -x".  After loading, NULU would open a library
called  ASM.LBR on drive A:  in the current user area.   Next, it
would search user area 5 of drive B: for filespec -WORK.005 until
it was found.  Then all active member files would be extracted to
user area 10 of drive B:.  Finally, NULU would search user area 0
of drive A: for a filespec called -5.005 until found.  Then, NULU
would terminate.
~
Notice  here that the ASM.LBR didn't have to be closed before the
search for the final filespec because no change had been made  to
the library directory.   If a change had been made, after the new
filespec had been loaded,  NULU would have demanded the disk with
ASM.LBR  back so it could update the directory.   Therefore,  the
GET operation would be effectively negated.
:-H	 HELP
	 Syntax: -h

Print the command mode menu.
:-K	 KRUNCH LIBRARY
	 Syntax: -k[ <number of entries to allow]

Even  though  all members are kept in alphabetical order  at  all
times, when a member is deleted the disk space it occupies is not
released  to  the  operating system until the KRUNCH  command  is
executed.

KRUNCH consists of the following steps:
     
     1.  If a file of the same name as the library already exists
     in  the  default  drive/user  area  AND  THE  LIBRARY   FILE
     ORIGINATES FROM A DIFFERENT DRIVE/USER, a message indicating
     that  the  file  exists  will be displayed  and  the  KRUNCH
     command  will  be skipped.   You must delete  the  offending
     file  or  change drive/user area  before  the KRUNCH can  be
     effected.

     2.  The library is closed.
~
     3.  A  new  library  called  WORK-LBR.$$$ is opened  in  the
     default  drive/user area and the user is prompted  to  input
     the  number of files that the new library should be able  to
     contain.   If  the user wants just enough entries to contain
     the  currently active members,  the number 1 or  any  number
     less  than or equal to the current number of active  entries
     may  be entered.   If the optional parameter listed above is
     entered,  it  will be used as the number of  entries.   (The
     KRUNCH  process may be aborted here by typing RETURN  or  0.
     Please  note  that the library directory counts as an  entry
     and will automatically be accounted for by NULU.)
~
     4.   Once  WORK-LBR.$$$ is opened,  the active member  files
     from the original library will be copied one by one into the
     new library.   The copy routine uses a recursive process  to
     copy  as  many  files at one time as  possible.   A  CRC  is
     calculated for each member as it is copied.   If this number
     does  not  match  the CRC recorded in the  original  library
     directory,  the  message "CRC  ERROR-Continue?  (y/n)"  will
     appear after the filename in question.   A reply of "N" will
     result  in  the work library being deleted and the  original
     library being re-opened.  Otherwise, the newly generated CRC
     for  the  file will be stored in the directory  of  the  new
     library.

     5.   The  old library is deleted and WORK-LBR.$$$ is renamed
     with the old library name.

Examples: 1.  "-k"
          The library would be KRUNCHed to the default drive/user
          area.  The user would be prompted to nput the number of
          entries to allow.
~
	  2.  "-k <1"
          The library would be KRUNCHed to the default drive/user
          area with just enough entries to contain all  currently
          active member files.

          3.  "-u b5: -k <63"
          The  default  drive/user area would be changed  to  B5:
          before  the KRUNCH begins.   Then the library would  be
          KRUNCHed, allowing 63 entries.

          4.  "-u b5: -k <1 -u a0: -k <63"
          The  default  drive/user area would be changed  to  B5:
          before  the KRUNCH begins.   The KRUNCH would commence,
          allowing  only  enough entries to  contain  all  active
          members.   The drive/user area would be changed to A0:.
          Then,  the library would be KRUNCHed again, allowing 63
          entries.
:-L	 LIST MEMBERS
	 Syntax: -l[ filespec]
	 Syntax: -l[ (filespec)]

Use  this command to list the contents of the library  directory.
Each  member  filename  will  printed followed  by  the  starting
relative  sector  number in the library file,  the  size  of  the
member in sectors, the size in K that the file would occupy if it
were to be extracted to the default drive/user area,  and the CRC
for the file.   Finally,  a recap of the size of all member files
listed  is printed,  along with the number of sectors occupied by
deleted files.

The parameters listed above can be used to control the  selection
of files for display.

Examples: 1.  "-l"
          All active member files listed.

          2.  "-l **"
          All active member files listed.
	 
          3.  "-l (**)"
          All deleted member files listed.
	 
          4.  "-l *asm"
          All  active  member  files  matching  the  filespec  of
          ????????.ASM listed.
	 
          5.  "-l (fred.txt)"
          All deleted member files called	FRED.TXT listed.
          (Note that is IS possible to have more than one deleted
           file with the same name.)
:-N	 RENAME MEMBERS
	 Syntax: -n oldfilespec=newfilespec[...]
	 Syntax: -n (oldfilespec)=newfilespec[...]

This  command  is used to rename active or deleted member  files.
Wildcards are fully supported, but the newfilespec can be no less
ambiguous than the oldfilespec.   Deleted members may be  renamed
by enclosing the oldfilespec ONLY in  parenthesis.

Examples: 1.  "-n *asm=*bak"
          All  active members matching the filespec  ????????.ASM
          would be renamed with a filetype of .BAK.

          2.  "-n (fred.txt)=sam.txt"
          The  first deleted member file called FRED.TXT would be
          renamed  to SAM.TXT.   All other members matching  that
          filespec   would  be  listed  along  with   a   message
          indicating that they could not be renamed.
~
          3.  "-n **=**"
          All  active member files would be listed,  each with  a
          message  indicating  that  they could  not  be  renamed
          because the name already exists.
:-O	 OPEN A LIBRARY
	 Syntax: -o filename[ <number of entries to allow]

With the exception of the filesweep Open Library command, this is
the  only method to open or create a library.   NULU will  search
for  the filename indicated.   If it is found,  it will be opened
and  a message will be displayed indicating the size of the  Data
Transfer  Buffer.   This is the number of sectors in memory  that
NULU  will have to use in extracting,  adding or  copying  member
files.

If  the  file  is not found,  the user will be prompted  for  the
number of entries to allow in the new library.   If the  optional
parameter  above is passed,  the number will be used to determine
the directory size of the library.   All directories can  contain
some multiple of 4 entries.  All numbers input will be rounded up
to the nearest multiple of 4.  Remember that the directory itself
counts  as one entry and that NULU will automatically make  space
for it.

The filename passed must be unambiguous.
~
NOTE ON DIRECTORY SIZE:
Depending  on  available memory,  libraries with as many  as  800
entries  (theoretically)  can  be opened.   But  watch  the  Data
Buffer Size!   If it is less than 9 sectors you will not be  able
to unsqueeze any files.  With a user TPA of 58k, I have been able
to  open libraries with no more than 584 total members and  still
be  left with a buffer of 9 sectors.   (See -< command and how it
affects library memory.)
:-P	 PRINT MEMBERS/FILES
	 Syntax: -p filespec[ filespec (filespec)...]
	 Syntax: -p du:filespec[ du:filespec...]

If  the drive/user specification is included,  the PRINT function
will  apply  to files on disk,  otherwise it applies  to  library
member files.

With  this  command,  the ascii contents of  files  matching  the
filespecs  given will be dumped to the list device.   If the file
is squeezed, NULU will unsqueeze it.  Deleted library members may
be listed by enclosing the appropriate filespec in parenthesis.
:-Q	 UNSQUEEZE MEMBERS
	 Syntax: -q filespec[=newfilespec filespec...]

This command is identical in operation and syntax to the  EXTRACT
command,  except that if the matching members are squeezed,  they
will be unsqueezed.
:-R	 REPLACE MEMBERS
	 Syntax: -r filespec[ filespec...]

This  command  is  identical in operation and syntax to  the  ADD
command,  except that matching files will be added to the library
ONLY if they already exist in the library.  They will be deleted,
then the new files will be added.
:-S	 STRING SEARCH
	 Syntax: -s filespec "string to search for"
	 Syntax: -s du:filespec "string to search for"

If the drive/user specification is included,  the SEARCH function
will  apply  to files on disk,  otherwise it applies  to  library
member files.

This  provides  a  way to do a SIMPLE search for a  given  string
among a group of files.   If the "string to search for" is  found
you  will  be  notified.   All files searched  are  listed.   The
individual  line on which the item was matched is  not  displayed
because the match is not made on a line basis.   That is, you may
search  .COM  files  or  squeezed .OVR files just  as  easily  as
searching text files.   However, the implementation is admittedly
rather  weak at this point as things like control characters  and
tabs  are  ripped  out  of the command  line  before  the  search
function  even sees the command.   Enjoy it and I'll  improve  it
later.
:-T	 REPLACE/ADD MEMBERS
	 Syntax: -t

This  command  is  a  combination  of the  ADD  and  the  REPLACE
commands.  If the files do not exist in the library, they will be
added.  If they do exist, they will be replaced.
:-U	 DRIVE/USER CHANGE
	 Syntax: -u new drive/user

Use this command to change the default drive/user area.   A colon
":" must follow the drive/user spec.  For example, "-u a5:" would
switch the default drive/user area to A5:.
:-V	 VIEW MEMBERS/FILES
	 Syntax: -v filespec[ filespec (filespec)...]
	 Syntax: -v du:filespec[ du:filespec...]

If  the drive/user specification is included,  the VIEW  function
will  apply  to files on disk,  otherwise it applies  to  library
member files.

This  command will list the ascii contents of all files  matching
the  given  filespec  to the  console  device.   Deleted  library
members   may   be  indicated  by  enclosing  the   filespec   in
parenthesis.  If the files are squeezed, they will be unsqueezed.

At each page, NULU will accept one  of the following commands:

	 1.  ^X to skip to the next matching file
	 2.  ^C to abort further listing
	 3.  L to list one line
	 4.  CR, space, or LF to list another full page
~
At  the  end  of each file the message  "Press  RETURN"  will  be
displayed and NULU will wait for a keystroke before moving to the
next matching file.
:-W	 WILDCARD OPEN
	 Syntax: -w filespec commands to process

	 For advanced users only.

This  can  be  one of the most powerful,  and possibly  the  most
dangerous, of all NULU commands.  It allows the user to specify a
group of libraries on which to let a set of commands operate.

For example,  "-w a5:*lbr -l" would open all files found on drive
A  in  user area 5 as libraries and list the  contents  of  each.
This would happen in sequence for all matching files in the order
in  which  they  were found in the  directory.   Note  that  this
command  has  the  same effect as the -O command except  that  it
processes wildcard library filespecs and that the user's  control
over  each  library  opened is limited to the  single  line  that
invokes the -W command.   That is,  all commands applying to each
library opened must be contained on the one command line.

The  advent  of this command is the reason that certain  commands
that  used  to be restricted to NCF  redirection  files  are  now
available at the command level.

This command:
     "-w *lbr -k <5 -p ** -l -' "hit enter for next file " -:"
would result in the following for each matching file:

	 1)  The library would be KRUNCHed to 5 members.
	 2)  All member files would be sent to LST:.
	 3)  The library directory would be listed.
	 4)  The prompt,  "PRESS ENTER FOR NEXT FILE "	would  be
	     displayed to CON:
	 5)  NULU would wait for the user to press RETURN  before
	     passing control back to -W which would then  do  the
             same thing for the next library.

"-w  *lbr  -f"  allows me to look at a lot of  libraries  through
filesweep without having to know their names.

"-w *lbr -< command.ncf" DOESN'T WORK.   I will work on that  for
next time, if there is a next time.

Use a lot of caution when using this command.   It is new even to
me, but I have found it to be EXTREMELY useful.
:-X	 EXIT NULU
	 Syntax: -x

This  command  will set a flag indicating that when  the  current
NULU command line is exhausted,  NULU should terminate.   But the
command  is actually a toggle.   If it is entered twice on a line
the  effect of the second issuance will be to negate  the  first.
Note that the support for command chaining has been removed.

Examples: 1.  "-x"
          The   termination  flag  will  be  set  and  NULU  will
          terminate when the current command line is exhausted.

          2.  "-x -x"
          The termination flag is set and then reset.   NULU does
          not terminate.
:-Y	 DISK DIRECTORY
	 Syntax: -y[ filespec]

This  command  will  print  an unsorted  directory  of  the  disk
indicated  by  the parameter passed,  or a complete directory  if
none  is passed.   The scope of the directory may be  limited  by
indicating  the  appropriate ambiguous filespec.   If the dim  or
reverse  video  strings have been defined,  NULU  will  use  that
characteristic  to indicate that certain file attribute bits  are
set in each filename.
:-Z	 ZAP DISK FILES
	 Syntax: -z filespec

Use  this command to delete disk files while still running  NULU.
Each  file  matching the ambiguous filespec given will be  listed
and  deleted.   Libraries  can be deleted just as easily  as  any
other type of file,  so be careful.  The only protection afforded
is  that  the  library currently open,  if  any,  will  never  be
deleted.
:-<	 REDIRECT INPUT
	 Syntax: -< filename

This  command will cause NULU to open the filename indicated  and
begin  accepting commands from it instead of receiving them  from
the  console.   This type of file is,  in effect,  a NULU Command
File.   The  filetype  will default to ".NCF" if no  filetype  is
specified.   Syntax of the commands in this file is compatible in
every   way  to  the  syntax  used  in  normal  NULU   operation.
Additional   functions   have  been  added  to   facilitate   the
development of NCF files.  Each command line in the file must  be
terminated  by a CR,LF,  and will be converted to upper case  and
echoed  to the console before processing.   The last line in  the
file should end with at least two CR,LF combinations.   After all
NCF commands have been processed, control will be returned to the
console.   Any  commands  appearing after a "-<" command will  be
ignored.
~
If another "-<" command is encountered in the file,  the  current
command file will be suspended and the new file opened.  When the
commands  in that new file have all been processed,  control will
"return"  to the file that "called" the new file.   This  nesting
can  continue to the level allowed by the number of  input  files
patch described in NULU MODIFICATION.   (It can actually continue
to  a  much deeper level if no library is open,  but  what's  the
point?	Hmmm... maybe a tutorial...)

The filename passed must be unambiguous.

Of  the following commands,  these are valid only  when  received
from an NCF file:  -j,   -z,  -".   The others may be used at any
time  but are included here and are omitted from the menu because
of their programmatic nature.
~
     -J  JUMP TO LINE
         Syntax: -j line number

	 Use  this  command  to have NULU start  reading  command
         lines  from  the  current NCF file at  the  line  number
         indicated.   For  example,  "-j 1" would cause  NULU  to
         start  reading lines from the current NCF file beginning
         at  line number 1.  Forward and backward references  are
         allowed.  A reference to line number 0 will be  ignored.
         Any  references to non-existent line numbers will  cause
         the current NCF file to terminate,  thereby returning to
         the  next  higher NCF level,  or to the command mode  if
         this is the highest NCF level.

	 Note that if you add or delete any lines in an NCF file,
	 that  will completely foul up any jump commands in  that
	 file.	That's a bug, not a feature.
~
     -Z  TOGGLE CONSOLE
	 Syntax: -z

	 This  command toggles all output to the console  device.
	 That  is,  if this command is issued once,  all  console
	 output is shut down,  with the exception of the  special
	 commands  listed  below.   Issue it again,  and  console
	 output will be re-enabled.
~
     -'  PRINT TEXT
	 Syntax: -' "text to print"

	 Use this command to print text to the console, no matter
	 what the condition of the console output toggle. Text to
	 be  printed  must be enclosed in  quotes.   The  opening
	 quote	MUST  be present,  but the closing quote is  only
	 necessary to delimit any following commands.
~
     -"  PROMPT AND CHAIN TO PREVIOUS MODE
	 Syntax: -mode to chain to -" "prompt" -failure mode

	 My  method of syntax diagramming falls utterly short  of
	 describing this command, I know.  Let's take it one step
	 at  a time.   This command allows the NULU programmer to
	 specify the mode to which he wishes to pass a parameter,
	 prompt the user for that parameter,  and to also specify
	 actions to be taken if no response is received from  the
	 user.
~
         For example:
               "-y *lbr -o -" "open which library? " -j 65535"

	       Would result in:
	 1.  A directory listing of all files with a type of .LBR
	 would	be  listed to the console device if  the  console
	 were toggled on.
	 2.  The OPEN LIBRARY mode would be transparently entered
	 just long enough for NULU to take note of it.
	 3.  The console would be prompted with the message:

	 (CR, LF)
	 OPEN WHICH LIBRARY?
~
	 and NULU would wait for the user to enter a line of text
	 NOT EXCEEDING the length of the prompt(!).   If the user
	 entered and RETURN by itself or a null line,  the prompt
	 would reappear on the next line.   If the user entered a
	 valid line,  the first word on that line (delimited by a
	 space,  tab,  etc.)  would be passed to the OPEN LIBRARY
	 mode and the balance of the line would be ignored.   If,
	 on the other hand,  the user entered an ESCAPE  followed
	 by  a	RETURN (1bh,  0dh) the commands after the  prompt
	 would	be executed and control would be passed  to  line
	 number 65535, almost surely a non-existent line, thereby
	 terminating the current NCF file.

	 Some  commands which normally accept  parameters  cannot
	 receive  parameters  from  this mode  because	they  are
	 decoded differently.  These include:
         -:, -;, -l, -n, -x, -y, ->
~
     -:  WAIT FOR RETURN
	 Syntax: -: -failure mode

	 This  command	will  force NULU to wait for  the  RETURN
	 (0dh) character to be input to the console device.  If a
	 RETURN is received, the balance of the command line will
	 be ignored.   If a ^C is entered, the remaining commands
	 on the line will be executed.
~
     -;  COMMENT
	 Syntax: -; comment about this kludge of a JCL

	 This  command	will  cause  NULU  to  ignore  all   text
	 appearing after the command on the same physical command
	 line.
:-> REDIRECT OUTPUT
	 Syntax: -> filename
	 Syntax: ->

With the first form of this command,  NULU output will be sent to
the filename indicated.   The default filetype of ".NOF" will  be
used if no filetype is specified.  If the file already exists, it
will  be deleted.   All special characters that the user may have
patched into NULU (see below,  NULU MODIFICATION) will be sent to
the  file as well,  with the exception of the EOF  character,  26
(1ah).   The  only output not echoed to the file will  be  output
caused by viewing or printing a member file.  Even if the console
has  been  turned  off by an NCF file,  all console  output  will
continue to be sent to this file.

The filename passed must be unambiguous.

Under  the second form of this command,  the current output file,
if  any will be closed.   When NULU is caused to  terminate,  the
current output file is closed along with the current library,  if
any.
