SEV TITLE 'DMKSEV (CP) VM/370 - RELEASE 6' 00001000
ISEQ 73,80 VALIDATE INPUT SEQUENCE FIELDS @V200820 00002000
PUNCH 'SPB' FORCE PAGE-BOUNDARY ALIGNMENT @VM08727 00003000
DMKSEV CSECT 00004000
MODULEID DC CL8'DMKSEV' @VA01068 00005000
********************************************************************** 00006000
* 00007000
* MODULE NAME - DMKSEV 00008000
* 00009000
* FUNCTION 00010000
* THIS ROUTINE WILL ANALYZE THE 2870 CHANNEL LOGOUT AND 00011000
* SET APPROPRIATE BITS IN THE ECSW FIELD ACCORDING TO THE 00012000
* RESULTS OF THIS ANALYSIS. IT WILL ALSO MOVE THE CHANNEL 00013000
* LOGOUT TO THE CHANNEL CHECK RECORD. 00014000
* 00015000
* ENTRY POINTS 00016000
* DMKSEV - FROM THE CHANNEL CONTROL ROUTINE 00017000
* 00018000
* INPUT 00019000
* 1. CHANNEL LOGOUT DATA 00020000
* 2. POINTER TO THE CHANNEL CHECK RECORD 00021000
* 3. POINTER TO THE CCH SWITCH FIELD (ENTSW) 00022000
* 00023000
* OUTPUT 00024000
* 1. APPROPRIATE BITS ARE SET IN THE CCH RECORD 00025000
* FIELD (FAILECSW). 00026000
* 2. THE CHANNEL LOGOUT IS MOVE TO THE CCH RECORD. 00027000
* 00028000
* EXTERNAL REFERENCES 00029000
* CHANNEL LOGOUT (LOCATION X'130') 00030000
* 00031000
* EXIT - NORMAL 00032000
* RETURN TO THE CCH CONTROL ROUTINE VIA REGISTER 14. 00033000
* 00034000
* EXIT - ERROR 00035000
* NONE 00036000
* 00037000
* TABLES / WORK AREA 00038000
* THE CHANNEL CHECK RECORD 00039000
* 00040000
* ATTRIBUTES 00041000
* DMKSEV IS PRIVILEGED AND REUSABLE 00042000
* 00043000
* CHARACTER CODE DEPENDENCIES 00044000
* NONE 00045000
* 00046000
* NOTE 00047000
* NONE 00048000
* 00049000
********************************************************************** 00050000
EJECT 00051000
********************************************************************** 00052000
********************************************************************** 00053000
LOGWD1A EQU 304 1ST HALF OF LOGOUT WORD 1 00054000
LOGWD1B EQU 308 2ND HALF OF LOGOUT WORD 1 00055000
LOGWD2A EQU 312 1ST HALF OF LOGOUT WORD 2 00056000
LOGWD2B EQU 316 12ND HALF OF LOGOUT WORD 2 00057000
LOGWD3A EQU 320 1ST HALF OF LOGOUT WORD 3 00058000
LOGWD3B EQU 324 2ND HALF OF LOGOUT WORD 3 00059000
********************************************************************** 00060000
EJECT 00061000
********************************************************************** 00062000
ENTRY DMKSEV70 00063000
DMKSEV70 EQU * 00064000
USING PSA,R0 SETUP ADDRESSABILITY FOR LOWCORE 00065000
USING SAVEAREA,R13 SETUP ADDRESSABILITY FOR SAVE AREA 00066000
USING *,R12 SETUP ADDRESSABILITY FOR MODULE 00067000
USING CCHREC,R9 SETUP ADDRESSABILITY FOR CCH RECORD 00068000
USING IOERBLOK,R4 SETUP ADDRESSABILITY FO I/O ERROR 00069000
* BLOCK 00070000
LR R1,R12 SAVE THE BASE REG. TO AVIOD DESTROYING 00071000
LR R12,R15 SETUP BASE ADDRESS 00072000
STM R2,R0,CCHSAVE SAVE ALL REGS. EXECPT REGISTER 1 00073000
ST R1,CCHSAVE+40 SAVE THE CONTENT OF REGISTER 12 00074000
LA R2,6 SETUP COUNT VALUE FOR LOOP 00075000
LA R1,X'130' GET THE ADDRESS OF THE I/O EXTENDED 00076000
* LOGOUT 00077000
CCHLOGU EQU * 00078000
CLC 0(4,R1),FFS HAS CHANNEL LOGOUT ? 00079000
BE CLEANUP NO, GO SET SYSTEM TERMINATION 00080000
LA R1,4(R1) UPDATE THE I/O EXTENDED LOGOUT POINTER 00081000
BCT R2,CCHLOGU GO TEST NEXT LOCATION 00082000
TM LOGWD3B+1,X'40' CHECK INDICATOR IN WORD 2 00083000
BZ CCH140 NO, GO SET COMMAND ADDR VALID 00084000
TM LOGWD2B,X'70' ANY PARITY BITS ON ? 00085000
BZ CCH140 NO, SET COMMAND ADDR VALID 00086000
OI IGBLAME,CCHCHNL INDICATE CHANNEL IS SOURCE OF ERROR 00087000
B CCH141 00088000
CCH140 EQU * 00089000
TM LOGWD3B+1,X'10' IS STORAGE CHECK SET ? 00090000
BZ CCH140A NO, GO SET COMMAND ADDR VALID 00091000
TM LOGWD3A,X'80' IS THIS CAW FETCH ? 00092000
BO CCH141 YES, GO CHECK FOR CHANNEL CONTROL 00093000
* CHECK 00094000
CCH140A EQU * 00095000
OI IGVALIDB,CCHCMDV SET COMMAND ADDRESS VALID FLAG 00096000
CCH141 EQU * 00097000
TM CSW+5,CCC IS CHANNEL CONTROL CHECK INDICATED ? 00098000
BO CCH141B IF YES, CHECK LS ADDER 00099000
CCH141H EQU * 00100000
TM LOGWD3B+2,X'02' IS ADDR-IN CHECK UP ? 00101000
BZ CCH141D NO, GO TEST FOR UA ADDRESS 00102000
CCH141A EQU * 00103000
OI IGBLAME,CCHINTFC THE INTERFACE IS THE SOURCE OF THE 00104000
* ERROR 00105000
B CCH141F GO TEST FOR STORAGE CHECK 00106000
CCH141B EQU * 00107000
TM LOGWD3B+1,X'20' IS LOCAL STORE ADDRESS CHECK UP ? 00108000
BZ CCH141C NO, GO TEST FOR UNIT ADDRESS 00109000
TM LOGWD3B,X'04' IS BIT 37 SET IN LOGOUT ? 00110000
BZ CCH141E NO, GO INDICATE CHANNEL ERROR 00111000
OI IGBLAME,CCHCPU INDICATE CPU ERROR 00112000
B CCH141F GO TEST FOR STORAGE CHECK 00113000
CCH141C EQU * 00114000
TM LOGWD3B+2,X'80' IS UNIT ADDR CHECK SET ? 00115000
BO CCH141E YES, GO INDICATE CHANNEL ERROR 00116000
B CCH141H GO CHECK ADDR-IN CHECK IN LOGOUT 00117000
CCH141D EQU * 00118000
TM ENTSW,TIOCCH IS THIS AN ERROR ON A TIO ? 00119000
BZ VALIDCCH NO, GO SET UA VALID FLAG 00120000
CLC SIOADDR+1(1),LOGWD3A+3 IS THE UNIT ADDRESS EQUAL TO THE 00121000
* UNIT ADDRESS IN THE LOGOUT 00122000
BNE CCH141F NO, GO TEST FOR STORAGE CHECK 00123000
VALIDCCH EQU * 00124000
OI IGVALIDB,CCHDAV SET UNIT ADDRESS VALID FLAG 00125000
B CCH141F GO CHECK FOR STORAGE CHECK 00126000
CCH141E EQU * 00127000
OI IGBLAME,CCHCHNL INDICATE CHANNEL IS SOURCE OF 00128000
* ERROR 00129000
CCH141F EQU * 00130000
TM LOGWD3B+1,X'10' IS STORAGE CHECK INDICATED ? 00131000
BZ CCH142 NO, GO CHECK PARITY FOR COUNT 00132000
TM LOGWD3B,X'02' IS BIT 38 IN LOGOUT ON ? 00133000
BZ CCH141G NO, GO INDICATE STORAGE ERROR 00134000
OI IGBLAME,CCHCHNL INDICATE CHANNEL ERROR AS SOURCE 00135000
TM LOGWD3A,X'40' CCW REQUIRED ON ? 00136000
BZ CCH142 NO, GO CHECK PARITY FOR COUNT 00137000
B CCH143A GO CHECK BIT 45 IN LOGOUT 00138000
CCH141G EQU * 00139000
OI IGBLAME,CCHSTG THE STORAGE IS THE SOURCE OF THE ERROR 00140000
B CCH143A GO TEST LOGOUT BITS 00141000
SPACE 2 00142000
********************************************************************** 00143000
* CHECK FOR VALID COUNT 00144000
********************************************************************** 00145000
SPACE 2 00146000
CCH142 EQU * 00147000
TM LOGWD3B+1,X'08' IS BYTE COUNT PARITY BAD 00148000
BO CCH142A YES, INDICATE CHANNEL IS THE SOURCE 00149000
* OF THE ERROR 00150000
TM LOGWD3B+2,X'20' BYTE COUNT BAD (SSC ONLY) ? 00151000
BO CCH142A YES, INDICATE CHANNEL IS SOURCE 00152000
* OF THE ERROR 00153000
TM LOGWD3B+1,X'80' UCW COUNT CHECK 00154000
BZ CCH143 NO, GO SET VALID FLAG FOR COUNT 00155000
TM LOGWD2B,X'03' ANY UCW PARITY BITS ? 00156000
BNZ CCH142A YES, GO INDICATE CHANNEL ERROR AS THE 00157000
* SOURCE OF THE ERROR 00158000
CCH143 EQU * 00159000
OI IGPRGFLG,CCHCNTB SET THE VALID FLAG FOR THE COUNT 00160000
CCH143A EQU * 00161000
TM LOGWD3B+1,X'06' IS BIT 45 OR 46 ON IN LOGOUT ? 00162000
BZ CCH144 NO, GO CHECK STATUS-IN 00163000
CCH142A EQU * 00164000
OI IGBLAME,CCHCHNL INDICATE CHANNEL ERROR AS SOURCE 00165000
CCH144 EQU * 00166000
TM LOGWD3B+2,X'01' IS STATUS-IN CHECK UP ? 00167000
BNO CCH145 GO CHECK FOR SYSTEM RESET 00168000
CCH144A EQU * 00169000
OI IGBLAME,CCHINTFC INTERFACE IS SOURCE OF ERROR 00170000
B CCH145A GO CHECK FOR SYSTEM RESET 00171000
CCH145 EQU * 00172000
TM CSW+5,IFCC IS THIS AN INTERFACE CONTROL CHECK ? 00173000
BO CCH145A NO, CHECK FOR SYSTEM RESET 00174000
OI IGVALIDB,CCHUSV SET VALID FLAG FORUNIT STATUS 00175000
CCH145A EQU * 00176000
L R2,LOGWD3B GET CHANNEL CHECK INFORMATION 00177000
N R2,SYSRESET CHECK FOR SYSTEM RESET 00178000
BZ CCH146 NO, GO CHECK CSW 00179000
TM LOGWD3A+2,X'10' IS EC INSTALLED ? 00180000
BO CCH145B YES, SET SELECTIVE RESET 00181000
OI IGTERMSQ,COMPSYS+RTCODE7 SET SYSTEM RESET COMP & RETRY 00182000
B CCHRETRN GO INITIALIZE LOGOUT AREA 00183000
CCH145B EQU * 00184000
OI IGVALIDB,CCHDAV SET THE DEVICE ADDRESS VALID 00185000
NI IGVALIDB,X'FF'-CCHCMDV SET THE COMMAND INVALID 00186000
NI IGPRGFLG,X'FF'-CCHCNTB SET THE COUNT INVALID 00187000
TM ENTSW,INTERCCH WAS THIS FROM AN I/O INTERRUPT ? 00188000
BZ CCH146A NO, GO SET RETRY CODE 00189000
TM LOGWD3B+2,X'82' IS THIS A UNIT ADDRESS OR ADDR-IN 00190000
* CHECK ? 00191000
BZ CCH146A NO, GO SET THE RETRY CODE 00192000
NI IGVALIDB,X'FF'-CCHDAV SET DEVICE ADDRESS INVALID 00193000
B CCH146A GO SET THE RETRY CODE 00194000
CCH146 EQU * 00195000
TM CSW+5,CCC+IFCC CHECK FOR BOTH CHANNEL CONTROL AND 00196000
* INTERFACE CONTROL CHECK ? 00197000
BM CCH147 YES, GO CHECK FOR INTERFACE CONTROL 00198000
* CHECK ? 00199000
TM LOGWD3B,X'01' IS SECOND CHECK SET ? 00200000
BZ CCH146A NO, GO SET THE TERMINATION CODE 00201000
OI IGBLAME,CCHCHNL INDICATE CHANNEL IS SOURCE OF 00202000
* ERROR 00203000
OI IGTERMSQ,COMPSYS+RTCODE7 SET SYSTEM RESET AND RETRY CODE 00204000
B CCHRETRN GO INITIALIZE LOGOUT AREA 00205000
CCH146A EQU * 00206000
OI IGTERMSQ,COMPSEL+RTCODE7 SET SELECTIVE RESET 00207000
* AND THE RETRY CODE 00208000
B CCHRETRN GO INITIALIZE LOGOUT AREA 00209000
CCH147 EQU * 00210000
TM CSW+5,IFCC IS THIS AN INTERFACE CONTROL CHECK ? 00211000
BO CCH148 YES, GO INDICATE INTERFACE AS SOURCE OF 00212000
* ERROR 00213000
OI IGTERMSQ,COMPFES SET COMP CODE TO SHOW FES 00214000
TM ENTSW,TIOCCH+HIOCCH IS THIS ON A SIO INSTRUCTION ? 00215000
BZ CCH150 YES, GO CHECK FOR CAW 00216000
TM ENTSW,TIOCCH IS THIS ON A TIO INSTRUCTION ? 00217000
BO CCH149 YES, CHECK THE TIO BIT 00218000
CCH162 EQU * 00219000
TM LOGWD3A,X'01' IS THIS A PSUEDO SIO ? 00220000
BZ CCH151 NO, GO TEST FOR TMODE TRIGGER 00221000
TM LOGWD3A,X'04' IS TTHE TIO FLAG ON ? 00222000
BO CCH152 YES, GO SET TERMINATION CODE 00223000
CCH151 EQU * 00224000
TM LOGWD3A+1,X'04' IS MODE TRIGGER 6 ON ? 00225000
BO CCH153 YES, GO CHECK COMMAND CHECK 00226000
TM LOGWD3A+2,X'E0' IS MODE TRIGGER 9, 10, OR 11 ON ? 00227000
BNZ CCH153 YES, GO CHECK COMMAND CHECK 00228000
TM LOGWD3A+1,X'70' IS MODE TRIGGER 2, 3, OR 4 ON ? 00229000
BZ CCH154 NO, GO CHECK COUNT 00230000
B CCH157 GO SET THE RETRY CODE 00231000
CCH153 EQU * 00232000
TM LOGWD3B+2,X'40' IS COMMAND CHECK ON IN LOGOUT ? 00233000
BO CCH165B YES, GO INDICATE SOURCE OF ERROR 00234000
CCH154 EQU * 00235000
TM IGPRGFLG,CCHCNTB IS THE VALIDITY FLAG ON FOR COUNT 00236000
BO CCH155 YES, GO CHECK COMMAND ADDRESS 00237000
CCH156 EQU * 00238000
OI IGTERMSQ,RTCODE5 SET RETRY CODE TO (101) 00239000
B CCHRETRN GO INITIALIZE LOGOUT AREA 00240000
CCH156A EQU * 00241000
OI IGTERMSQ,COMPSEL SET THE TERMINATION CODE 00242000
B CCH156 GO SET SEQUENCE CODE 00243000
CCH155 EQU * 00244000
TM IGVALIDB,CCHCMDV IS THE COMMAND ADDRESS VALID ? 00245000
BZ CCH156 NO, GO SET SEQUENCE CODE 00246000
L R2,CSW GET THE CSW ADDRESS 00247000
LA R2,0(R2) CLEAR THE HIGH ORDER BYTE 00248000
S R2,F8 GET THE ADDRESS OF THE LAST CCW 00249000
BM CCH156 NEGATIVE VALUE , GO INDICATE THAT 00250000
* IT IS INVALID 00251000
LH R3,6(R2) GET COUNT FROM CCW 00252000
N R3,XRIGHT16 CLEAR LOW ORDER BITS 00253000
LH R2,CSW+6 GET THE COUNT FROM THE CSW FIELD 00254000
N R2,XRIGHT16 CLEARED UNWANTED BITS 00255000
CR R2,R3 IS THE CSW COUNT GREATER THAN CCW 00256000
* COUNT ? 00257000
BH CCH155B YES, GO INDICATE UNIT ADDRESS VALID 00258000
BNE CCH157 GO SET RETRY CODE 00259000
CCH155A EQU * 00260000
OI IGTERMSQ,RTCODE2 SET RETRY CODE TO (010) 00261000
B CCHRETRN GO INITIALIZE THE LOGOUT AREA 00262000
CCH155B EQU * 00263000
TM IGVALIDB,CCHDAV IS THE UNIT ADDRESS VALID ? 00264000
BZ CCH163 NO, GO SET RETRY CODE 00265000
CCH155C EQU * 00266000
CLI SIOADDR+1,X'C0' IS THIS A MPX CHANNEL ? 00267000
BNL CCH156D NO, GO GET LOW ORDER DATA BYTE 00268000
NI IGVALIDB,X'FF'-CCHCNTB SET COUNT INVALID 00269000
B CCH156 GO SET RETRY CODE TO (101) 00270000
CCH156D EQU * 00271000
IC R2,3(R3) GET LOW DATA ADDRESS BITS 00272000
N R2,F7 CLEAR UNWANTED BITS 00273000
SR R1,R1 CLEAR REGISTER 1 00274000
IC R1,LOGWD3B+3 GET LOGOUT BYTE COUNT BITS 00275000
SRL R1,4 ISOLATE THE LOW ORDER BITS 00276000
N R1,F7 CLEAR ANY UNWANTED BITS 00277000
CR R2,R1 DOES CCW BITS EQUAL LOGOUT BITS ? 00278000
BNE CCH157 NO, GO SET RETRY CODE TO (011) 00279000
B CCH155A GO SET RETRY CODE TO (010) 00280000
CCH148 EQU * 00281000
OI IGBLAME,CCHINTFC INTERFACE IS THE SOURCE OF THE 00282000
* ERROR 00283000
TM LOGWD1A,X'03' ARE ANY BITS SET IN THE LOGOUT ? 00284000
BNZ CCH148A YES, GO CHECK TAG SEQUENCE FLAG 00285000
CCH148C EQU * 00286000
TM LOGWD3A+1,X'08' IS BIT 12 ON IN THE LOGOUT ? 00287000
BO CCH148A YES, GO CHECK TAG SEQUENCE FLAG 00288000
CCH148B EQU * 00289000
OI IGTERMSQ,COMPSEL+RTCODE3 SET THE SELECTIVE RESET AND 00290000
* THE RETRY CODE 00291000
B CCHRETRN GO INITIALIZE THE LOGOUT AREA 00292000
CCH148A EQU * 00293000
TM LOGWD3B+2,X'04' IS THE TAG SEQUENCE INCORRECT ? 00294000
BZ CCH158 NO, GO TEST THE SELECTION FLAG 00295000
TM LOGWD3A+1,X'08' IS BIT 12 ON IN THE LOGOUT ? 00296000
BO CCH156A YES, GO SET THE TERMINATION CODE 00297000
B CCH146A GO SET THE RETRY CODE AND SELECTIVE 00298000
* RESET CODE 00299000
CCH158 EQU * 00300000
TM LOGWD3B+2,X'10' IS THIS SELECTION INCORRECT ? 00301000
BZ CCH159 NO, GO TEST THE RESPONSE FLAG 00302000
OI IGTERMSQ,COMPSEL+RTCODE4 SET THE TERMINATION AND RETRY 00303000
* CODE TO (100) 00304000
B CCHRETRN GO INITIALIZE THE LGOUT AREA 00305000
CCH159 EQU * 00306000
TM LOGWD3B+2,X'08' IS THE RESPONSE FLAG ON ? 00307000
BZ CCH160 NO, GO TEST THE STATUS-IN FLAG 00308000
OI IGTERMSQ,COMPFES+RTCODE4 SET THE TERMINATION CODE 00309000
* AND RETRY CODE TO (100) 00310000
OI IGVALIDB,CCHCMDV SET THE COMMAND ADDRESS VALID FLAG 00311000
B CCHRETRN GO INITIALIZE THE LOGOUT 00312000
CCH160 EQU * 00313000
TM LOGWD3B+2,X'01' IS THE STATUS-IN CHECK ON ? 00314000
BO CCH160A YES, GO TEST FOR CAUSES OF CHANNEL CHECK 00315000
OI IGTERMSQ,COMPSEL+RTCODE2 SET SELECTIVE RESET AND THE 00316000
* RETRY CODE (010) 00317000
B CCHRETRN GO INITIALIZE THE LOGOUT AREA 00318000
CCH160A EQU * 00319000
TM ENTSW,TIOCCH+HIOCCH WAS ERROR CAUSED BY SIO ? 00320000
BNZ CCH148B NO, GO SET RETRY CODE 00321000
OI IGTERMSQ,COMPSEL+RTCODE1 SET THE SELECTIVE RESET AND 00322000
* RETRY CODE (001) 00323000
B CCHRETRN GO INITIALIZE THE LOGOUT AREA 00324000
CCH149 EQU * 00325000
TM LOGWD3A,X'04' IS THE TIO BIT ON IN LOGOUT ? 00326000
BO CCH162 YES, GO CHECK FOR SIO 00327000
TM IGVALIDB,CCHUSV IS UNIT STATUS VALID ? 00328000
BZ CCH163 NO, GO SET RETRY CODE 00329000
TM CSW+4,X'0C' IS CHANNEL END OR DEVICE END SET ? 00330000
BNZ CCH162 YES, GO CHECK PSUEDO SIO 00331000
CCH157 EQU * 00332000
OI IGTERMSQ,RTCODE3 SET TERMINATION CODE TO (003) 00333000
B CCHRETRN GO INITIALIZE LOGOUT 00334000
CCH163 EQU * 00335000
OI IGTERMSQ,RTCODE7 SET THE RETRY CODE TO (111) 00336000
B CCHRETRN GO INITIALIZE LOGOUT 00337000
CCH150 EQU * 00338000
TM LOGWD3A,X'80' IS THE CAW INVALID ? 00339000
BNZ CCH152 YES, GO SET RETRY CODE (TO (001) 00340000
CCH164 EQU * 00341000
TM IGVALIDB,CCHDAV WAS UNIT ADDRESS VALID ? 00342000
BZ CCH152 NO, GO SET RETRY CODE 00343000
CLI SIOADDR+1,X'C0' IS THIS A MPX CHANNEL ? 00344000
BNL CCH165 NO, GO TEST FOR TIO 00345000
TM LOGWD3A,X'40' IS CCW REQUIRED ON ? 00346000
BO CCH152 YES, GO SET RETRY CODE 00347000
CCH165 EQU * 00348000
TM LOGWD3A,X'04' TIO BIT ON IN LOGOUT ? 00349000
BO CCH152 YES, GO SET RETRY CODE 00350000
CCH165A EQU * 00351000
NI IGTERMSQ,X'FF'-COMPFES CLEAR TERMINATION CODE (01) 00352000
* THAT WAS ALREADY SET 00353000
OI IGTERMSQ,COMPSEL SET TERMINATION CODE (10) 00354000
CCH165B EQU * 00355000
OI IGBLAME,CCHCHNL THE CHANNEL IS THE SOURCE OF THE 00356000
* ERROR 00357000
CCH152 EQU * 00358000
OI IGTERMSQ,RTCODE4 SET RETRY CODE TO (100) 00359000
B CCHRETRN GO INITIALIZE THE LOGOUT AREA 00360000
CLEANUP EQU * 00361000
OI ENTSW,TERMSYS SET SYSTEM TERMINATION 00362000
B CCHEXIT4 GO RESTORE REGISTERS 00363000
CCHRETRN EQU * 00364000
TM LOGWD3B,X'10' IS DISCONNECT IN ON ? 00365000
BZ CCHRTRN NO, GET I/O EXTENDED LOGOUT POINTER 00366000
OI IGTERMSQ,CCHDI SET DISCONNECT IN THE BUILDED 00367000
* ECSW 00368000
CCHRTRN EQU * 00369000
LA R1,X'130' GET THE ADDRESS OF THE I/O EXTENDED 00370000
* LOGOUT 00371000
MVC CCHLOG70(24),0(R1) SAVE THE I/O EXTENDED LOGOUT 00372000
MVI 0(R1),X'FF' INITIALIZE THE I/O EXTENDED LOGOUT 00373000
MVC 1(23,R1),0(R1) TO ALL ONES 00374000
MVI CCHSAVE+59,X'0D' CHANGE THE LENGTH OF THE CCH @VA00881 00375000
* RECORD 00376000
CCHEXIT4 EQU * 00377000
LM R2,R0,CCHSAVE RESTORE THE REGISTERS 00378000
BR R14 RETURN TO CCH CONTROL ROUTINE 00379000
********************************************************************** 00380000
********************************************************************** 00381000
********************************************************************** 00382000
EJECT 00383000
********************************************************************** 00384000
CCHSAVE DS 16F 00385000
SYSRESET DC X'05268200' SYSTEM RESET CONSTANT 00386000
******************************************************************** 00387000
********************************************************************** 00388000
********************************************************************** 00389000
EJECT 00390000
********************************************************************** 00391000
PSA 00392000
COPY EQU 00393000
COPY DEVTYPES 00394000
COPY SAVE 00395000
ENTSW EQU SAVEWRK1 @VA01638 00396000
SIOADDR EQU SAVEWRK9 00397000
EJECT 00398000
COPY IOER 00399000
COPY CCHREC 00400000
END 00401000