MACRO &LABEL BROPSRUN &LABEL DS 0H *********0*****6*******************6**********************************1 * * The following program (BROPSRUN) will test your base register * processing routines. Some of the assembler statements in the * program below will be flagged for addressability errors. * *********0*****6*******************6**********************************1 SPACE BSREGTST CSECT USING *,15 LA 3,WRKNAME DROP 15 B *+32 ADD. ERROR - NO AVAIL. BASE REG. USING *+1,10 WRKNAME DC CL20'JANE DOE' LENGTH DS F'3' TABADDP DC AL3(EMPLTAB) DS 0F USING EMPDSECT,9 L 5,TABADDP MVC EMPNAME,WRKNAME ADD. ERROR - NEG. DISP. SID=4 L 4,LENGTH AR 5,4 AH 3,=H'1' ADD. ERROR - NO AVAIL. BASE REG. DROP 5 WARNING - NOT USED USING *,10 USING *,2 USING *+1,5 L 3,WRKADDP DROP 5 MVC EMPADDP,WRKADDP LA 3,PLINE ADD. ERROR - NO AVAIL. BASE REG. L 15,PRINTRTN ADD. ERROR - NO AVAIL. BASE REG. BALR 14,15 BR 14 CNOP 0,4 WRKADDP DS CL20 DROP 2 * EMPDSECT DSECT EMPNAME DS CL20 EMPADDP DS CL20 * PRINTRTN CSECT LTORG USING *,6,8 SAVEAREA DS 18F LA 4,PLINE MVC PCC,=C'1' ADD. ERROR - NO AVAIL. BASE REG. MVC PNAME,EMPNAME DROP 8 MVC PNAME,EMPNAME ADD. ERROR - DISP. > 4095 LA 3,PADDP ADD. ERROR - DISP. > 4095 B ARNDSTOR ADD. ERROR - DISP. > 4095 EMPLTAB DS 45CL90 PLINE DS 0CL42 PCC DS C PNAME DS CL20 DS CL1 PADDP DS CL20 ARNDSTOR LA 3,EMPLTAB USING EMPLTAB,3 DROP 10,9 LA 3,EMPLTAB MVC PNAME,EMPNAME ADD. ERROR - NO AVAIL. BASE REG. DROP 6 BR 14 * LAST CSECT LA 3,EMPLTAB LA 3,SAVADDP ADD. ERROR - NO AVAIL. BASE REG. USING *+1,9,12,1,5 USING *,14 USING *+3,2,4,0,11 USING *+2,15,10,8 USING *+3,11 USING *+2,1 LA 3,SAVADDP DROP 11 LA 3,SAVADDP DROP 2 LA 3,SAVADDP DROP 1,15 LA 3,SAVADDP DROP 9 LA 3,SAVADDP ADD. ERROR - 7 AVAIL:DISP: 6 NEG, 1 > 4095 TABLE DS 100CL40 HOLD DS 9D SAVADDP DS F LTORG DROP 14 END BSREGTST MEND