ibm:vm370-lib:dumpscan:dmmrmv.assemble_src
Table of Contents
DMMRMV Source
References
- Fixes Applied : 0
- This Source Date : Friday, December 8, 1978
- Last Fix ID : [Unmodified]
Source Listing
- DMMRMV.ASSEMBLE.txt
- 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
ibm/vm370-lib/dumpscan/dmmrmv.assemble_src.txt ยท Last modified: 2023/08/06 13:37 by Site Administrator