Home News Version 1 Tech Support Pubs S2K Site Map |
Zaps are supplied in the form of 80-column text files used as input to the IBM utility IMASPZAP. Here is an example of IMASPZAP execution JCL using an actual problem fix as input:
//JCLZAP JOB //* //ZAP PROC SYSOUT='*' //ZAP EXEC PGM=IMASPZAP,PARM='IGNIDRFULL' //SYSPRINT DD SYSOUT=&SYSOUT //SYSLIB DD DSN=S2K.R121.LOAD,DISP=SHR // PEND //ZAP EXEC ZAP //SYSIN DD * * IBM R12.1 BUG 4860 MVS * * USES THE WRONG DISPLACEMENT WHEN POINTING TO THE PREFIX FOR * SAVE AND KEEP FILE. * * YOU MUST RELINK SYS2K AND S2KPLI AFTER APPLYING THIS ZAP. * NAME S2K50 COPRIM VER 0508 9500,E1DA VER 0510 4110,E1FC VER 0518 4120,E1DA * REP 0508 9500,E1DE REP 0510 4110,E200 REP 0518 4120,E1DE CHECKSUM CC17CC18 //
Format of a ZAP Deck
In the above example, the zap deck starts after the //SYSIN DD * statement and continues through the CHECKSUM CC17CC18 statement.
Some zap decks have changes for more than one module or CSECT. There is a set of NAME, VER, and REP statements for each module or CSECT being changed.
You can tell a zap deck from a source module change by the types of statements in the zap.
The following table describes the different statements that make up a zap deck.
* IBM R12.1 BUG 4860 MVS |
This statement is a comment indicating the following about this fix:
Comments in zap decks are indicated by an asterisk (*) in column 1. |
* * USES THE WRONG DISPLACEMENT WHEN POINTING TO THE PREFIX FOR * SAVE AND KEEP FILE. * * YOU MUST RELINK SYS2K AND S2KPLI AFTER APPLYING THIS ZAP. * |
Comment block describes the problem being corrected, and gives instructions to make the zap become effective. |
NAME S2K50 COPRIM |
NAME statement indicates the module and CSECT within the module being modified by the zap. |
VER 0508 9500,E1DA VER 0510 4110,E1FC VER 0518 4120,E1DA |
VER statements verify that the machine language code and data at the given address within the module match the machine language code and data in the VER statement. |
REP 0508 9500,E1DE REP 0510 4110,E200 REP 0518 4120,E1DE |
After the program code is verified, the REP statements replace the machine language code and data at the given address within the module with the code and data in the REP statement. |
CHECKSUM CC17CC18 |
The IMASPZAP utility program generates a CHECKSUM value when it applies the zap, and compares it to the value in the CHECKSUM statement. |
Applying the Zap
Before you apply the zap make sure you have current backups for load libraries affected by the zap. The zap comments tell you if you must run PRELNK JCL to link programs SYS2K and S2KPLI after you apply the zap to your load library. If you are running Version 1, you do not need to relink executable programs because zaps are applied directly to the executables, and PRELNK has been eliminated.
Common Problems Encountered when Applying Zaps
After you execute the IMASPZAP JCL, the job should end with a condition code of 0000 or 0004 and you should see this message at the end of the job output:
AMA132I CHECKSUM WAS CORRECT , IS NOW 0.
Click here to see the output of an IMASPZAP that ran properly.
If the job ends with a condition code of 8, or you don't see the CHECKSUM WAS CORRECT message, use the following table to determine the problem and proper response. This table describes the most common errors encountered when applying zaps.
Problem | Explanation |
---|---|
The IMASPZAP utility program issued the following messages:
AMA125I S2K50 IDR-COUNT = 0019 (MAX=0019) |
This execution of the IMASPZAP utility filled the IDR space
in the module.
IMASPZAP ended with a condition code of 0004. User Response: This message can be safely ignored. If the CHECKSUM was correct, no VER or REP statements were in error, and the job ended with a condition code of 4, the zap was applied successfully. Click here to see output from a job that issued this message. |
The IMASPZAP utility program issued the following messages:
AMA120I S2K50 NO IDR SPACE - RE-LINK |
The IDR space in the module is filled and no more entries can
be added.
IMASPZAP ended with a condition code of 0004. User Response: This message can be safely ignored. If the CHECKSUM was correct, no VER or REP statements were in error, and the job ended with a condition code of 4, the zap was applied successfully. Click here to see output from a job that issued this message. |
One or more of the VER cards rejected because it didn't match the module contents at the specified location. |
Either the zap had already been applied, or an
error was introduced when the zap was entered manually.
The job ends with a condition code of 0008 and error messages are issued. User Response: Contact SYSTEM 2000 Technical Support. Click here to see output from a job that issued this message. |
The CHECKSUM value in the CHECKSUM statement did not match the CHECKSUM value generated by IMASPZAP. |
If there were no errors in the VER or REP statements, the changes
were applied to the module even though the CHECKSUM values didn't match.
The job ends with a condition code of 0008 and error messages are issued. User Response: Contact SYSTEM 2000 Technical Support. Click here to see output from a job that issued this message. |