DCL DD MBR CHAR(1ð) BAS(MBR@);
DCL DD NUM_PARMS BIN( 4);
/\ Control field for first time initialization \/
DCL DD READY CHAR( 1) INIT("ð");
/\ Binary offset into the space \/
DCL DD BINOFFSET BIN(4) AUTO INIT(ð);
DCL SPCPTR BINOFFSET@ AUTO INIT(BINOFFSET);
/\ Pointers for accessing the space \/
DCL SPCPTR USRSPC;
DCL SYSPTR USRSPC@;
/\ QCMDEXC and associated CL commands \/
DCL SYSPTR QCMDEXC INIT("QCMDEXC", CTX("QSYS"), TYPE(PGM));
DCL DD CLOVRCMD CHAR(65);
DCL DD OVRSTR CHAR(39) DEF(CLOVRCMD) POS(1)
INIT("OVRDBF MISRC 123456789ð MBR(123456789ð)");
DCL DD OVRSTR2 CHAR(26) DEF(CLOVRCMD) POS(4ð)
INIT(" POSITION(\RRN 123456789ð)");
DCL DD FILNAM CHAR(1ð) DEF(CLOVRCMD) POS(14);
DCL DD MBRNAM CHAR(1ð) DEF(CLOVRCMD) POS(29);
DCL DD RECNUM ZND(1ð,ð) DEF(CLOVRCMD) POS(55);
DCL SPCPTR CLOVRCMD@ INIT(CLOVRCMD);
DCL DD CLOVRLNG PKD(15,5) INIT(P'65');
DCL SPCPTR CLOVRLNG@ INIT(CLOVRLNG);
DCL OL QCMDOVROL (CLOVRCMD@, CLOVRLNG@) ARG;
DCL DD CLDLTCMD CHAR(12) INIT("DLTOVR MISRC");
DCL SPCPTR CLDLTCMD@ INIT(CLDLTCMD);
DCL DD CLDLTLNG PKD(15,5) INIT(P'12');
DCL SPCPTR CLDLTLNG@ INIT(CLDLTLNG);
DCL OL QCMDDLTOL (CLDLTCMD@, CLDLTLNG@) ARG;
/\ CLð6 and associated parameters \/
DCL SYSPTR CLð6 INIT("CLð6", TYPE(PGM));
DCL DD OFFSET PKD(15,5);
DCL SPCPTR OFFSET@ INIT(OFFSET);
DCL OL CLð6OL (USRSPC, OFFSET@) ARG;
/\ Access QTEMP address \/
DCL SYSPTR QTEMP@ BASPCO POS(65);
/\ Template for CRTS MI instruction \/
DCL DD CRTSTMPLT CHAR(16ð) BDRY(16);
DCL DD TMPLTSPEC CHAR(8) DEF(CRTSTMPLT) POS(1);
DCL DD TMPLTSIZE BIN(4) DEF(TMPLTSPEC) POS(1) INIT(16ð);
DCL DD TMPLTBA BIN(4) DEF(TMPLTSPEC) POS(5) INIT(ð);
DCL DD OBJID CHAR(32) DEF(CRTSTMPLT) POS(9);
DCL DD SPCTYPE CHAR(1) DEF(OBJID) POS(1) INIT(X'19');
DCL DD SPCSUBTYPE CHAR(1) DEF(OBJID) POS(2) INIT(X'EF');
Chapter 7. Machine Interface Programming 7-29