*COPY SVECTORS 00001000
PUSH PRINT 00001200
AIF ('&SYSPARM' NE 'SUP').SVE01 00001400
PRINT OFF,NOGEN 00001600
.SVE01 ANOP 00001800
SVECTORS DSECT 00002000
SPACE 1 00003000
*** SVECTORS - LOW CORE DEFINITIONS 00004000
* 00005000
* 0 +-----------------------------------------------+ 00006000
* | IPLPSW | 00007000
* 8 +-----------------------------------------------+ 00008000
* | IPLCCW1 | 00009000
* 10 +-----------------------------------------------+ 00010000
* | IPLCCW2 | 00011000
* 18 +-----------------------------------------------+ 00012000
* | OLDEXT | 00013000
* 20 +-----------------------------------------------+ 00014000
* | OLDSVC | 00015000
* 28 +-----------------------------------------------+ 00016000
* | OLDPROG | 00017000
* 30 +-----------------------------------------------+ 00018000
* | OLDMACH | 00019000
* 38 +-----------------------------------------------+ 00020000
* | OLDIO | 00021000
* 40 +-----------------------------------------------+ 00022000
* | CSW | 00023000
* 48 +-----------------------+-----------------------+ 00024000
* | CAW | | 00025000
* 50 +-----------------------+-----------------------+ 00026000
* | TIMER | | 00027000
* 58 +-----------------------+-----------------------+ 00028000
* | NEWEXT | 00029000
* 60 +-----------------------------------------------+ 00030000
* | NEWSVC | 00031000
* 68 +-----------------------------------------------+ 00032000
* | NEWPROG | 00033000
* 70 +-----------------------------------------------+ 00034000
* | NEWMACH | 00035000
* 78 +-----------------------------------------------+ 00036000
* | NEWIO | 00037000
* 80 +-----------------------------------------------+ 00038000
* 00039000
*** SVECTORS - LOW CORE DEFINITIONS 00040000
SPACE 1 00041000
IPLPSW DS D X'00040000',V(DMTINI) 00042000
IPLCCW1 DS D 00043000
IPLCCW2 DS D 00044000
SPACE 00045000
OLDEXT DS D 00046000
OLDSVC DS D 00047000
OLDPROG DS D 00048000
OLDMACH DS D 00049000
OLDIO DS D 00050000
SPACE 00051000
CSW DS D 00052000
CAW DS F 00053000
EJECT 00054000
DS F 00055000
TIMER DS F 4X'FF' 00056000
DS F 00057000
SPACE 00058000
NEWEXT DS D X'00040000',V(DMTEXT) 00059000
NEWSVC DS D X'00040000',V(DMTSVC) 00060000
NEWPROG DS D X'00040000',A(REXOUCH) 00061000
NEWMACH DS D X'00020000',A(OLDMACH) 00062000
NEWIO DS D X'00040000',V(DMTIOMIN) 00063000
EJECT 00064000
ORG SVECTORS+X'200' LEAVE ROOM FOR MACHINE EXTENSIONS 00065000
SPACE 1 00066000
*** SVECTORS - RSS VECTOR TABLE 00067000
* 00068000
* 200 +-----------------------------------------------+ 00069000
* | NEWPSW | 00070000
* 208 +-----------------------------------------------+ 00071000
* | SSAVE | 00072000
* 210 +-----+-----------------+-----------------------+ 00073000
* | V*1 | | MAINMAP | 00074000
* 218 +-----+-----------------+-----------------------+ 00075000
* | MAINSIZE | QUEUE | 00076000
* 220 +-----------------------+-----------------------+ 00077000
* | QUEUEND | FREEQ | 00078000
* 228 +-----------------------+-----------------------+ 00079000
* | TASKQ | MPXIOQ | 00080000
* 230 +-----------------------+-----------------------+ 00081000
* | SELIOQ | IOEXITQ | 00082000
* 238 +-----------------------+-----------------------+ 00083000
* | EXTQ | ALERTQ | 00084000
* 240 +-----------------------+-----------------------+ 00085000
* | GIVEQ | QREQ | 00086000
* 248 +-----------------------+-----------------------+ 00087000
* | DISPATCH | WAITREQ | 00088000
* 250 +-----------------------+-----------------------+ 00089000
* | POSTREQ | IOREQ | 00090000
* 258 +-----------------------+-----------------------+ 00091000
* | TASKREQ | MAINREQ | 00092000
* 260 +-----------------------+-----------------------+ 00093000
* | ASYNREQ | ALERTREQ | 00094000
* 268 +-----------------------+-----------------------+ 00095000
* | GIVEREQ | TAKEREQ | 00096000
* 270 +-----------------------+-----------------------+ 00097000
* | TVECTOR0 | TVECTOR1 | 00098000
* 278 +-----------------------+-----------------------+ 00099000
* | TVECTOR2 | TVECTOR3 | 00100000
* 280 +-----------------------+-----------------------+ 00101000
* | TVECTOR4 | TVECTOR5 | 00102000
* 288 +-----------------------+-----------------------+ 00103000
* | TVECTOR6 | TVECTOR7 | 00104000
* 290 +-----------------------+-----------------------+ 00105000
* 00106000
*** SVECTORS - RSS VECTOR TABLE 00107000
SPACE 1 00108000
NEWPSW DS D DISPATCHED PSW FOR LAST DISP 00109000
SSAVE DS 2F GENERAL PURPOSE LOWCORE SAVEAREA 00110000
ACTIVE DS X V*1 X'00' ID OF CURRENTLY ACTIVE TASK 00111000
DS AL3 TASK ELEMENT FOR LAST DISPATCHEE 00112000
SPACE 00113000
MAINMAP DS A V(SMAP) MAIN CORE ALLOCATION MAP 00114000
MAINSIZE DS F NUM OF PAGES IN ALL OF MAIN STOR 00115000
QUEUE DS A V(SQUEUE) SUPERVISOR QUEUE 00116000
QUEUEND DS A V(SQUEUEND) LAST SUP QUEUE ELEMENT 00117000
FREEQ DS A FREE ELEMENT QUEUE 00118000
TASKQ DS A TASK ELEMENT QUEUE 00119000
MPXIOQ DS A MULTIPLEXOR I/O QUEUE 00120000
SELIOQ DS A SELECTOR I/O QUEUE 00121000
IOEXITQ DS A ASYNCH I/O REQ ELEMENT QUEUE 00122000
EXTQ DS A EXTERNAL REQ ELEMENT QUEUE 00123000
ALERTQ DS A TASK ASYNCH REQ ELEMENT QUEUE 00124000
GIVEQ DS A GIVE REQUEST ELEMENT QUEUE 00125000
SPACE 00126000
QREQ DS A V(DMTQRQ) SUP QUEUE ALLOC REQ 00127000
DISPATCH DS A V(DMTDSP) TASK DISPATCHER 00128000
SPACE 00129000
WAITREQ DS A V(DMTWAT) WAIT REQUEST 00130000
POSTREQ DS A V(DMTPST) POST REQUEST 00131000
IOREQ DS A V(DMTIOMRQ) I/O REQUEST 00132000
TASKREQ DS A V(DMTASK) TASK MANAGEMENT REQUEST 00133000
MAINREQ DS A V(DMTSTO) MAIN ALLOCATION REQUEST 00134000
ASYNREQ DS A V(DMTASY) ASYNCH INTERRUPT REQUEST 00135000
ALERTREQ DS A V(DMTSIG) TASK ASYNCH SIGNAL REQUEST 00136000
GIVEREQ DS A V(DMTGIV) TASK REQUEST SEND REQUEST 00137000
TAKEREQ DS A V(DMTAKE) TASK REQ DELIVER REQUEST 00138000
SPACE 00139000
TVECTOR0 DS A A(0) TASK DEFINED FIELD 00140000
TVECTOR1 DS A A(0) TASK DEFINED FIELD 00141000
TVECTOR2 DS A A(0) TASK DEFINED FIELD 00142000
TVECTOR3 DS A A(0) TASK DEFINED FIELD 00143000
TVECTOR4 DS A A(0) TASK DEFINED FIELD 00144000
TVECTOR5 DS A A(0) TASK DEFINED FIELD 00145000
TVECTOR6 DS A A(0) TASK DEFINED FIELD 00146000
TVECTOR7 DS A A(0) TASK DEFINED FIELD 00147000
SPACE 00148000
TLINKS EQU TVECTOR0 LINK TABLE CHAIN 00149000
TROUTE EQU TVECTOR1 ROUTING TABLE CHAIN 00150000
TPORTS EQU TVECTOR2 SWITCHABLE PORT CHAIN 00151000
TTAGQ EQU TVECTOR3 TAG SLOT QUEUE 00152000
TCOM EQU TVECTOR4 COMMON ROUTINE CHAIN 00153000
EJECT 00154000
COMDSECT DSECT 00155000
SPACE 1 00156000
*** COMDSECT - COMMON ROUTINE TABLE 00157000
* 00158000
* 0 +-----------------------+-----------------------+ 00159000
* | GLINKREQ | GPAGEREQ | 00160000
* 8 +-----------------------+-----------------------+ 00161000
* | FPAGEREQ | PMSGREQ | 00162000
* 10 +-----------------------+-----------------------+ 00163000
* | GMSGREQ | GTODEBCD | 00164000
* 18 +-----------------------+-----------------------+ 00165000
* 00166000
*** COMDSECT - COMMON ROUTINE TABLE 00167000
SPACE 1 00168000
GLINKREQ DS 1A GET LINK TABLE ENTRY ROUTINE 00169000
GPAGEREQ DS 1A GET PAGE OF MAIN STORAGE 00170000
FPAGEREQ DS 1A FREE PAGE OF MAIN STORAGE 00171000
PMSGREQ DS 1A PUT MESSAGE ELEMENT INTO MSG STACK 00172000
GMSGREQ DS 1A REMOVE MSG ELEMENT FROM MSG STACK 00173000
GTODEBCD DS 1A CONVERT S/370 TOD TO EBCDIC 00174000
EJECT 00175000
POP PRINT 00176000
SPACE 00177000