DCL SPCPTR .ARG1 INIT(POINTER); DCL DD POINTER CHAR(16) BDRY(16); DCL PTR .POINTER DEF(POINTER) POS( 1); DCL DD PTR-TYPE CHAR(8) DEF(POINTER) POS( 1); DCL DD PTR-SEGMENT CHAR(5) DEF(POINTER) POS( 9); DCL DD PTR-OFFSET CHAR(3) DEF(POINTER) POS(14); DCL DD DATA CHAR(8000) BAS(.POINTER); DCL OL MIMAKPTR (.ARG1) ARG; DCL SYSPTR .MIMAKPTR; DCL DD RESOLVE CHAR(34); DCL DD RESOLVE-TYPE CHAR( 2) DEF(RESOLVE) POS( 1); DCL DD RESOLVE-NAME CHAR(30) DEF(RESOLVE) POS( 3); DCL DD RESOLVE-AUTH CHAR( 2) DEF(RESOLVE) POS(33) INIT(X'0000'); DCL SPCPTR .PARM1 PARM; DCL DD PARM-NAME CHAR(10) BAS(.PARM1); DCL SPCPTR .PARM2 PARM; DCL DD PARM-TYPE CHAR( 4) BAS(.PARM2); DCL OL PARAMETERS (.PARM1, .PARM2) PARM EXT MIN(1); DCL DD NBR-PARMS BIN(2); ENTRY * (PARAMETERS) EXT; RESOLVE-TO-PGM: CPYBLA RESOLVE-TYPE, X'0201'; CPYBLAP RESOLVE-NAME, "MIMAKPTR", " "; RSLVSP .MIMAKPTR, RESOLVE, *, *; LOAD-ARGUMENTS-AND-CALL: STPLLEN NBR-PARMS; CMPNV(B) NBR-PARMS, 1/EQ(=+2); CVTCH RESOLVE-TYPE, PARM-TYPE;: CPYBLAP RESOLVE-NAME, PARM-NAME, " "; RSLVSP .POINTER, RESOLVE, *, *; CVTHC MSG-TEXT(1:32), POINTER; CALLI SHOW-MESSAGE, *, .SHOW-MESSAGE; CPYBREP PTR-OFFSET, X'00'; CALLX .MIMAKPTR, MIMAKPTR, *; CVTHC MSG-TEXT(1:32), POINTER; CALLI SHOW-MESSAGE, *, .SHOW-MESSAGE; BRK "1"; CPYBLA MSG-TEXT, DATA; CALLI SHOW-MESSAGE, *, .SHOW-MESSAGE; RETURN: RTX *; %INCLUDE SHOWMSG