ibm:vm370-lib:cp:dmkcpr.assemble_src
Table of Contents
DMKCPR Source
References
- Fixes Applied : 2
- This Source Date : Friday, August 7, 1981
- Last Fix ID : [HRC002DK]
Source Listing
- DMKCPR.ASSEMBLE.txt
- CPS TITLE 'DMKCPR (CP) VM/370 - RELEASE 6' 00001000
- *. 00002000
- * MODULE NAME - 00003000
- * 00004000
- * DMKCPR 00005000
- * 00006000
- * FUNCTION - 00007000
- * 00008000
- * BRING THE SYSTEM TO AN ORDERLY SHUTDOWN, SAVING SPOOL FILES 00009000
- * AND ACCOUNTING INFORMATION. 00010000
- * 00011000
- * ATTRIBUTES - 00012000
- * 00013000
- * REENTRANT, PAGEABLE, CALLED VIA SVC 00014000
- * 00015000
- * ENTRY POINTS 00016000
- * 00017000
- * DMKCPRSH - BRING THE SYSTEM TO AN ORDERLY SHUTDOWN, SAVING 00018000
- * SPOOL FILE AND ACCOUNTING INFORMATION 00019000
- * 00020000
- * ENTRY CONDITIONS - 00021000
- * 00022000
- * GPR11 = ADDRESS OF CALLER'S VMBLOK 00023000
- * GPR12 = ADDRESS OF ENTRY POINT 00024000
- * GPR13 = ADDRESS OF SAVEAREA 00025000
- * 00026000
- * EXIT CONDITIONS - 00027000
- * 00028000
- * NONE 00029000
- * 00030000
- * CALLS TO OTHER ROUTINES - 00031000
- * 00032000
- * DMKFREE - TO OBTAIN STORAGE 00033000
- * DMKFRET - TO RETURN A BLOCK OF STORAGE 00034000
- * DMKDSBSD - RECORD 3330/3340/3350/2305 STATISTICAL DATA 00035000
- * DMKRSESD - RECORD 3800 STATISTICAL DATA 00036000
- * DMKIOESR - SYNCHRONOUS OBR PROCESSING 00037000
- * DMKDMPRS - RE-IPL SYSTEM 00038000
- * DMKVSPCO - CLOSE FUNCTIONS FOR SPOOLED PRT/PCH 00039000
- * DMKPRGMC - ADDR OF MONCOM 00040000
- * DMKSPLDL - DELETE SPOOL FILES ON THE 3800 DELAY QUEUE 00041000
- * 00042000
- * EXTERNAL REFERENCES - 00043000
- * 00044000
- * NONE 00045000
- * 00046000
- * TABLES / WORKAREAS - 00047000
- * 00048000
- * 00049000
- * 00050000
- * REGISTER USAGE - 00051000
- * 00052000
- * GPR0 = PARMS PASSED TO CALLED ROUTINES, PSA BASE REG 00053000
- * GPR1 = WORK REGESTER 00054000
- * GPR2 = PARMS PASSED TO CALLED ROUTINES 00055000
- * GPR3 = LENGTH FOR EXECUTED MOVES AND COMPARES 00056000
- * GPR4 = INTERNAL LINKAGE (2ND LEVEL) 00057000
- * GPR5 = INTERNAL LINKAGE (2ND LEVEL) 00058000
- * GPR6 = RCHBLOK BASE 00059000
- * GPR7 = RCUBLOK BASE 00060000
- * GPR8 = RDEVBLOK BASE 00061000
- * GPR9 = WORK REGISTER 00062000
- * GPR10 = IOBLOK BASE 00063000
- * GPR11 = VMBLOK BASE 00064000
- * GPR12 = MODULE BASE 00065000
- * GPR13 = SAVEAREA BASE 00066000
- * GPR14 = EXTERNAL LINKAGE 00067000
- * GPR15 = EXTERNAL LINKAGE 00068000
- * 00069000
- * OPERATION - 00070000
- * 00071000
- * THE COMMAND HANDLING ROUTINES IN DMKCPR ARE CALLED FROM DMKCFM 00072000
- * AFTER THEIR PRIVILEGE CLASS HAS BEEN VERIFIED 00073000
- *. 00074000
- EJECT 00075000
- *. 00076000
- * 00077000
- * SUBROUTINE NAME - 00078000
- * 00079000
- * DMKCPRSH 00080000
- * 00081000
- * FUNCTION - 00082000
- * 00083000
- * TO TERMINATE ALL SYSTEM ACTIVITY AND SAVE SYSTEM STATUS FOR A 00084000
- * FUTURE WARM START 00085000
- * 00086000
- * COMMAND LINE FORMAT - 00087000
- * 00088000
- * +------------+--------------+ 00089000
- * | SHUTDOWN | NO OPERAND | 00090000
- * | SHUTDOWN | | 00091000
- * +------------+--------------+ 00092000
- * 00093000
- * OPERATION - 00094000
- * 00095000
- * 1. LOCATE THE CONSOLE VDEVBLOK FOR THE CALLER AND THE 00096000
- * OPERATOR, IF AN ACTIVE CONSOLE SPOOL FILE EXIST; CALL 00097000
- * DMKVSPCO TO CLOSE AND CHAIN THE SPOOL FILE BLOK. 00098000
- * 2. LOCATE RDEVBLOK 00099000
- * A. CALL DMKIOESR IF STATISTICAL DATA (OUTBOARD) EXISTS 00100000
- * FOR THIS DEVICE,TO PROCESS OBR SYCHRONOUSLY. 00101000
- * B. CALL DMKDSBSD TO RECORD STATISTICAL DATA FOR 00102000
- * EACH TYPE OF DASD. 00103000
- * EACH DASD DEVICE OR DMKRSESD FOR A 3800 PRINTER. 00104000
- * C. FOR EACH 3800, DELETE EACH FILE ON ITS 00105000
- * DELAYED PURGE QUEUE. 00106000
- * IF THE MONITOR IS ACTIVE THEN STOP IT. 00107000
- * 3. PLACE THE CHARACTER STRING 'CPCP' IN THE CPID WORD IN PSA. 00108000
- * 4. GO TO THE 'RESTART' FUNCTION (DMKDMPRS) IN DMKDMPDK TO 00109000
- * RE-IPL THE SYSTEM. CHECKPOINT (DMKCKP) WILL SAVE ALL 00110000
- * SPOOLING AND ACCOUNTING INFORMATION, AND PLACE THE 00111000
- * STRING 'SHUT' IN CPID TO INDICATE SHUTDOWN COMPLETE. 00112000
- * 00113000
- * MESSAGES - 00114000
- * 00115000
- * NONE 00116000
- * 00117000
- *. 00118000
- EJECT 00119000
- COPY OPTIONS @VA03757 00120000
- COPY LOCAL @VA03757 00121000
- EJECT 00122000
- PUNCH 'SPB' @VA03757 00123000
- DMKCPR CSECT 00124000
- MODID DC CL8'DMKCPR' 00125000
- SPACE 3 00126000
- USING PSA,R0 @VA03757 00127000
- USING VMBLOK,R11 @VA03757 00128000
- USING SAVEAREA,R13 @VA03757 00129000
- SPACE 00130000
- ************************************************************** 00131000
- * * 00132000
- * EXTERNAL SYMBOL TABLE * 00133000
- * * 00134000
- ************************************************************** 00135000
- SPACE 00136000
- EXTRN DMKDMPRS @VA03757 00137000
- EXTRN DMKSTKCP @V407466 00138000
- EXTRN DMKTAPRL TAPE RELEASE EPA @V407466 00139000
- EXTRN DMKCVTBD @VA03757 00140000
- EXTRN DMKVSPCO @VA03757 00141000
- EXTRN DMKDSBSD UNLOAD DASD STAT DATA @VA08187 00142000
- EXTRN DMKPRGMC,DMKMNISH @V407595 00143000
- EXTRN DMKIOESR SYCHRONOUS OBR PROCESSING @VA03757 00144000
- EXTRN DMKSPLDL,DMKCVTAB,DMKSCHST,DMKRSESD 3800 SUPPORT@V60B9BA 00145000
- EXTRN DMKSSSDE TO DEMOUNT VOLUME @VA10877 00146000
- EXTRN DMKSCNFD Word Scanner HRC002DK 00146300
- EXTRN DMKERMSG ERROR MESSAGE ROUTINE HRC002DK 00146600
- EJECT 00147000
- ************************************************************** 00148000
- * * 00149000
- * ENTRY POINT FOR DMKCPRSH * 00150000
- * * 00151000
- ************************************************************** 00152000
- SPACE 00153000
- DMKCPRSH RELOC SHUTDOWN THE SYSTEM 00154000
- L R6,PREFIXA GET ABSOLUTE PSA @VA12314 00154100
- TM CPSTAT4-PSA(R6),CPSHUT IS SHUTDOWN IN PROGRESS? @VA12314 00154200
- BO EXIT YES...IT'S TOO LATE FOR 2ND CMD @VA12314 00154300
- CALL DMKSCNFD HRC002DK 00154306
- BNZ NOSHTPRM HRC002DK 00154312
- LR R2,R0 HRC002DK 00154318
- BCTR R2,0 HRC002DK 00154324
- CL R2,F3 HRC002DK 00154330
- BL ERRMSG3 HRC002DK 00154336
- EX R2,CMPREIPL HRC002DK 00154342
- BNZ CHKPOFF HRC002DK 00154348
- OI CPSTAT4-PSA(R6),CPREIPL HRC002DK 00154354
- B NOSHTPRM HRC002DK 00154360
- CHKPOFF EQU * HRC002DK 00154366
- EX R2,CMPPOFF HRC002DK 00154372
- BNZ ERRMSG3 HRC002DK 00154378
- OI CPSTAT4-PSA(R6),CPPWROFF HRC002DK 00154384
- NOSHTPRM EQU * HRC002DK 00154390
- OI CPSTAT4-PSA(R6),CPSHUT INDICATE SHUTDOWN IN @VA12314 00154400
- * PROGRESS 00154500
- XC SAVEWRK1(L4),SAVEWRK1 CLEAR FLAG BITS @V407595 00155000
- TM APSTAT1,APUOPER IS THE APU OPERATIONAL ? @V407595 00156000
- BNO NOAP NO - BYPASS APU PROCESSING @V407595 00157000
- OI CPSBITS,APUOPER INDICATE THE APU WAS @V407595 00158000
- * OPERATIONAL. 00159000
- SWITCH ENSURE RUNNING ON MAIN PROC @V407595 00160000
- SIGNAL QUIESCE QUIESCE THE APU @V407595 00161000
- SIGNAL SHUTDOWN SET THE APU NOT OPERATIONAL @V407595 00162000
- NOAP EQU * @V407595 00163000
- SPACE 00164000
- ************************************************************** 00165000
- * * 00166000
- * IF THE MONITOR IS ACTIVE, STOP IT. * 00167000
- * * 00168000
- ************************************************************** 00169000
- SPACE 00170000
- L R9,=A(DMKPRGMC) SOME KEY FIELDS IN DMKPRG @VA03757 00171000
- L R9,0(R9) PICK UP COMM. AREA ADDRESS @VA03757 00172000
- LTR R9,R9 IS THERE ONE @VA03757 00173000
- BZ CLOSECON NO, THEN MONITOR IS NOT ACTIVE @VA03757 00174000
- SPACE 1 00175000
- USING MONCOM,R9 @VA03757 00176000
- MVC CPCREG8,ZEROES SHUT OFF EVENT TRACE IMMED. @VA03757 00177000
- LCTL C8,C8,ZEROES ... @VA03757 00178000
- OI MONFLAG1,CFSTOP INDICATE CONSOLE FUNCTION STOP @VA03757 00179000
- TM MONFLAG3,SPOOLED SEE IF SPOOLING @V50A2B5 00180000
- BO NOSETUR YES, SKIP NEXT @V50A2B5 00181000
- MVC MONUSER,=CL8'SHUTDOWN' SHUTDOWN DID IT @VA03757 00182000
- NOSETUR EQU * @V50A2B5 00183000
- L R8,MONARDB ADDRESS OF THE RDEVBLOK @VA03757 00184000
- USING RDEVBLOK,R8 @VA03757 00185000
- L R10,MONAIOB GET THE IOB ADDRESS @VA03757 00186000
- USING IOBLOK,R10 @VA03757 00187000
- TM MONFLAG3,SPOOLED SEE IF SPOOLING @V50A2B5 00188000
- BO NOCHKDV YES, SKIP NEXT @V50A2B5 00189000
- TM RDEVSTAT,RDEVNRDY IS THE DEVICE INT REQ? @VA03757 00190000
- BO CLOSECON YES, THEN SKIP THE TRAILER @VA03757 00191000
- NOCHKDV EQU * @V50A2B5 00192000
- LA R0,CPEXSIZE SIZE OF A CPEXBLOK @VA03757 00193000
- CALL DMKFREE GET THE BLOCK @VA03757 00194000
- USING CPEXBLOK,R1 ADDRESS THE BLOCK @VA03757 00195000
- LA R14,CLOSECON ADDRESS OF RETURN POINT @VA03757 00196000
- STM R0,R15,CPEXR0 SAVE REGS FOR RETURN FROM MON @VA03757 00197000
- ST R1,IOBMISC2 SAVE CPEXBLOK ADDRESS FOR MON @VA03757 00198000
- TM MONFLAG3,SPOOLED SEE IF WE ARE SPOOLED @V50A2B5 00199000
- BNO CONTIN NO, SKIP NEXT @V50A2B5 00200000
- ST R14,CPEXADD STORE AS CPEX ADDR @V50A2B5 00201000
- L R2,MONIOBF GET CURRENT IOBUF @V50A2B5 00202000
- LTR R2,R2 ANY IO @V50A2B5 00203000
- BNZ SENDCP IO ACTIVE, SYSTEM WILL @VA07888 00204000
- * SHUTDOWN USING CFSTOP FLAG WHEN I/O COMPLETE 00205000
- CALL DMKMNISH YES, CALL SHUTDOWN @V50A2B5 00206000
- SENDCP CALL DMKSTKCP STACK CPEXBLOK @V50A2B5 00207000
- B GOTODSP GO TO DISPATCHER @V50A2B5 00208000
- CONTIN EQU * @V50A2B5 00209000
- DROP R1 DEADDRESS THE CPEXBLOK @VA03757 00210000
- L R1,MONIOBF GET TAPE BUSY INDICATOR @V407595 00211000
- LTR R1,R1 IS TAPE BUSY ? @V407595 00212000
- BNZ GOTODSP YES, SKIP MNISH CALL @V407595 00213000
- CALL DMKMNISH CALL MNISH TO INITIATE TRAILER @V407595 00214000
- GOTODSP GOTO DMKDSPCH MON INT HANDLER WILL RETURN @VA03757 00215000
- DROP R8,R9,R10 @VA03757 00216000
- EJECT 00217000
- ************************************************************** 00218000
- * * 00219000
- * CLOSE CONSOLE SPOOL FILES FOR OPERATOR AND USER * 00220000
- * WHO ISSUED SHUTDOWN. * 00221000
- * * 00222000
- ************************************************************** 00223000
- SPACE 00224000
- USING VDEVBLOK,R8 @VA03757 00225000
- CLOSECON EQU * SAVE CONSOLE SPOOL FILES @VA03757 00226000
- LH R8,VMVTERM CHECK FOR VIRTUAL CONSOLE @VA03757 00227000
- LTR R8,R8 IS THERE ONE AT THE MOMENT ? @VA03757 00228000
- BM CKOPER NO -- SKIP SPOOL CHECK @VA03757 00229000
- AL R8,VMDVSTRT POINT TO THE VDEVBLOK ITSELF @VA03757 00230000
- ICM R2,B'1111',VDEVSPL OPEN SPOOL FILE ? @VA03757 00231000
- BZ CKOPER NO - @VA03757 00232000
- NI VDEVFLAG,255-VDEVCSPL TURN OFF SPOOLING FLAG @VA05613 00233000
- SL R8,VMDVSTRT VDEVBLOK DISPLACEMENT @VA03757 00234000
- CALL DMKVSPCO,PARM=0 CLOSE FILE @VA03757 00235000
- AL R8,VMDVSTRT VDEVBLOK ADDRESS @VA03757 00236000
- CKOPER L R2,ASYSOP GET VMBLOK ADDRESS OF OPERATOR @VA03757 00237000
- CR R2,R11 IS THIS THE OPERATOR ? @VA03757 00238000
- BE RESTVM YES -- RESTORE CALLER VMBLOK @VA03757 00239000
- * ADDRESS 00240000
- CHARGE SWITCH,(R2) STORE USERS VMTTIME AND SET @V407595 00241000
- * OPERATOR'S TO CPU TIMER. 00242000
- B CLOSECON CLOSE OPERATOR'S CONSOLE @VA03757 00243000
- RESTVM EQU * @V407595 00244000
- CHARGE SWITCH,SAVER11 RESUME CHARGING CALLER. @V407595 00245000
- DROP R8 @VA03757 00246000
- SPACE 00247000
- ************************************************************** 00248000
- * * 00249000
- * RECORD STATISTICAL DATA FOR DASD AND 3800 PRINTER * 00250000
- * * 00251000
- ************************************************************** 00252000
- SPACE 00253000
- LA R0,IOBSIZE SIZE OF ONE (1) IOBLOK @VA03757 00254000
- CALL DMKFREE @VA03757 00255000
- LR R10,R1 IOBLOK ADDRESS INTO R10 @VA03757 00256000
- USING IOBLOK,R10 @VA03757 00257000
- LA R4,2 INCREMENT FOR BXLE LOOP @VA03757 00258000
- SR R1,R1 ZERO CHANNEL INDEX @VA03757 00259000
- LA R5,30 END OF INDEX TABLE @VA03757 00260000
- DASDCH L R9,ARIOCT ADDRESS OF CHANNEL INDICES @VA03757 00261000
- LH R6,0(R1,R9) LOAD INDEX OF NEXT CHANNEL @VA03757 00262000
- LTR R6,R6 IS CHANNEL THERE @VA03757 00263000
- BM DASDCHI NO, GET NEXT CHANNEL @VA03757 00264000
- A R6,ARIOCH ADDRESS OF RCHBLOK IN R6 @VA03757 00265000
- USING RCHBLOK,R6 @VA03757 00266000
- SR R2,R2 ZERO CONTROL UNIT INDEX COUNT @VA03757 00267000
- LA R5,62 END OF CONTROL UNIT INDEX TABLE @VA03757 00268000
- DASDCU LH R7,RCHCUTBL(R2) PICK UP INDEX @VA03757 00269000
- LTR R7,R7 IS CONTROL UNIT THERE @VA03757 00270000
- BM DASDCUI NO, TRY NEXT CU @VA03757 00271000
- A R7,ARIOCU ADDRESS OF RCUBLOK TO R7 @VA03757 00272000
- USING RCUBLOK,R7 @VA03757 00273000
- SR R3,R3 ZERO INDEX FOR DEVICE INDEX @VA03757 00274000
- LA R5,30 SET R5 TO END OF DEVICE INDEX @VA03757 00275000
- * TABLE 00276000
- DASDDEV LH R8,RCUDVTBL(R3) PICK UP INDEX @VA03757 00277000
- LTR R8,R8 IS DEVICE THERE @VA03757 00278000
- BM DASDDEVI NO, TRY NEXT DEVICE @VA03757 00279000
- SLL R8,3(0) CONVERT TO BYTE INDEX @VA03757 00280000
- A R8,ARIODV ADDRESS OF RDEVBLOK TO R8 @VA03757 00281000
- USING RDEVBLOK,R8 @VA03757 00282000
- LR R14,R7 RELOCATE CU ADDR @VA10349 00283000
- TM RCUTYPE,RCUSUB SUBORDINATE CU ? @VA10349 00284000
- BNO JODEL NO ...CONTINUE @VA10349 00285000
- L R14,RCUPRIME YES ..GET THE PRIME CU @VA10349 00286000
- JODEL DS 0H 00287000
- CL R6,RCUCHA-RCUBLOK(R14) IS THIS PRIME CH - CU @VA10349 00288000
- BNE DASDDEVI NO DONT RECORD THIS ONE EITHER @VA10349 00289000
- CL R7,RDEVCUA IS THIS THE PRIME DEV - CU @VA10349 00290000
- BNE DASDDEVI NO FORGET IT @VA10349 00291000
- TESTSDR ICM R15,15,RDEVCTRS PICK UP ADDRESS OF SDRBLOK @VA03757 00292000
- * FOR POSSIBLE STATISTICAL DATA RECORDING 00293000
- BNP NOCALL NO SDRBLOK, CONTINUE DEVICE LOOP @VA03757 00294000
- CALL DMKIOESR GO RECORD OBR SYNCHRONOUSLY @VA03757 00295000
- NOCALL EQU * @VA03757 00296000
- CLC RDEVTYPC(2),P3800 IS THIS A 3800 ? @V60B9BA 00297000
- BE NOCALL3 XFER IF SO @V60B9BA 00298000
- NOCALL2 CLI RDEVTYPC,CLASDASD IS DEVICE CLASS DASDI @V60B9BA 00299000
- BNE DASDDEVI NO, TRY NEXT DEVICE @VA03757 00300000
- NOCALL3 XC IOBLOK(IOBSIZE*8),IOBLOK ZERO OUT IOBLOK @V60B9BA 00301000
- ST R10,IOBLINK IOBLOK POINTS TO ITSELF (= @VA03757 00302000
- * ORIGINAL COPY) 00303000
- OI IOBSPEC,IOBIMSTK INDICATE SHUTDOWN @VA05361 00304000
- CLC RDEVTYPC(2),P3800 IS THIS A 3800 ? @V60B9BA 00305000
- BE NOCALL3A XFER IF SO @V60B9BA 00306000
- CALL DMKDSBSD RECORD STATISTICAL DATA FOR DASD @VA08187 00307000
- B DASDDEVI TRY NEXT DEVICE @V60B9BA 00308000
- NOCALL3A CALL DMKRSESD RECORD STATISTICAL DATA FOR 3800@V60B9BA 00309000
- SPACE 1 00310000
- * THE DELAY PURGE QUEUE MUST NOW FINALLY BE PURGED @V60B9BA 00311000
- SPACE 1 00312000
- LR R9,R7 SAVE R7 FOR NOW @V60B9BA 00313000
- TM RDEVSTAT,RDEVDED DEDICATED 3800? @VA10546 00314000
- BO NOCALL5 YES, GO TO NEXT DEVICE @VA10546 00315000
- NOCALL4 L R7,RDEVDELP GET THE DELAYED PURGE ANCHOR @V60B9BA 00316000
- LTR R7,R7 ANYTHING THERE? @VA10546 00317000
- BZ NOCALL5 XFER IF NOTHING THERE @V60B9BA 00318000
- MVC RDEVDELP,0(R7) NEXT ONE IS NOW FIRST @V60B9BA 00319000
- CALL DMKSPLDL GO AND DELETE IT @V60B9BA 00320000
- B NOCALL4 DO FOR NEXT ONE ALSO @V60B9BA 00321000
- NOCALL5 LR R7,R9 RESTORE R7 @V60B9BA 00322000
- DASDDEVI BXLE R3,R4,DASDDEV @VA03757 00323000
- LA R5,62 @VA03757 00324000
- DASDCUI BXLE R2,R4,DASDCU @VA03757 00325000
- LA R5,30 @VA03757 00326000
- DASDCHI BXLE R1,R4,DASDCH @VA03757 00327000
- EJECT 00328000
- ************************************************************** 00329000
- * * 00330000
- * WHEN HERE - ALL DEVICES HAVE BEEN CHECKED * 00331000
- * INDICATE 'CPCP' SHUTDOWN AND GOTO DMKDMPRS * 00332000
- * * 00333000
- ************************************************************** 00334000
- SPACE 00335000
- LA R0,IOBSIZE SIZE OF IOBLOK TO FRET @VA03757 00336000
- LR R1,R10 FRET THE IOBLOK @VA03757 00337000
- CALL DMKFRET @VA03757 00338000
- DROP R6,R7,R8,R10 @VA03757 00339000
- TM CPSBITS,APUOPER WAS THE APU OPERATIONAL ? @V407595 00340000
- BNO NOAP2 NO- BYPASS SET PREFIX @V407595 00341000
- SPX ZEROES END OF PREFIXING @V407595 00342000
- NOAP2 EQU * @V407595 00343000
- MVC CPID(4),=C'CPCP' INDICATE SHUTDOWN TO DMKCKP @VA03757 00344000
- GOTO DMKDMPRS GOT TO IT @VA03757 00345000
- SPACE 00345100
- ERRMSG3 DS 0H HRC002DK 00345110
- LA R2,3 HRC002DK 00345120
- B ERRRET HRC002DK 00345130
- ERRRET DS 0H HRC002DK 00345140
- ICM R0,B'1110',DMKCPR+3 HRC002DK 00345150
- ICM R2,B'1000',F0 HRC002DK 00345160
- CALL DMKERMSG HRC002DK 00345170
- EXIT DS 0H @VA12314 00345200
- EXIT RETURN TO CALLER @VA12314 00345300
- EJECT 00346000
- ************************************************************** 00347000
- * * 00348000
- * DEFINE CONSTANT AND EQUATE POOL * 00349000
- * * 00350000
- ************************************************************** 00351000
- SPACE 00352000
- CMPPOFF CLC 0(0,R1),=C'POWEROFF ' HRC002DK 00352300
- CMPREIPL CLC 0(0,R1),=C'REIPL ' HRC002DK 00352600
- P3800 DC AL1(CLASURO,TYP3800) FOR COMPARISONS @V60B9BA 00353000
- L4 EQU 4 LENGTH INDICATOR @V407595 00354000
- EJECT 00355000
- ************************************************************** 00356000
- * * 00357000
- * BEGIN LITERAL POOL * 00358000
- * * 00359000
- ************************************************************** 00360000
- SPACE 00361000
- LTORG @VA03757 00362000
- EJECT 00363000
- ************************************************************** 00364000
- * * 00365000
- * COPY PREDEFINED SOURCE CODING * 00366000
- * * 00367000
- ************************************************************** 00368000
- SPACE 00369000
- PSA @VA03757 00370000
- COPY DEVTYPES @VA03757 00371000
- COPY EQU @VA03757 00372000
- COPY IOBLOKS @VA03757 00373000
- COPY MONBLOKS @VA03757 00374000
- COPY RBLOKS @VA03757 00375000
- COPY SAVE @VA03757 00376000
- SPACE 2 00377000
- CPSBITS EQU SAVEWRK1 @V407466 00378000
- SPACE 2 00379000
- COPY VBLOKS @VA03757 00380000
- COPY VMBLOK @VA03757 00381000
- END 00382000
ibm/vm370-lib/cp/dmkcpr.assemble_src.txt ยท Last modified: 2023/08/06 13:36 by Site Administrator