TXTLIB CMS User Area command Use the TXTLIB command to update CMS text libraries. The format of the TXTLIB command is: +----------+------------------------------------------------------------------+ | TXTlib | GEN libname fn1 [fn2...] [(options...[)]] | | | ADD libname fn1 [fn2...] [(options...[)]] | | | DEL libname member1 [member2...] [(options...[)]] | | | MAP libname [(options...[)]] | | | options: | | | DISK PRINT TERM | +----------+------------------------------------------------------------------+ where: GEN creates a TXTLIB on your A-disk. If a TXTLIB with the same name already exists, it is replaced. ADD adds TEXT files to the end of an existing TXTLIB on a read/write disk. No checking is done for duplicate names, entry points, or CSECTs. DEL deletes members from a TXTLIB on a read/write disk and compresses the TXTLIB to remove unused space. If more than one member exists with the same name, only the first entry is deleted. MAP lists the names (entry points) of TXTLIB members, their locations in the library, and the number of entries. libname specifies the filename of a file with a filetype of TXTLIB, which is to be created or listed or from which members are to be deleted or added. fn1 [fn2...] specifies the name(s) of file(s) with filetype(s) of TEXT, that you want to add to a TXTLIB. member1 [member2...] specifies the name(s) of TXTLIB member(s) that you want to delete. Options: DISK writes a CMS file, named "libname MAP A5," that contains a list of TXTLIB members. This is the default. PRINT spools a copy of the TXTLIB map to the virtual printer. TERM displays information about the TXTLIB on your terminal. Usage notes: 1. When a TEXT file is added to a library, its membername is taken from the first CSECT name or NAME statement in the TEXT file. Deletions and LOAD and INCLUDE command references must be made on these names. 2. Members must be deleted by their initial entry in the dictionary (that is, their "name" or the first ID name). Any attempt to delete a specific alias or entry point within a member will result in a "NOT FOUND" message. 3. If you want your TXTLIBs to be searched for missing subroutines during CMS loader processing; you must identify the TXTLIB on a GLOBAL command; for example: global txtlib newlib 4. You may add OS linkage editor control statements NAME, ALIAS, ENTRY, and SETSSI to a TEXT file before adding it to a TXTLIB. There must be a blank in column 1 and the ALIAS, NAME, and ENTRY statements must follow the END statement. The ALIAS statement must precede the NAME statement. The specified ENTRY point must be located within the CSECT. 5. TXTLIB members are not fully link-edited, and may return erroneous entry points during dynamic loading. 6. The total number of members in the TXTLIB file cannot exceed 1000. When this number is reached, an error message is displayed. The total number of entry points in a member cannot exceed 255. When this number is reached, an error message is displayed and the next text file (if there is one) is processed. The text library created includes all the text files entered up to (but not including) the one that caused the overflow. 7. TERM or PRINT options will erase the old MAP file, if one exists. 8. If you delete the last remaining member of a TXTLIB, the TXTLIB is erased. 9. If the TXTLIB DEL command terminates abnormally, the temporary file 'TXTLIB CMSUT1 A1' may remain on the disk. This file must be either deleted or renamed prior to executing the next TXTLIB DEL command. If the library TXTLIB file that was being updated prior to the abnormal termination still exists, delete the 'TXTLIB CMSUT1' file, otherwise rename the 'TXTLIB CMSUT1' file to the name of the library TXTLIB file that has been deleted. Responses: When the TXTLIB MAP command is issued with the TERM option, the contents of the directory of the specified text library are displayed at the terminal. The number of entries in the text library (xxx) is also displayed. ENTRY INDEX name location . . . . . . xxx ENTRIES IN LIBRARY