00120002 % DEACTIVATE OFF,PUSH,POP,ON; 00120802 /*****************************************************************/ 00124002 /* */ 00128002 /* VIRTUAL DUMP COMMON CONTROL BLOCKS - */ 00132002 /* EXPANDS INTO BASED CONTROL BLOCKS UNLESS %RMKINIT IS */ 00136002 /* DECLARED AS CHAR AND INITIALIZED TO A NON-NULL CHARACTER */ 00157602 /* STRING. */ 00158402 /* */ 00161602 /*****************************************************************/ 00168202 00178802 DCL 00189402 1 ARB BASED, /* ADDRESS RANGE BLOCK */ 00200002 3 ARBADDRB PTR(31), /* BEGINNING ADDRESS OF RANGE */ 00300002 3 ARBADDRE PTR(31); /* ENDING ADDRESS OF RANGE */ 00400002 %IF RMKINIT ^= '' %THEN /* INITIALIZATION REQUIRED */ 00500002 %GOTO BCTINIT; /* YES - SKIP BASED CODE */ 00600002 DCL 00700002 1 BCTH BDY(WORD) BASED(VCTBCTH), /* BUFFER CONTROL TABLE 00800002 HEAD */ 00900002 3 BCTHBCTH CHAR(4), /* BCTH ACRONYM */ 01000002 3 BCTHFRST PTR(31), /* ADDRESS OF FIRST BCT */ 01100002 3 BCTHLAST PTR(31); /* ADDRESS OF LAST BCT */ 01200002 01220002 %BCTINIT:; 01240002 DCL 01300002 1 BCT BDY(WORD) BASED, /* BUFFER CONTROL TABLE ENTRY */ 01400002 3 BCTBCT CHAR(4), /* EBCDIC ACRONYM */ 01420002 3 BCTNEXT PTR(31), /* NEXT BCT ON I/O QUEUE */ 01500002 3 BCTKEY1 PTR(8), /* STORAGE KEY OF FIRST 2K */ 01600002 3 BCTKEY2 PTR(8), /* STORAGE KEY OF LAST 2K */ 01700002 3 BCTASID FIXED(16), /* ASID OF DATA IN BUFFER */ 01800002 3 BCTVADDR PTR(31), /* VIRTUAL ADDRESS OF DATA IN 01900002 BUFFER */ 02000002 3 BCTRADDR PTR(31), /* REAL ADDRESS OF BUFFER */ 02100002 3 BCTPGTE PTR(31), /* ADDRESS OF PAGE TABLE ENTRY */ 02200002 3 BCTMDCB PTR(31), /* ADDRESS OF MDCB FOR BUFFER */ 02300002 3 * CHAR(8) BDY(WORD), /* UNUSED @Z40WI3F*/ 02400040 3 * PTR(31), /* UNUSED @Z40WI3F*/ 02460040 3 BCTLSID FIXED(31), /* LOGICAL SLOT IDENTIFIER - PAGE'S 02520040 AUX STORAGE ID @Z40WI3F*/ 02580040 5 * FIXED(8), /* UNUSED @Z40WI3F*/ 02640040 5 BCTINDEX FIXED(8), /* PART/SART ENTRY NUMBER 02700040 @Z40WI3F*/ 02760040 5 BCTRBA FIXED(16), /* RELATIVE BLOCK ADDR @Z40WI3F*/ 02820040 3 BCTFLGT BIT(8), /* BUFFER TYPE FLAGS */ 02900002 5 * BIT(1), /* RESERVED */ 03000002 5 BCTWKFLE BIT(1), /* WORKFILE */ 03100002 5 BCTPGT BIT(1), /* PAGE TABLE */ 03150002 5 BCTASM BIT(1), /* ASM */ 03200002 5 BCTLSQA BIT(1), /* LSQA */ 03460002 5 BCTDUMP BIT(1), /* DUMP */ 03520002 5 BCTPGTF BIT(1), /* FIXED PAGE TABLE */ 03620002 5 * BIT(1), /* RESERVED */ 03700002 3 BCTFLGI BIT(8), /* BUFFER STATUS FLAGS */ 03800002 5 BCTCOMP BIT(1), /* I/O COMPLETE FOR BUFFER */ 03900002 5 BCTALLOC BIT(1), /* BUFFER SCHEDULED FOR I/O */ 04000002 5 BCTIOERR BIT(1), /* I/O ERROR PROCESSING BUFFER */ 04100002 5 BCTRECLM BIT(1), /* VIRTUAL ADDRESS RECLAIMED FROM 04200002 REAL STORAGE */ 04220002 5 BCTSWPDS BIT(1), /* PAGE FROM SWAP DATA SET 04240040 @Z40WI3F*/ 04260040 3 * PTR(16); /* RESERVED */ 04300002 %IF RMKINIT = '' %THEN /* INITIALIZATION REQUIRED */ 04320002 %GOTO CCTINIT; /* NO - SKIP INITIALIZATION CODE */ 04400002 DCL 04700002 1 BCTH BDY(WORD), /* BUFFER CONTROL TABLE HEAD */ 04800002 3 BCTHBCTH CHAR(4) INIT('BCTH'), /* BCTH ACRONYM */ 04900002 3 BCTHFRST PTR(31) INIT(ADDR(BCTI)), /* ADDRESS OF 05000002 FIRST BCT */ 05100002 3 BCTHLAST PTR(31) INIT(ADDR(BCTI) + 3 * LENGTH(BCT)); /* 05200002 ADDRESS OF LAST BCT */ 05300002 DCL 05400002 1 BCTI(20) BDY(WORD), /* BUFFER CONTROL TABLE ENTRY */ 05500002 3 * CHAR(4) INIT((DIM(BCTI))'BCT '), /* EBCDIC ACRONYM */ 05520002 3 * PTR(31) INIT((DIM(BCTI))0), /*NEXT BCT ON I/O QUEUE*/ 05600002 3 * PTR(8) INIT((DIM(BCTI))0), /* STORAGE KEY OF 1ST 2K*/ 05800002 3 * PTR(8) INIT((DIM(BCTI))0), /*STORAGE KEY OF LAST 2K*/ 06000002 3 * FIXED(16) INIT((DIM(BCTI))0), /* ASID OF DATA */ 06100002 3 * PTR(31) 06300002 INIT(0,0,0,0, 06400002 '010000'X,'011000'X,'012000'X,'013000'X,'014000'X,'015000'X,'016000'X, 06500002 '017000'X,'018000'X,'019000'X,'01A000'X,'01B000'X,'01C000'X,'01D000'X, 06600002 '01E000'X,'01F000'X), /* VIRTUAL ADDRESS OF DATA IN 06700002 BUFFER */ 06800002 3 * PTR(31) 06900002 INIT('3000'X,'4000'X,'5000'X,'6000'X, 07000002 '010000'X,'011000'X,'012000'X,'013000'X,'014000'X,'015000'X,'016000'X, 07100002 '017000'X,'018000'X,'019000'X,'01A000'X,'01B000'X,'01C000'X,'01D000'X, 07200002 '01E000'X,'01F000'X), /* REAL ADDRESS OF BUFFER */ 07300002 3 * PTR(31) INIT((DIM(BCTI))0), /*ADDR OF PGE TBL ENTRY*/ 07400002 3 * PTR(31) INIT((DIM(BCTI))0), /* ADDRESS OF MDCB */ 07600002 3 * CHAR(8) BDY(WORD) INIT((DIM(BCTI))'00'X), /* LPID OF 07800002 DATA IN BUFFER */ 07900002 3 * PTR(31) INIT((DIM(BCTI))0), /* ADDRESS OF AMB */ 08200002 3 * PTR(31) INIT((DIM(BCTI))0), /*RBA OF PAGE IN BUFFER*/ 08300002 3 * BIT(8) INIT((DIM(BCTI))0), /* BUFFER TYPE FLAGS */ 08400002 3 * BIT(8) INIT((DIM(BCTI))0), /* BUFFER STATUS FLAGS */ 09300002 3 * PTR(16) INIT((DIM(BCTI))0); /* RESERVED */ 09800002 09900002 %CCTINIT:; 10000002 DCL 10100002 1 CCT BDY(WORD) BASED(CCTADDR), /* COMMON COMMUNICATION 10200002 TABLE */ 10300002 3 CTWAIT PTR(8), /* HIGHEST WAIT CODE */ 10400002 3 CTFLG1 BIT(8), /* FLAGS */ 10500002 5 CTERROR BIT(1), /* CALLER PROCESSES ERROR 10600002 RECOVERY */ 10700002 5 CTDEVICE BIT(1), /* DIRECT ACCESS I/O IN PROGRESS*/ 10800002 5 CTMORTPE BIT(1), /* END OF REEL */ 10900002 5 CTWORK BIT(1), /* WORK RECORD IN PROCESS */ 11000002 5 CTDEFO BIT(1), /* DEFAULT ADDRESS USED FOR 11100002 OUTPUT */ 11200002 5 * BIT(1), /* RESERVED */ 11300002 5 CTMP BIT(1), /* PROCESSING ON MP SYSTEM */ 11500002 5 CTERREC BIT(1), /* IGNORE CATASTROPHIC ERROR */ 11600002 3 CTFLG2 BIT(8), /* FLAGS */ 11700002 5 CTDUPSW BIT(1), /* DUPLICATE LINE */ 11800002 5 CTSTOR BIT(1), /* PROTECTION KEY IN PROCESS */ 11900002 5 CTPGEFLT BIT(1), /* PAGE FAULT IN PROCESS */ 12000002 5 CTNOSTAT BIT(1), /* STORE STATUS NOT PERFORMED */ 12100002 5 CTVIRTR BIT(1), /* VIRTUAL DUMP REQUESTED */ 12200002 5 CTWKDONE BIT(1), /* END OF WORK FILE PROCESSING */ 12300002 5 CTALTCON BIT(1), /* ALTERNATE CONSOLE IN USE */ 12400002 5 * BIT(1), /* RESERVED */ 12500002 3 CTDEVTYP PTR(8), /* IPL DEVICE TYPE */ 12600002 3 CTSENSE FIXED(15), /* SENSE INFORMATION AREA */ 12700002 3 CTINADDR FIXED(15), /* IPL DEVICE ADDRESS */ 12800002 3 CTCCHHR CHAR(7), /* CCHHR FOR USE DURING IPL AND 12900002 WORK RECORD PROCESSING */ 13000002 3 CTPGECNT CHAR(1), /* NUMBER OF RECORDS IN AMDSAPGE 13100002 (D.A. IPL) */ 13200002 3 CTCCHHS FIXED(31), /* STARTING CCHH OF SYS1.PAGEDUMP*/ 13300002 3 CTCCHHE FIXED(31), /* ENDING CCHH OF SYS1.PAGEDUMP */ 13400002 3 CTCCHHW FIXED(31), /* BEGINNING CCHH FOR WORKFILE */ 13500002 3 CTERBDA FIXED(31), /* DIRECT ACCESS ERROR RECOVERY 13600002 BLOCK */ 13700002 /* THE FOLLOWING IS THE CCT COMMON SECTION */ 13800002 3 CTERBTPE FIXED(31), /* TAPE ERROR RECOVERY BLOCK */ 13900002 3 CTERBCON FIXED(31), /* CONSOLE ERROR RECOVERY BLOCK */ 14000002 3 CTCPUI FIXED(15), /* IPL CPU ADDRESS */ 14100002 3 CTOUTAD FIXED(15), /* OUTPUT DEVICE ADDRESS */ 14200002 3 CTCONTYP PTR(8), /* CONSOLE TYPE */ 14300002 3 CTEBCOPD CHAR(3), /* DEFAULT OUTPUT DEVICE ADDRESS */ 14400002 3 CTLOWFLG BIT(8), /* FLAGS */ 14500002 5 CTVIRTD BIT(1), /* DEFAULT TO VIRTUAL DUMP */ 14600002 5 CTFP BIT(1), /* FILE PROTECT */ 14700002 5 CTINIT BIT(1), /* RE-INITIALIZATION PERMITTED 14750002 AFTER CHANNEL ERROR */ 14760002 5 CTWKSTUS BIT(1), /* STATUS OF INCOMPLETE WORKFILE - 14770002 ON MEANS INSUFFICIENT SPACE, 14780002 OFF MEANS I/O ERROR OCCURRED */ 14790002 5 * BIT(4), /* RESERVED */ 14800002 3 CTEBCOPR CHAR(3), /* REPLIED OUTPUT DEVICE ADDRESS */ 14900002 /* THE FOLLOWING IS THE DUMP TYPE SECTION OF THE CCT */ 15000002 2 CTDMPTYP, 15100002 /* HIGH SPEED DUMP - */ 15200002 3 CTIOTYPE BIT(8), /* I/O REQUEST FLAGS */ 15300002 5 CTIOTERM BIT(1), /* TERMINATE */ 15400002 5 CTIOOUT BIT(1), /* OUTPUT TAPE */ 15500002 5 CTIODA BIT(1), /* DIRECT ACCESS */ 15600002 5 CTIOWK BIT(1), /* WORKFILE */ 15700002 5 CTIOCON BIT(1), /* CONSOLE */ 15800002 5 CTIOINT BIT(1), /* RETURN ON ANY INTERRUPT */ 15900002 5 CTIORSET BIT(1), /* RESET CPU ON CPU SWITCH */ 15920002 5 * BIT(1), /* RESERVED */ 16000002 3 * BIT(8), /* RESERVED */ 16100002 3 CTCONFLG BIT(8), /* CONSOLE FLAGS */ 16200002 5 CTMSGOUT BIT(1), /* MSG MUST COME OUT */ 16300002 5 CTREAD BIT(1), /* CONSOLE READ IN PROGRESS */ 16400002 5 * BIT(6), /* RESERVED */ 16500002 3 CTBUFTYP BIT(8), /* BUFFER TYPE FLAGS */ 16600002 5 * BIT(1), /* RESERVED */ 16700002 5 CTWKFLE BIT(1), /* WORKFILE */ 16800002 5 CTPGT BIT(1), /* PAGE TABLE */ 16850002 5 CTASM BIT(1), /* ASM */ 16900002 5 CTLSQA BIT(1), /* LSQA */ 17160002 5 CTDUMP BIT(1), /* DUMP BUFFER */ 17220002 5 * BIT(2), /* RESERVED */ 17300002 3 CTCONSOL PTR(31), /* ADDRESS OF CONSOLE I/O ROUTINE*/ 17400002 3 CTLWKAD PTR(31), /* LAST ADDRESS ON WORKFILE */ 17500002 3 CTCOMMIO PTR(31), /* ADDRESS OF DUMPSIO ROUTINE */ 17600002 3 CTEOR PTR(31), /* ADDRESS OF END OF REEL ROUTINE*/ 17620002 3 CTVCCT PTR(31), /* ADDRESS OF VCCT */ 17700002 3 CTPRMT1 FIXED(15), /* WRITE PROMPT POS. (3066 ONLY) */ 17710002 5 CTPRMT1Y FIXED(8), /* Y COORDINATE */ 17720002 5 CTPRMT1X FIXED(8), /* X COORDINATE */ 17730002 3 CTPRMT2 FIXED(15), /* READ PROMPT POS. (3066 ONLY) */ 17740002 5 CTPRMT2Y FIXED(8), /* Y COORDINATE */ 17750002 5 CTPRMT2X FIXED(8), /* X COORDINATE */ 17760002 3 CTHWM FIXED(8), /* LOGICAL 3066 SCREEN LIMIT */ 17770002 3 CTHWMAX FIXED(8); /* PHYSICAL 3066 SCREEN LIMIT */ 17780002 DCL 17800002 1 CTLOWDMP DEFINED(CTDMPTYP), /* THIS IS THE LOW SPEED DUMP 17900002 TYPE SECTION OF THE CCT */ 18000002 3 CTADDRS PTR(31), /* STARTING ADDRESS OF RANGE TO 18100002 BE DUMPED */ 18200002 3 CTADDRE PTR(31); /* ENDING ADDRESS OF RANGE TO BE 18300002 DUMPED */ 18400002 DCL 18500002 1 CCW BDY(DWORD) BASED, /* FORMAT OF CCW */ 18600002 3 CCWCMD PTR(8), /* COMMAND */ 18700002 3 CCWDADDR PTR(24), /* DATA ADDRESS */ 18800002 3 CCWFLAGS BIT(8), /* CCW FLAGS */ 18900002 5 CCWDC BIT(1), /* DATA CHAINING */ 19000002 5 CCWCC BIT(1), /* COMMAND CHAINING */ 19100002 5 CCWSLI BIT(1), /* SUPPRESS INCORRECT LENGTH 19200002 INDICATOR */ 19300002 5 CCWSKIP BIT(1), /* SUPPRESS DATA TRANSFER */ 19400002 5 CCWPCI BIT(1), /* PROGRAM-CONTROLLED INTERRUPT */ 19500002 5 CCWIDA BIT(1), /* INDIRECT DATA ADDRESS */ 19600002 5 * BIT(2), /* RESERVED */ 19700002 3 * PTR(8), /* RESERVED */ 19800002 3 CCWCNT FIXED(16); /* BYTE COUNT */ 19900002 DCL 20000002 1 CSW BDY(WORD) BASED, /* FORMAT OF CSW */ 20100002 3 CSWKEY00 BIT(8), 20200002 5 CSWKEY BIT(4), /* PROTECT KEY */ 20300002 5 * BIT(4), /* RESERVED */ 20400002 3 CSWCADDR PTR(24), /* COMMAND ADDRESS */ 20500002 3 CSWUSTAT BIT(8), /* CSW UNIT STATUS */ 20600002 5 CSWATTN BIT(1), /* ATTENTION */ 20700002 5 CSWSTMOD BIT(1), /* STATUS MODIFIER */ 20800002 5 CSWCUE BIT(1), /* CONTROL UNIT END */ 20900002 5 CSWBUSY BIT(1), /* BUSY */ 21000002 5 CSWCE BIT(1), /* CHANNEL END */ 21100002 5 CSWDE BIT(1), /* DEVICE END */ 21200002 5 CSWUC BIT(1), /* UNIT CHECK */ 21300002 5 CSWUE BIT(1), /* UNIT EXCEPTION */ 21400002 3 CSWCSTAT BIT(8), /* CSW CHANNEL STATUS */ 21500002 5 CSWPCI BIT(1), /* PROGRAM-CONTROLLED INTERRUPT */ 21600002 5 CSWIL BIT(1), /* INCORRECT LENGTH */ 21700002 5 CSWPGC BIT(1), /* PROGRAM CHECK */ 21800002 5 CSWPTC BIT(1), /* PROTECTION CHECK */ 21900002 5 CSWCDC BIT(1), /* CHANNEL DATA CHECK */ 22000002 5 CSWCCC BIT(1), /* CHANNEL CONTROL CHECK */ 22100002 5 CSWICC BIT(1), /* INTERFACE CONTROL CHECK */ 22200002 5 CSWCHC BIT(1), /* CHAINING CHECK */ 22300002 3 CSWCNT FIXED(16); /* RESIDUAL BYTE COUNT */ 22400002 %IF RMKINIT ^= '' %THEN /* INITIALIZATION REQUIRED */ 22500002 %GOTO IODINIT; /* YES - SKIP BASED CODE */ 22600002 DCL 22700002 1 DSCE BDY(WORD) BASED(VCTDSCE), /* DYNAMIC STORAGE CONTROL 22800002 ELEMENT */ 22900002 3 DSCEDSCE CHAR(4), /* DSCE ACRONYM */ 23000002 3 DSCEBEGN PTR(31), /* BEGINNING ADDRESS OF DYNAMIC 23100002 STORAGE AREA */ 23200002 3 DSCENEXT PTR(31), /* ADDRESS OF NEXT AVAILABLE 23300002 STORAGE */ 23400002 3 DSCETBEG PTR(31), /* ADDRESS OF FIRST TRACE ENTRY */ 23404002 3 DSCETCUR PTR(31), /* CURRENT TRACE ENTRY ADDRESS */ 23408002 3 DSCETEND PTR(31); /* END OF TRACE AND DYNAMIC AREA */ 23412002 23420002 %IODINIT:; 23440002 DCL 23500002 1 IODB BDY(WORD) BASED, /* INPUT/OUTPUT DEVICE BLOCK */ 23600002 3 IODBIODB CHAR(4), /* IODB ACRONYM */ 23700002 3 IODBIDEN CHAR(4), /* IODB TYPE */ 23800002 3 IODBFLAG BIT(16), /* FLAGS */ 23900002 5 IODBTERM BIT(1), /* CATASTROPHIC ERROR */ 24000002 5 IODBPTRM BIT(1), /* TERMINATE VIRTUAL DUMP */ 24100002 5 IODBINT BIT(1), /* INTERRUPT PROCESSED */ 24200002 5 IODBIOC BIT(1), /* I/O ERROR */ 24300002 5 IODBHALT BIT(1), /* DEVICE QUIESCED */ 24400002 5 IODBACTV BIT(1), /* I/O ACTIVE ON DEVICE */ 24450002 5 IODBCONW BIT(1), /* WAIT ON NEXT FULL SCREEN (3066 24460002 CONSOLE ONLY) */ 24470002 5 IODBSTRT BIT(1), /* I/O STARTED BY ERROR RECOVERY 24480002 ROUTINE */ 24490002 5 * BIT(8), /* RESERVED */ 24500002 3 IODBDEV FIXED(15), /* DEVICE ADDRESS */ 24600002 3 IODBCLAS PTR(8), /* DEVICE CLASS */ 24700002 3 IODBTYPE PTR(8), /* UNIT TYPE */ 24800002 3 IODBCPU FIXED(15), /* CPU ADDRESS */ 24900002 3 IODBBCT PTR(31), /* ADDRESS OF FIRST BCT ON I/O 25000002 REQUEST QUEUE */ 25100002 3 IODBCAW PTR(31), /* CAW USED FOR CURRENT I/O 25200002 OPERATION */ 25300002 3 IODBCSW CHAR(8), /* CSW FOR CURRENT OPERATION */ 25400002 3 IODBCCHH CHAR(8), /* SEEK ADDRESS */ 25500002 5 IODBM CHAR(1), /* 'M' VALUE */ 25600002 5 IODBSEEK CHAR(2), /* BEGINNING OF SEEK ADDRESS */ 25700002 5 IODBSRCH CHAR(4), /* SEARCH ADDRESS */ 25800002 7 IODBCC CHAR(2), /* CYLINDER NUMBER */ 25804002 7 IODBHH CHAR(2), /* TRACK NUMBER */ 25808002 5 IODBR CHAR(1), /* RECORD NUMBER */ 25820002 3 IODBSENS CHAR(24); /* SENSE INFORMATION */ 25900002 %IF RMKINIT ^= '' %THEN /* INITIALIZATION REQUIRED */ 25920002 %GOTO DSCINIT; /* YES - SKIP BASED CODE */ 25940002 DCL 26000002 1 MDCE BDY(WORD) BASED(VCTMDCE), /* MEMORY DISPATCHING 26100002 CONTROL ELEMENT */ 26200002 3 MDCEMDCE CHAR(4), /* MDCE ACRONYM */ 26300002 3 MDCEACTV PTR(31), /* ACTIVE MDCB QUEUE */ 26400002 3 MDCEAVIL PTR(31); /* AVAILABLE MDCB QUEUE */ 26500002 DCL 26600002 1 MDCB BDY(WORD) BASED, /* MEMORY DISPATCHING CONTROL 26700002 BLOCK */ 26800002 3 MDCBMDCB CHAR(4), /* MDCB ACRONYM */ 26900002 3 MDCBNEXT PTR(31), /* NEXT MDCB */ 27000002 3 MDCBPSW CHAR(8), /* PSW AT TIME OF INTERRUPT */ 27100002 3 MDCBGRS BDY(WORD) CHAR(64), /* GENERAL REGISTERS */ 27200002 5 MDCBGR0 PTR(31), 27300002 5 MDCBGR1 PTR(31), 27400002 5 MDCBGR2 PTR(31), 27500002 5 MDCBGR3 PTR(31), 27600002 5 MDCBGR4 PTR(31), 27700002 5 MDCBGR5 PTR(31), 27800002 5 MDCBGR6 PTR(31), 27900002 5 MDCBGR7 PTR(31), 28000002 5 MDCBGR8 PTR(31), 28100002 5 MDCBGR9 PTR(31), 28200002 5 MDCBGR10 PTR(31), 28300002 5 MDCBGR11 PTR(31), 28400002 5 MDCBGR12 PTR(31), 28500002 5 MDCBGR13 PTR(31), 28600002 5 MDCBGR14 PTR(31), 28700002 5 MDCBGR15 PTR(31), 28800002 3 MDCBSTOR PTR(31), /* CONTENTS OF CONTROL REGISTER 1*/ 28900002 3 MDCBPI FIXED(15), /* PROGRAM INTERRUPT CODE */ 29000002 3 MDCBFLGS BIT(8), /* MDCB FLAGS */ 29100002 5 MDCBASMI BIT(1), /* ASM FUNCTION STATUS */ 29200002 5 MDCBDUMP BIT(1), /* DUMP REQUEST STATUS */ 29250002 5 * BIT(6), /* RESERVED */ 29300002 3 * BIT(8); /* RESERVED */ 29400002 %GOTO PSWCOM; /* SKIP INITIALIZATION CODE */ 29500002 29600002 %DSCINIT:; 29700002 DCL 29800002 1 DSCE BDY(WORD), /* DYNAMIC STORAGE CONTROL 29900002 ELEMENT */ 30000002 3 DSCEDSCE CHAR(4) INIT('DSCE'), /* DSCE ACRONYM */ 30100002 3 DSCEBEGN PTR(31) INIT('1000'X), /* BEGINNING ADDRESS 30200002 OF DYNAMIC STORAGE AREA */ 30300002 3 DSCENEXT PTR(31) INIT('1000'X), /* ADDRESS OF NEXT 30400002 AVAILABLE STORAGE */ 30500002 3 DSCETBEG PTR(31) INIT('2F00'X), /* ADDRESS OF FIRST 30600002 TRACE ENTRY */ 30700002 3 DSCETCUR PTR(31) INIT('2F00'X), /* CURRENT TRACE ENTRY 30800002 ADDRESS */ 30900002 3 DSCETEND PTR(31) INIT('3000'X); /* END OF TRACE AND 31000002 DYNAMIC AREA */ 31100002 DCL 31800002 1 IODBI BDY(WORD), /* INPUT/OUTPUT DEVICE BLOCK */ 31900002 3 IODBDA, /* DIRECT ACCESS IODB */ 32000002 5 * CHAR(4) INIT('IODB'), /* IODB ACRONYM */ 32100002 5 * CHAR(4) INIT('-DA '), /* IODB TYPE */ 32200002 5 * (14) FIXED(31) INIT((14)0), 32300002 3 IODBOUT, /* OUTPUT IODB */ 32400002 5 * CHAR(4) INIT('IODB'), /* IODB ACRONYM */ 32500002 5 * CHAR(4) INIT('-OUT'), /* IODB TYPE */ 32600002 5 * (14) FIXED(31) INIT((14)0), 32700002 3 IODBWORK, /* WORKFILE IODB */ 32800002 5 * CHAR(4) INIT('IODB'), /* IODB ACRONYM */ 32900002 5 * CHAR(4) INIT('-WK '), /* IODB TYPE */ 33000002 5 * (14) FIXED(31) INIT((14)0), 33100002 3 IODBCON, /* CONSOLE IODB */ 33200002 5 * CHAR(4) INIT('IODB'), /* IODB ACRONYM */ 33300002 5 * CHAR(4) INIT('-CON'), /* IODB TYPE */ 33400002 5 * (14) FIXED(31) INIT((14)0); 33500002 GENERATE DATA REFS(IODBDA,IODBOUT,IODBWORK,IODBCON); 33600002 ENTRY IODBDA 33700002 ENTRY IODBOUT 33720002 ENTRY IODBWORK 33740002 ENTRY IODBCON 33760002 @ENDGEN 33800002 DCL 34400002 1 MDCE BDY(WORD), /* MEMORY DISPATCHING CONTROL 34500002 ELEMENT */ 34600002 3 MDCEMDCE CHAR(4) INIT('MDCE'), /* MDCE ACRONYM */ 34700002 3 MDCEACTV PTR(31) INIT(0), /* ACTIVE MDCB QUEUE */ 34800002 3 MDCEAVIL PTR(31) INIT(ADDR(MDCB)); /* AVAILABLE 34900002 MDCB QUEUE */ 35000002 DCL 35100002 1 MDCB(10) BDY(WORD), /* MEMORY DISPATCHING CONTROL 35200002 BLOCK */ 35300002 3 MDCBMDCB CHAR(4) INIT((DIM(MDCB))'MDCB'), /* MDCB 35400002 ACRONYM */ 35420002 3 MDCBNEXT PTR(31) INIT(ADDR(MDCB) + LENGTH(MDCB), 35500002 ADDR(MDCB) + 2*LENGTH(MDCB),ADDR(MDCB) + 3*LENGTH(MDCB), 35520002 ADDR(MDCB) + 4*LENGTH(MDCB),ADDR(MDCB) + 5*LENGTH(MDCB), 35524002 ADDR(MDCB) + 6*LENGTH(MDCB),ADDR(MDCB) + 7*LENGTH(MDCB), 35528002 ADDR(MDCB) + 8*LENGTH(MDCB),ADDR(MDCB) + 9*LENGTH(MDCB), 35532002 0), /* ADDRESS OF NEXT MDCB */ 35540002 3 MDCBPSW CHAR(8) INIT((DIM(MDCB))'00'X), /* PSW AT TIME 35600002 OF INTERRUPT */ 35700002 3 MDCBGRS BDY(WORD) CHAR(64) INIT((DIM(MDCB))'00'X), /* 36000002 GENERAL REGISTERS */ 36100002 3 MDCBSTOR PTR(31) INIT((DIM(MDCB))0), /* CONTENTS OF 37700002 CONTROL REGISTER 1 */ 37800002 3 MDCBPI FIXED(15) INIT((DIM(MDCB))0), /* PROGRAM 37900002 INTERRUPT CODE */ 38000002 3 MDCBFLGS BIT(8) INIT((DIM(MDCB))0), /* MDCB FLAGS */ 38100002 5 MDCBASMI BIT(1), /* ASM FUNCTION STATUS */ 38200002 5 MDCBDUMP BIT(1), /* DUMP REQUEST STATUS */ 38250002 5 * BIT(6), /* RESERVED */ 38300002 3 * BIT(8) INIT((DIM(MDCB))0); /* RESERVED */ 38400002 38500002 %PSWCOM:; 38600002 DCL 38620002 1 PSW BASED, /* OS/VS PSW (S/370 EC MODE) */ 38640002 2 PSWSM CHAR(1), /* SYSTEM MASK */ 38644002 3 * BIT(1), 38664002 3 PSWPER BIT(1), /* PROGRAM EVENT RECORDING */ 38684002 3 * BIT(1), 38688002 3 * BIT(1), 38692002 3 * BIT(1), 38696002 3 PSWDAT BIT(1), /* DYNAMIC ADDRESS TRANSLATION */ 38696802 3 PSWIO BIT(1), /* INPUT / OUTPUT */ 38697602 3 PSWXTRNL BIT(1), /* EXTERNAL */ 38698402 2 * CHAR(1), 38699202 3 PSWKEY BIT(4), /* PROTECTION KEY */ 38699302 3 PSWMODE BIT(1), /* EXTENDED CONTROL MODE */ 38699402 3 PSWMCH BIT(1), /* MACHINE CHECK MASK */ 38699502 3 PSWAIT BIT(1), /* WAIT STATE */ 38699602 3 PSWPRBLM BIT(1), /* PROBLEM STATE */ 38699702 2 PSWCCPM CHAR(1), 38699802 3 * BIT(2), /* UNDEFINED */ 38699902 3 * BIT(2), /* CONDITION CODE */ 38733202 3 PSWFPO BIT(1), /* FIXED POINT OVERFLOW */ 38753202 3 PSWDO BIT(1), /* DIVIDE OVERFLOW */ 38754002 3 PSWEU BIT(1), /* EXPONENT UNDERFLOW */ 38757202 3 PSWSIG BIT(1), /* SIGNIFICANCE */ 38761202 2 * CHAR(1), 38765202 3 PSWSP BIT(1), /* SEGMENT PROTECTION */ 38766002 2 PSWIA PTR(31), /* INSTRUCTION ADDRESS */ 38766102 2 PSWEND CHAR(0); /* END OF PSW */ 38766202 DCL 38766302 PTRTREAL PTR(31) CONSTANT(30712); /* PTRT LOCATION X'77F8' */ 38773302 DCL 38780302 1 PTRT BASED(PTRTREAL), /* PTRT DEFINITION */ 38787302 3 PTRTPTRT CHAR(4), /* EBCDIC ACRONYM */ 38794302 3 PTRTLGID CHAR(4), /* LOGICAL GROUP FOR MEMORY */ 38801302 3 PTRTRS (NUMSEG) PTR(31), /* SEGMENT TABLE SECTION */ 38811002 3 PTRTVS (NUMSEG) PTR(31); /* VIRTUAL ADDR SECTION */ 38831002 DCL 38855602 PTRTRSA PTR(31) BASED; /* REAL STORAGE ADDRESS OF PAGE 38900002 TABLE */ 39000002 DCL 39100002 PTRTVSA PTR(31) BASED(ADDR(PTRTRSA)+NUMSEG*LENGTH(PTRTRSA)); 39240002 /* VIRTUAL ADDR OF PAGE TABLE */ 39260002 DCL 39300002 1 RCB BDY(WORD) BASED, /* RECOVERY CONTROL BLOCK */ 39400002 3 RCBNEXT PTR(31), /* NEXT HIGHER RCB */ 39500002 3 RCBSTOR PTR(31), /* CONTROL REGISTER 1 FOR EXIT */ 39600002 3 RCBSAVE PTR(31), /* ADDRESS OF RECOVERY ROUTINE 39700002 REGISTER SAVE AREA */ 39800002 3 RCBEXIT PTR(31), /* ADDRESS OF RECOVERY ROUTINE */ 39900002 3 RCBBASE PTR(31); /* BASE ADDRESS OF RECOVERY 40000002 ROUTINE */ 40100002 %IF DEBUG ^= 'YES' %THEN /* DEBUG AREAS TO BE INCLUDED */ 40120002 %GOTO NODEBUG; /* NO - SKIP DEBUG AREAS */ 40140002 DCL 40160002 1 DEBUGLSD LOCATION(3286), /* LOW CORE DEBUG COUNTERS */ 40180002 3 PFTRCLM FIXED(15), /* NUMBER OF PAGES RECLAIMED 40180102 FROM REAL STORAGE */ 40180202 3 PFBUFWAT FIXED(15), /* NUMBER OF TIMES WAT ENTERED FROM 40180802 BUF TO WAIT FOR OUTPUT BUFFERS*/ 40184802 3 PFTAPCPU FIXED(15), /* NUMBER OF TIMES SWITCHED CPUS */ 40188802 3 PFSIODA FIXED(15), /* NUMBER OF TIMES SIO ENTERED FOR 40192802 I/O TO D.A. */ 40196802 3 PFSIOWK FIXED(15), /* NUMBER OF TIMES SIO ENTERED FOR 40197602 I/O TO WORKFILE */ 40198402 3 PFSIOOUT FIXED(15), /* NUMBER OF TIMES SIO ENTERED FOR 40199202 I/O TO OUTPUT */ 40199302 3 PFSIOPCI FIXED(15), /* NUMBER OF TIMES SIO QUEUED PCI 40199402 CHANNEL PROGRAM TO OUTPUT */ 40199502 3 PFSIOWAT FIXED(15), /* NUMBER OF TIMES WAT ENTERED FROM 40199602 SIO TO WAIT (CHANNEL PROGRAMS)*/ 40199702 3 PFWATENW FIXED(15), /* NUMBER OF TIMES WAT ENTERED 40199802 ENABLED WAIT STATE */ 40199902 3 PFWATEN FIXED(15), /* NUMBER OF TIMES WAT ENABLED */ 40219902 3 PFWATDE FIXED(15), /* NUMBER OF TIMES WAT RECEIVED 40239902 DEVICE END FOR CHAIN */ 40259902 3 PFWATOIP FIXED(15), /* NUMBER OF TIMES WAT PROCESSED 40263902 INTERRUPTS OTHER THAN REQUEST */ 40264702 3 PFIOIRST FIXED(15); /* NUMBER OF TIMES IOI RESTARTED 40265502 OUTPUT I/O FOLLOWING DEV END */ 40266302 40274702 %NODEBUG:; 40283202 DCL 40291602 1 SADMPLSD LOCATION(3312), /* SADMP LOW CORE STORAGE 40300002 DEFINITIONS */ 40400002 3 PSWSADMP CHAR(8), /* EBCDIC IDENTIFIER */ 40500002 3 SVIRPSW CHAR(8) BDY(DWORD), /* RETURN PSW TO AMDSASVI 40600002 FOLLOWING MEMORY SWITCH */ 40604002 3 AUDPSW CHAR(8) BDY(DWORD), /* AMDSAAUD PSW TO GIVE 40700002 CONTROL TO RCB EXIT */ 40720002 3 SAVEDUMP CHAR(8), /* EBCDIC IDENTIFIER OF SAVE 41400002 AREAS */ 41500002 3 LOWGRS CHAR(64), /* SAVE AREA FOR GENERAL 41600002 REGISTERS ACROSS CPU-CPU 41700002 COMMUNICATIONS */ 41800002 3 LOWCRS CHAR(64), /* SAVE AREA FOR CONTROL 41900002 REGISTERS ACROSS CPU-CPU 42000002 COMMUNICATIONS */ 42100002 3 SVINAME CHAR(4), /* SAVE AREA ID */ 42200002 3 SVISAVE CHAR(100), /* REGISTER SAVE AREA */ 42300002 3 PGINAME CHAR(4), /* SAVE AREA ID */ 42400002 3 PGISAVE CHAR(100), /* REGISTER SAVE AREA */ 42500002 3 IOINAME CHAR(4), /* SAVE AREA ID */ 42600002 3 IOISAVE CHAR(100), /* REGISTER SAVE AREA */ 42700002 3 AUDNAME CHAR(4), /* SAVE AREA ID */ 42800002 3 AUDSAVE CHAR(100), /* REGISTER SAVE AREA */ 42900002 3 FRMNAME CHAR(4), /* SAVE AREA ID */ 43000002 3 FRMSAVE CHAR(100), /* REGISTER SAVE AREA */ 43100002 3 GTMNAME CHAR(4), /* SAVE AREA ID */ 43200002 3 GTMSAVE CHAR(100); /* REGISTER SAVE AREA */ 43300002 %IF RMKINIT ^= '' %THEN /* INITIALIZATION REQUIRED */ 43400002 %GOTO VCTINIT; /* YES - SKIP BASED CODE */ 43500002 DCL 43600002 1 VCCT BDY(WORD) BASED(VCCTREG), /* VIRTUAL COMMON 43700002 COMMUNICATION TABLE */ 43800002 3 VCTVCT CHAR(4), /* VCCT ACRONYM */ 43900002 3 VCTRCB PTR(31), /* RCB QUEUE POINTER */ 44000002 3 VCTRECSN BIT(8), /* RECURSION FLAGS */ 44100002 5 VCTPGIR BIT(1), /* PROGRAM INTERRUPT RECURSION 44200002 INVALID */ 44300002 5 VCTUPDR BIT(1), /* PROGRAM INTERRUPT RECURSION IN 44400002 AMDSAUPD INVALID */ 44500002 5 VCTEXIR BIT(1), /* RECURSION THROUGH TERMINATION 44600002 ROUTINE INVALID */ 44700002 5 VCTRSMR BIT(1), /* RECURSION THROUGH AMDSARSM 44720002 INVALID */ 44740002 5 * BIT(4), /* RESERVED */ 44800002 3 VCTFLGS BIT(8), /* FLAGS */ 44900002 5 VCTSADMP BIT(1), /* RECOVERY DUMP REQUESTED */ 45000002 5 VCTMEMIN BIT(1), /* MEMORY IS IN STORAGE */ 45100002 5 VCTASMIC BIT(1), /* ASM IN CONTROL */ 45200002 5 VCTSARTB BIT(1), /* BAD SART @Z40WI3F*/ 45220000 5 VCTLRCLM BIT(1), /* NO RECLAIM FOR LOCAL MEMORY */ 45240002 5 VCTNOI22 BIT(1), /* INHIBIT I22 MSG @YM5001 */ 45300002 5 * BIT(2), /* RESERVED @YM5001 */ 45350002 3 VCTRECVA FIXED(16), /* SADMP RECOVERY DUMP ASID */ 45400002 3 VCTMDCE PTR(31), /* MDCE PTR */ 45500002 3 VCTSTOR PTR(31), /* SEGMENT TABLE ORIGIN FOR 45600002 MEMORY SWITCH */ 45700002 3 VCTDSCE PTR(31), /* DSCE PTR */ 45800002 3 VCTBCTH PTR(31), /* BCTH PTR */ 45900002 3 VCTBCTC PTR(31), /* CURRENT BCT PTR */ 46000002 3 VCTIODB PTR(31), /* IODB PTR */ 46100002 3 VCTARB PTR(31), /* ARB PTR */ 46200002 3 VCTSUBPL PTR(31), /* SUBPOOL DUMP LIST POINTER */ 46300002 3 VCTWKHI PTR(8), /* NUMBER OF RECORDS ON WORKFILE */ 46400002 3 VCTWKC PTR(8), /* CURRENT POSITION OF WORKFILE */ 46500002 3 VCTCPUC FIXED(15), /* CURRENT CPU ADDRESS */ 46600002 3 VCTASCB PTR(31), /* CURRENT ASCB ADDRESS IN 46700002 PROCESS */ 46800002 3 * PTR(31), /* UNUSED @Z40WI3F*/ 46820040 3 VCTPTRT PTR(31), /* ADDR OF PTRT */ 46900002 3 VCTASID FIXED(16), /* CURRENT ASID */ 47000002 3 VCTAUDIT FIXED(15), /* ERROR CODE FOR INVOKING 47200002 AMDSAAUD FOR A DUMP */ 47220002 3 VCTCBID CHAR(8), /* SYSTEM CONTROL BLOCK IN USE */ 47300002 5 * CHAR(7), 47320002 5 VCTCBIDN PTR(8), /* CONTROL BLOCK ID */ 47340002 3 VCTJBNME CHAR(8), /* JOBNAME CURRENTLY BEING 47400002 PROCESSED */ 47500002 3 VCTCBADR PTR(31), /* ADDRESS OF SYSTEM CONTROL 47600002 BLOCK IN USE */ 47700002 3 VCTLPA PTR(31), /* ADDRESS OF LPA FOR RELOCATION */ 47800002 3 VCTPGT PTR(31), /* ADDRESS OF SADMP PAGE TABLE */ 47900002 3 VCTSVCTB PTR(31), /* ADDRESS OF SVCSADMP TABLE */ 48000002 3 VCTCPOUT PTR(31), /* ADDRESS OF CURRENT OUTPUT 48020002 CHANNEL PROGRAM */ 48040002 3 VCTEXTRA FIXED(15), /* NUMBER OF PAGES USED ABOVE 1 48060002 SEGMENT */ 48064002 3 * FIXED(15), /* RESERVED */ 48080002 3 VCTCCTV PTR(31), /* VIRTUAL ADDRESS OF CCT */ 48100002 3 VCTVCCTV PTR(31); /* VIRTUAL ADDRESS OF VCCT */ 48200002 %GOTO COMMON; /* SKIP INITIALIZATION CODE */ 48300002 48400002 %VCTINIT:; 48500002 DCL 48600002 1 VCCT BDY(WORD) EXTERNAL LOCAL, /* VIRTUAL COMMON 48700002 COMMUNICATION TABLE */ 48800002 3 VCTVCT CHAR(4) INIT('VCCT'), /* VCCT ACRONYM */ 48900002 3 VCTRCB PTR(31) INIT(0), /* RCB QUEUE POINTER */ 49000002 3 VCTRECSN BIT(8) INIT('00'X), /* RECURSION FLAGS */ 49100002 5 VCTPGIR BIT(1), /* PROGRAM INTERRUPT RECURSION 49200002 INVALID */ 49300002 5 VCTUPDR BIT(1), /* PROGRAM INTERRUPT RECURSION IN 49400002 AMDSAUPD INVALID */ 49500002 5 VCTEXIR BIT(1), /* RECURSION THROUGH TERMINATION 49600002 ROUTINE INVALID */ 49700002 5 VCTRSMR BIT(1), /* RECURSION THROUGH AMDSARSM 49720002 INVALID */ 49740002 5 * BIT(4), /* RESERVED */ 49800002 3 VCTFLGS BIT(8) INIT('00'X), /* FLAGS */ 49900002 5 VCTSADMP BIT(1), /* RECOVERY DUMP REQUESTED */ 50000002 5 VCTMEMIN BIT(1), /* MEMORY IS IN STORAGE */ 50100002 5 VCTASMIC BIT(1), /* ASM IN CONTROL */ 50200002 5 VCTSARTB BIT(1), /* BAD SART @Z40WI3F*/ 50220000 5 VCTLRCLM BIT(1), /* NO RECLAIM FOR LOCAL MEMORY */ 50240002 5 VCTNTERM BIT(1), /* NORMAL TERMINATION */ 50270002 5 * BIT(2) , /* RESERVED */ 50300002 3 VCTRECVA FIXED(16) INIT('FFFD'X), /* SADMP RECOVERY 50400002 DUMP ASID */ 50500002 3 VCTMDCE PTR(31) INIT(ADDR(MDCE)), /* MDCE PTR */ 50600002 3 VCTSTOR PTR(31) INIT(0), /* SEGMENT TABLE ORIGIN FOR 50700002 MEMORY SWITCH */ 50800002 3 VCTDSCE PTR(31) INIT(ADDR(DSCE)), /* DSCE PTR */ 50900002 3 VCTBCTH PTR(31) INIT(ADDR(BCTH)), /* BCTH PTR */ 51000002 3 VCTBCTC PTR(31) INIT(ADDR(BCTI)), /* CURRENT BCT PTR */ 51100002 3 VCTIODB PTR(31) INIT(ADDR(IODBI)), /* IODB PTR */ 51200002 3 VCTARB PTR(31) INIT(ADDR(ARBH)), /* ARB PTR */ 51300002 3 VCTSUBPL PTR(31) INIT(ADDR(SDLH)), /* SUBPOOL DUMP 51400002 LIST POINTER */ 51500002 3 VCTWKHI PTR(8) INIT(0), /* NUMBER OF RECORDS ON 51600002 WORKFILE */ 51700002 3 VCTWKC PTR(8) INIT(0), /* CURRENT POSITION OF 51800002 WORKFILE */ 51900002 3 VCTCPUC FIXED(15) INIT(0), /* CURRENT CPU ADDRESS */ 52000002 3 VCTASCB PTR(31) INIT(0), /* CURRENT ASCB ADDRESS IN 52100002 PROCESS */ 52200002 3 * PTR(31), /* UNUSED @Z40WI3F*/ 52220040 3 VCTPTRT PTR(31) INIT(PTRTREAL), /* ADDR OF PTRT */ 52300002 3 VCTASID FIXED(16) INIT(0), /* CURRENT ASID */ 52400002 3 VCTAUDIT FIXED(15) INIT(0), /* ERROR CODE FOR INVOKING 52500002 AMDSAAUD FOR A DUMP */ 52600002 3 VCTCBID CHAR(8) INIT(' '), /* SYSTEM CONTROL BLOCK IN 52700002 USE */ 52800002 5 * CHAR(7), 52820002 5 VCTCBIDN PTR(8), /* CONTROL BLOCK ID */ 52840002 3 VCTJBNME CHAR(8) INIT(' '), /* JOBNAME CURRENTLY 52900002 BEING PROCESSED */ 53000002 3 VCTCBADR PTR(31) INIT(0), /* ADDRESS OF SYSTEM 53100002 CONTROL BLOCK IN USE */ 53200002 3 VCTLPA PTR(31) INIT(0), /* ADDRESS OF LPA FOR 53300002 RELOCATION */ 53400002 3 VCTPGT PTR(31) INIT(ADDR(SADMPPGT)), /* ADDRESS OF 53500002 SADMP PAGE TABLE */ 53600002 3 VCTSVCTB PTR(31) INIT(ADDR(SVCSADMP)), /* ADDRESS OF 53700002 SVCSADMP TABLE */ 53800002 3 VCTCPOUT PTR(31) INIT(ADDR(OUTCCW)), /* ADDRESS OF 53820002 CURRENT OUTPUT CHANNEL PROGRAM*/ 53840002 3 VCTEXTRA FIXED(15) INIT(0), /* NUMBER OF PAGES USED 53860002 ABOVE 1 SEGMENT */ 53864002 3 * FIXED(15) INIT(0), /* RESERVED */ 53880002 3 VCTCCTV PTR(31) INIT(0), /* VIRTUAL ADDRESS OF CCT */ 53900002 3 VCTVCCTV PTR(31) INIT(0); /* VIRTUAL ADDRESS OF VCCT */ 54000002 54100002 %COMMON:; 54200002 DCL 54300002 1 SDL BASED, /* SUBPOOL DUMP LIST */ 54400002 3 SDLNUM PTR(8), /* NUMBER OF ENTRIES */ 54500002 3 SDLSPN PTR(8); /* SUBPOOL NUMBER TO BE DUMPED */ 54600002 54700002 /*****************************************************************/ 54800002 /* */ 54900002 /* REGISTER DECLARES */ 55000002 /* */ 55100002 /*****************************************************************/ 55200002 55300002 DCL 55400002 RETREG REG(14) PTR(31); /* RETURN REGISTER */ 55500002 DCL 55600002 RETCODE REG(15) FIXED(31); /* RETURN CODE REGISTER */ 55700002 DCL 55800002 BASEREG REG(11) PTR(31) RESTRICTED; /* BASE REGISTER */ 55900002 DCL 56000002 VCCTREG REG(12) PTR(31) RESTRICTED; /* VCCT ADDRESS */ 56100002 DCL 56200002 R0 REG(0) PTR(31); 56300002 DCL 56400002 R1 REG(1) PTR(31); 56500002 DCL 56600002 R2 REG(2) PTR(31); 56700002 DCL 56800002 R3 REG(3) PTR(31); 56900002 DCL 57000002 R4 REG(4) PTR(31); 57100002 DCL 57200002 R5 REG(5) PTR(31); 57300002 DCL 57400002 R6 REG(6) PTR(31); 57500002 DCL 57600002 R7 REG(7) PTR(31); 57700002 DCL 57800002 R8 REG(8) PTR(31); 57900002 DCL 58000002 R9 REG(9) PTR(31); 58100002 DCL 58200002 R10 REG(10) PTR(31); 58300002 DCL 58400002 R11 REG(11) PTR(31); 58500002 DCL 58600002 R12 REG(12) PTR(31); 58700002 DCL 58800002 R13 REG(13) PTR(31); 58900002 DCL 59000002 R14 REG(14) PTR(31); 59100002 DCL 59200002 R15 REG(15) PTR(31); 59300002 59400002 /*****************************************************************/ 59500002 /* */ 59600002 /* SAVE AREA FORMATS */ 59700002 /* */ 59800002 /*****************************************************************/ 59900002 60000002 DCL 60100002 1 REGLOCAL BDY(WORD) BASED, /* FORMAT OF LOW CORE SAVE 60200002 AREAS */ 60300002 3 REGL0 PTR(31), 60400002 3 REGL1 PTR(31), 60500002 3 REGL2 PTR(31), 60600002 3 REGL3 PTR(31), 60700002 3 REGL4 PTR(31), 60800002 3 REGL5 PTR(31), 60900002 3 REGL6 PTR(31), 61000002 3 REGL7 PTR(31), 61100002 3 REGL8 PTR(31), 61200002 3 REGL9 PTR(31), 61300002 3 REGL10 PTR(31), 61400002 3 REGL11 PTR(31), 61500002 3 REGL12 PTR(31), 61600002 3 REGL13 PTR(31), 61700002 3 REGL14 PTR(31), 61800002 3 REGL15 PTR(31); 61900002 DCL 62000002 1 SAVEFORM BDY(WORD) BASED(R13), /* FORMAT OF STANDARD SAVE 62100002 AREA */ 62200002 3 SAVEID CHAR(1), 62300002 3 SAVENAME CHAR(3), /* MODULE NAME - LAST 3 CHARS */ 62400002 3 SAVEBACK PTR(31), /* PREVIOUS SAVE AREA */ 62500002 3 SAVENEXT PTR(31), /* NEXT SAVE AREA */ 62600002 3 SAVER14 PTR(31), 62700002 3 SAVER15 PTR(31), 62800002 3 SAVER0 PTR(31), 62900002 3 SAVER1 PTR(31), 63000002 3 SAVER2 PTR(31), 63100002 3 SAVER3 PTR(31), 63200002 3 SAVER4 PTR(31), 63300002 3 SAVER5 PTR(31), 63400002 3 SAVER6 PTR(31), 63500002 3 SAVER7 PTR(31), 63600002 3 SAVER8 PTR(31), 63700002 3 SAVER9 PTR(31), 63800002 3 SAVER10 PTR(31), 63900002 3 SAVER11 PTR(31), 64000002 3 SAVER12 PTR(31); 64100002 64200002 /*****************************************************************/ 64300002 /* */ 64400002 /* MISCELLANEOUS CONSTANTS */ 64500002 /* */ 64600002 /*****************************************************************/ 64700002 64800002 DCL 64900002 CCTADDR PTR(31) CONSTANT(28672); /* ADDR OF CCT ('7000'X) */ 65000002 DCL 65100002 PGEMASK BIT(8) CONSTANT('01'X); /* SYSTEM MASK-ENABLED FOR 65200002 EXTERNAL INTERRUPTS ONLY, DAT 65300002 OFF */ 65400002 DCL 65500002 DATMASK BIT(8) CONSTANT('05'X); /* SYSTEM MASK-ENABLED FOR 65600002 EXTERNAL INTERRUPTS ONLY, DAT 65700002 ON */ 65800002 DCL 65820002 NUMSEG FIXED(31) CONSTANT(256); /* NUMBER OF SEGMENTS IN 65840002 SYSTEM */ 65860002 DCL 65900002 ON BIT(1) CONSTANT('1'B); /* SWITCH ON */ 66000002 DCL 66100002 OFF BIT(1) CONSTANT('0'B); /* SWITCH OFF */ 66200002 66300002 /*****************************************************************/ 66400002 /* */ 66500002 /* SVC NUMBERS */ 66600002 /* */ 66700002 /*****************************************************************/ 66800002 66900002 DCL 67000002 SIOSVC FIXED(15) CONSTANT(0); /* SVC NUMBER FOR AMDSASIO */ 67100002 DCL 67300002 WATSVC FIXED(15) CONSTANT(1); /* SVC NUMBER FOR AMDSAWAT */ 67400002 DCL 67500002 TAPSVC FIXED(15) CONSTANT(2); /* SVC NUMBER FOR AMDSATAP */ 67600002 DCL 67700002 CONSVC FIXED(15) CONSTANT(3); /* SVC NUMBER FOR AMDSACON */ 67800002 DCL 67900002 GTMSVC FIXED(15) CONSTANT(4); /* SVC NUMBER FOR AMDSAGTM */ 68000002 DCL 68100002 FRMSVC FIXED(15) CONSTANT(5); /* SVC NUMBER FOR AMDSAFRM */ 68200002 DCL 68300002 ASMSVC FIXED(15) CONSTANT(6); /* SVC NUMBER FOR AMDSAASM */ 68400002 DCL 68500002 ERMSVC FIXED(15) CONSTANT(7); /* SVC NUMBER FOR AMDSAERM */ 68600002 DCL 68700002 SINSVC FIXED(15) CONSTANT(8); /* SVC NUMBER FOR AMDSASIN */ 68800002 DCL 68900002 UPDSVC FIXED(15) CONSTANT(9); /* SVC NUMBER FOR AMDSAUPD */ 69000002 DCL 69100002 TERSVC FIXED(15) CONSTANT(10); /* SVC NUMBER FOR AMDSATER */ 69200002 DCL 69300002 CSASVC FIXED(15) CONSTANT(11); /* SVC NUMBER FOR AMDSACSA */ 69400002 DCL 69500002 AIDSVC FIXED(15) CONSTANT(12); /* SVC NUMBER FOR AMDSAAID */ 69600002 DCL 69700002 AUDSVC FIXED(15) CONSTANT(13); /* SVC NUMBER FOR AMDSAAUD */ 69800002 DCL 69900002 BUFSVC FIXED(15) CONSTANT(14); /* SVC NUMBER FOR AMDSABUF */ 70000002 DCL 70100002 DERSVC FIXED(15) CONSTANT(15); /* SVC NUMBER FOR AMDSADER */ 70200002 DCL 70300002 ARDSVC FIXED(15) CONSTANT(16); /* SVC NUMBER FOR AMDSAARD */ 70400002 DCL 70500002 MDMSVC FIXED(15) CONSTANT(17); /* SVC NUMBER FOR AMDSAMDM */ 70600002 DCL 70700002 RSMSVC FIXED(15) CONSTANT(18); /* SVC NUMBER FOR AMDSARSM */ 70800002 DCL 70900002 AMRSVC FIXED(15) CONSTANT(19); /* SVC NUMBER FOR AMDSAAMR */ 71000002 DCL 71100002 ERBSVC FIXED(15) CONSTANT(20); /* SVC NUMBER FOR AMDSAERB */ 71200002 DCL 71300002 ERPSVC FIXED(15) CONSTANT(21); /* SVC NUMBER FOR AMDSAERP */ 71400002 DCL 71500002 GTFSVC FIXED(15) CONSTANT(22); /* SVC NUMBER FOR AMDSAGTF */ 71600002 DCL 71700002 ERISVC FIXED(15) CONSTANT(23); /* SVC NUMBER FOR AMDSAERI */ 71800002 DCL 71900002 UCBSVC FIXED(15) CONSTANT(24); /* SVC NUMBER FOR AMDSAUCB */ 72000002 DCL 72100002 VCKSVC FIXED(15) CONSTANT(25); /* SVC NUMBER FOR AMDSAVCK */ 72200002 DCL 72300002 SPQSVC FIXED(15) CONSTANT(26); /* SVC NUMBER FOR AMDSASPQ */ 72400002 DCL 72500002 IOBSVC FIXED(15) CONSTANT(27); /* SVC NUMBER FOR AMDSAIOB */ 72600002 DCL 72700002 BINSVC FIXED(15) CONSTANT(28); /* SVC NUMBER FOR AMDSABIN */ 72800002 DCL 72900002 INRSVC FIXED(15) CONSTANT(29); /* SVC NUMBER FOR AMDSAINR */ 73000002 DCL 73100002 VRTSVC FIXED(15) CONSTANT(30); /* SVC NUMBER FOR AMDSAVRT */ 73200002 73700002 /*****************************************************************/ 73800002 /* */ 73900002 /* MESSAGE IDS */ 74000002 /* */ 74100002 /*****************************************************************/ 74200002 74300002 DCL 74600002 AMD002I BIT(8) CONSTANT('02'X); /* REFERENCE FOR MESSAGE */ 74700002 DCL 74800002 AMD004A BIT(8) CONSTANT('04'X); /* REFERENCE FOR MESSAGE */ 74900002 DCL 75000002 AMD010I BIT(8) CONSTANT('0A'X); /* REFERENCE FOR MESSAGE */ 75100002 DCL 75200002 AMD012D BIT(8) CONSTANT('0C'X); /* REFERENCE FOR MESSAGE */ 75300002 DCL 75400002 AMD014A BIT(8) CONSTANT('0E'X); /* REFERENCE FOR MESSAGE */ 75500002 DCL 75520002 AMD015I BIT(8) CONSTANT('0F'X); /* REFERENCE FOR MESSAGE */ 75540002 DCL 75600002 AMD016I BIT(8) CONSTANT('10'X); /* REFERENCE FOR MESSAGE */ 75630002 DCL 75660002 AMD017I BIT(8) CONSTANT('11'X); /* REFERENCE FOR MESSAGE */ 75700002 DCL 75800002 AMD018I BIT(8) CONSTANT('12'X); /* REFERENCE FOR MESSAGE */ 75900002 DCL 76000002 AMD019A BIT(8) CONSTANT('13'X); /* REFERENCE FOR MESSAGE */ 76100002 DCL 76200002 AMD020A BIT(8) CONSTANT('14'X); /* REFERENCE FOR MESSAGE */ 76300002 DCL 76400002 AMD022I BIT(8) CONSTANT('16'X); /* REFERENCE FOR MESSAGE */ 76500002 DCL 76600002 AMD023I BIT(8) CONSTANT('17'X); /* REFERENCE FOR MESSAGE */ 76700002 DCL 76800002 AMD025I BIT(8) CONSTANT('19'X); /* REFERENCE FOR MESSAGE */ 76900002 DCL 76900602 AMD029D BIT(8) CONSTANT('1D'X); /* REFERENCE FOR MESSAGE */ 76901202 DCL 76902002 AMD030I BIT(8) CONSTANT('1E'X); /* REFERENCE FOR MESSAGE */ 76902402 DCL 76904002 AMD031I BIT(8) CONSTANT('1F'X); /* REFERENCE FOR MESSAGE */ 76908002 DCL 76920002 AMD032I BIT(8) CONSTANT('20'X); /* REFERENCE FOR MESSAGE */ 76940002 DCL 77000002 AMD033I BIT(8) CONSTANT('21'X); /* REFERENCE FOR MESSAGE */ 77100002 DCL 77200002 AMD034I BIT(8) CONSTANT('22'X); /* REFERENCE FOR MESSAGE */ 77300002 DCL 78100002 MSGCR FIXED(8) CONSTANT(0); /* COMMAND REJECT ID */ 78120002 DCL 78200002 MSGIR FIXED(8) CONSTANT(1); /* INTV REQUIRED ID */ 78220002 DCL 78300002 MSGBOC FIXED(8) CONSTANT(2); /* BUS OUT CK ID */ 78320002 DCL 78400002 MSGEC FIXED(8) CONSTANT(3); /* EQUIPMENT CK ID */ 78420002 DCL 78500002 MSGDC FIXED(8) CONSTANT(4); /* DATA CK ID */ 78520002 DCL 78600002 MSGOR FIXED(8) CONSTANT(5); /* OVERRUN ID */ 78620002 DCL 78700002 MSGTCC FIXED(8) CONSTANT(6); /* TCC ID */ 78720002 DCL 78800002 MSGSCK FIXED(8) CONSTANT(7); /* SEEK CK ID */ 78820002 DCL 78900002 MSGPE FIXED(8) CONSTANT(8); /* PERMANENT ERR ID */ 78920002 DCL 79000002 MSGEOC FIXED(8) CONSTANT(10); /* END OF CYL ID */ 79120002 DCL 79200002 MSGEDP FIXED(8) CONSTANT(11); /* ENV DATA ID */ 79220002 DCL 79300002 MSGNRF FIXED(8) CONSTANT(12); /* NO RCD FOUND ID */ 79320002 DCL 79400002 MSGFP FIXED(8) CONSTANT(13); /* FILE PROT ID */ 79420002 DCL 79500002 MSGOI FIXED(8) CONSTANT(14); /* OPER INCOMP ID */ 79520002 DCL 79600002 MSGMAM FIXED(8) CONSTANT(15); /* MISS ADDR ID */ 79620002 DCL 79700002 MSGATTN FIXED(8) CONSTANT(16); /* ATTENTION ID */ 79720002 DCL 79800002 MSGSTM FIXED(8) CONSTANT(17); /* STATUS MOD ID */ 79820002 DCL 79900002 MSGCUE FIXED(8) CONSTANT(18); /* CONTROL UNIT END ID */ 79920002 DCL 80000002 MSGBUSY FIXED(8) CONSTANT(19); /* BUSY ID */ 80020002 DCL 80100002 MSGUE FIXED(8) CONSTANT(20); /* UNIT EXCEPTION ID */ 80120002 DCL 80200002 MSGPCI FIXED(8) CONSTANT(21); /* PCI ID */ 80220002 DCL 80300002 MSGIL FIXED(8) CONSTANT(22); /* INCORRECT LNG ID */ 80320002 DCL 80400002 MSGPCK FIXED(8) CONSTANT(23); /* PROG CK ID */ 80420002 DCL 80500002 MSGPTK FIXED(8) CONSTANT(24); /* PROT CK ID */ 80520002 DCL 80600002 MSGCDC FIXED(8) CONSTANT(25); /* CHAN DATA CK ID */ 80620002 DCL 80700002 MSGCCC FIXED(8) CONSTANT(26); /* CHAN CTL CK ID */ 80720002 DCL 80800002 MSGICC FIXED(8) CONSTANT(27); /* ICC ID */ 80820002 DCL 80900002 MSGCC FIXED(8) CONSTANT(28); /* CHAINING CK ID */ 80920002 DCL 81000002 MSGUNK FIXED(8) CONSTANT(29); /* UNKNOWN ERR ID */ 81020002 DCL 81100002 MSGERS FIXED(8) CONSTANT(30); /* ERR ON SENSE ID */ 81120002 DCL 81200002 MSGERR FIXED(8) CONSTANT(31); /* ERR IN ERR REC ID */ 81220002 DCL 81300002 MSGBLF FIXED(8) CONSTANT(32); /* BUFFERED LOG FULL ID */ 81320002 DCL 81340002 MSGITF FIXED(8) CONSTANT(33); /* INVALID TRACK FORMAT ID */ 81360002 DCL 81400002 MSGLP FIXED(8) CONSTANT(34); /* LOAD POINT ID */ 81420002 DCL 81500002 MSGDCC FIXED(8) CONSTANT(35); /* DATA CONV CK ID */ 81520002 DCL 81600002 MSGNC FIXED(8) CONSTANT(36); /* NOT CAPABLE ID */ 81620002 DCL 81700002 MSGPEID FIXED(8) CONSTANT(37); /* PEID BURST CK ID */ 81800002 82000002 /*****************************************************************/ 82100002 /* */ 82200002 /* CONTROL BLOCK IDS FOR VALIDITY CHECKING */ 82300002 /* */ 82400002 /*****************************************************************/ 82500002 82600002 DCL 82700002 VSPCTID PTR(8) CONSTANT(1); /* SPCT ID @Z40WI3F*/ 82800040 DCL 82900002 VASCBID PTR(8) CONSTANT(2); /* ASCB ID */ 83000002 DCL 83200002 VASXBID PTR(8) CONSTANT(3); /* ASXB ID */ 83300002 DCL 83400002 VASVTID PTR(8) CONSTANT(4); /* ASVT ID */ 83500002 DCL 83600002 VCVTID PTR(8) CONSTANT(5); /* CVT ID */ 83700002 DCL 83800002 VEDBID PTR(8) CONSTANT(6); /* EDB ID */ 83900002 DCL 84000002 VDQEID PTR(8) CONSTANT(7); /* DQE ID */ 84100002 DCL 84200002 VBCBID PTR(8) CONSTANT(8); /* GTFBCB ID */ 84300002 DCL 84400002 VMCCEID PTR(8) CONSTANT(9); /* MCCE ID */ 84500002 DCL 84600002 VMCQEID PTR(8) CONSTANT(10); /* MCQE ID */ 84700002 DCL 84800002 VSPQEID PTR(8) CONSTANT(11); /* SPQE ID */ 84900002 DCL 85000002 VPARTID PTR(8) CONSTANT(12); /* PART ID @Z40WI3F*/ 85100040 DCL 85200002 VSGTID PTR(8) CONSTANT(13); /* SEGMENT TABLE ID */ 85300002 DCL 85400002 VRSMHID PTR(8) CONSTANT(14); /* RSM HEADER ID */ 85500002 DCL 85600002 VLPMBID PTR(8) CONSTANT(15); /* LPMB ID */ 85700002 DCL 85800002 VUCBID PTR(8) CONSTANT(16); /* UCB ID */ 85820002 DCL 85900002 VASMVTID PTR(8) CONSTANT(17); /* ASMVT ID */ 86000002 DCL 86100002 VTCBID PTR(8) CONSTANT(18); /* TCB ID */ 86200002 DCL 86220002 VSARTID PTR(8) CONSTANT(19); /* SART ID @Z40WI3F*/ 86240040 DCL 86260002 VPVTID PTR(8) CONSTANT(20); /* PVT ID */ 86280002 86300002 /*****************************************************************/ 86400002 /* */ 86500002 /* SUPPORTED DEVICE TYPE IDENTIFIERS */ 86600002 /* */ 86700002 /*****************************************************************/ 86800002 86900002 DCL 87000002 DT2314 BIT(8) CONSTANT('08'X); /* 2314 */ 87100002 DCL 87200002 DT3330 BIT(8) CONSTANT('09'X); /* 3330 */ 87300002 DCL 87400002 DT33301 BIT(8) CONSTANT('0D'X); /* 3330-1 */ 87500002 DCL 87600002 DT23051 BIT(8) CONSTANT('06'X); /* 2305-1 */ 87700002 DCL 87800002 DT23052 BIT(8) CONSTANT('07'X); /* 2305-2 */ 87900002 DCL 88000002 DT3340 BIT(8) CONSTANT('0A'X); /* 3340 */ 88100002 DCL 88150000 DT3350 BIT(8) CONSTANT('0B'X); /* 3350 @Z30RSTA*/ 88200000