RECVXMIT for MVS3.8J / Hercules                                               
===============================                                               


Date: 11/03/2021  Release V0R9M00

*  Author:  Larry Belmontes Jr.
*           https://ShareABitofIT.net/RECVXMIT-in-MVS38J
*           Copyright (C) 2021  Larry Belmontes, Jr.


---------------------------------------------------------------------- 
|    RECVXMIT     I n s t a l l a t i o n   R e f e r e n c e        | 
---------------------------------------------------------------------- 

   The approach for this installation procedure is to transfer the
distribution content from your personal computing device to MVS with
minimal JCL and to continue the installation procedure using supplied
JCL from the MVS CNTL data set under TSO.                         

   Below are descriptions of ZIP file content, pre-installation
requirements (notes, credits) and installation steps.
 
Good luck and enjoy this software as added value to MVS 3.8J!
-Larry Belmontes



======================================================================
* I. C o n t e n t   o f   Z I P   F i l e                           |
======================================================================

o  $INST00.JCL          Define Alias for HLQ RECVXMIT in Master Catalog
 
o  $INST01.JCL          Load CNTL data set from distribution tape
 
o  $RECVXMI.JCL         Receive XMI SEQ to MVS PDSs                  
 
o  RECVXMIT.V0R9M00.HET Hercules Emulated Tape (HET) multi-file volume
                        with VOLSER of V0R9M00 containing software  
                        distribution.
 
o  RECVXMIT.V0R9M00.XMI XMIT file containing software distribution.   
 
o  DSCLAIMR.TXT         Disclaimer
 
o  PREREQS.TXT          Required user-mods 
 
o  README.TXT           This File                                              
 
 
Note:   ISPF v2.1 or higher must be installed under MVS3.8J TSO             
-----   including associated user-mods per ISPF Installation Pre-reqs.
 
 
Credit: RECV370 and XMIT370 are pre-requisites for this install
------- and available on some MVS3.8J TK3 and TK4- systems.          
        RECV/XMIT software (by Jim Morrison) is available on CBT File 571.
        Thanks to Jim Morrison for his CBT contribution.
        More information at:
        https://www.cbttape.org/cbtdowns.htm               
       
       
Credit: PUTCARD is a pre-requisite for this install and available from
------- an MVS Update article titled "CONTROL CARD IMAGE QUICK BUILDER"
        dated September 1998 by author UNKNOWN.  
        Thanks to Xephon and CBT for this contribution.
        For convenience purposes, a modified version is included for    
        installation.  More information at:  
        https://www.cbttape.org/xephon  as mvs9809.pdf
       
       
Note:   CUTIL00 is a TSO utility for CLIST variables.              
-----   For convenience purposes, a current version is included for
        installation.  More information at:
        https://www.shareabitofit.net/CUTIL00-in-MVS38j        


======================================================================
* II. P r e - i n s t a l l a t i o n   R e q u i r e m e n t s      |
======================================================================

o  The Master Catalog password may be required for some installation
   steps. 
 
o  Tape files use device 480.
 
o  As default, DASD files will be loaded to VOLSER=MVSDLB, type 3350 device.
    
   Below is a DATASET List after tape distribution load for reference purposes:
    
   DATA-SET-NAME------------------------------- VOLUME ALTRK USTRK ORG FRMT % XT
   RECVXMIT.V0R9M00.ASM                         MVSDLB    50    41 PO  FB  82  1
   RECVXMIT.V0R9M00.CLIST                       MVSDLB     2     1 PO  FB  50  1
   RECVXMIT.V0R9M00.CNTL                        MVSDLB    20     8 PO  FB  40  1
   RECVXMIT.V0R9M00.HELP                        MVSDLB     2     1 PO  FB  50  1
   RECVXMIT.V0R9M00.ISPF                        MVSDLB    15     8 PO  FB  53  1
   RECVXMIT.V0R9M00.MACLIB                      MVSDLB     2     1 PO  FB  50  1
   **END**    TOTALS:      91 TRKS ALLOC        60 TRKS USED       6 EXTENTS    
    
    
   Confirm the TOTAL track allocation is available on MVSDLB.                 
    
   Note: A different DASD device type may be used to yield
         different usage results.
 
o  TSO user-id with sufficient access rights to update SYS2.CMDPROC,  
   SYS2.CMDLIB, SYS2.HELP, SYS2.LINKLIB and/or ISPF libraries.
 
o  For installations with a security system (e.g. RAKF), you MAY need to
   insert additional JOB statement information.
    
   //         USER=???????,PASSWORD=????????
 
o  Names of ISPCLIB (Clist), ISPMLIB (Message), ISPLLIB (Load) and/or 
   ISPPLIB (Panel) libraries.
 
o  Download ZIP file to your PC local drive.    
    
o  Unzip the downloaded file into a temp directory on your PC device.
 
 
                                                
======================================================================
* III. I n s t a l l a t i o n   S t e p s                           |
======================================================================
                                                
+--------------------------------------------------------------------+
| Step 1. Define Alias for HLQ RECVXMIT in MVS User Catalog          |
+--------------------------------------------------------------------+
|         JCL Member: RECVXMIT.V0R9M00.CNTL($INST00)                 |
+--------------------------------------------------------------------+
 
 
______________________________________________________________________
//RECVXMIT JOB (SYS),'Def RECVXMIT Alias',   <-- Review and Modify 
//         CLASS=A,MSGCLASS=X,               <-- Review and Modify
//         MSGLEVEL=(1,1),NOTIFY=&SYSUID     <-- Review and Modify
//* -------------------------------------------------------*
//* *  RECVXMIT in MVS3.8J TSO / Hercules                  *
//* *  JOB: $INST00  Define Alias for HLQ RECVXMIT         *
//* *  Note: The master catalog password will be required  *
//* -------------------------------------------------------*
//DEFALIAS EXEC PGM=IDCAMS 
//SYSPRINT DD  SYSOUT=*
//SYSIN    DD  *
 PARM GRAPHICS(CHAIN(SN))
 LISTCAT ALIAS  ENT(RECVXMIT) 
  
 IF LASTCC NE 0 THEN -
    DEFINE ALIAS(NAME(RECVXMIT) RELATE(SYS1.UCAT.MVS))                          
/*                                                                      
//
______________________________________________________________________
Figure 1: $INST00 JCL
 
 
    a) Copy and paste the above JCL to a PDS member, update JOB 
       statement to conform to your installation standard.             
 
    b) Submit the job.                                  
 
    c) Review job output for successful DEFINE ALIAS.
 
    Note: Job step DEFALIAS returns RC=0004 due to LISTCAT function
          completing with condition code of 4 and DEFINE ALIAS 
          function completing with condition code of 0.
           
 
+--------------------------------------------------------------------+
| Step 2. Determine software installation source                     |
+--------------------------------------------------------------------+
|         HET or XMI ?                                               |
+--------------------------------------------------------------------+
 
 
    a) Software can be installed from two sources, HET or XMI.    
          
       - For tape installation (HET), proceed to STEP 4. ****     
          
         or
          
       - For XMIT installation (XMI), proceed to next STEP.     
 
 
+--------------------------------------------------------------------+
| Step 3. Load XMIPDS data set from XMI SEQ file                     |
+--------------------------------------------------------------------+
|         JCL Member: RECVXMIT.V0R9M00.CNTL($RECVXMI)                |
+--------------------------------------------------------------------+
 
 
______________________________________________________________________
//RECV000A JOB (SYS),'Receive RECVXMIT XMI',     <-- Review and Modify
//             CLASS=A,MSGCLASS=X,REGION=0M,     <-- Review and Modify
//             MSGLEVEL=(1,1),NOTIFY=&SYSUID     <-- Review and Modify
//* -------------------------------------------------------*
//* *  JOB: $RECVXMI  Receive Application XMI Files        *
//* -------------------------------------------------------*
//RECV     PROC HLQ=RECVXMIT,VRM=V0R9M00,TYP=XXXXXXXX,
//             DSPACE='(TRK,(10,05,40))',DDISP='(,CATLG,DELETE)',
//             DUNIT=3350,DVOLSER=MVSDLB         <-- Review and Modify
//*
//RECV370  EXEC PGM=RECV370
//STEPLIB  DD  DSN=SYS2.LINKLIB,DISP=SHR         <-- Review and Modify
//RECVLOG  DD  SYSOUT=*
//XMITIN   DD  DISP=SHR,DSN=&&XMIPDS(&TYP)
//SYSPRINT DD  SYSOUT=*
//SYSUT1   DD  DSN=&&SYSUT1,
//   UNIT=SYSALLDA,SPACE=(CYL,(10,05)),DISP=(,DELETE,DELETE) 
//SYSUT2   DD  DSN=&HLQ..&VRM..&TYP,DISP=&DDISP,
//   UNIT=&DUNIT,SPACE=&DSPACE,VOL=SER=&DVOLSER
//SYSIN    DD  DUMMY
//SYSUDUMP DD  SYSOUT=*
//         PEND
//* RECEIVE XMIPDS TEMP                                       
//XMIPDS   EXEC RECV,TYP=XMIPDS,DSPACE='(CYL,(10,05,10),RLSE)' 
//RECV370.XMITIN DD  DISP=SHR,DSN=your.transfer.xmi    <-- XMI File 
//RECV370.SYSUT2   DD  DSN=&&XMIPDS,DISP=(,PASS), 
//   UNIT=SYSDA,SPACE=&DSPACE
//* RECEIVE CNTL, HELP, CLIST, ISPF, ASM, MACLIB
//CNTL     EXEC RECV,TYP=CNTL,DSPACE='(TRK,(20,10,10))'
//HELP     EXEC RECV,TYP=HELP,DSPACE='(TRK,(02,02,02))'
//CLIST    EXEC RECV,TYP=CLIST,DSPACE='(TRK,(02,02,02))'
//ISPF     EXEC RECV,TYP=ISPF,DSPACE='(TRK,(15,05,10))'
//ASM      EXEC RECV,TYP=ASM,DSPACE='(TRK,(50,10,10))'
//MACLIB   EXEC RECV,TYP=MACLIB,DSPACE='(TRK,(02,02,02))'
//
______________________________________________________________________
Figure 2: $RECVXMI.JCL
 
 
    a) Transfer RECVXMIT.V0R9M00.XMI to MVS using your 3270 emulator.
       
       Make note of the DSN assigned on MVS transfer.       
       
       Use transfer IND$FILE options:                   
       
          NEW BLKSIZE=3200 LRECL=80 RECFM=FB     
             
       Ensure the DSN on MVS exists with the correct DCB information:
       
          ORG=PS BLKSIZE=3200 LRECL=80 RECFM=FB     
       
          
    b) Copy and paste the above JCL to a PDS member, update JOB 
       statement to conform to your installation standard.
 
       Review JCL and apply any modifications per your installation 
       including the DSN assigned during the transfer above for
       the XMI file.
 
    d) Submit the job.                                              
 
    e) Review job output for successful load of the following PDSs:
 
       RECVXMIT.V0R9M00.ASM   
       RECVXMIT.V0R9M00.CLIST 
       RECVXMIT.V0R9M00.CNTL  
       RECVXMIT.V0R9M00.HELP  
       RECVXMIT.V0R9M00.ISPF  
       RECVXMIT.V0R9M00.MACLIB
 
    f) Subsequent installation steps will be submitted from members
       contained in the CNTL data set.
 
    g) Proceed to STEP 6.   ****
 
+--------------------------------------------------------------------+
| Step 4. Load CNTL data set from distribution tape                  |
+--------------------------------------------------------------------+
|         JCL Member: RECVXMIT.V0R9M00.CNTL($INST01)                 |
+--------------------------------------------------------------------+
 
 
______________________________________________________________________
//RECVXMI1 JOB (SYS),'Install CNTL PDS',     <-- Review and Modify
//         CLASS=A,MSGCLASS=X,               <-- Review and Modify
//         MSGLEVEL=(1,1),NOTIFY=&SYSUID     <-- Review and Modify
//* -------------------------------------------------------*
//* *  RECVXMIT in MVS3.8J TSO / Hercules                  *
//* *  JOB: $INST01  Load CNTL PDS from distribution tape  *
//* *  Note: Default TAPE=480, DASD=3350 on MVSDLB         *
//* -------------------------------------------------------*
//LOADCNTL PROC HLQ=RECVXMIT,VRM=V0R9M00,TVOLSER=VS0900,      
//   TUNIT=480,DVOLSER=MVSDLB,DUNIT=3350     <-- Review and Modify
//LOAD001  EXEC PGM=IEBCOPY                                           
//SYSPRINT DD  SYSOUT=*                                              
//INCNTL   DD  DSN=&HLQ..&VRM..CNTL.TAPE,UNIT=&TUNIT,
//             VOL=SER=&TVOLSER,DISP=OLD,LABEL=(1,SL)                 
//CNTL     DD  DSN=&HLQ..&VRM..CNTL,
//             UNIT=&DUNIT,VOL=SER=&DVOLSER,
//             SPACE=(TRK,(20,10,10)),DISP=(,CATLG),
//             DCB=(RECFM=FB,LRECL=80,BLKSIZE=3600) 
//         PEND                                                     
//STEP001  EXEC LOADCNTL                     Load CNTL PDS
//SYSIN    DD  *                                                        
    COPY INDD=INCNTL,OUTDD=CNTL 
//                                                                  
______________________________________________________________________
Figure 3: $INST01 JCL
 
 
    a) Before submitting the above job, the distribution tape   
       must be made available to MVS by issuing the following
       command from the Hercules console:
 
       DEVINIT 480 X:\dirname\RECVXMIT.V0R9M00.HET READONLY=1
 
       where X:\dirname is the complete path to the location
       of the Hercules Emulated Tape file. 
 
    b) Issue the following command from the MVS console to vary
       device 480 online:
 
       V 480,ONLINE
 
    c) Copy and paste the above JCL to a PDS member, update JOB 
       statement to conform to your installation standard.
 
       Review JCL and apply any modifications per your installation.
 
    d) Submit the job.                                              
 
    e) Review job output for successful load of the CNTL data set.
 
    f) Subsequent installation steps will be submitted from members
       contained in the CNTL data set.
 
 
+--------------------------------------------------------------------+
| Step 5. Load Other data sets from distribution tape                |
+--------------------------------------------------------------------+
|         JCL Member: RECVXMIT.V0R9M00.CNTL($INST02)                 |
+--------------------------------------------------------------------+
 
 
______________________________________________________________________
//RECVXMI2 JOB (SYS),'Install Other PDSs',   <-- Review and Modify
//         CLASS=A,MSGCLASS=X,               <-- Review and Modify
//         MSGLEVEL=(1,1),NOTIFY=&SYSUID     <-- Review and Modify
//* -------------------------------------------------------*
//* *  RECVXMIT in MVS3.8J TSO / Hercules                  *
//* *  JOB: $INST02  Load other PDS from distribution tape *
//* *  Tape Volume:  File 1 - CNTL                         *
//* *                File 2 - CLIST                        *
//* *                File 3 - HELP                         *
//* *                File 4 - ISPF                         *
//* *                File 5 - ASM                          *
//* *                File 6 - MACLIB                       *
//* *  Note: Default TAPE=480, DASD=3350 on MVSDLB         *
//* -------------------------------------------------------*
//LOADOTHR PROC HLQ=RECVXMIT,VRM=V0R9M00,TVOLSER=VS0900,            
//   TUNIT=480,DVOLSER=MVSDLB,DUNIT=3350     <-- Review and Modify
//LOAD02   EXEC PGM=IEBCOPY                                           
//SYSPRINT DD  SYSOUT=*                                              
//INCLIST  DD  DSN=&HLQ..&VRM..CLIST.TAPE,UNIT=&TUNIT,
//             VOL=SER=&TVOLSER,DISP=OLD,LABEL=(2,SL)                   
//INHELP   DD  DSN=&HLQ..&VRM..HELP.TAPE,UNIT=&TUNIT,
//             VOL=SER=&TVOLSER,DISP=OLD,LABEL=(3,SL)                   
//INISPF   DD  DSN=&HLQ..&VRM..ISPF.TAPE,UNIT=&TUNIT,
//             VOL=SER=&TVOLSER,DISP=OLD,LABEL=(4,SL)                   
//INASM    DD  DSN=&HLQ..&VRM..ASM.TAPE,UNIT=&TUNIT,
//             VOL=SER=&TVOLSER,DISP=OLD,LABEL=(5,SL)                   
//INMACLIB DD  DSN=&HLQ..&VRM..MACLIB.TAPE,UNIT=&TUNIT,
//             VOL=SER=&TVOLSER,DISP=OLD,LABEL=(6,SL)   
//CLIST    DD  DSN=&HLQ..&VRM..CLIST,UNIT=&DUNIT,VOL=SER=&DVOLSER,
//             SPACE=(TRK,(02,02,02)),DISP=(,CATLG),
//             DCB=(RECFM=FB,LRECL=80,BLKSIZE=3600) 
//HELP     DD  DSN=&HLQ..&VRM..HELP,UNIT=&DUNIT,VOL=SER=&DVOLSER,
//             SPACE=(TRK,(02,02,02)),DISP=(,CATLG),
//             DCB=(RECFM=FB,LRECL=80,BLKSIZE=3600) 
//ISPF     DD  DSN=&HLQ..&VRM..ISPF,UNIT=&DUNIT,VOL=SER=&DVOLSER,
//             SPACE=(TRK,(15,05,10)),DISP=(,CATLG),
//             DCB=(RECFM=FB,LRECL=80,BLKSIZE=3600) 
//ASM      DD  DSN=&HLQ..&VRM..ASM,UNIT=&DUNIT,VOL=SER=&DVOLSER,
//             SPACE=(TRK,(50,10,10)),DISP=(,CATLG),
//             DCB=(RECFM=FB,LRECL=80,BLKSIZE=3600) 
//MACLIB   DD  DSN=&HLQ..&VRM..MACLIB,UNIT=&DUNIT,VOL=SER=&DVOLSER,
//             SPACE=(TRK,(02,02,02)),DISP=(,CATLG),
//             DCB=(RECFM=FB,LRECL=80,BLKSIZE=3600)
//         PEND                                                         
//*
//STEP001  EXEC LOADOTHR                     Load ALL other PDSs
//SYSIN    DD  *                                                        
    COPY INDD=INCLIST,OUTDD=CLIST
    COPY INDD=INHELP,OUTDD=HELP
    COPY INDD=INISPF,OUTDD=ISPF
    COPY INDD=INASM,OUTDD=ASM
    COPY INDD=INMACLIB,OUTDD=MACLIB
//                                                                  
______________________________________________________________________
Figure 4: $INST02 JCL
 
 
    a) Member $INST02 installs remaining data sets from distribution
       tape.                                 
 
    b) Review and update JOB statement and other JCL to conform to your
       installation standard.                                       
 
    c) Before submitting the above job, the distribution tape   
       must be made available to MVS by issuing the following
       command from the Hercules console:
 
       DEVINIT 480 X:\dirname\RECVXMIT.V0R9M00.HET READONLY=1
 
       where X:\dirname is the complete path to the location
       of the Hercules Emulated Tape file. 
 
    d) Issue the following command from the MVS console to vary
       device 480 online:
 
       V 480,ONLINE
 
    e) Submit the job.
 
    f) Review job output for successful loads.  
 
 
+--------------------------------------------------------------------+
| Step 6. Install TSO parts                                          |
+--------------------------------------------------------------------+
|         JCL Member: RECVXMIT.V0R9M00.CNTL($INST03)                 |
+--------------------------------------------------------------------+
 
 
______________________________________________________________________
//RECVXMI3 JOB (SYS),'Install TSO Parts',    <-- Review and Modify
//         CLASS=A,MSGCLASS=X,               <-- Review and Modify
//         MSGLEVEL=(1,1),NOTIFY=&SYSUID     <-- Review and Modify
//* -------------------------------------------------------*
//* *  RECVXMIT in MVS3.8J TSO / Hercules                  *
//* *                                                      *
//* *  JOB: $INST03  Install TSO parts                     *
//* *                                                      *
//* *  Note: Duplicate members are over-written.           *
//* -------------------------------------------------------*
//STEP001  EXEC PGM=IEBCOPY                                           
//SYSPRINT DD  SYSOUT=*                                              
//INCLIST  DD  DSN=RECVXMIT.V0R9M00.CLIST,DISP=SHR            
//INHELP   DD  DSN=RECVXMIT.V0R9M00.HELP,DISP=SHR             
//OUTCLIST DD  DSN=SYS2.CMDPROC,DISP=SHR                               
//OUTHELP  DD  DSN=SYS2.HELP,DISP=SHR
//SYSIN    DD  *                                                        
    COPY INDD=((INCLIST,R)),OUTDD=OUTCLIST
    SELECT MEMBER=C$RCV372
    SELECT MEMBER=C$XMI372
    COPY INDD=((INHELP,R)),OUTDD=OUTHELP
    SELECT MEMBER=CUTIL00 
/*                                                                  
//
______________________________________________________________________
Figure 5: $INST03 JCL
 
 
    a) Member $INST03 installs TSO component(s).
 
       Note:  If no TSO components are included for this distribution,
       -----  RC = 4 is returned by the corresponding IEBCOPY step.
 
    b) Review and update JOB statement and other JCL to conform to your
       installation standard.                                       
 
    c) Submit the job.
 
    d) Review job output for successful load(s).
 
 
+--------------------------------------------------------------------+
| Step 7. Install Programs - PUTCARD                                 |  
+--------------------------------------------------------------------+
|         JCL Member: RECVXMIT.V0R9M00.CNTL($INST04)                 |
+--------------------------------------------------------------------+
 
 
______________________________________________________________________
//RECVXMI4 JOB (SYS),'Install RECVXMIT',     <-- Review and Modify
//         CLASS=A,MSGCLASS=X,               <-- Review and Modify
//         MSGLEVEL=(1,1),NOTIFY=&SYSUID     <-- Review and Modify
//* -------------------------------------------------------*
//* *  RECVXMIT for MVS3.8J TSO / Hercules                 *
//* *                                                      *
//* *  JOB: $INST04                                        *
//* *       Install PUTCARD Program                        *
//* *                                                      *
//* -------------------------------------------------------*
//ASML     PROC MBR=WHOWHAT
//ASM      EXEC PGM=IFOX00,
//             PARM='NODECK,LOAD,TERM,XREF'
//SYSGO    DD  DSN=&&LOADSET,DISP=(MOD,PASS),SPACE=(CYL,(1,1)),
//             UNIT=VIO,DCB=(DSORG=PS,RECFM=FB,LRECL=80,BLKSIZE=800)
//SYSLIB   DD  DSN=SYS1.MACLIB,DISP=SHR
//         DD  DSN=SYS2.MACLIB,DISP=SHR          ** YREG  **
//         DD  DSN=SYS1.AMODGEN,DISP=SHR
//SYSTERM  DD  SYSOUT=*
//SYSPRINT DD  SYSOUT=*
//SYSPUNCH DD  DSN=NULLFILE
//SYSUT1   DD  UNIT=VIO,SPACE=(CYL,(6,1))
//SYSUT2   DD  UNIT=VIO,SPACE=(CYL,(6,1))
//SYSUT3   DD  UNIT=VIO,SPACE=(CYL,(6,1))
//SYSIN    DD  DSN=RECVXMIT.V0R9M00.ASM(&MBR),DISP=SHR <--INPUT
//*
//LKED     EXEC PGM=IEWL,PARM='MAP,LIST,LET,XREF',
//             COND=(0,NE,ASM)
//SYSLIN   DD  DSN=&&LOADSET,DISP=(OLD,DELETE)
//         DD  DDNAME=SYSIN
//SYSLMOD  DD  DSN=XXXXXXXX.ISPLLIB(&MBR),DISP=SHR     <--TARGET
//SYSPRINT DD  SYSOUT=*
//SYSUT1   DD  UNIT=VIO,SPACE=(CYL,(5,2))
//SYSIN    DD  DUMMY
//         PEND
//*
//* -------------------------------------------------------*
//* *                                                      *
//* *  Assemble Link-edit PUTCARD                          *
//* *                                                      *
//* -------------------------------------------------------*
//PUTCARD  EXEC  ASML,MBR=PUTCARD 
// 
______________________________________________________________________
Figure 6: $INST04 JCL
 
 
    a) Member $INST04 installs programs PUTCARD.
 
    b) Review and update JOB statement and other JCL to conform to your
       installation standard.                                       
 
    c) Submit the job.
 
    d) Review job output for successful completion.
 
 
+--------------------------------------------------------------------+
| Step 8. Install Programs - CUTIL00                                 |  
+--------------------------------------------------------------------+
|         JCL Member: RECVXMIT.V0R9M00.CNTL($INST40)                 |
+--------------------------------------------------------------------+
 
 
______________________________________________________________________
//RECVXM40 JOB (SYS),'Install CUTIL00',      <-- Review and Modify 
//             CLASS=A,                      <-- Review and Modify
//             MSGCLASS=X,                   <-- Review and Modify
//             MSGLEVEL=(1,1),NOTIFY=&SYSUID <-- Review and Modify
//* -------------------------------------------------------*
//* *  RECVXMIT for MVS3.8J TSO / Hercules                 *
//* *                                                      *
//* *  JOB: $INST40                                        *
//* *       Install CUTIL00  Program                       *
//* *       Install CUTILTBL Sub-program                   *
//* *                                                      *
//* *  - CUTIL00  program installs to SYS2.CMDLIB          *
//* *  - Install libraries marked...                       *
//* *    - Search for '<--TARGET'                          *
//* *    - Update install libraries per your               *
//* *      installation standard                           *
//* *                                                      *
//* *  NOTE:                                               *
//* *  -----                                               *
//* *  Two user-mods, ZP60014 and ZP60038, are REQUIRED.   *
//* *                                                      *
//* *  For more information, refer to program CUTIL00.     *
//* -------------------------------------------------------*
//ASMP     PROC MBR=WHOWHAT     
//ASM      EXEC PGM=IFOX00,
//             PARM='NODECK,LOAD,RENT,TERM,XREF'
//SYSGO    DD  DSN=&&LOADSET,DISP=(MOD,PASS),SPACE=(CYL,(1,1)),
//             UNIT=VIO,DCB=(DSORG=PS,RECFM=FB,LRECL=80,BLKSIZE=800)
//SYSLIB   DD  DSN=SYS1.MACLIB,DISP=SHR
//         DD  DSN=SYS1.AMODGEN,DISP=SHR
//         DD  DSN=SYS2.MACLIB,DISP=SHR          ** YREG  **
//SYSTERM  DD  SYSOUT=*
//SYSPRINT DD  SYSOUT=*
//SYSPUNCH DD  DSN=NULLFILE
//SYSUT1   DD  UNIT=VIO,SPACE=(CYL,(6,1))
//SYSUT2   DD  UNIT=VIO,SPACE=(CYL,(6,1))
//SYSUT3   DD  UNIT=VIO,SPACE=(CYL,(6,1))
//SYSIN    DD  DSN=RECVXMIT.V0R9M00.ASM(&MBR),DISP=SHR <--INPUT
//         PEND                 
//*
//* -------------------------------------------------------*
//* *                                                      *
//* *  Assemble CUTIL00, CUTILTBL                          *
//* *                                                      *
//* -------------------------------------------------------*
//CUTIL00  EXEC  ASMP,MBR=CUTIL00
//CUTILTBL EXEC  ASMP,MBR=CUTILTBL
//*
//LKED     EXEC PGM=IEWL,PARM='MAP,LIST,LET,RENT,XREF',
//             COND=(5,LT)
//*            COND=(5,LT,ASM)
//SYSLIN   DD  DSN=&&LOADSET,DISP=(OLD,DELETE)
//         DD  DDNAME=SYSIN
//SYSLMOD  DD  DSN=SYS2.CMDLIB,DISP=SHR            <--TARGET
//SYSPRINT DD  SYSOUT=*
//SYSUT1   DD  UNIT=VIO,SPACE=(CYL,(5,2))
//SYSIN    DD  *    
 ENTRY CUTIL00
 NAME  CUTIL00(R)
/*
//*
//* -------------------------------------------------------*
//* *                                                      *
//* *  If SYSn.LINKLIB or SYSn.CMDLIB is updated           *
//* *                                                      *
//* -------------------------------------------------------*
//DBSTOP  EXEC DBSTOP,
//             COND.IEFPROC=(0,NE,LKED)
//DBSTART EXEC DBSTART,
//             COND.IEFPROC=(0,NE,LKED)
// 
______________________________________________________________________
Figure 7: $INST40 JCL
 
 
    a) Member $INST40 installs program CUTIL00.
 
    b) Review and update JOB statement and other JCL to conform to your
       installation standard.                                       
 
    c) Submit the job.
 
    d) Review job output for successful completion.
 
 
+--------------------------------------------------------------------+
| Step 9. Install ISPF parts                                         |
+--------------------------------------------------------------------+
|         JCL Member: RECVXMIT.V0R9M00.CNTL($INST05)                 |
+--------------------------------------------------------------------+
 
 
______________________________________________________________________
//RECVXMI5 JOB (SYS),'Install ISPF Parts',   <-- Review and Modify 
//         CLASS=A,MSGCLASS=X,               <-- Review and Modify
//         MSGLEVEL=(1,1),NOTIFY=&SYSUID     <-- Review and Modify
//* -------------------------------------------------------*
//* *  RECVXMIT in MVS3.8J TSO / Hercules                  *
//* *                                                      *
//* *  JOB: $INST05  Install ISPF parts                    *
//* *                                                      *
//* *  Note: Duplicate members are over-written.           *
//* *                                                      *
//* *                                                      *
//* *  - Uses ISPF 2.1 product from Wally Mclaughlin       *
//* *  - Install libraries marked...                       *
//* *    - Search for '<--TARGET'                          *
//* *    - Update install libraries per your               *
//* *      installation standard                           *
//* *                                                      *
//* -------------------------------------------------------*
/*
//* -------------------------------------------------------*
//* *                                                      *
//* *  Panel PDS Member Installation                       *
//* *                                                      *
//* *  Suggested Location:                                 *
//* *      DSN defined or concatenated to ISPPLIB DD       *
//* *      for ISPF 2.x                                    *
//* *                                                      *
//* *  Note: If you use a new PDS, it must be defined      *
//* *        before executing this install job AND the     *
//* *        ISPF start-up procedure should include the    *
//* *        new PDS in the ISPPLIB allocation step.       *
//* *                                                      *
//* -------------------------------------------------------*
//ADDPLIB  EXEC PGM=IEBCOPY              
//SYSPRINT DD  SYSOUT=*
//PLIBIN   DD  DSN=RECVXMIT.V0R9M00.ISPF,DISP=SHR             
//PLIBOUT  DD  DSN=XXXXXXXX.ISPPLIB,DISP=SHR       <--TARGET
//SYSIN    DD  *              
   COPY INDD=((PLIBIN,R)),OUTDD=PLIBOUT
   SELECT MEMBER=PRECV372 
   SELECT MEMBER=HRECV372 
   SELECT MEMBER=PXMIT372 
   SELECT MEMBER=HXMIT372 
   SELECT MEMBER=PRXCNFG  
   SELECT MEMBER=HRXCNFG  
/*
//* -------------------------------------------------------*
//* *                                                      *
//* *  Message PDS Member Installation                     *
//* *                                                      *
//* *  Suggested Location:                                 *
//* *      DSN defined or concatenated to ISPMLIB DD       *
//* *      for ISPF 2.x                                    *
//* *                                                      *
//* *  Note: If you use a new PDS, it must be defined      *
//* *        before executing this install job AND the     *
//* *        ISPF start-up procedure should include the    *
//* *        new PDS in the ISPMLIB allocation step.       *
//* *                                                      *
//* -------------------------------------------------------*
//ADDMLIB  EXEC PGM=IEBCOPY              
//SYSPRINT DD  SYSOUT=*
//MLIBIN   DD  DSN=RECVXMIT.V0R9M00.ISPF,DISP=SHR             
//MLIBOUT  DD  DSN=XXXXXXXX.ISPMLIB,DISP=SHR       <--TARGET
//SYSIN    DD  *              
   COPY INDD=((MLIBIN,R)),OUTDD=MLIBOUT
   SELECT MEMBER=PXMI00 
   SELECT MEMBER=PXMI01 
/*
//* -------------------------------------------------------*
//* *                                                      *
//* *  CLIST PDS Member Installation                       *
//* *                                                      *
//* *  Suggested Location:                                 *
//* *      DSN defined or concatenated to ISPCLIB DD       *
//* *      for ISPF 2.x                                    *
//* *                                                      *
//* *  Note: If you use a new PDS, it must be defined      *
//* *        before executing this install job AND the     *
//* *        ISPF start-up procedure should include the    *
//* *        new PDS in the ISPCLIB allocation step.       *
//* *                                                      *
//* -------------------------------------------------------*
//ADDCLIB  EXEC PGM=IEBCOPY              
//SYSPRINT DD  SYSOUT=*
//CLIBIN   DD  DSN=RECVXMIT.V0R9M00.ISPF,DISP=SHR             
//CLIBOUT  DD  DSN=XXXXXXXX.ISPCLIB,DISP=SHR       <--TARGET
//SYSIN    DD  *              
   COPY INDD=((CLIBIN,R)),OUTDD=CLIBOUT
   SELECT MEMBER=CRECV372
   SELECT MEMBER=CXMIT372 
/*
//
______________________________________________________________________
Figure 8: $INST05 JCL
 
 
    a) Member $INST05 installs ISPF component(s).
 
       Note:  If no ISPF components are included for this distribution,
       -----  RC = 4 is returned by the corresponding IEBCOPY step.
 
    b) Review and update JOB statement and other JCL to conform to your
       installation standard.                                       
 
    c) Review and update DD statements for ISPCLIB (clist),
       ISPMLIB (messages), and/or ISPPLIB (panel) library names. 
       The DD statements are tagged with '<--TARGET'.
 
    d) Submit the job.
 
    e) Review job output for successful load(s).
 
 
+--------------------------------------------------------------------+
| Step 10. Configure and Sample RECVXMIT                             |
+--------------------------------------------------------------------+
 
    The purpose of this step is to configure RECVXMIT base variables
    and test the RECEIVE function to receive an XMI MVS file and 
    create a MVS PDS. Refer to Figures 8a and 8b below.
 
 
    a) Locate the DSN of an XMI MVS file on your legacy system.
 
    b) From the ISPF Main Menu, enter the following command:    
       TSO %C$RCV372                                                   
 
    c) The panel PRECV372 is displayed.                                  
 
    d) Type "/C" in the COMMAND line and press ENTER.                    
 
    e) The panel PRXCNFG is displayed.                                  
     
       1. Review the displayed default values. 
       2. Make desired changes per your installation.
          e.g.  STEPLIBs, PROGRAM NAMES, etc. 
       3. When complete, type SAVE in the COMMAND line and press ENTER 
          to save configuration.
       4. Press PF3 to return to panel PRECV372.
 
    f) This validation will test RECV370 by receiving an MVS XMIT file
       to a PDS file.          
 
        1. Enter  1 in OPTION line       
        2. Enter DSN for XMIT MVSFILE    
        2. Enter DSN for MVS Output File 
           including UNIT, VOL, SPACE, and DISP        
        2. Enter JOB STATEMENTS (up to 4) per your installation
        5. Press ENTER
        5. Job submission message is displayed for batch job
        6. Review batch job for successful execution 
        
    g) Validation for RECVXMIT is complete.
 
 
 
________________________________________________________________________________
 --------------------   Receive XMIT File   ------------------------------------
 OPTION  ===> 1                                                                 
                                                                                
  1  Receive XMIT file on MVS to PDS/SEQ file                           LARRY03 
  2  Receive XMIT file on PC  to PDS/SEQ file                           PRECV372
                                                                        PXMI    
  XMIT Input File                                                               
 1 MVSFILE: your.mvs.xmi.file.here                                              
 -or-                                                                           
 2 PCFILE: M:\MVS38J\TEMP\your.host.xmi.file.here                               
   Reader Control for PCFILE                                                    
    HercRDR Jes2RDR DEVINIT Reset Command                                       
    20C     RDR3    M:/MVS38J/JCL/DUMMY EOF                                     
                                                                                
  MVS Output File                                                               
   DSN: your.mvs.pds.or.seq.file.here                VOL: vvvvvvv UNIT: uuuuuuuu
   SPACE: (TRK,(60,10),RLSE)          DISP: (,CATLG,DELETE)                     
                                                                                
  JOB STATEMENT INFORMATION                                                     
   ===> //RECV370A JOB (SYS),'RECV XMI',REGION=0M,                              
   ===> //   CLASS=A,MSGCLASS=A,MSGLEVEL=(1,1),                                 
   ===> //   COND=(0,NE),NOTIFY=&SYSUID                                         
   ===> //* NEW                                                                 
________________________________________________________________________________
Figure 9a: Sample PRECV372 Receive Panel            
 
 
 

________________________________________________________________________________
 --------------------   Receive Transmit Configuration   -----------------------
 OPTION  ===>                                                                   
                                                                                
     Type SAVE and press ENTER to save values                           LARRY03 
                                                                        PRXCNFG 
                                                                        PXMI    
  RECV370 XMIT370 Parameters                                                    
   RECV370 STEPLIB:                                                             
   XMIT370 STEPLIB:                                                             
    OSCMD  Program: BSPOSCMD                                                    
   HercCMD Program: BSPHRCMD                                                    
     Delay Program: BSPDELAY                                                    
     Delay Seconds: 0        (0-20 seconds)                                     
   Delete Temp JCL: Y        (Y/N)                                              
       SYSUTx Unit: 3390     (e.g.  3390,SYSDA,etc.)                            
      SYSUTx Space: (CYL,(100,50))                                              
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
    PF1 Help       PF3 Return       PF4 End                                     
________________________________________________________________________________
Figure 9b: Sample PRXCNFG Configuration Panel       
 
 
 
+--------------------------------------------------------------------+
| Step 11. Done                                                      |
+--------------------------------------------------------------------+
 
 
    a) Congratulations!  You completed the installation for RECVXMIT.


+--------------------------------------------------------------------+
| Step 11. Incorporate RECVXMIT into ISPF UTILITY SELECTION Menu     |
+--------------------------------------------------------------------+
 
 
    a) It is suggested using options RECV and XMIT from the UTILITY 
       SELECTION MENU (panel ISPUTILS) as option 3.RECV and 3.XMIT.             
                                                                     
    b) Create a copy of ISPUTILS in your application panel library
       instead of the ISPF system panel library to preserve the original
       system panel in addition to preserving your ISPUTILS changes      
       when upgrading your ISPF system with a new version.    
                                                                     
    c) Add the 'NEW ENTRY' line as shown below after option 9 as 
       new menu options:
    
     %   9 +COMMANDS    - Create/change an application command table  
     %RECV +RECEIVE     - Receive  XMI file to MVS       <-- NEW ENTRY
     %XMIT +TRANSMIT    - Transmit MVS file to XMI       <-- NEW ENTRY
                             
    d) Add the 'NEW ENTRY' lines as shown below:
                                                                          
       )PROC
         &ZSEL = TRANS( TRUNC (&ZCMD,'.')
                       1,'CMD(RFE 3.1;X) NEWAPPL(ISR)'   
                       .
                       .
                       9,'PANEL(ISPUCMA)' 
                    RECV,'PANEL(PRECV372) NEWAPPL(PXMI)'     <-- NEW ENTRY
                    XMIT,'PANEL(PXMIT372) NEWAPPL(PXMI)'     <-- NEW ENTRY
                       .
                       .
                     ' ',' '
                       *,'?' )
       )END
 
    e) Save UTILITY SELECTION MENU panel changes.                               
                                                                           
    f) Type =3 in the COMMAND line.  The new menu items (RECV and XMIT) 
       should display. 

    g) Type RECV in the COMMAND line.  The new RECEIVE menu (panel PRECV372) 
       should display.

    h) Type =3 in the COMMAND line.

    g) Type XMIT in the COMMAND line.  The new TRANSMIT menu (panel PXMIT372) 
       should display.



Enjoy RECVXMIT for ISPF 2.x on MVS 3.8J!
                                                                            

======================================================================
* IV. S o f t w a r e   I n v e n t o r y   L i s t                  |
======================================================================

  - RECVXMIT.V0R9M00.ASM 
   . CUTIL00     TSO CP for CLIST Variables
   . CUTILTBL     "
   . PUTCARD     Write CARD images to PS file

  - RECVXMIT.V0R9M00.CLIST
   . C$RCV372    TSO CLIST to start ISPF Receive Dialog
   . C$XMI372    TSO CLIST to start ISPF Transmit Dialog

  - RECVXMIT.V1R1M00.CNTL
   . $INST00     Define Alias for HLQ RECVXMIT       
   . $INST01     Load CNTL data set from distribution tape (HET)
   . $INST02     Load other data sets from distribution tape (HET)
   . $INST03     Install TSO Parts
   . $INST04     Install PUTCARD CP
   . $INST05     Install ISPF Parts
   . $INST40     Install CUTIL00 CPs
   . $RECVXMI    Receive XMI SEQ to MVS PDSs via RECV370
   . DSCLAIMR    Disclaimer
   . PREREQS     Required User-mods
   . README      Documentation and Installation instructions

  - RECVXMIT.V0R9M00.HELP
   . CUTIL00     CUTIL00 Help member

  - RECVXMIT.V0R9M00.ISPF
   . CRECV372    Receive  CLIST
   . CXMIT372    Transmit CLIST
   . HRECV372    Receive Help Panel
   . HRXCNFG     Configuration Help Panel
   . HXMIT372    Transmit Help Panel
   . PRECV372    Receive Panel
   . PRXCNFG     Configuration Panel
   . PXMI00      Messages     
   . PXMI01      Messages     
   . PXMIT372    Transmit Panel

  - RECVXMIT.V0R9M00.MACLIB
   . README      Dummy member, this is intentional






       
