|
|
DataMuseum.dkPresents historical artifacts from the history of: IBM System/3 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about IBM System/3 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 25908 (0x6534)
Types: s3xseg
Names: »S$ECOM«
└─⟦4498c64f7⟧ Bits:30009191 5704-sc2.V05.ccp
└─⟦95ee7795b⟧
└─⟦this⟧ »S$ECOM«
MACRO 00010000
.********************************************************************** 00020000
.* STATUS: 5704SC2CP RELEASE 03 * 00030000
.* * 00040000
.* NAME: $ECOM * 00050000
.* * 00060000
.* FUNCTION: DEFINE THE LOCATIONS OF DATA AREAS WITHIN CCP COMMON. * 00070000
.* WHERE APPROPRIATE, DEFINE THE BIT SIGNIFICANCE FOR THOSE DATA * 00080000
.* AREAS. DEFINE THE LENGTHS AND LOCATIONS OF FIELDS IN * 00090000
.* THE FOLLOWING WORK AREAS: COMMAND PROCESSOR, ALLOCATION, * 00100000
.* TERMINATION, COMMUNICATIONS MANAGEMENT. * 00110000
.* * 00120000
.* INPUT OPERANDS: * 00130000
.* * LABELS-ADDR GENERATE ADDRESSES, NOT OFFSETS. DEFAULT IS * 00140000
.* ADDR. * 00150000
.* -DSPL GENERATE OFFSETS, NOT ADDRESSES. * 00160000
.* * ID-0 PROGRAM IS NOT A TRANSIENT. GENERATE ABSOLUTE* 00170000
.* ADDRESS VALUES(BASE NOT POSSIBLE). * 00180000
.* * -1 PROGRAM WILL EXECUTE IN TRANSIENT AREA ONE. * 00190000
.* THIS IS THE DEFAULT. THE DEFAULTED VALUE CAN * 00200000
.* ALSO BE USED BY NON-TRANSIENTS BY PRECEDING * 00210000
.* THIS MACRO WITH A $CC4$$ EQU X'4000' IF * 00220000
.* ADDRESSES(BASE NOT TO BE USED) ARE WANTED. * 00230000
.* IF A BASE IS DESIRED, $CC4$$ MUST BE DEFINED * 00240000
.* IN TERMS OF *(LOCATION COUNTER). * 00250000
.* -2 PROGRAM WILL EXECUTE IN TRANSIENT AREA TWO. * 00260000
.* * $CC4$$-Y/N GENERATE '$CC4$$ EQU X'4000'. DEFAULT IS N.* 00270000
.* * DF-Y/N/0/1 GENERATE LABELS FOR DISPLAY FORMAT FACILITY * 00280000
.* WORK AREA. DEFAULT IS Y. * 00290000
.* * CP-Y/N GENERATE LABELS FOR COMMAND PROCESSOR WORK * 00300000
.* AREA. DEFAULT IS Y. * 00310000
.* * AM-Y/N GENERATE LABELS FOR ALLOCATION WORK AREA. * 00320000
.* DEFAULT IS Y. * 00330000
.* * TM-Y/N GENERATE LABELS FOR TERMINATION WORK AREA. * 00340000
.* DEFAULT IS Y. * 00350000
.* .* CM-Y/N GENERATE LABELS FOR COMMUNICATIONS MANAGEMENT * 00360000
.* WORK AREA. DEFAULT IS Y. * 00370000
.* * 00380000
.* NOTES: * 00390000
.* * LABELS THAT REFERENCE A LOCATION IN CORE CAN BE GENERATED * 00400000
.* WITH EITHER AN ADDRESS OR AN OFFSET. USE OF THE ADDRESS * 00410000
.* LABELS WITH A REGISTER WILL REQUIRE A BASE INSTRUCTION. THE * 00420000
.* LABEL FOR THE BASE INSTRUCTION IS $COMON. LABELS THAT ARE * 00430000
.* PART OF A WORK AREA ARE EITHER ADDRESSES OR OFFSETS FROM THE * 00440000
.* START OF THE WORK AREA(EXCEPT FOR THE DF WORK AREA WHICH CAN * 00450000
.* BE EITHER OFFSETS FROM $COMON OR ADDRESSES). * 00460000
.********************************************************************** 00470000
$ECOM &LABELS-ADDR,&ID-1,&DF-Y,&CP-Y,&AM-Y,&TM-Y,&CM-Y, X00480000
&$CC4$$-N 00490000
TABLE &ID 00500000
1 TABDF 1536 00510000
2 TABDF 768 00520000
TABLE &DF 00530000
Y TABDF 1 00540000
N TABDF 0 00550000
TEXT 00560000
*********************************************************************** 00570000
* C O M M U N I C A T I O N S C O N T R O L P R O G R A M * 00580000
* C O M M O N A R E A O F F S E T S * 00590000
*********************************************************************** 00600000
TAONE EQU X'4000' LOCATION OF TRANSIENT AREA 1 00610000
TATWO EQU TAONE+768 LOCATION OF TRANSIENT AREA 2 00620000
SPACE 00630000
AIF (&ID EQ '0').CC4$$ 00640000
AIF (&$CC4$$ NE 'Y').LABEL 00650000
.CC4$$ ANOP 00660000
$COMON EQU X'4600' ADDRESS OF CCP COMMON 00670000
AGO .CC120 00680000
.LABEL AIF (&LABELS EQ 'ADDR').CC100 00690000
$COMON EQU 0 00700000
AGO .CC120 00710000
.CC100 ANOP 00720000
$COMON EQU $CC4$$+&ID 00730000
.CC120 ANOP 00740000
SPACE 2 00750000
*------------ENTRY POINT ADDRESS DEFINITION---------------------------* 00760000
@CC4TR EQU $COMON-1+2 TRANSIENT RETURN ADDRESS 00770000
@CC4TX EQU @CC4TR+2 TRANSIENT TRANSFER CONTROL @ 00780000
@CC4PI EQU @CC4TX+2 1ST LEVEL TRANSIENT INVOCATION @ 00790000
@CC4TA EQU @CC4TX+2 1ST LEVEL TRANSIENT INVOCATION @ 00800000
@CC4IS EQU @CC4TA+2 COMMUNICATIONS I/O INTERFACE ADR 00810000
@CC4GM EQU @CC4IS+2 GETMAIN ENTRY ADDRESS 00820000
@CC4FM EQU @CC4GM+2 FREEMAIN ENTRY ADDRESS 00830000
@MLTIO EQU @CC4FM+2 MLTA IOCS ENTRY POINT @. 00840000
@MLTOP EQU @MLTIO+2 MLTA OPEN ENTRY POINT @. 00850000
@USECW EQU @MLTOP+2 USER SECURITY DATA WORK AREA ADR 00860000
@CC4MX EQU @USECW+2 MOVE FOREVER ROUTINE ADDRESS 00870000
@C4TI2 EQU @CC4MX+2 PROGRAM TERMINATION INTERFACE @ 00880000
@CC4TI EQU @C4TI2+2 OTHER TASK TERMINATE ADDRESS 00890000
@CC4SR EQU @CC4TI+2 ENTRY ADDRESS IN MOVE ROUTINE 00900000
@CC4TH EQU @CC4SR+2 @ TERMINATION INTERFACE 00910000
@BTRAC EQU @CC4TH+2 CCP BSCA TRACE ROUTINE 00920000
@MTRAC EQU @BTRAC+2 CCP MLTA TRACE ROUTINE 00930000
SPACE 2 00940000
*------------TRANSIENT COMMUNICATION AREA-----------------------------* 00950000
SV1TAX EQU @MTRAC+2 TRANSIENT AREA 1 PARAMETER AREA 00960000
SV2TAX EQU SV1TAX+2 TRANSIENT AREA 2 PARAMETER AREA 00970000
SPACE 2 00980000
*----------- ADDRESSES OF SYSTEM TASK CONTROL BLOCKS -----------------* 00990000
@CMTCB EQU SV2TAX+2 @ COMMUNICATIONS MANAGEMENT TCB 01000000
@DFTCB EQU @CMTCB+2 @ OF DISPLAY FORMAT FACILITY TCB 01010000
@TMTCB EQU @DFTCB+2 @ TERMINATION TCB 01020000
@CPTCB EQU @TMTCB+2 @ COMMAND PROCESSOR TCB 01030000
@AVTCB EQU @CPTCB+2 @ AVAILABLE TCB'S 01040000
EJECT 01050000
*----------- SYSTEM LEVEL FLAGS --------------------------------------* 01060000
$FLGA EQU @AVTCB+1 FIRST SYSTEM LEVEL FLAG BYTE 01070000
#DFFOK EQU BIT0 DFF IS SUPPORTED 01080000
CPSOB1 EQU BIT1 SIGN ON PASSWORD REQUIRED 01090000
CPSOB2 EQU BIT2 SIGN ON USER PASSWORD REQUIRED 01100000
CPSHUT EQU BIT3 SHUTDOWN HAS BEEN REQUESTED 01110000
CPSU EQU BIT4 STARTUP IS IN PROCESS 01120000
#EPL EQU BIT5 EXT POINT LIST SUPPORTED 01130000
CPSHD EQU BIT6 SHUTDOWN IN PROCESS 01140000
CPISNW EQU BIT7 $CC4IS IS NOT TO ISSUE WAIT 01150000
* AFTER POSTING $CC4CM 01160000
SPACE 3 01170000
$FLGB EQU $FLGA+1 SECOND SYSTEM LEVEL FLAG BYTE 01180000
#SUALL EQU BIT0 SUSPEND ALL IN EFFECT 01190000
#SUINT EQU BIT1 SUSPEND INIT IN EFFECT 01200000
#SUCMD EQU BIT2 SUSPEND COMMANDS IN EFFECT 01210000
CPSHDP EQU BIT3 SHUTDOWN IS PENDING 01213000
#FEHLT EQU BIT4 FEHALT IS RUNNING 01216000
#RESPR EQU BIT5 RESIDENT PROGRAM REQUEST GEN'D 01218000
#CPCAN EQU BIT6 CCP CANCEL RECEIVED 01220000
#PUCNT EQU BIT7 PROGRAM USE COUNTING IS ON 01230000
SPACE 3 01240000
$FLGC EQU $FLGB+1 THIRD SYSTEM LEVEL FLAG BYTE 01250000
#MTRAC EQU BIT0 MLTA TRACE IS ON 01260000
#BTRAC EQU BIT1 BSCA TRACE IS ON 01270000
#NTRAC EQU BIT2 NO TRACE FOR CM (INT POLL) 01280000
#PUTTP EQU BIT3 PUT ONLY TP GETMAIN REQUEST 01290000
#INVPL EQU BIT4 INVITE PL GETMAIN REQUEST 01300000
INTPNO EQU BIT5 1=NO INT POLL SUPPORT FOR BSCC 01310000
INTNSP EQU BIT6 1=NO INT POLL SUPPORT FOR BSCA 01320000
#NTRCS EQU BIT7 NO TRACE FOR CS (INT POLL) 01325000
SPACE 3 01340000
*----------- SYSTEM CONSTANTS ----------------------------------------* 01350000
X$0000 EQU $FLGC+2 CONSTANT XL2'0000' 01360000
X$0001 EQU X$0000+1 CONSTANT XL2'0001' 01370000
X$0002 EQU X$0001+2 CONSTANT XL2'0002' 01380000
X$0004 EQU X$0002+2 CONSTANT XL2'0004' 01390000
X$FFFF EQU X$0004+2 CONSTANT XL2'FFFF' 01400000
EJECT 01410000
*----------- QUEUE ADDRESS POINTERS ----------------------------------* 01420000
@ALOCQ EQU X$FFFF+2 Q OF TASKS WAITING TO BE ALLOC'D 01430000
@WATSK EQU @ALOCQ+2 ALLOCATE WAIT QUEUE 01440000
@QTUBS EQU @WATSK+2 @ Q TUB'S WAITING FOR TCB/CORE 01450000
@GMWTQ EQU @QTUBS+2 @ GETMAIN TCB QUEUE 01460000
@DFFQ EQU @GMWTQ+2 QUEUE FOR REQUESTS TO DFF TASK 01470000
@PRLQ EQU @DFFQ+2 @ OF PARAMETER LIST QUED FOR CM 01480000
SPACE 2 01490000
*----------- LIST ADDRESS POINTERS -----------------------------------* 01500000
@TALST EQU @PRLQ+2 @ PROGRAM LIST IN $CC4TA 01510000
@TCORG EQU @TALST+2 @ OF THE TCB LIST 01520000
@ROCAT EQU @TCORG+2 ATT @ OF RESIDENT OPEN/CLOSE 01530000
@LCB#1 EQU @ROCAT+2 @ FIRST LCB IN SYSTEM 01540000
@TUBQ EQU @LCB#1+2 @ OF THE FIRST TUB IN THE SYSTEM 01550000
@EPATR EQU @TUBQ+2 ATT @ OF EXTERNAL POINTER LIST 01560000
@DFCT EQU @EPATR ADDRESS OF SHORT DTF @ LIST 01565000
@TNT EQU @EPATR+2 @ OF 1ST TERMINAL NAME TABLE ENT 01570000
@XDT EQU @TNT+2 @ 1ST SYMBOLIC DFCT NAME ENTRY 01580000
SPACE 2 01590000
*----------- MAIN STORAGE CONTROL BLOCK(TPBUFF) ----------------------* 01600000
@BUFA EQU @XDT-1+2 @ OF FIRST FREE SEGMENT 01610000
#NBND EQU @BUFA+1+2 RESERVED - MUST BE ZEROS 01620000
@LOBND EQU #NBND+2 @ LO-BOUND GETMAIN AREA 01630000
@HIBND EQU @LOBND+2 @ HI-BOUND GETMAIN AREA 01640000
#GMS EQU @HIBND-1+2 SIZE OF LARGEST FREE SPACE 01650000
SPACE 2 01660000
#TPBUF EQU #GMS+1+2 ORIGINAL SIZE OF TPBUFF 01670000
@UPA EQU #TPBUF+1 USER PROGRAM AREA ATR 01680000
#AVCOR EQU @UPA+1 # 2K BLOCKS NOT GIVEN TO NEP'S 01690000
@PUCNT EQU #AVCOR+2 @ PROGRAM USE COUNT TABLE 01700000
SPACE 2 01710000
*------------ GENERAL AREAS ------------------------------------------* 01720000
@TUSTG EQU @PUCNT+2 @ OF TUB IN STAGING NOW(CP TASK) 01730000
@KNTUB EQU @TUSTG+2 @ OF CONSOLE TUB 01740000
@PTX EQU @KNTUB+2 @ OF PCT MASTER INDEX 01750000
@PTXCS EQU @PTX+2 C/S VALUE OF PCT DISK START 01760000
#PCTLN EQU @PTXCS+1 LONGEST LEN PCT USED BY PGM RQST 01770000
#DFCT EQU #PCTLN+1 NO. ENTRIES IN SHORT DTF @ LIST 01780000
#SETID EQU #DFCT+1 ID OF ASSIGNMENT SET IN USE 01790000
#XDT EQU #SETID+1 NUMBER OF SYMFILE STATEMENTS 01800000
#RSVD1 EQU #XDT+1 RESERVED AREA - 1 BYTE 01810000
@UALFA EQU #RSVD1+1 ATR - UNCHANGING START OF UPA 01820000
@TKFSB EQU @UALFA+2 FSB AREA FOR TCB'S 01830000
SPACE 1 01840000
CPLPWD EQU @TKFSB+1 LENGTH OF SIGN ON PASSWORD 01850000
CPPSWD EQU CPLPWD+6 CCP SIGN ON PASSWORD 01860000
SPACE 2 01870000
*----- CCP DUMP AREA DISK ADDRESSES ----------------------------------* 01880000
#DUMPQ EQU CPPSWD+1 Q-BYTE OF $CCPDUMP FILE UNIT 01882000
@CPDMP EQU #DUMPQ+2 DISK ADDRESS OF $CCPDUMP FILE 01884000
@NDUMP EQU @CPDMP+3 DISK ADDRESS OF NEXT DUMP 01886000
@DSTRT EQU CPPSWD+2 DUMP AREA START C/S 01890000
@DEND EQU @DSTRT+2 DUMP AREA END C/S 01900000
@DNEXT EQU @DEND+2 DUMP AREA NEXT ENTRY C/S 01910000
#CPFLQ EQU @NDUMP+1 $CCPFILE DEVICE Q-BYTE 01920000
EJECT 01930000
*----------- FIXED LOCATIONS OF RESIDENT CODE ------------------------* 01940000
CC4TA EQU #CPFLQ+1 LOAD IAR OF @CC4TA 01950000
CC4PI EQU CC4TA LOAD IAR OF @CC4PI (@CC4TA) 01960000
CC4IS EQU CC4TA+4 LOAD IAR OF @CC4IS 01970000
CC4GM EQU CC4IS+4 LOAD IAR OF @CC4GM 01980000
CC4FM EQU CC4GM+4 LOAD IAR OF @CC4FM 01990000
USECW EQU CC4FM+4 LOAD IAR OF @USECW 02000000
CC4MX EQU USECW+4 LOAD IAR OF @CC4MX 02010000
C4TI2 EQU CC4MX+4 LOAD IAR OF @C4TI2 02020000
CC4TI EQU C4TI2+4 LOAD IAR OF @CC4TI 02030000
CC4TT EQU CC4TI+4 LOAD IAR OF $TRACE(X'004C') 02040000
CC4SR EQU CC4TT+4 LOAD IAR OF @CC4MV 02050000
CC4FR EQU CC4SR+4 LOAD IAR OF @CC4FR 02060000
@CC4FR EQU CC4FR+3+2 @ OF $CC4FR IN CM 02070000
@CC4II EQU @CC4FR+2 @ OF $CC4II 02080000
SPACE 02090000
*------------- MAINTENANCE SPACE ------------------ 2 BYTES -------* 02100000
SPACE 02110000
$END1 EQU @CC4II+2+1 END OF MAINTENANCE SPACE 02120000
SPACE 3 02130000
*------------WORK AREAS LENGTHS DEFINTIONS----------------------------* 02140000
#LDFWK EQU 15 LENGTH DFF WORK AREA 02150000
#LCPWK EQU 50 LENGTH COMND PROCESSOR WORK AREA 02160000
#LAMWK EQU 9 LENGTH ALLOCATION WORK AREA 02170000
#LTMWK EQU 24 LENGTH TERMINATION WORK AREA 02180000
#LCMWK EQU 45 LENGTH COMMO MGMT WORK AREA 02190000
#LWKWK EQU 143 LENGTH-SUM OF ALL WORK AREAS 02200000
SPACE 3 02210000
*----------- CONSOLE TUB AND PARAMETER LIST --------------------------* 02220000
KNTUB EQU $END1+#LWKWK FIXED LOCATION OF CONSOLE TUB 02230000
KNPL EQU KNTUB+39 CONSOLE PARAMETER LIST 02240000
SPACE 3 02250000
*----------- SHUTDOWN FIELDS -----------------------------------------* 02260000
SHDECB EQU KNPL+19 SHUTDOWN'S ECB 02270000
FEHLT@ EQU SHDECB+2+3 ADDRESS OF FE HALT ROUTINE 02280000
SHDSAV EQU FEHLT@+11 CM TCB FIELDS SAVE AREA 02290000
SPACE 2 02300000
*----------- CM FIELDS AND MAINTENANCE SPACE -------------------------* 02310000
#CMTRL EQU SHDSAV-10+11 CM'S TRANSLATE PARAMETER LIST 02320000
#CMMVL EQU #CMTRL CM'S MOVE PARAMETER LIST 02330000
SPACE 02340000
PLTIME EQU #CMMVL+10+4 POLL TIME FOR CM 02350000
WATIME EQU PLTIME+3 WAIT TIME FOR CM 02360000
SAVLOP EQU WATIME+1 SAVE AREA FOR POLL LOOP COUNT 02370000
@CCPTB EQU SAVLOP+2 ADDRESS OF CCP PARTITION TCB 02380000
#TPPUT EQU @CCPTB+2 LENGTH OF PUT AREA OF TPBUFFER 02390000
#TPANY EQU #TPPUT+2 LENGTH OF COMMON TPBUFFER AREA 02400000
#ANYS EQU #TPANY+1 SIZE OF LARGEST COMMON AREA 02410000
CORCNT EQU #ANYS+2 NUMBER OF PL WAITING ON CORE 02420000
@TMIOB EQU X'4800' LOCATION OF SHUTDOWN TIMER IOB 02425000
AIF (&DF EQ '0').CC500 02430000
EJECT 02440000
************ DFF WORK AREA 15 BYTES************ 02450000
$DFWK EQU $END1 START OF DFF WORK AREA 02460000
@DFFIX EQU $DFWK+1 C/S OF DFF FORMATS INDEX 02470000
#DFQ EQU @DFFIX+1 FDT DEVICE Q-BYTE 02480000
SPACE 1 02485000
#DF1ID EQU #DFQ+1 ID OF TASK "OWNING" SPACE IN 02490000
* DFF COMM. AREA FOR LINE 1 02500000
SPACE 1 02510000
#DF2ID EQU #DF1ID+1 ID OF TASK "OWNING" SPACE IN 02520000
* DFF COMM. AREA FOR LINE 2 02530000
SPACE 1 02535000
$DFECB EQU #DF2ID+1 ECB FOR DFF TASK 02540000
SPACE 1 02540700
$DFFLG EQU $DFECB+3 DFF FLAG BYTE 02541400
$DFPIL EQU B'10000000' OPTIMIZE PRUF INPUT LENGTH 02542100
* EQU B'01000000' . 02542800
* EQU B'00100000' . 02543500
* EQU B'00010000' . 02544200
* EQU B'00001000' . 02544900
* EQU B'00000100' . 02545600
* EQU B'00000010' . 02546300
* EQU B'00000001' . 02547000
SPACE 1 02547700
LCPFK EQU $DFFLG+1 PF KEY TO INDICATE LOWER 02548400
* CASE INPUT FROM TERMINAL. 02549100
.CC500 AIF (&CP EQ 'N').CC600 . CONTINUE HERE 02550000
EJECT 02560000
************ COMMAND PROCESSOR WORK AREA 50 BYTES************ 02570000
AIF (&LABELS EQ 'ADDR').CC520 02580000
$CPWK EQU X'4400'+$END1+#LDFWK START OF COMMAND 02590000
$CP EQU 0 PROCESSOR'S WORK AREA 02600000
AGO .CC540 02610000
.CC520 ANOP 02620000
$CPWK EQU $END1+#LDFWK START OF COMMAND 02630000
$CP EQU $CPWK PROCESSOR'S WORK AREA 02640000
.CC540 ANOP 02650000
SPACE 2 02720000
*----------- COMMAND PROCESSOR ECB LIST ------------------------------* 02730000
$CPLST EQU $CP+5 ECB LIST. DEFINED AS FOLLOWS: 02740000
* DC AL2(@TMECB) SHUTDOWN TIMER ECB 02745000
* DC AL2($CPQ) PROGRAM INITIATE-POSTED BY TERM 02750000
* DC AL2($CPPF9) PF9 - PROGRAM REQUEST 02760000
* DC AL2($CPCM) DATA IN TP BUFFER FOR CP 02770000
* DC AL2($CPOCC) OCC 02780000
* DC AL2($CP1ST/$CPWTO/65535) STARTUP/WTOR/LIST DELIMITER 02790000
* DC XL2'FFFF' LIST DELIMITER 02800000
SPACE 02801000
#CPTMR EQU 1 OFFSET TO TIMER ECB @ 02802000
#CPCPQ EQU 3 OFFSET TO PROG INIT ECB @ 02803000
#CPPF9 EQU 5 OFFSET TO PF9 ECB @ 02804000
#CPCM EQU 7 OFFSET TO CM ECB @ 02805000
#CPOCC EQU 9 OFFSET TO OCC ECB @ 02806000
#CP1ST EQU 11 OFFSET TO 1ST ECB @ 02807000
#CPWTO EQU 11 OFFSET TO WTO ECB @ 02808000
#CPEND EQU 13 OFFSET TO END OF @ LIST 02809000
SPACE 2 02810000
*----------- COMMAND PROCESSOR ECB'S ---------------------------------* 02820000
@TMECB EQU @TMIOB+7 TIMER ECB LOCATION IN IOB 02825000
$CPQ EQU $CP+19 PROGRAM INITIATE-POSTED BY TERM 02830000
$CPPF9 EQU $CP+22 PF9 - PROGRAM REQUEST 02840000
$CPCM EQU $CP+25 DATA IN TP BUFFER FOR CP 02850000
$CPOCC EQU X'0048' OCC - IN THE DSM NUCLEUS 02860000
$CP1ST EQU $CP+28 FIRST TIME SWITCH 02870000
$CPWTO EQU 0 WTO - GETMAINED FOR IN TPBUFF 02880000
SPACE 2 02890000
*----------- COMMAND PROCESSOR FLAG BYTE -----------------------------* 02900000
$CPFLG EQU $CP+29 COMMAND PROCESSOR FLAG BYTE 02910000
$CPFR EQU BIT0 FREEMAIN TO BE DONE 02920000
$CPCFR EQU BIT3 FREE NEEDED FOR CONSOLE OCC 02930000
$CPDPG EQU BIT4 PAGE 1 OF DISPLAY DONE 02940000
$CPD1S EQU BIT5 DO SECONDARY MENU 02950000
$CPPAS EQU BIT6 ASSIGNMENT/SHUTDOWN INTERLOCK 02953000
$CPFND EQU BIT7 ASSIGNMENT/CCPFMT/CCPPGM INTLK 02956000
SPACE 1 02960000
*----------- COMMAND PROCESSOR TASK TRANSIENT COMMUNICATION AREA -----* 02970000
$CPPRQ EQU $CP+30 LABEL FOR PROGRAM REQUEST 02980000
SPACE 02990000
$CPCOM EQU $CP+30 LABEL FOR COMMANDS 03000000
$CPRTC EQU $CP+31 SAVE AREA FOR PLRTC 03010000
$CPEFL EQU $CP+33 SAVE AREA FOR PLEFFL 03020000
$CPRCA EQU $CP+35 SAVE AREA FOR PLRECA 03030000
SPACE 03040000
*----------- STARTUP VALUES - VALID ONLY DURING STARTUP --------------* 03050000
$CPMSG EQU $CP+32 ADDRSS OF $CC4IG 03060000
#LSTSZ EQU $CPMSG+1+1 # ENTRIES IN FIRST LEVEL LIST 03070000
@XSNT1 EQU #LSTSZ+2 ENTRIES IN $CC4PI 03080000
@XSNT2 EQU @XSNT1+2 FOR START-UP 03090000
@L1TCB EQU @XSNT2+2 SWITCHED LCB TCB @ FOR LINE 1 03100000
@L2TCB EQU @L1TCB+2 SWITCHED LCB TCB @ FOR LINE 2 03110000
.CC600 AIF (&AM EQ 'N').CC700 03120000
EJECT 03130000
************ ALLOCATION WORK AREA 9 BYTES************ 03140000
AIF (&LABELS EQ 'ADDR').CC620 03150000
$AMWK EQU X'4400'+$END1+#LDFWK+#LCPWK START OF ALLOCATION 03160000
$AM EQU 0 WORK AREA 03170000
AGO .CC640 03180000
.CC620 ANOP 03190000
$AMWK EQU $END1+#LDFWK+#LCPWK START OF ALLOCATION 03200000
$AM EQU $AMWK WORK AREA 03210000
.CC640 ANOP 03220000
SPACE 2 03230000
$AMFLG EQU $AM ALLOCATION FLAG BYTE 03240000
$AMBSY EQU BIT0 1--ALLOCATION BUSY 03250000
$APEND EQU BIT1 1--ALLOCATION TASK POST PENDING 03260000
$AMDFF EQU BIT2 NON-RESIDENT DFF ALOC IN PROCESS 03270000
$AMA1 EQU BIT3 U/R DEVICE ALLOCATION IN PROCESS 03280000
$AMA2 EQU BIT4 REJECT IN PROCESS 03290000
$AMPF9 EQU BIT5 CONSOLE TUB IN USE FOR PROGRAM 03300000
$AMERR EQU BIT6 ALLOCATION REJECT IN PROCESS 03305000
SPACE 03310000
$AMUR EQU $AMFLG+1 CCP LEVEL AND SPOOLING DEVICES. 03320000
A1SPLV EQU BIT0 1=CCP IS IN LEVEL 1. 03330000
* 0=CCP IS IN LEVEL 2. 03340000
A1PTRS EQU BIT1 PRINTER IS SPOOLED FOR CCP LVL. 03350000
* BIT2 MFCU/M SEC IS SPOOL RDR FOR CCP 03360000
* BIT3 MFCU/M SEC IS SPOOL PCH FOR CCP 03370000
A1741S EQU BIT4 3741 IS SPOOLED READER FOR CCP 03380000
A1501S EQU BIT5 2501 IS SPOOLED READER FOR CCP 03390000
* BIT6 MFCU/M PRI IS SPOOL RDR FOR CCP 03400000
* BIT7 MFCU/M PRI IS SPOOL PCH FOR CCP 03410000
$AMPA EQU $AMUR+1 PERM ALLOC AND SPOOLED UR 03420000
* DEVICES FOR CCP. 03430000
*PCTPRS BIT0 1=WILL SHARE PRINTER. 03440000
*PCT41I BIT1 1=3741 IS PERMANENTLY ALLOCATED 03450000
*PCT501 BIT2 1=2501 IS PERM ALLOCATED. 03460000
*PCTPRT BIT3 1=PRINTER IS PERM ALLOCATED. 03470000
*PCT142 BIT4 1=1442 IS PERM ALLOCATED. 03480000
*PCTMFU BIT5 1=MFCU/M IS PERM ALLOCATED. 03490000
* BIT6 1=1442 IS SPOOL READER FOR CCP 03500000
* BIT7 1=1442 IS SPOOL PUNCH FOR CCP 03510000
SPACE 03520000
$AMSA EQU $AMPA+1 IN USE DEVICES 03530000
AMSORT EQU BIT6 1 = $INDEX45 FILE IN USE 03535000
$AMSHR EQU $AMSA+1 COUNT OF PRESENT PRINT SHARERS 03540000
$AMID EQU $AMSHR+1 TCB ID OF LEVEL CCP IS IN 03543000
$AMUSE EQU $AMID+1 COUNT OF ACTIVE USER TASKS 03546000
$AMWRK EQU $AMUSE+2 ALLOCATION WORK FIELD 03548000
.CC700 AIF (&TM EQ 'N').CC800 03550000
EJECT 03560000
************ TERMINATOR WORK AREA 24 BYTES************ 03570000
AIF (&LABELS EQ 'ADDR').CC720 03580000
$TMWK EQU X'4400'+$END1+#LDFWK+#LCPWK+#LAMWK START OF 03590000
$TM EQU 0 TERMINATION'S WORK AREA 03600000
AGO .CC740 03610000
.CC720 ANOP 03620000
$TMWK EQU $END1+#LDFWK+#LCPWK+#LAMWK START OF TERMINATION'S 03630000
$TM EQU $TMWK WORK AREA 03640000
.CC740 ANOP 03650000
SPACE 2 03660000
$TMFLG EQU $TM TERMINATOR FLAG BYTE 03670000
$TMSTK EQU BIT0 SYSTEM TASK FAILURE 03680000
$TMBSY EQU BIT0 1--TERMINATION TASK IS ACTIVE 03690000
* 0--TERMINATION TASK NOT BUSY 03700000
$TMDMP EQU BIT1 1--NO USER TASK ACTIVE FOR C CCP 03710000
* 0--USER TASK ACTIVE FOR C CCP 03720000
$TMEJ EQU BIT2 1--$CC4EJ (CCP END OF JOB) 03730000
* HAS BEEN INVOKED BY $CC4TD 03740000
* (TERMINATION CONTROL ROUTINE) 03750000
$TMCLZ EQU BIT3 TERMINATION MUST CALL CLOSE 03760000
$TMTWA EQU BIT4 $CC4TW ACTIVE IN XIENT AREA 03770000
$TMDDR EQU BIT5 DISK DUMP REQUESTED (NOT 2A,2B) 03780000
$TMDFL EQU BIT6 ON=NO MORE DUMP SPACE GUARANTEED 03790000
$TMDER EQU BIT7 ON=PERMANENT DISK I/O ERROR 03800000
* DURING TERMINATION DUMP 03810000
SPACE 1 03820000
$TMTCB EQU $TMFLG+2 @ OF TCB CURRENTLY BEING 03830000
* PROCESSED BY TERMINATION TASK 03840000
$TMECB EQU $TMTCB+1 TERMINATION'S ECB (3 BYTES) 03850000
$TMDID EQU $TMECB-1+3+2 DUMP ID DIGITS (2 BYTES) 03860000
SPACE 2 03870000
*----------- $CC4TI-$CC4TM-CC4TH WORK AREAS---------------------------* 03880000
TIWRK1 EQU $TMDID+2 RESIDENT WORK 03890000
TIWRK2 EQU TIWRK1+2 AREAS 03900000
TIWRK3 EQU TIWRK2+2 FOR INFORMATION 03910000
TIWRK4 EQU TIWRK3+2 SAVE ON 03920000
TIWRK5 EQU TIWRK4+2 SYSTEM DISASTER 03930000
TIWRK6 EQU TIWRK5+2 CONDITIONS 03940000
@XSNT3 EQU TIWRK6 ADDRESS OF TRANSIENT AREA 3 IOB 03940500
@CSXPT EQU TIWRK6+2 C/S ADDRESS OF ORIGINAL PCT 03940700
SPACE 2 03941000
*------------ PSEUDO OPEN/CLOSE SAVE AREA FOR ATTS --------------------*03942000
OPSATT EQU $TMDID+4 FSA ATT SAVE AREA 03943000
OPEATT EQU OPSATT+2 EXT BUF ATT SAVE AREA 03944000
OPSEG# EQU OPEATT+1 SAVE AREA FOR SEGMENT NUMBER 03945000
.CC800 AIF (&CM EQ 'N').CCEND 03950000
EJECT 03960000
************ COMMUNICATIONS MANAGEMENT WORK AREA 45 BYTES************ 03970000
AIF (&LABELS EQ 'ADDR').CC820 03980000
$CMWK EQU X'4400'+$END1+#LDFWK+#LCPWK+#LAMWK+#LTMWK START OF 03990000
$CM EQU 0 COMMUNICATION TASK WORK AREA 04000000
AGO .CC840 04010000
.CC820 ANOP 04020000
$CMWK EQU $END1+#LDFWK+#LCPWK+#LAMWK+#LTMWK START OF COMMUNICATION 04030000
$CM EQU $CMWK MANAGEMENT WORK AREA 04040000
.CC840 ANOP 04050000
SPACE 2 04060000
#CMDTF EQU $CM+1 SAVE AREA FOR DTF ADDRESS 04070000
#CMPL EQU #CMDTF+2 SAVE AREA FOR PARM LIST 04080000
SPACE 04090000
#CMTMA EQU #CMPL+2 SAVE AREA FOR TERMINAL ADDRESS 04100000
#CMBK1 EQU #CMTMA RETURN CODE FOR $CC4BL MESSAGE 04110000
SPACE 04120000
#CMTFT EQU #CMTMA+1 SAVE AREA FOR TERMINAL FEATURES 04130000
#CMBK2 EQU #CMTFT INTERNAL MSG TYPE FOR $CC4BL 04140000
SPACE 04150000
#CMPTR EQU #CMTFT+2 SAVE AREA FOR PREVIOUS POINTER 04160000
#CMFPL EQU #CMPTR+2 SAVE AREA FOR FOUND PARM LIST 04170000
#CMLSL EQU #CMFPL+2 LAST LCB CHECKED FOR PL NEEDING 04180000
* * GETMAIN 04190000
#CMTUB EQU #CMLSL+2 SAVE AREA FOR TUB ADDRESS 04200000
#CMERP EQU #CMTUB+2 @ OF DTF TO BE RESCHEDULED AFTER 04210000
* BEING IN CCP ERP 04220000
#CMSWT EQU #CMERP+1 CONTROL SWITCH 04230000
#CMARR EQU BIT0 1--OK TO MODIFY TCBARR 04240000
#CMFMD EQU BIT1 1--CM FREEMAIN DONE SINCE LAST 04250000
* * CHECK. 04260000
PRUFOF EQU BIT2 1--RESET PRUF MODE (PRUFOF) 04265000
SPACE 1 04270000
#OPEND EQU #CMSWT+1 T-P OP END COUNT 04280000
#CCMCL EQU #OPEND+2 MAXIMUM COMMAND BUFFER LENGTH 04290000
#RUFCL EQU #CCMCL+2 MAX READ UNDER FORMAT COM LEN 04300000
@TAS EQU #RUFCL+2 TERMINAL ATTRIBUTE SET ADDRESS 04310000
#HITAS EQU @TAS+1 HIGHEST TAS INDEX IN SYSTEM 04320000
SPACE 04330000
@CSSTT EQU #HITAS+2 DISK C/S OF STT 04340000
#HISTT EQU @CSSTT+1 NO ENTRIES IN STT(SW TERM TBL) 04350000
SPACE 04360000
@MLTAD EQU #HISTT+2 ADDRESS OF MLTA ADAPTER 04370000
* 0 INDICATES NO MLTA ADAPTER 04380000
@CKLST EQU @MLTAD+2 ADDRESS OF CHECK LIST 04390000
SPACE 1 04400000
*----------- COMMUNICATIONS MANAGEMENT ECB'S -------------------------* 04410000
$CMECB EQU @CKLST+1 ECB FOR POST OF CM 04420000
$CMFM EQU $CMECB+3 FREEMAIN POST OF CM 04430000
@ANYTP EQU $CMFM+4 ADDRESS OF COMMON TP FOR GETMAIN 04440000
@INVPL EQU @ANYTP+2 ADDRESS OF INV PL TP FOR GETMAIN 04450000
ERTIME EQU @INVPL+2 AUTO ERP RECOVERY TIME 04455000
SPACE 2 04460000
*----------- COMMUNICATIONS MANAGEMENT RESERVED AREA -----------------* 04470000
$CMRV2 EQU @INVPL+1 START OF 2 BYTE RESERVED AREA 04480000
.CCEND ANOP 04490000
SPACE 2 04492000
* PROGRAM REQUEST/ALLOCATION DUMMY TUB CHAIN POINTER 04494000
@DTUBQ EQU CORCNT+2 START ADDRESS OF DUMMY TUB'S 04496000
#RUFAD EQU @DTUBQ+2 ADDITIONAL DATA FOR PRUF'S. 04496200
TNTATT EQU #RUFAD+2 ATT LOCATION FOR TNT MOVEOUT 04496300
$RESER EQU TNTATT+2 RESERVE AREA. 04496400
SPACE 2 04496600
*-------------- BSCC COMMUNICATIONS AREA -------------------------* 04496800
SPACE 1 04497000
$CSFM EQU $RESER+1 FREEMIAN ECB 04497200
$CSECB EQU $CSFM+3 OP END AND NEW REQUEST ECB 04497400
#CSOND EQU $CSECB+3 OP END COUNT FOR LINES 3 AND 4 04497600
@CSNRQ EQU #CSOND+2 NEW REQUEST QUEUE 04497800
@CSTCB EQU @CSNRQ+2 ADDRESS OF BSCC TCB 04498000
#CSERP EQU @CSTCB+2 ADDRESS OF LCB IN ERROR RECOVERY 04498200
@CLB#1 EQU #CSERP+2 ADDRESS OF FIRST BSCC LCB 04498400
POLTIM EQU @CLB#1+4 POLL TIME FOR CS 04498600
SVLOOP EQU POLTIM+1 SAVE POLL LOOP COUNT FOR CS 04498800
WAITIM EQU SVLOOP+3 WAIT TIME FOR CS 04499000
#MATST EQU WAITIM+1 LOGICAL ATR START OF BSCC 04499200
#MATED EQU #MATST+1 LOGICAL ATR END OF BSCC 04499400
#MATX3 EQU #MATED+1 REAL ATR START OF XIENT AREA 3 04499600
SPACE 2 04500000
*---------------- DIRECTORY ADDRESSES ----------------------------* 04500500
*--INDIVIDUAL FIELDS ARE VALID ONLY IF A PROGRAM STATEMENT DESIGNATED-* 04501000
*--THAT UNIT AS ITS LOCATION, OTHERWISE THE FIELDS ARE LEFT AS ZEROES-* 04501500
*---------------------------------------------------------------------* 04502000
SPACE 1 04502500
CSPKR1 EQU #MATX3+2 C/S OF DIRECTORY ON UNIT R1 04503000
CSPKF1 EQU CSPKR1+2 C/S OF DIRECTORY ON UNIT F1 04503500
CSPKR2 EQU CSPKF1+2 C/S OF DIRECTORY ON UNIT R2 04504000
CSPKF2 EQU CSPKR2+2 C/S OF DIRECTORY ON UNIT F2 04504500
SPACE 2 04505000
*----------- SAVE AREAS FOR THE DISPLAY TRANSIENTS -------------------* 04505500
$CPIAR EQU CSPKF2+2 IAR 04506000
$CPXR1 EQU $CPIAR+2 TUB,TNT,OR FSB 04506500
$CPDTF EQU $CPXR1+2 DTF 04507000
$CPUSE EQU $CPDTF+1 PROGRAM USE COUNT SAVE FIELD 04507500
SPACE 2 04508000
*------------CCP TRACE, AUTO ERP, TNT MOVEOUT-------------------------* 04508100
SPACE 2 04508200
$FLGD EQU $CPUSE+1 FOURTH SYSTEM LEVEL FLAG BYTE 04508300
#BIT7 EQU BIT7 04508400
#DDRUN EQU BIT6 $CCPDD IS PRINTING TRACE 04508500
#NOPST EQU BIT5 SKIP FREEMAIN POST OF CM TASK 04508600
#CPALC EQU BIT4 $CCPDUMP FILE HAS BEEN ALLOCATED 04508700
#PRQIP EQU BIT3 PROGRAM REQUEST Q IN PROCESS 04508800
#AERPS EQU BIT2 AUTO ERP SUPPORTED 04508900
#AERPA EQU BIT1 AUTO ERP ACTIVE 04509000
TNTOUT EQU BIT0 1--TNT MOVE-OUT SUPPORTED 04509100
$CCTR@ EQU $FLGD+2 ADDRESS OF CCP TRACE INTERCEPT 04509200
$CCTR# EQU $CCTR@+1 2K BLOCKS IN TRACE REQUEST 04509300
SPACE 2 04509400
@AERPQ EQU $CCTR#+2 Q OF TUBS FOR AUTO ERP 04509500
SPACE 2 04509600
#DPEND EQU @AERPQ+2 CC/HH @ OF END OF $CCPDUMP 04509700
SPACE 2 04509710
* * 04509720
* THIS AREA IS CS'S MOVE TRANSLATE AREA * 04509730
* * 04509740
CS#MVL EQU #DPEND+2 BSCC MOVE PARAMETER 04509750
CS#TRL EQU * BSCC TRANSLATE PARAMETER LIST 04509760
SPACE 2 04509800
$CCEND EQU X'47FF' END OF $CCCOM 04510000
MEND 04520000