         PROC                                                           TCB00010
TCB      NAME  0                                                        TCB00020
         DO    0                                                        TCB00030
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *  *  TCB00040
*                                                                    *  TCB00050
*   THE FOLLOWING PROGRAMS ARE THE SOLE PROPERTY OF SPERRY           *  TCB00060
*                                                                    *  TCB00070
* UNIVAC CONTAINING ITS PROPRIETARY, CONFIDENTIAL INFORMATION        *  TCB00080
*                                                                    *  TCB00090
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *  *  TCB00100
         ENDO                                                           TCB00110
         GBL   &JT$$GEN                                                 TCB00120
         DO    '&JT$$GEN'='1'=0                                         TCB00130
&JT$$GEN SET   '1'                                                      TCB00140
*                                                                       TCB00150
*        TASK CONTROL BLOCK                                             TCB00160
*                                                                       TCB00170
***      NOTE: JT$PSW & JT$FPT MUST BE ALIGNED AS DOUBLEWORD            TCB00180
         DS    0F                                                       TCB00190
         CNOP  0,8                                                      TCB00200
JT$TCB   EQU   *                        BLOCK LABEL                     TCB00210
JT$LNK   DS    F                        KEY / LINK TO NEXT TCB          TCB00220
JT$KEY   EQU   JT$LNK                                                   TCB00230
JT$WAIT  DS    H                        WAIT BYTES                      TCB00240
         DS    H                        ICOR / ABSOLUTE WAIT BITS       TCB00250
JT$RLNK  DS    F                        LINK TO PREVIOUS TCB            TCB00260
JT$QID   EQU   JT$RLNK                  QID                             TCB00270
JT$IOC   DS    H                        OUTSTANDING I/O COUNT           TCB00280
JT$FLGS  DS    H                        FLAG BITS                       TCB00290
JT$CPU   DS    F                        ACCUM. CPU TIME OF THIS TASK    TCB00300
JT$PRE   DS    F                        PREAMBLE ADDRESS                TCB00310
JT$ECB   DS    F                        TRANSIENT ID / ECB ADDRESS      TCB00320
JT$TID   EQU   JT$ECB                                                   TCB00330
JT$TIM   DS    F                        SETIME EXPIRATION - MILLISECS.  TCB00340
JT$ORCYL EQU   JT$TIM                   SAVE ORIG. CYL (TMM ERR)        TCB00350
JT$OWN   EQU   JT$TIM+2                 TRANSIENT PARAM SAVE (2 BYTES)  TCB00360
         CNOP  0,8                                                      TCB00370
JT$PSW   DS    2F                       PSW SAVE AREA                   TCB00380
JT$SA    DS    16F                      REGISTER SAVE AREA              TCB00390
*                                                                       TCB00400
JT$WTLCK DS    F                        REASON WAIT FOR LOCK IS SET     TCB00410
*                                       (JT$USER & JT$LOCK MUST STAY    TCB00420
*                                            IN SAME ORDER)             TCB00430
JT$USER  DS    F                        USER FLAGS SET FOR THIS TASK    TCB00440
JT$LOCK  DS    F                        LOCK FLAGS SET FOR THIS TASK    TCB00450
*                                                                       TCB00460
*        SUPERVISOR TCBS (JT$PRE=0) WILL END AT THIS POINT              TCB00470
JT$TRLNG EQU   *-JT$TCB                 LENGTH OF TRANSIENT TCB         TCB00480
*                                                                       TCB00490
JT$PCIC  DS    2F                       PC ISLAND CODE PARAMETERS       TCB00500
JT$ITIC  DS    2F                       IT ISLAND CODE PARAMETERS       TCB00510
JT$ICCNT EQU   JT$PCIC+4                COUNT OF OUTSTANDING IC         TCB00520
*                                       (JT$SVC, JT$ERCOD, & JT$ERADD   TCB00530
*                                            MUST STAY IN SAME ORDER)   TCB00540
JT$SVC   DS    H                        SVC TO EXECUTE ON BEHALF OF TSK TCB00550
JT$ERCOD DS    H                        ERROR STATUS CODE               TCB00560
JT$ERADD DS    F                        AD. OF ERROR IF NOT PSW AD.     TCB00570
*                                                                       TCB00580
JT$PSWS  DS    2F                       PSW SAVE DURING JT$SVC EXECUTE  TCB00590
JT$TCBID DS    F                        SUB TASK VERTICAL ID            TCB00600
JT$SUBCT EQU   JT$TCBID+3               COUNT OF SUB TASK TO THIS TASK  TCB00610
JT$CSD   DS    F                        AD. OF CRNT JOB-STEP DIRECTORY  TCB00620
JT$TERMF DS    F                        PROGRAM TERMINATION FLAGS       TCB00630
JT$DMLST DS    F                        CRNT POSITION IN DM OPEN LIST   TCB00640
JT$SVFLG DC    Y(0)                     SETSVC FLAGS                    TCB00650
JT$SPLIO DC    Y(0)                     COUNT OF SPOOL I/O              TCB00660
JT$NOFPT EQU   *-JT$TCB                                                 TCB00670
*                                                                       TCB00680
         CNOP  0,8                                                      TCB00690
JT$FPT   DS    8F                       FLOATING PT. REG. SAVE AREA     TCB00700
JT$LNGTH EQU   *-JT$TCB                                                 TCB00710
*                                                                       TCB00720
*        TCB BITS                                                       TCB00730
*                                                                       TCB00740
BT$ICOR  EQU   (JT$WAIT+2-JT$TCB)*256+X'80'  ISLAND CODE OVERRIDE       TCB00750
*                                       ABSOLUTE WAIT BITS              TCB00760
BT$ACYLD EQU   (JT$WAIT+2-JT$TCB)*256+X'40'  ABSOLUTE COMM. YIELD       TCB00770
BT$WTLCK EQU   (JT$WAIT+2-JT$TCB)*256+X'20'  WAIT FOR LOCK FUNCTION     TCB00780
BT$WTCON EQU   (JT$WAIT+2-JT$TCB)*256+X'10'  WAIT FOR CONSOLE LINE      TCB00790
BT$WTOPR EQU   (JT$WAIT+2-JT$TCB)*256+X'08'  WAIT FOR OPERATOR REPLY    TCB00800
BT$WTTA  EQU   (JT$WAIT+2-JT$TCB)*256+X'04'  WAIT FOR TRANSIENT AREA    TCB00810
BT$WTTRN EQU   (JT$WAIT+2-JT$TCB)*256+X'02'  WAIT FOR TRANSIENT         TCB00820
BT$WTCAN EQU   (JT$WAIT+2-JT$TCB)*256+X'01'  WAIT FOR CANCL IN PROGRESS TCB00830
BT$WTMCN EQU   (JT$WAIT+3-JT$TCB)*256+X'80'  WAIT FOR MEM CONSOLIDATION TCB00840
*                                       NORMAL WAIT BITS                TCB00850
BT$PAUSE EQU   (JT$WAIT+1-JT$TCB)*256+X'01'  PAUSE                      TCB00860
BT$WTALL EQU   (JT$WAIT+1-JT$TCB)*256+X'02'  WAIT ALL                   TCB00870
BT$WAIT  EQU   (JT$WAIT+1-JT$TCB)*256+X'04'  WAIT                       TCB00880
BT$YIELD EQU   (JT$WAIT+1-JT$TCB)*256+X'08'  YIELD                      TCB00890
BT$WTTIM EQU   (JT$WAIT+1-JT$TCB)*256+X'10'  SETIME WAIT                TCB00900
BT$TYLD  EQU   (JT$WAIT+1-JT$TCB)*256+X'20'  TASK YIELD                 TCB00910
BT$WTSTT EQU   (JT$WAIT+1-JT$TCB)*256+X'40'  WAIT ALL SUBTASK TERMNTN   TCB00920
BT$CYLD  EQU   (JT$WAIT+1-JT$TCB)*256+X'80'  COMMUNICATIONS YIELD       TCB00930
BT$LOCK  EQU   (JT$WAIT-JT$TCB)*256+X'01'    WAIT FOR LOCKED FILE/TABLE TCB00940
BT$MONIT EQU   (JT$WAIT-JT$TCB)*256+X'02'    MONITOR WAIT               TCB00950
BT$WTLOD EQU   (JT$WAIT-JT$TCB)*256+X'04'    WAIT FOR LOADER TO FINISH  TCB00960
BT$WTAVR EQU   (JT$WAIT-JT$TCB)*256+X'08'   WAIT FOR VIC AVR            TCB00970
BT$WTICM EQU   (JT$WAIT-JT$TCB)*256+X'10'    WAIT ICAM OPEN UNTIL       TCB00980
*                                                 MEMCON COMPLETES      TCB00990
BT$IOLCK EQU   (JT$WAIT-JT$TCB)*256+X'20'         WAIT TRACK LOCK       TCB01000
BT$LKTAB EQU   (JT$WAIT-JT$TCB)*256+X'40'         WAIT TRACK TABLE ENT  TCB01010
*                                                                       TCB01020
BT$PSWSV EQU   (JT$FLGS-JT$TCB)*256+X'01'    ORIG. PSW HAS BEEN SAVED   TCB01030
BT$DFIP  EQU   (JT$FLGS-JT$TCB)*256+X'02'    DETACH FAMILY IN PROGRESS  TCB01040
BT$OPACT EQU   (JT$FLGS-JT$TCB)*256+X'04'    OPR WORKING ON THIS TCB    TCB01050
BT$ABICQ EQU   (JT$FLGS-JT$TCB)*256+X'08'    TASK ON ABTERM I.C WAIT Q  TCB01060
BT$ABICA EQU   (JT$FLGS-JT$TCB)*256+X'10'    TASK EXECUTING ABTERM I.C. TCB01070
BT$SETSV EQU   (JT$FLGS-JT$TCB)*256+X'40'    SET TERMINATION SVC        TCB01090
BT$ACTIC EQU   (JT$FLGS-JT$TCB)*256+X'80'    ACTIVATE IC REQUEST        TCB01100
BT$MCBSY EQU   (JT$FLGS+1-JT$TCB)*256+X'01'  MEMCON DID SETSVC ON TCB   TCB01110
BT$TRERR EQU   BT$MCBSY                      RETURN IN-LINE ON TRANS.   TCB01120
*                                                 ERROR.  (USED ONLY    TCB01130
*                                                 IN TRANSIENT TCB'S)   TCB01140
BT$DTBSY EQU   (JT$FLGS+1-JT$TCB)*256+X'02'  DETACH DID SETSVC ON TCB   TCB01150
BT$CAFLG EQU   (JT$FLGS+1-JT$TCB)*256+X'04'  CANCEL INDICATOR FLAG      TCB01160
BT$CPTCB EQU   (JT$FLGS+1-JT$TCB)*256+X'08'  THIS TCB DID CHECKPOINT    TCB01170
BT$NUSER EQU   (JT$FLGS+1-JT$TCB)*256+X'10'  TASK NOT ACTIVE FOR USER   TCB01175
BT$LPSW1 EQU   (JT$FLGS+1-JT$TCB)*256+X'20'  SWITCHER DOES LPSW 1
BT$HPR   EQU   (JT$FLGS+1-JT$TCB)*256+X'80'  SWITCHER HALT BEFORE LPSW
*                                       SETSVC FLAG BITS  (ORDER        TCB01180
*                                            IMPLIES PRIORITY)          TCB01190
BT$SVCAN EQU   (JT$SVFLG-JT$TCB)*256+X'80'   SETSVC CANCEL              TCB01200
BT$SVDUM EQU   (JT$SVFLG-JT$TCB)*256+X'40'   SETSVC DUMP                TCB01210
BT$SVEOJ EQU   (JT$SVFLG-JT$TCB)*256+X'20'   SETSVC EOJ                 TCB01220
BT$SVDET EQU   (JT$SVFLG-JT$TCB)*256+X'10'   SETSVC DETACH              TCB01230
BT$SVMEM EQU   (JT$SVFLG-JT$TCB)*256+X'08'   SETSVC IDLEJOB - MEMCON    TCB01240
BT$SVCKP EQU   (JT$SVFLG-JT$TCB)*256+X'04'   SETSVC IDLEJOB - CHKPT     TCB01250
BT$SVROL EQU   (JT$SVFLG-JT$TCB)*256+X'02'   SETSVC IDLEJOB - ROLLOUT   TCB01260
BT$SVBRK EQU   (JT$SVFLG-JT$TCB)*256+X'01'   SETSVC IDLEJOB - BRKPT     TCB01270
BT$SVRES EQU   (JT$SVFLG+1-JT$TCB)*256+X'80' SETSVC RESTART             TCB01280
*                                                                       TCB01290
BT$SETIM EQU   (JT$TIM-JT$TCB)*256+X'80'     ACTIVE SETIME BIT          TCB01300
*                                                                       TCB01310
BT$PCIC  EQU   (JT$PCIC-JT$TCB)*256+X'80'    PC ISLAND CODE PRESENT     TCB01320
BT$PCBSY EQU   (JT$PCIC-JT$TCB)*256+X'40'    PC ISLAND CODE BUSY        TCB01330
BT$PCOUT EQU   (JT$PCIC-JT$TCB)*256+X'20'    PC ISLAND CODE OUTSTD      TCB01340
BT$ITIC  EQU   (JT$ITIC-JT$TCB)*256+X'80'    IT ISLAND CODE PRESENT     TCB01350
BT$ITBSY EQU   (JT$ITIC-JT$TCB)*256+X'40'    IT ISLAND CODE BUSY        TCB01360
BT$ITOUT EQU   (JT$ITIC-JT$TCB)*256+X'20'    IT ISLAND CODE OUTSTD      TCB01370
         ENDO                                                           TCB01380
         END                                                            TCB01390
