*---------------------------------------------------------------------* * Standard set-up and establish base register. * *---------------------------------------------------------------------* ENUXSITE CSECT USING *,R15 * Register 15 has entry point BEGIN B STM * branch round eyecatcher DC CL10'ENUXSITE' * Set eyecatcher for dump! DC CL9'&SYSDATE' * Assembly date (MM/DD/YY) DC CL6'&SYSTIME' * Assembly time (HH.MM) DROP R15 * Drop R15 as base STM STM R14,R12,12(R13) * Save caller's registers LR R2,R1 * Save R1 LR R12,R15 * Get Entry point USING ENUXSITE,R12 * Establish R12 as base LR R14,R13 * Save savearea address *---------------------------------------------------------------------* * Acquire storage for work area so re-enterable. * *---------------------------------------------------------------------* GETMAIN R,LV=WORKL,LOC=BELOW * Get some storage LTR R15,R15 * Did we get it? BNZ ERROR * Bummer LR R4,R1 * Save storage address USING WORKAREA,R4 * Map storage area ST R1,STGADDR * Save for free main later LA R13,SAVE * Point at our savearea ST R13,8(R14) * Stuff ours in caller's ST R14,4(R13) * Stuff caller's in ours *---------------------------------------------------------------------* * Exit routine - restore registers etc, etc. * *---------------------------------------------------------------------* EXIT DS 0H ICM R1,15,STGADDR * Get our workarea address FREEMAIN R,LV=WORKL,A=(R1) * Throw it all away L R13,4(,R13) * Caller's savearea LM R14,R12,12(R13) * Restore caller's registers XR R15,R15 * Ensure rc=0 BR R14 * Over and out ERROR DS 0H ABEND 10 * Can't get savearea - bummer *---------------------------------------------------------------------* * Dsect for re-entrant storage and savearea. * *---------------------------------------------------------------------* WORKAREA DSECT WORKRR RACROUTE CLASS='ŁENDEVOR',REQUEST=AUTH,MSGSUPP=YES, X RELEASE=2.2,MF=L WORKRRL EQU *-WORKRR WORKRRWK DS CL512 STGADDR DS F PROFILE DS 0F DS AL2 Resource name for ENTITYX format DS AL2 checking DS CL16 SAVE DS 18F ALIGN DS 0H WORKL EQU *-WORKAREA