It is assumed you understand JCL and the basics of Assembler programming in order to use the FSI API.
FSI is available from my WEB Site as a stacked tape file created by IEBCOPY. You can get the tape image here: fsi120.het
or
You will need to use IEBCOPY to load the FSI files. Below is some sample JCL to load the FSI tape. You may need to update the DEV=3350 and VOLSER=WORK01 point to an available DASD device on your MVS system.
//FSILOAD JOB (5222),SPRINKLE,CLASS=A,MSGCLASS=A //FSILOAD PROC PFX=FSI,VRM=V1R2M0, // DEV=3350,VOLSER=WORK01, // TAPE=TAPE,TVOLSER=FSI120, // TVRM=V1R2M0 //IEBCOPY EXEC PGM=IEBCOPY //SYSPRINT DD SYSOUT=* //ASM DD DSN=&PFX..&VRM..ASM, // DISP=(NEW,CATLG,DELETE), // UNIT=&DEV,VOL=SER=&VOLSER, // SPACE=(CYL,(1,0,36)) //* //OBJ DD DSN=&PFX..&VRM..OBJ, // DISP=(NEW,CATLG,DELETE), // UNIT=&DEV,VOL=SER=&VOLSER, // SPACE=(CYL,(1,0,36)) //* //LOAD DD DSN=&PFX..&VRM..LOAD, // DISP=(NEW,CATLG,DELETE), // UNIT=&DEV,VOL=SER=&VOLSER, // SPACE=(CYL,(1,0,36)) //* //MLIB DD DSN=&PFX..&VRM..MLIB, // DISP=(NEW,CATLG,DELETE), // UNIT=&DEV,VOL=SER=&VOLSER, // SPACE=(CYL,(1,0,36)) //* //PLIB DD DSN=&PFX..&VRM..PLIB, // DISP=(NEW,CATLG,DELETE), // UNIT=&DEV,VOL=SER=&VOLSER, // SPACE=(CYL,(1,0,36)) //* //* //ASMT DD DSN=FSI.&TVRM..ASMT, // DISP=(OLD,KEEP,KEEP), // UNIT=&TAPE, // LABEL=(1,SL), // VOL=SER=FSI120 //* //OBJT DD DSN=FSI.&TVRM..OBJT, // DISP=(OLD,KEEP,KEEP), // UNIT=AFF=ASMT, // LABEL=(2,SL), // VOL=REF=*.ASMT //* //LOADT DD DSN=FSI.&TVRM..LOADT, // DISP=(OLD,KEEP,KEEP), // UNIT=AFF=OBJT, // LABEL=(3,SL), // VOL=REF=*.OBJT //* //PLIBT DD DSN=FSI.&TVRM..PLIBT, // DISP=(OLD,KEEP,KEEP), // UNIT=AFF=LOADT, // LABEL=(4,SL), // VOL=REF=*.LOADT //* //MLIBT DD DSN=FSI.&TVRM..MLIBT, // DISP=(OLD,KEEP,KEEP), // UNIT=AFF=PLIBT, // LABEL=(5,SL), // VOL=REF=*.PLIBT //* // PEND //* //FSILOAD EXEC FSILOAD //SYSIN DD * C O=ASM,I=ASMT C O=OBJ,I=OBJT C O=LOAD,I=LOADT C O=PLIB,I=PLIBT C O=MLIB,I=MLIBT /* //* // |
Download the JCL here: fsiload.jcl
Before you run FSI you must first allocate the MLIB and PLIB libraries to your TSO session. You can use the following commands:
alloc fi(fsimlib) da('fsi.v1r2m0.mlib') shr
alloc fi(fisplib) da('fsi.v1r2m0.plib') shr
Now you must give FSI access to the necessary load modules. You can do this
two different ways. First you can add the FSI load library to your TSO Logon Procedure
or you can allocate the FSI Load Library data set to the DDNAME FSILLIB.
alloc fi(fisllib) da('fsi.v1r2m0.load') shr
If you added the FSI LOAD Library dataset to your LOGON PROC you can invoke FSI directly
as a TSO command:
READY
FSISTART SAMP01
If you use the FSILLIB method, you can use the TSO CALL command to invoke FSI.
READY
call 'fsi.v1r2m0.load(fsistart)' 'samp01'
FSISTART will set up the environment and then attach the program samp01 as a subtask. FSISTART then waits for the subtask to end.