//PASC2CPM JOBCARD INFORMATION
//*
//*------------------------------------------------------------------
//*                COPYRIGHT (C) 1995, SAS INSTITUTE INC.
//*                  UNPUBLISHED - ALL RIGHTS RESERVED
//*                    S A S / C   S A M P L E
//*
//*       NAME: PASC2CPM
//*   LANGUAGE: JCL
//*    PURPOSE: THIS EXAMPLE DEMONSTRATES A PASCAL PROGRAM CALLING
//*             A C FUNCTION, PASSING A PARAMETER LIST.
//*             IT CONSISTS OF SAMPLE LIBRARY MEMBERS
//*             PASC2CPC, PASC2CPP, AND PASC2CPM.
//*             THIS JCL COMPILES, LINKS, AND EXECUTES THESE MODULES.
//*  MISC NOTES: THE FOLLOWING LSCL102 MESSAGES CAN BE IGNORED:
//*    WARNING: CAN'T OPEN FILE DURING AUTOCALL: DDN:SYSLIB(AMPXRETC)
//*    WARNING: CAN'T OPEN FILE DURING AUTOCALL: DDN:SYSLIB(AMPXHALT)
//*    WARNING: CAN'T OPEN FILE DURING AUTOCALL: DDN:SYSLIB(AMPXSEGE)
//*-----------------------------------------------------------------
//*****************************************************************
//*  NOTE: Verify the statements indicated by the "<== CHECK"
//*   have been customized for the local environment.
//*****************************************************************
//*
//*  *COMPILE THE PASCAL PROGRAM*
//PASCCOMP EXEC PAS12C                                <===  CHECK: PROC
//PASC.SYSLIN   DD DSN=your.object.library(PASC2CPP),DISP=OLD <== CHECK
//PASC.SYSIN    DD DSN=prefix.SAMPLE.ILC(PASC2CPP),DISP=SHR   <== CHECK
//*
//*  *COMPILE THE C PROGRAM*
//CCOMP EXEC LC370C,PARM.C='INDEP'                    <===  CHECK: PROC
//*                                         <== MUST COMPILE WITH INDEP
//C.SYSLIN DD DSN=your.object.library(PASC2CPC),DISP=OLD      <== CHECK
//C.SYSIN  DD DSN=prefix.SAMPLE.ILC(PASC2CPC),DISP=SHR        <== CHECK
//*
//*****LINK WITH ILCLINK******************
//LINK EXEC PROC=ILCLINK,PARM.LKED='ECHO'            <===  CHECK: PROC
//LKED.SYSLMOD DD DSN=your.load.library,DISP=OLD             <== CHECK
//LKED.LC370   DD DSN=prefix.BASEOBJ,DISP=SHR                <== CHECK
//             DD DSN=prefix.STDOBJ,DISP=SHR                 <== CHECK
//LKED.PASLIB  DD DSN=local.pascal.SAMPRUN3,DISP=SHR         <== CHECK
//             DD DSN=local.pascal.SAMPRUN1,DISP=SHR         <== CHECK
//             DD DSN=local.pascal.SAMPMSG1,DISP=SHR         <== CHECK
//LKED.MYLIBC  DD DSN=your.object.library,DISP=SHR           <== CHECK
//LKED.MYLIBP  DD DSN=your.object.library,DISP=SHR           <== CHECK
//LKED.ILCTERM DD SYSOUT=*
//LKED.ILCIN DD *
 FIRST *(VSPASCAL)
 LANGUAGE VSPASCAL,C
 PROCESS CLINK
   AUTOCALL LC370
   INCLUDE MYLIBC(PASC2CPC)
 PROCESS LKED (XREF LIST CALL
   AUTOCALL PASLIB
   INCLUDE MYLIBP(PASC2CPP)
   INCLUDE PASLIB(AMPZMVSB)
   MODE AMODE(31),RMODE(24)
 NAME PASC2CPM(R)
//*
//RUNIT        EXEC PGM=PASC2CPM
//STEPLIB      DD DSN=your.load.library,DISP=SHR             <== CHECK
//             DD DSN=prefix.LINKLIB,DISP=SHR                <== CHECK
//             DD DSN=local.pascal.SAMPRUN4,DISP=SHR         <== CHECK
//             DD DSN=local.pascal.SAMPRUN2,DISP=SHR         <== CHECK
//             DD DSN=local.pascal.SAMPMSG1,DISP=SHR         <== CHECK
//SYSPRINT     DD SYSOUT=*
//SYSTERM      DD SYSOUT=*
//SYSOUT       DD SYSOUT=*
//OUTPUT       DD SYSOUT=*
//*

//*