RMV TITLE 'DMMRMV (IPCS) VM/370 - RELEASE 6' 00001000 * 00002000 * MODULE NAME: DMMRMV 00003000 * 00004000 * 00005000 * FUNCTION: PLACES REGISTERS IN TEXT AREA OF THE REPORT 00006000 * 00007000 * 00008000 * ATTRIBUTES: REUSABLE 00009000 * NON-REENTRANT 00010000 * 00011000 * 00012000 * ENTRY POINTS: DMMRMV 00013000 * 00014000 * 00015000 * ENTRY CONDITIONS: R1 POINTS TO THE SAVE AREA 00016000 * FOR ONE OF THE FOLLOWING SAVE AREA SETS; BALR, 00017000 * FREE, GENERAL REGISTERS OR SAVEAREA. 00018000 * 00019000 * 00020000 * EXIT CONDITIONS: REGISTERS ARE IN THE TEXT AREA OF THE REPORT 00021000 * 00022000 * 00023000 * CALLS TO OTHER ROUTINES: DMMTRN TO TRANSLATE THE REGISTERS 00024000 * TO PRINTABLE FORMAT. 00025000 * 00026000 * 00027000 * EXTERNAL REFERENCES: SHARECON (COMMON SHARED CONSTANT AREA) 00028000 * 00029000 * 00030000 * TABLES/WORKAREAS: NONE 00031000 * 00032000 * 00033000 * REGISTER USAGE: 00034000 * 00035000 * R13 SAVEAREA 00036000 * R12 BASE 00037000 * R7 SHARECON 00038000 * R2-R4 WORK 00039000 * 00040000 * NOTES: A 200 BYTE PATCH EXISTS AT LABEL 'PATCH' 00041000 * 00042000 * 00043000 * OPERATION: 00044000 * 00045000 * I. SET UP AND CALL DMMTRN TO TRANSLATE THE REGISTERS. 00046000 * II. TRANSLATED REGISTERS TO TEXT1-TEXT3 IN THE REPORT 00047000 * III. RETURN TO CALLER 00048000 * 00049000 * ERROR MESSAGES: NONE 00050000 * 00051000 * 00052000 DMMRMV CSECT @VA04250 00053000 USING DMMRMV,R15 TEMPORARY ADDRESSABILITY @VA04250 00054000 B START BRANCH AROUND EYECATCHER @VA04250 00055000 DS 0D @VA04250 00056000 MODNAME DC C'DMMRMV ' MODULE NAME @VA04250 00057000 RELLEV DC C'REL4LEV0' RELEASE AND LEVEL @V4075A1 00058000 START STM R14,R12,12(R13) SAVE CALLER'S REGISTERS @VA04250 00059000 DROP R15 @VA04250 00060000 LR R12,R15 LOAD OUR BASE @VA04250 00061000 USING DMMRMV,R12 ESTABLISH OUR ADDRESSABILITY @VA04250 00062000 ST R13,SAVEAREA+8 SAVE CALLER'S SAVEAREA POINTER @VA04250 00063000 LA R13,SAVEAREA POINT TO OUR SAVEAREA @VA04250 00064000 L R7,VEXCON POINTER TO COMMON CONSTANT AREA @VA04250 00065000 USING SHARECON,R7 ESTABLISH ADDRESSABILITY TO IT @VA04250 00066000 *************************************************************** 00067000 * SET UP PARM LIST TO TRANSLATE REGISTERS. 00068000 *************************************************************** 00069000 ST R1,TRNPARM1 STORE DATA ADDRESS IN PARM LIST @VA04250 00070000 LA R3,TRN64 BYTE COUNT FOR TRANSLATE ROUTINE @VA04250 00071000 ST R3,TRNPARM STORE BYTE COUNT IN PARM LIST @VA04250 00072000 CALL DMMTRN GO TRANSLATE REGISTERS @VA04250 00073000 *************************************************************** 00074000 * MOVE THE TRANSLATED REGISTERS TO THE REPORT TEXT AREA 00075000 *************************************************************** 00076000 LR R5,R1 SAVE DATA RETURNED BY TRANSLATE @VA04250 00077000 LA R4,TEXT1+REGSTART REGISTER AREA IN REPORT @VA04250 00078000 LA R2,FOUR SET SECONDARY MOVE COUNT @VA04250 00079000 REGCOUNT LA R3,FOUR SET MOVE COUNT @VA04250 00080000 REGMOVE MVC 0(RSIZE,R4),0(R5) MOVE REGS TO REPORT TEXT @VA04250 00081000 LA R4,RSIZEOUT(,4) INCREMENT OUTPUT AREA @VA04250 00082000 LA R5,RSIZE(,R5) INCREMENT DATA AREA @VA04250 00083000 BCT R3,REGMOVE DECREMENT MOVE COUNT @VA04250 00084000 LA R4,FORTY(,R4) INCREMENT INTO NEXT LINE @VA04250 00085000 BCT R2,REGCOUNT DECREMENT SECONDARY LINE COUNT @VA04250 00086000 *************************************************************** 00087000 * RETURN TO CALLER, WE ARE DONE 00088000 *************************************************************** 00089000 L R13,SAVEAREA+8 RESTORE SAVE AREA POINTER @VA04250 00090000 LM R14,R12,12(R13) RESTORE REGISTERS @VA04250 00091000 BR R14 RETURN TO CALLER @VA04250 00092000 EJECT 00093000 *************************************************************** 00094000 * CONSTANTS SAVEAREAS AND EQUATES 00095000 *************************************************************** 00096000 SAVEAREA DS 18F OUR SAVEAREA @VA04250 00097000 VEXCON DC V(SHARECON) COMMON CONSTANT AREA @VA04250 00098000 PATCH DC 50F'0' PATCH AREA @VA04250 00099000 TRN64 EQU 64 LENGTH OF DATA PASSED TO EXTRN @VA04250 00100000 REGSTART EQU 28 WHERE REGS WILL GO IN TEXT AREA @VA04250 00101000 RSIZE EQU 8 SIZE OF INPUT RESISTER @VA04250 00102000 RSIZEOUT EQU 10 SIZE OF OUT REG INCLUDING SPACES @VA04250 00103000 FOUR EQU 4 4 FOR LOAD ADDRESS ETC. @VA04250 00104000 FORTY EQU 40 TO GO TO NEXT LINE OF REGS @VA04250 00105000 COPY EXCONST @VA04250 00106000 REGEQU @VA04250 00107000 END 00108000