Overview
KICKS is a transaction processing system for CMS and TSO enabling execution of CICS programs directly under TSO and provides a high level of source code compatibility with CICS. Compilers supported (not an exhaustive list) include MVT COBOL and MVS GCC.
KICKS is owned and authored by Mike Noel. Complete information on this product available at http://www.kicksfortso.com/
This post is an addendum to GGUESS in MVS 3.8J for compiling and configuring GGUESS programs under KICKS v1.5.
It is assumed reader has working knowledge and current installation of KICKS version 1.5 on MVS 3.8J Tur(n)key system (e.g. TK3, TK3UPD, TK4- or TK5).
Installing GGUESS under KICKS v1.5
The below steps are executed using TK5.
a) Using included job $INST04 in the GGUESS distribution CNTL library, review and update JOB statement and other JCL to conform to your installation standard including the highlighted statements in the below snippet:
//GGUESS04 JOB (SYS),'Install GGUESS', <-- Review and Modify // CLASS=A,MSGCLASS=X, <-- Review and Modify // MSGLEVEL=(1,1),NOTIFY=&SYSUID <-- Review and Modify //* -------------------------------------------------------* //* * GGUESS for MVS3.8J TSO / Hercules * //* * * //* * JOB: $INST04 Install GGUESS Software * //* * * //* * - Uses KICKS 1.5 product from Mike Noel * //* * - Install libraries marked... * //* * - Search for '<--KICKS' * //* * - Update install libraries per your * //* * installation standard * //* * * //* -------------------------------------------------------* //* //JOBPROC DD DSN=your.KICKSSYS.V1R5M0.PROCLIB, <--KICKS PROCLIB // DISP=SHR //* //* -------------------------------------------------------* //* * * //* * PROC: FHLKED * //* * Fortran H Link-Edit * //* * * //* -------------------------------------------------------* //FHL PROC HLQ=WHATHLQ,VRM=VXRXMXX, // MBR=WHOWHAT //* //FORT EXEC PGM=IEKAA00,REGION=228K //STEPLIB DD DUMMY //SYSPRINT DD SYSOUT=* //SYSPUNCH DD DSN=NULLFILE //SYSLIN DD DSNAME=&LOADSET,UNIT=SYSSQ,DISP=(MOD,PASS), * // SPACE=(400,(200,50),RLSE) //SYSIN DD DSN=&HLQ..&VRM..ASM(&MBR),DISP=SHR <--INPUT //* //LKED EXEC PGM=IEWL,REGION=96K,PARM=(XREF,LET,LIST),COND=(4,LT,FORT) //SYSLIB DD DUMMY //SYSLMOD DD DUMMY //SYSPRINT DD SYSOUT=* //SYSUT1 DD UNIT=SYSDA,SPACE=(1024,(200,20),RLSE),DCB=BLKSIZE=1024, * // DSNAME=&SYSUT1 //SYSLIN DD DSNAME=&LOADSET,DISP=(OLD,DELETE) // DD DDNAME=SYSIN //SYSIN DD DUMMY //* // PEND //* //* -------------------------------------------------------* //* * FORTRANH Link-Edit RANDOMF to TEMP PDS as RAND * //* -------------------------------------------------------* //RANDOMF EXEC ASML,HLQ='SHRABIT.GGUESS',VRM=V0R9M00,MBR=RANDOMF, // PARM.FORT='NAME=RAND,LINECNT=55,SIZE=MAX', // REGION.FORT=1024K //FORT.STEPLIB DD DSN=SYSC.FORTLIB,DISP=SHR <--Add this statement //LKED.SYSLMOD DD DISP=(MOD,PASS),UNIT=SYSALLDA, // SPACE=(TRK,(10,5,10)), // DSN=&RANDOM(RAND) //* //* -------------------------------------------------------* //* * COBOL Link-Edit GUESS01 to KICKS RPL * //* * using K2KCOBCL KICKS procedure * //* -------------------------------------------------------* //GUESS01 EXEC K2KCOBCL,ZOUT='*' //COPY.SYSUT1 DD DSN=SHRABIT.GGUESS.V0R9M00.ASM(GUESS01),DISP=SHR <-- Correct this statement //* INCLUDE LOADLIB for RANDOM Subroutine //LKED.SYSLIB DD // DD DSN=&RANDOM,DISP=(SHR,PASS) <--RAND //LKED.SYSIN DD * INCLUDE SKIKLOAD(KIKCOBGL) ENTRY GUESS01 NAME GUESS01(R) /* //* //* -------------------------------------------------------* //* * COBOL Link-Edit GUESS02 to KICKS RPL * //* * using K2KCOBCL KICKS procedure * //* -------------------------------------------------------* //GUESS02 EXEC K2KCOBCL,ZOUT='*' //COPY.SYSUT1 DD DSN=SHRABIT.GGUESS.V0R9M00.ASM(GUESS02),DISP=SHR <-- Correct this statement //* INCLUDE LOADLIB for INTEDIT Subroutine //LKED.SYSLIB DD // DD DISP=SHR,DSN=&KIKSUSR..&VER..KIKRPL <--INTEDIT //LKED.SYSIN DD * INCLUDE SKIKLOAD(KIKCOBGL) ENTRY GUESS02 NAME GUESS02(R) /* //
b) Submit the job
c) Review job output for successful completion
d) Add the below GGUESS PCT entries:
The KICKSSYS INSTLIB PDS includes a PCT Assembly JOB includes
your-install-hlq.KICKSSYS.V1R5M0.INSTLIB(KIKPCT1$).
Insert the below statements near the end of current entries.
*
* TRANSACTION FOR GUESSING GAME
*
KIKPCT TYPE=ENTRY,TRANSID=GES1,PROGRAM=GUESS01
KIKPCT TYPE=ENTRY,TRANSID=GES2,PROGRAM=GUESS02
*
e) Save and submit the job
f) Review job output for successful completion
g) Add the below GGUESS PPT entries:
The KICKSSYS INSTLIB PDS includes a PPT Assembly JOB includes
your-install-hlq.KICKSSYS.V1R5M0.INSTLIB(KIKPPT1$).
Insert the below statements near the end of current entries.
*
* TRANSACTION FOR GUESSING GAME
*
KIKPPT TYPE=ENTRY,PROGRAM=GUESS01,PGMLANG=CMDLVL
KIKPPT TYPE=ENTRY,PROGRAM=GUESS02,PGMLANG=CMDLVL
*
h) Save and submit the job
i) Review job output for successful completion
j) Exist ISPF to return to TSO ready prompt.
k) Type exec ‘your-install-hlq.kickssys.v1r5m0.clist(kicks)’
l) Press ENTER to start a KICKS session
m) When KICKS welcome screen displays, press CLEAR key
KSGM for tso user HERC03 at terminal U0C3 TK5R hh:mm:ss mm/dd/yy KK KK IIIIIIIIII CCCCCCCCCC KK KK SSSSSSSSSS KK KK IIIIIIIIII CCCCCCCCCCCC KK KK SSSSSSSSSSSS KK KK II CC CC KK KK SS SS KK KK II CC KK KK SS KK KK II CC KK KK SSS KKKKKKK II CC KKKKKKK SSSSSSSSS KKKKKKK II CC KKKKKKK SSSSSSSSS KK KK II CC KK KK SSS KK KK II CC KK KK SS KK KK II CC CC KK KK SS SS KK KK IIIIIIIIII CCCCCCCCCCCC KK KK SSSSSSSSSSSS KK KK IIIIIIIIII CCCCCCCCCCC KK KK SSSSSSSSSS TM For TSO V1R5M0 September 2014 Press PF1 for help, CLEAR to continue... © Mike Noel
n) Type GES1 and press ENTER
o) Guessing game display is presented
_ Welcome to the Number Guessing Game
The rules are easy for this game..
I will think of a number and you
try to guess the number. I will keep
track of tries. Sound easy, ha!
** The number is from 0 to 99 **
Well, key in a number (2 digits) to start game.
p) Congratulations!
q) Enjoy the game…
r) After terminating the guessing game, type KSSF and press ENTER to terminate KICKS
s) At the TSO ready prompt, use RELOGON to sign back in to TSO/ISPF
Closing
Enjoy GGUESS KICKS MVS3.8J system.
Please use the comment box below or the contact us link on the menu bar to communicate any suggestions, improvements, corrections or issues regarding this post.
Thank You.