STOREXNO AMODE 31 STOREXNO RMODE ANY STOREXNO CSECT , SYSSTATE AMODE64=NO,ARCHLVL=3 gen z9+, z/OS 2.1+ bin code IEABRCX DEFINE convert based to relative branches BAKR 14,0 callers registers to linkage stack LARL 12,CONSTANTS load address relative long USING CONSTANTS,12 using for constants LA 9,WALEN load memory length in Register 9 STORAGE OBTAIN,LENGTH=(9),EXECUTABLE=NO,LOC=ANY LR 10,1 Reg1 holds address of mem area USING DYNAREA,10 using for dynamic memory area LA 13,SAVEA PC routine convention: ... MVC SAVEA+4(4),=C'F1SA' ... format 1 savearea: L-stack * * copy instruction sequence SR Reg15,Reg15; Branch Reg14 to DATA1 * in obtained storage location, and branch to it * MVC DATA1(8),=X'1BFF07FE00000000' SR 15,15; BR 14 LA 7,DATA1 BASR 14,7 This will OC4-4 with EXECUTABLE=NO STORAGE RELEASE,ADDR=(10),LENGTH=(9),EXECUTABLE=NO PR , return to caller CONSTANTS DS 0D constant section, aligned for LARL DC C'SOMEDATA' DC C'SOMEOTHERDATA' LTORG , have assembler build literal pool DYNAREA DSECT SAVEA DS 18F DATA1 DS 2F DATA2 DS CL256 can receive any value WALEN EQU *-DYNAREA length of obtained area END STOREXNO end of module