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


Date: 01/31/2023  Release V0R9M00

*  Author:  Larry Belmontes Jr.
*           https://ShareABitofIT.net/CALISPF-in-MVS38J
*           Copyright (C) 2019-2023 Larry Belmontes, Jr.


---------------------------------------------------------------------- 
|    CALISPF      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



---------------------------------------------------------------------- 
|    CALISPF      C h a n g e   H i s t o r y                        | 
---------------------------------------------------------------------- 
*  MM/DD/CCYY Version  Change Description
*  ---------- -------  -----------------------------------------------
*  01/31/2023 0.9.00   - Initial version released to MVS 3.8J
*                        hobbyist public domain
*
*  10/20/2019 0.5.00   Initial prototyping and development
*                      w ISPF 2.x
*                                                                               
*
======================================================================
* I. C o n t e n t   o f   Z I P   F i l e                           |
======================================================================

o  $INST00.JCL          Define Alias for HLQ CALISPF in Master Catalog
 
o  $INST01.JCL          Load CNTL data set from distribution tape
 
o  $RECVXMI.JCL         Receive XMI SEQ to MVS PDSs                  
 
o  CALISPF.V0R9M00.HET Hercules Emulated Tape (HET) multi-file volume
                        with VOLSER of VS0900 containing software
                        distribution.
 
o  CALISPF.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.2+ (ISPF-like product from Wally Mclaughlin) must be     
-----   installed under MVS 3.8J TSO including associated user-mods
        per ISPF Installation Pre-reqs.
 
Note:   CUTIL00 is a TSO utility that performs various functions using
-----   CLIST variables and must be installed as a pre-requisite.  
        More information including current version download link at:
        https://www.shareabitofit.net/CUTIL00-for-MVS-3-8J/    
 

======================================================================
* 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  Below is a DATASET List after tape distribution load for reference purposes:
    
   DATA-SET-NAME------------------------------- VOLUME ALTRK USTRK ORG FRMT % XT
   CALISPF.V0R9M00.ASM                          PUB006    10     1 PO  FB  10  1
   CALISPF.V0R9M00.CLIST                        PUB006     4     1 PO  FB  25  1
   CALISPF.V0R9M00.CNTL                         PUB006    20     4 PO  FB  20  1
   CALISPF.V0R9M00.HELP                         PUB006     4     1 PO  FB  25  1
   CALISPF.V0R9M00.ISPF                         PUB006    20     3 PO  FB  15  1
   CALISPF.V0R9M00.MACLIB                       PUB006     2     1 PO  FB  50  1
   **END**    TOTALS:      60 TRKS ALLOC        11 TRKS USED       6 EXTENTS    

    
   Confirm the TOTAL track allocation is available on your device.            
    
   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.
  
o  Install pre-requisite (if any) software and/or user modifications.
  
 
                                                
======================================================================
* III. I n s t a l l a t i o n   S t e p s                           |
======================================================================
                                                
+--------------------------------------------------------------------+
| Step 1. Define Alias for HLQ CALISPF in MVS User Catalog           |
+--------------------------------------------------------------------+
|         JCL Member: CALISPF.V0R9M00.CNTL($INST00)                  |
+--------------------------------------------------------------------+
 
 
______________________________________________________________________
//CALISPF0 JOB (SYS),'Def CALISPF Alias',    <-- Review and Modify 
//         CLASS=A,MSGCLASS=X,               <-- Review and Modify
//         MSGLEVEL=(1,1),NOTIFY=&SYSUID     <-- Review and Modify
//* -------------------------------------------------------*
//* *  CALISPF in MVS3.8J TSO / Hercules                   *
//* *  JOB: $INST00  Define Alias for HLQ CALISPF          *
//* *  Note: The master catalog password will be required  *
//* -------------------------------------------------------*
//DEFALIAS EXEC PGM=IDCAMS 
//SYSPRINT DD  SYSOUT=*
//SYSIN    DD  *
 PARM GRAPHICS(CHAIN(SN))
 LISTCAT ALIAS  ENT(CALISPF) 

 IF LASTCC NE 0 THEN -
    DEFINE ALIAS(NAME(CALISPF) 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: When $INST00 runs for the first time,
          Job step DEFALIAS returns RC=0004 due to LISTCAT ALIAS function
          completing with condition code of 4 and DEFINE ALIAS function 
          completing with condition code of 0.
           
    Note: When $INST00 runs after the ALIAS is defined,
          Job step DEFALIAS returns RC=0000 due to LISTCAT ALIAS function
          completing with condition code of 0 and DEFINE ALIAS 
          function being bypassed.
           
 
+--------------------------------------------------------------------+
| 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: CALISPF.V0R9M00.CNTL($RECVXMI)                 |
+--------------------------------------------------------------------+
 
 
______________________________________________________________________
//RECV000A JOB (SYS),'Receive CALISPF 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=CALISPF,VRM=V0R9M00,TYP=XXXXXXXX,
//             DSPACE='(TRK,(10,05,40))',DDISP='(,CATLG,DELETE)',
//             DUNIT=DISK,DVOLSER=PUB006         <-- 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
//RECV370.SYSUT2   DD   DDNAME=&TYP
//CNTL     DD  DSN=&HLQ..&VRM..CNTL,UNIT=&DUNIT,VOL=SER=&DVOLSER,
//             SPACE=(TRK,(20,10,10)),
//             DISP=&DDISP   
//HELP     EXEC RECV,TYP=HELP                             
//RECV370.SYSUT2   DD   DDNAME=&TYP
//HELP     DD  DSN=&HLQ..&VRM..HELP,UNIT=&DUNIT,VOL=SER=&DVOLSER,
//             SPACE=(TRK,(04,02,02)),
//             DISP=&DDISP   
//CLIST    EXEC RECV,TYP=CLIST                            
//RECV370.SYSUT2   DD   DDNAME=&TYP
//CLIST    DD  DSN=&HLQ..&VRM..CLIST,UNIT=&DUNIT,VOL=SER=&DVOLSER,
//             SPACE=(TRK,(04,02,02)),
//             DISP=&DDISP   
//ISPF     EXEC RECV,TYP=ISPF                             
//RECV370.SYSUT2   DD   DDNAME=&TYP
//ISPF     DD  DSN=&HLQ..&VRM..ISPF,UNIT=&DUNIT,VOL=SER=&DVOLSER,
//             SPACE=(TRK,(20,05,10)),
//             DISP=&DDISP   
//ASM      EXEC RECV,TYP=ASM                              
//RECV370.SYSUT2   DD   DDNAME=&TYP
//ASM      DD  DSN=&HLQ..&VRM..ASM,UNIT=&DUNIT,VOL=SER=&DVOLSER,
//             SPACE=(TRK,(10,10,10)),
//             DISP=&DDISP   
//MACLIB   EXEC RECV,TYP=MACLIB                           
//RECV370.SYSUT2   DD   DDNAME=&TYP
//MACLIB   DD  DSN=&HLQ..&VRM..MACLIB,UNIT=&DUNIT,VOL=SER=&DVOLSER,
//             SPACE=(TRK,(02,02,02)),
//             DISP=&DDISP   
//
______________________________________________________________________
Figure 2: $RECVXMI.JCL
 
 
    a) Transfer CALISPF.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:
 
       CALISPF.V0R9M00.ASM   
       CALISPF.V0R9M00.CLIST 
       CALISPF.V0R9M00.CNTL  
       CALISPF.V0R9M00.HELP  
       CALISPF.V0R9M00.ISPF  
       CALISPF.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: CALISPF.V0R9M00.CNTL($INST01)                  |
+--------------------------------------------------------------------+
 
 
______________________________________________________________________
//CALISPF1 JOB (SYS),'Install CNTL PDS',     <-- Review and Modify
//         CLASS=A,MSGCLASS=X,               <-- Review and Modify
//         MSGLEVEL=(1,1),NOTIFY=&SYSUID     <-- Review and Modify
//* -------------------------------------------------------*
//* *  CALISPF for MVS3.8J TSO / Hercules                  *
//* *  JOB: $INST01  Load CNTL PDS from distribution tape  *
//* *  Note: Uses tape drive 480                           *
//* -------------------------------------------------------*
//LOADCNTL PROC HLQ=CALISPF,VRM=V0R9M00,TVOLSER=VS0900,      
//   DDISP='(,CATLG,DELETE)',
//   TUNIT=480,DVOLSER=PUB006,DUNIT=DISK     <-- 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=&DDISP,  
//             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\CALISPF.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: CALISPF.V0R9M00.CNTL($INST02)                  |
+--------------------------------------------------------------------+
 
 
______________________________________________________________________
//CALISPF2 JOB (SYS),'Install Other PDSs',   <-- Review and Modify
//         CLASS=A,MSGCLASS=X,               <-- Review and Modify
//         MSGLEVEL=(1,1),NOTIFY=&SYSUID     <-- Review and Modify
//* -------------------------------------------------------*
//* *  CALISPF for 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=DISK on PUB006         *
//* -------------------------------------------------------*
//LOADOTHR PROC HLQ=CALISPF,VRM=V0R9M00,TVOLSER=VS0900,            
//   DDISP='(,CATLG,DELETE)',
//   TUNIT=480,DVOLSER=PUB006,DUNIT=DISK     <-- 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,(04,02,02)),
//             DISP=&DDISP,  
//             DCB=(RECFM=FB,LRECL=80,BLKSIZE=3600)
//HELP     DD  DSN=&HLQ..&VRM..HELP,UNIT=&DUNIT,VOL=SER=&DVOLSER,
//             SPACE=(TRK,(04,02,02)),
//             DISP=&DDISP,  
//             DCB=(RECFM=FB,LRECL=80,BLKSIZE=3600)
//ISPF     DD  DSN=&HLQ..&VRM..ISPF,UNIT=&DUNIT,VOL=SER=&DVOLSER,
//             SPACE=(TRK,(20,05,10)),
//             DISP=&DDISP,  
//             DCB=(RECFM=FB,LRECL=80,BLKSIZE=3600)
//ASM      DD  DSN=&HLQ..&VRM..ASM,UNIT=&DUNIT,VOL=SER=&DVOLSER,
//             SPACE=(TRK,(10,10,10)),
//             DISP=&DDISP,  
//             DCB=(RECFM=FB,LRECL=80,BLKSIZE=3600)
//MACLIB   DD  DSN=&HLQ..&VRM..MACLIB,UNIT=&DUNIT,VOL=SER=&DVOLSER,
//             SPACE=(TRK,(02,02,02)),
//             DISP=&DDISP,  
//             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\CALISPF.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. FULL or UPGRADE Installation                               |
+--------------------------------------------------------------------+
|         JCL Member: CALISPF.V0R9M00.CNTL($UP0900)                  |
+--------------------------------------------------------------------+
 
 
______________________________________________________________________
//CALISPFU JOB (SYS),'Upgrade CALISPF',      <-- Review and Modify
//         CLASS=A,MSGCLASS=X,               <-- Review and Modify
//         MSGLEVEL=(1,1),NOTIFY=&SYSUID     <-- Review and Modify
//* -------------------------------------------------------*
//* *  CALISPF for MVS3.8J TSO / Hercules                  *
//* *                                                      *
//* *  JOB: $UP0900  Upgrade CALISPF Software              *
//* *       Upgrade to release V0R9M00 from VxRxMxx        *
//* *                                                      *
//* *  Review JCL before submitting!!                      *
//* -------------------------------------------------------*
//*
//* -------------------------------------------------------*
//* *  No upgrades for V0R9M00                             *
//* -------------------------------------------------------*
//CALISPF  EXEC  PGM=IEFBR14
//*
// 
______________________________________________________________________
Figure 5: $UP0900.JCL  Upgrade from previous version to V0R9M00
 
    a) If this is the INITIAL software distribution, proceed to STEP 7.
 
    b) This software may be installed in FULL or UPGRADE from a
       prior version.
 
    Note:  If the installed software version is customized, a manual
    -----  review and evaluation is suggested to properly incorporate
           customizations into this software distribution before
           proceeding with the installation.
 
           Refer to the $UPvrmm.JCL members for upgraded software
           components being installed.
 
 
    c) If a FULL install of this software distribution is elected   
       regardless of previous version installed on your system,
       proceed to STEP 7.
 
    d) If this is an UPGRADE from the PREVIOUS version,       
       execute the below JCL based on current installed version:  
 
       - V0R9M00 is initial release, thus, no updates available!
 
    e) After upgrade is applied, proceed to validation, STEP 11.
 
 
+--------------------------------------------------------------------+
| Step 7. Install TSO parts                                          |
+--------------------------------------------------------------------+
|         JCL Member: CALISPF.V0R9M00.CNTL($INST03)                  |
+--------------------------------------------------------------------+
 
 
______________________________________________________________________
//CALISPF3 JOB (SYS),'Install TSO Parts',    <-- Review and Modify
//         CLASS=A,MSGCLASS=X,               <-- Review and Modify
//         MSGLEVEL=(1,1),NOTIFY=&SYSUID     <-- Review and Modify
//* -------------------------------------------------------*
//* *  CALISPF for 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=CALISPF.V0R9M00.CLIST,DISP=SHR            
//INHELP   DD  DSN=CALISPF.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=NO#MBR#                    /*dummy entry no mbrs! */
    COPY INDD=((INHELP,R)),OUTDD=OUTHELP
    SELECT MEMBER=NO#MBR#                    /*dummy entry no mbrs! */
/*                                                                  
//
______________________________________________________________________
Figure 6: $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 8. Install CALISPF Software                                   |  
+--------------------------------------------------------------------+
|         JCL Member: CALISPF.V0R9M00.CNTL($INST04)                  |
+--------------------------------------------------------------------+
 
 
______________________________________________________________________
//CALISPF4 JOB (SYS),'Install CALISPF',      <-- Review and Modify
//         CLASS=A,MSGCLASS=X,               <-- Review and Modify
//         MSGLEVEL=(1,1),NOTIFY=&SYSUID     <-- Review and Modify
//* -------------------------------------------------------*
//* *  CALISPF for MVS3.8J TSO / Hercules                  *
//* *                                                      *
//* *  JOB: $INST04  Install CALISPF Software              *
//* *                                                      *
//* *  - Install libraries marked...                       *
//* *    - Search for '<--TARGET'                          *
//* *    - Update install libraries per your               *
//* *      installation standard                           *
//* *                                                      *
//* -------------------------------------------------------*
//* -------------------------------------------------------*
//*
//* -------------------------------------------------------*
//* *  IEFBR14                                             *
//* -------------------------------------------------------*
//DUMMY    EXEC PGM=IEFBR14
//SYSPRINT DD   SYSOUT=*
//*
// 
______________________________________________________________________
Figure 7: $INST04 JCL
 
 
    a) Member $INST04 installs program(s).
 
       Note:  If no components are included for this distribution,
       -----  an IEFBR14 step is executed.
 
    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: CALISPF.V0R9M00.CNTL($INST05)                  |
+--------------------------------------------------------------------+
 
 
______________________________________________________________________
//CALISPF5 JOB (SYS),'Install ISPF Parts',   <-- Review and Modify 
//         CLASS=A,MSGCLASS=X,               <-- Review and Modify
//         MSGLEVEL=(1,1),NOTIFY=&SYSUID     <-- Review and Modify
//* -------------------------------------------------------*
//* *  CALISPF for 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                           *
//* -------------------------------------------------------*
//*
//* -------------------------------------------------------*
//* *                                                      *
//* *  PROC: PARTSISPF                                     *
//* *       Copy ISPF Parts                                *
//* *                                                      *
//* -------------------------------------------------------*
//PARTSI   PROC HLQ=MYHLQ,VRM=VXRXMXX,
//             CLIB='XXXXXXXX.ISPCLIB',    
//             MLIB='XXXXXXXX.ISPMLIB',    
//             PLIB='XXXXXXXX.ISPPLIB',   
//             SLIB='XXXXXXXX.ISPSLIB',   
//             TLIB='XXXXXXXX.ISPTLIB'    
//*
//* -------------------------------------------------------*
//* *                                                      *
//* *  CLIB Member Installation                            *
//* *                                                      *
//* *  Suggested Location:                                 *
//* *      DSN defined or concatenated to ISPCLIB DD       *
//* *                                                      *
//* *  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=&HLQ..&VRM..ISPF,DISP=SHR             
//CLIBOUT  DD  DSN=&CLIB,DISP=SHR
//SYSIN    DD  DUMMY          
//*
//* -------------------------------------------------------*
//* *                                                      *
//* *  MLIB Member Installation                            *
//* *                                                      *
//* *  Suggested Location:                                 *
//* *      DSN defined or concatenated to ISPMLIB DD       *
//* *                                                      *
//* *  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=&HLQ..&VRM..ISPF,DISP=SHR             
//MLIBOUT  DD  DSN=&MLIB,DISP=SHR
//SYSIN    DD  DUMMY          
//*
//* -------------------------------------------------------*
//* *                                                      *
//* *  PLIB Member Installation                            *
//* *                                                      *
//* *  Suggested Location:                                 *
//* *      DSN defined or concatenated to ISPPLIB DD       *
//* *                                                      *
//* *  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=&HLQ..&VRM..ISPF,DISP=SHR             
//PLIBOUT  DD  DSN=&PLIB,DISP=SHR
//SYSIN    DD  DUMMY          
//*
//* -------------------------------------------------------*
//* *                                                      *
//* *  SLIB Member Installation                            *
//* *                                                      *
//* *  Suggested Location:                                 *
//* *      DSN defined or concatenated to ISPSLIB DD       *
//* *                                                      *
//* *  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 ISPSLIB allocation step.       *
//* *                                                      *
//* -------------------------------------------------------*
//ADDSLIB  EXEC PGM=IEBCOPY              
//SYSPRINT DD  SYSOUT=*
//SLIBIN   DD  DSN=&HLQ..&VRM..ISPF,DISP=SHR             
//SLIBOUT  DD  DSN=&SLIB,DISP=SHR
//SYSIN    DD  DUMMY          
//*
//*
//* -------------------------------------------------------*
//* *                                                      *
//* *  TLIB Member Installation                            *
//* *                                                      *
//* *  Suggested Location:                                 *
//* *      DSN defined or concatenated to ISPTLIB DD       *
//* *                                                      *
//* *  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 ISPTLIB allocation step.       *
//* *                                                      *
//* -------------------------------------------------------*
//ADDTLIB  EXEC PGM=IEBCOPY              
//SYSPRINT DD  SYSOUT=*
//TLIBIN   DD  DSN=&HLQ..&VRM..ISPF,DISP=SHR             
//TLIBOUT  DD  DSN=&TLIB,DISP=SHR
//SYSIN    DD  DUMMY          
//*
//         PEND
//*
//ISPF     EXEC PARTSI,HLQ=CALISPF,VRM=V0R9M00,
//         CLIB='XXXXXXXX.ISPCLIB',                <--TARGET
//         MLIB='XXXXXXXX.ISPMLIB',                <--TARGET
//         PLIB='XXXXXXXX.ISPPLIB',                <--TARGET
//         SLIB='XXXXXXXX.ISPSLIB',                <--TARGET
//         TLIB='XXXXXXXX.ISPTLIB'                 <--TARGET
//ADDCLIB.SYSIN    DD  *                  CLIB
   COPY INDD=((CLIBIN,R)),OUTDD=CLIBOUT
   SELECT MEMBER=C$CAL
   SELECT MEMBER=CCAL
//ADDMLIB.SYSIN    DD  *                  MLIB
   COPY INDD=((MLIBIN,R)),OUTDD=MLIBOUT
   SELECT MEMBER=CALDR0
//ADDPLIB.SYSIN    DD  *                  PLIB
   COPY INDD=((PLIBIN,R)),OUTDD=PLIBOUT
   SELECT MEMBER=HCCAL    
   SELECT MEMBER=PMYCAL   
   SELECT MEMBER=PMYCALS  
//ADDSLIB.SYSIN    DD  *                  SLIB
   COPY INDD=((SLIBIN,R)),OUTDD=SLIBOUT
   SELECT MEMBER=NO#MBR#                     /*dummy entry no mbrs! */
//ADDTLIB.SYSIN    DD  *                  TLIB
   COPY INDD=((TLIBIN,R)),OUTDD=TLIBOUT
   SELECT MEMBER=NO#MBR#                     /*dummy entry no mbrs! */
//
______________________________________________________________________
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. Install Other Software                                    |  
+--------------------------------------------------------------------+
|         JCL Member: CALISPF.V0R9M00.CNTL($INST40)                  |
+--------------------------------------------------------------------+
 
 
______________________________________________________________________
//CALISP40 JOB (SYS),'Install Other Pgms',   <-- Review and Modify
//         CLASS=A,MSGCLASS=X,               <-- Review and Modify
//         MSGLEVEL=(1,1),NOTIFY=&SYSUID     <-- Review and Modify
//* -------------------------------------------------------*
//* *  CALISPF for MVS3.8J TSO / Hercules                  *
//* *                                                      *
//* *  JOB: $INST40  Install Other Software                *
//* *       Install xxxxxx   Programs                      *
//* *                                                      *
//* *                                                      *
//* -------------------------------------------------------*
//*
//* -------------------------------------------------------*
//* *  IEFBR14                                             *
//* -------------------------------------------------------*
//DUMMY    EXEC PGM=IEFBR14
//SYSPRINT DD   SYSOUT=*
//*
// 
______________________________________________________________________
Figure 9: $INST40 JCL
 
 
    a) Member $INST40 installs additional software.
 
       Note:  If no other software is included for this distribution,
       -----  an IEFBR14 step is executed.
 
    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 11. Validate CALISPF                                          |
+--------------------------------------------------------------------+
 
 
    a) From the ISPF Main Menu, enter the following command:    
 
          TSO %CCAL DBUG COLORS(Y)                         
 
       Press ENTER.   
        
       A similar response will display...
        
       *** CCAL    START ***           
       ***   APPLID='ISP     '         
       ***   TODAY=2023.jjj            
       ***      VGET CALENDAR RC=0     
       ***   LENCAL=0                  
       ***   OLDCAL=                   
       ***   CALDATE=                  
       ***   DATECHG=1                 
       ***   CUTIL00 MCALA  RC=0       
       ***   CALDATE=2023.jjj          
       ***      VPUT CALDATE  RC=0     
       ***   1  VPUT CALENDAR RC=0     
       *** CCAL    END   ***           
       ***                             
        
    b) From the ISPF Main Menu, enter the following command:    
 
          TSO ISPEXEC SELECT PANEL(PMYCAL)                              
 
       Press ENTER.   
 
    c) The below panel should display a calendar view including
       highlighted current date.
 
________________________________________________________________________________
 --------------------------- My Monthly Calendar  ------------------------------
 OPTION  ===>                                                                   
 CALDR02  Calendar date changed.  Press ENTER to refresh calendar data.         
                                                            Userid   - LARRY01  
                                                            System   - BSP1     
                                                            TSO-PROC - ISPLGN00 
                                                            Panel    - PMYCAL   
                                                            APPLID   - ISP      
                                                            Term   0024 x 0080  
                                                            Time     - 09:03:13 
                                                           January 2023     022 
                                                            S  M  T  W  T  F  S 
                                                            1  2  3  4  5  6  7 
                                                            8  9 10 11 12 13 14 
                                                           15 16 17 18 19 20 21 
                                                           22 23 24 25 26 27 28 
                                                           29 30 31             
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
________________________________________________________________________________
Figure 10: Sample PMYCAL panel with calendar view 
 
 
 
    d) To exit, use PF3.                                              
 
 
    e) Validation for CALISPF is complete.
 
 
+--------------------------------------------------------------------+
| Step 12. Done                                                      |
+--------------------------------------------------------------------+
 
 
    a) Congratulations!  You completed the installation for CALISPF.


+--------------------------------------------------------------------+
| Step 13. Incorporate Calendar View onto ISPF 2.2 Main Menu         |
+--------------------------------------------------------------------+
 
 
    The following steps include portions of code that can be
    cut-paste into the various sections in a target panel.

    ISPF v2.2 contraints:
    --------------------
    - only one dynamic area per panel
    - expansion (EXPAND(//) not supported for dynamica area
      floating movement on a panel


    1) Add dynamic area definition to )ATTR section for use of 
       calendar view display in )BODY declaration.

       Tip: Use the COPY operation to copy-paste the appropriate
            content at injection point on your target panel.

______________________________________________________________________
/* ----------------------------------------------------------------- CALISPF-A*/
/* Dynamic Area for Calendar                                         CALISPF-A*/
/* ----------------------------------------------------------------- CALISPF-A*/
 * AREA(DYNAMIC) SCROLL(ON)   COLOR(GREEN)                                      
/* ----------------------------------------------------------------- CALISPF-A*/
______________________________________________________________________
Figure 12: CALISPF.V0R0M00.ISPF(CALA) content


    2) Following above injection point, add attribute DATAOUT
       definitions to )ATTR section to support colorization. 

       Tip: Copy CALISPF.V0R9M00.ISPF(PCALB) using your editor
            at injection point.

______________________________________________________________________
/* ----------------------------------------------------------------- CALISPF-B*/
/* Attributes for Calendar Colorization                              CALISPF-B*/
/* ----------------------------------------------------------------- CALISPF-B*/
 51 TYPE(DATAOUT) INTENS(LOW)  COLOR(RED)                                       
 52 TYPE(DATAOUT) INTENS(LOW)  COLOR(PINK)                                      
 53 TYPE(DATAOUT) INTENS(LOW)  COLOR(TURQ)                                      
 54 TYPE(DATAOUT) INTENS(HIGH) COLOR(BLUE)                                      
 55 TYPE(DATAOUT) INTENS(HIGH) COLOR(PINK)  HILITE(REVERSE)                     
/* ----------------------------------------------------------------- CALISPF-B*/
______________________________________________________________________
Figure 13: CALISPF.V0R0M00.ISPF(CALB) content


    3) Determine placement of monthly calendar display area
       (8 rows x 21 bytes) and add CALENDAR view to )BODY section.

______________________________________________________________________
*CALENDAR           *
*                   *
*                   *
*                   *
*                   *
*                   *
*                   *
*                   *
______________________________________________________________________
Figure 14: CALISPF.V0R0M00.ISPF(CALC) content


    4) Add system date change alert message logic to )INIT section.

______________________________________________________________________
/* ----------------------------------------------------------------- CALISPF-D*/
/* Initialize calendar working variables and fetch calendar          CALISPF-D*/
/* user profile variables                                            CALISPF-D*/
/* ----------------------------------------------------------------- CALISPF-D*/
  &Z    = ''                           /* Set &Z to NULL             CALISPF-D*/
  &CCOLOR = 'Y'                        /* Y-colors  N-monochrome     CALISPF-D*/
  &DORCMD = 'Y'                        /* Y-Do RCMD N-bypass RCMD    CALISPF-D*/
  &RCMD = ''                           /* Set &RCMD to NULL          CALISPF-D*/
  &DBUG = ''                           /* Set &DBUG to NULL          CALISPF-D*/
  VGET (CALENDAR) PROFILE              /* Fetch CALENDAR variable    CALISPF-D*/
  VGET (CALDATE)  PROFILE              /* Fetch CALDATE variable     CALISPF-D*/
/* ----------------------------------------------------------------- CALISPF-D*/
______________________________________________________________________
Figure 15: CALISPF.V0R0M00.ISPF(CALD) content


    5) Add initialization logic to )INIT section.

______________________________________________________________________
/* ----------------------------------------------------------------- CALISPF-E*/
/* System date change alert via msg CALDR02                          CALISPF-E*/
/* ----------------------------------------------------------------- CALISPF-E*/
  IF (&CALDATE NE &ZJ4DATE)            /* Check for calendar date    CALISPF-E*/
    .MSG = CALDR02                     /* change and alert user      CALISPF-E*/
/* ----------------------------------------------------------------- CALISPF-E*/
______________________________________________________________________
Figure 16: CALISPF.V0R0M00.ISPF(CALE) content


    6) Add system date change alert message and reflect logic
       to )REINIT section.

______________________________________________________________________
/* ----------------------------------------------------------------- CALISPF-E*/
/* System date change alert via msg CALDR02                          CALISPF-E*/
/* ----------------------------------------------------------------- CALISPF-E*/
  IF (&CALDATE NE &ZJ4DATE)            /* Check for calendar date    CALISPF-E*/
    .MSG = CALDR02                     /* change and alert user      CALISPF-E*/
/* ----------------------------------------------------------------- CALISPF-E*/
______________________________________________________________________
Figure 17: CALISPF.V0R0M00.ISPF(CALE) content


______________________________________________________________________
/* ----------------------------------------------------------------- CALISPF-F*/
/* Reflect command if one was initated due to system date change     CALISPF-F*/
/* ----------------------------------------------------------------- CALISPF-F*/
  IF (&RCMD > &Z)                      /* If saved command present,  CALISPF-F*/
    &ZCMD = &RCMD                      /*  set ZCMD from RCMD        CALISPF-F*/
/* ----------------------------------------------------------------- CALISPF-F*/
______________________________________________________________________
Figure 18: CALISPF.V0R0M00.ISPF(CALF) content


    7) In the )REINIT section of the target panel, add logic to post an
       informational message on a calendar date change when target
       panel is initially displayed -
       'CALDR02  Calendar changed.  Press ENTER to refresh calendar.'

______________________________________________________________________
/* ----------------------------------------------------------------- CALISPF-D*/
/* Initialize calendar working variables and fetch calendar          CALISPF-D*/
/* user profile variables                                            CALISPF-D*/
/* ----------------------------------------------------------------- CALISPF-D*/
  &Z    = ''                           /* Set &Z to NULL             CALISPF-D*/
  &CCOLOR = 'Y'                        /* Y-colors  N-monochrome     CALISPF-D*/
  &DORCMD = 'Y'                        /* Y-Do RCMD N-bypass RCMD    CALISPF-D*/
  &RCMD = ''                           /* Set &RCMD to NULL          CALISPF-D*/
  &DBUG = ''                           /* Set &DBUG to NULL          CALISPF-D*/
  VGET (CALENDAR) PROFILE              /* Fetch CALENDAR variable    CALISPF-D*/
  VGET (CALDATE)  PROFILE              /* Fetch CALDATE variable     CALISPF-D*/
/* ----------------------------------------------------------------- CALISPF-D*/
______________________________________________________________________
Figure 19: CALISPF.V0R0M00.ISPF(CALD) content


    8) Add system date change detection logic to )PROC section.


______________________________________________________________________
/* ----------------------------------------------------------------- CALISPF-G*/
/* Determine if system date changed to invoke CCAL via               CALISPF-G*/
/* ZSEL to update calendar user profile variables and save           CALISPF-G*/
/* any entered command to be displayed in next panel display.        CALISPF-G*/
/* ----------------------------------------------------------------- CALISPF-G*/
  VGET (CALDATE) PROFILE               /* Fetch CALDATE variable     CALISPF-G*/
  &RCMD= ''                            /* Initialize RCMD            CALISPF-G*/
  IF (&CALDATE NE &ZJ4DATE)            /* Check for cal date chg     CALISPF-G*/
    IF (&ZCMD > &Z)                    /* If command present         CALISPF-G*/
      IF (&DORCMD = 'Y')               /*  and DORCMD = Y,           CALISPF-G*/
        &RCMD= '&ZCMD'                 /*  save to reflect back on   CALISPF-G*/
        &ZCMD= '$CCAL'                 /*  to reflect back on        CALISPF-G*/
        .MSG = CALDR01                 /*  panel with message        CALISPF-G*/
    IF (&ZCMD = &Z)                    /* If command absent,         CALISPF-G*/
      &ZCMD = '$CCAL'                  /*  call CCAL CLIST and       CALISPF-G*/
      .MSG = CALDR00                   /*  set message only          CALISPF-G*/
/* ----------------------------------------------------------------- CALISPF-G*/
______________________________________________________________________
Figure 20: CALISPF.V0R0M00.ISPF(CALG) content


    9) Add TRANSlate option-command pair to ZSEL setting statement
       in )PROC section. $CCAL will execute the calendar maintenance
       clist, CCAL.

______________________________________________________________________
            $CCAL,'CMD(%CCAL &DBUG COLORS(&CCOLOR))'             /*  CALISPF-H*/
______________________________________________________________________
Figure 21: CALISPF.V0R0M00.ISPF(CALH) content



    Each of the panel injection content members reside in 
    CALISPF.VxRxM00.ISPF distribution PDS:
      - PCALA through PCALH, inclusive.


    Two sample panels are included in the software distribution
    as reference.
      - PMYCAL   non-selection panel with calendar view
      - PMYCALS  selection panel with calendar view



/* -------------------------------------------------------------------------- */
/* Sample code snippent for non-select panel to                               */
/* add selection processing to invoke CCAL via ZSEL.                          */
/* -------------------------------------------------------------------------- */
  &ZSEL = TRANS( TRUNC (&ZCMD,'.')                                              
            $CCAL,'CMD(%CCAL &DBUG COLORS(&CCOLOR))'             /*  CALISPF-H*/
              ' ',' ' )                                                         
  &ZTRAIL = .TRAIL                                                              


/* -------------------------------------------------------------------------- */
/* Sample code snippent for select panel to                                   */
/* add selection processing to invoke CCAL via ZSEL.                          */
/* -------------------------------------------------------------------------- */
 
  &ZSEL = TRANS( TRUNC (&ZCMD,'.')
            .
            $CCAL,'CMD(%CCAL &DBUG COLORS(&CCOLOR))'             /*  CALISPF-H*/
            .
            .
              ' ',' ' )
        
        
     
    Ensure target panel does NOT use any of the attribute symbols   
    used by CALISPF.  If so, consider changing your target panel.  
    or not including the new ATTR entries and using the monochrome
    mode.
     
    If you elect to display a monochrome calendar view using the    
    default color green with the visual current date marker,        
    change the COLORS parameter to (N) from (Y) in PCALD code  
    snippet.       


+--------------------------------------------------------------------+
| Step 14. Modify ISPF Start-up Procedure                            |
+--------------------------------------------------------------------+
 
 
    To ensure CALENDAR and CALDATE are initialized and up-to-date
    at the start of a users ISPF session, add the following new
    command line statement before the ISPF start-up command.

    a) Identify Procedure that starts your installation ISPF environment.
 
    b) Add new command as shown below:
     
       1       10        20        30        40        50        60        70 
       ----+----+----+----+----+----+----+----+----+----+----+----+----+----+-
       .
       .
       /*******************************************************/
       /* Start ISPF per ISPF v2.2 Installation Documentation */
       /*******************************************************/
       .
       /**********************************************************************/
       /* INVOKE CCAL to initialize calendar view    (Y-colors N-monochrome) */
       /**********************************************************************/
       ISPF CMD(%CCAL COLORS(Y))                 <-- new command
       .
       ISPF                                      <-- start IPSF command
       .
       .
 
    c) Review and save revisions.             
                                    
    d) Logoff ISPF.               
                                                                            
    e) Relogon to ISPF.
                                                                            
    f) The ISPF main menu should display a current date calendar view.
 
    g) TSO/ISPF Logon procedure update complete.






Enjoy CALISPF for ISPF 2.2+ 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                  |
======================================================================

  - CALISPF.V0R9M00.ASM 
 $ . README      Dummy member, this is intentional
      
  - CALISPF.V0R9M00.CLIST
 $ . README      Dummy member, this is intentional

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

  - CALISPF.V0R9M00.HELP
 $ . README      Dummy member, this is intentional

  - CALISPF.V0R9M00.ISPF
 $ . PCALA       ATTR Dynamic area for Calendar            (copy code)   
 $ . PCALB       ATTR Attributes for Calendar Colors       (copy code)   
 $ . PCALC       BODY Calendar 8x21 data area              (copy code)   
 $ . PCALD       INIT Init and VGET calendar vars          (copy code)   
 $ . PCALE       INIT Alert system data chanage            (copy code)   
 $ . PCALF       REINIT Reflect prev cmd entered           (copy code)   
 $ . PCALG       PROC Calendar date change                 (copy code)   
 $ . PCALH       ZSEL TRANS command                        (copy code)   
 $ . PMYCAL      Sample panel, non-select type with CALENDAR view    
 $ . PMYCALS     Sample panel, select type with CALENDAR view    
 $ . CCAL        CLIST for ISPF to initialze calendar variables
 $ . CALDR00     Messages for calendar update notification
 $ . HCCAL       Information panel for CALISPF
                
  - CALISPF.V0R9M00.MACLIB
 $ . README      Dummy member, this is intentional
       
       
                                                                            
  - After downloading any other required software, consult provided
    documentation including any configuration steps (if applicable)
    for software and HELP file installation. 
       
       
 $ - Denotes modified software component for THIS DISTRIBUTION               
     relative to prior DISTRIBUTION               
       
 # - Denotes new software component for THIS DISTRIBUTION
     relative to prior DISTRIBUTION               
       
       
       
       
