PUNCH

CMS Commands

punch.helpcmd.txt
PUNCH                                                     CMS Transient command

Use the PUNCH command to punch a CMS disk file to your virtual punch.  The
format of the PUNCH command is:
+----------+------------------------------------------------------------------+
| PUnch    | fn ft [* fm] [([Header|NOHeader] [Member *|membername][)]]       |
+----------+------------------------------------------------------------------+
where:

fn       is the filename of the file to be punched.  This field must be
         specified.

ft       is the filetype of the file to be punched.  This field must be
         specified.

fm       is the filemode of the file to be punched.  If you specify it as an
         asterisk (*), the standard order of search is followed and the first
         file found with the specified filename and filetype is punched.  If fm
         is not specified, your A-disk and its extensions are searched.

Options:

Header | NOHeader
         inserts a control card in front of the punched output.  This control
         card indicates the filename and filetype for a subsequent READCARD
         command to restore the file to a disk.  The control card format is
         shown below.  NOHeader does not punch a header control card.

MEMber * | membername
         punches members of MACLIBs or TXTLIBs.  If an asterisk (*) is entered,
         all individual members of that macro or text library are punched.  If
         membername is specified, only that member is punched.  If the filetype
         is MACLIB and the MEMBER membername option is specified, the header
         contains MEMBER as the filetype.  If the filetype is TXTLIB and the
         MEMBER membername option is specified, the header card contains TEXT
         as the filetype.

Header Control Card:
   Column   Field Width   Contents   Meaning
   1        1             :          Identifies card as a control card.
   2-5      4             READ       Identifies card as a READ control card.
   6-7      2             blank
   8-15     8             fname      Filename of file punched.
   16       1             blank
   17-24    8             ftype      Filetype of file punched.
   25       1             blank
   26-27    2             fmode      Filemode of file punched.
   28       1             blank
   29-34    6             volid      Disk label from which file was read.
   35       1             blank
   36-43    8             mm/dd/yy   Date file was last written.
   44-45    2             blank
   46-50    5             hh:mm      Time of day file was written.
   51-80    30            blank


Usage notes:

1.  You can punch fixed- or variable-length records with the PUNCH command, as
    long as no record exceeds 80 characters.  Records with less than 80
    characters are right-padded with blanks.  Records longer than 80 characters
    are rejected.  PUNCH changes variable-length record files to fixed-length
    80-byte record files.

2.  If you punch a MACLIB or TXTLIB file specifying the MEMBER * option, a READ
    control card is placed in front of each library member.  If you punch a
    library without specifying the MEMBER * option, only one READ control card
    is placed at the front of the deck.

3.  One spool punch file is produced for each PUNCH command; for example:
       punch compute assemble (noh
    punches the file COMPUTE ASSEMBLE, without inserting a header card.  To
    transmit multiple CMS files as a single punch file, use the CP SPOOL
    command to spool the punch with the CONT option.