         PCC      0
 TITLE 'L I T E R A L S  -  M O N I T O R   C O N S T A N T S'
*P**********************************************************************
*M*               LITERALS - MONITOR CONSTANT POOL
*P*      NAME: LITERALS
*P*      PURPOSE: THIS MODULE CONTAINS THE POOL OF FIXED CONSTANTS
*P*               FOR THE CP-V MONITOR.
*P*      DESCRIPTION: THIS MODULE IS LOADED AS THE FIRST MODULE
*P*               OF THE MONITOR ROOT IN ORDER TO BE LOCATED IN
*P*               VIRTUAL PAGE X'00' AND HENCE VISIBLE TO USERS
*P*               OF NORMAL PRIVILEGE LEVEL.  SOME USEFUL VARIABLES
*P*               DATA SUCH AS TIME,DATE ETC. HAVE ALSO BEEN INCLUDED
*P*               IN THIS MODULE FOR THE SAME REASON.
*P**********************************************************************
*P*
*P*               NAMING CONVENTION FOR CONSTANTS
*P*               -------------------------------
*P*
*P*      MASKS: RIGHT JUSTIFIED MASKS ARE NAMED BY THE WIDTH
*P*             OF THE MASK (DECIMAL) PREFIXED WITH AN 'M'.
*P*             FOR EXAMPLE, A 6 BIT MASK WOULD BE CALLED M6.
*P*             MASKS WHICH ARE NOT RIGHT JUSTIFIED ARE GENERALLY
*P*             NAMED FOR THEIR HEXADECIMAL VALUE AS DESCRIBED FOR
*P*             X AND Y VALUES.
*P*      CONSTANTS: RIGHT JUSTIFIED CONSTANTS ARE NAMED BY PREFIXING
*P*             THE HEXADECIMAL VALUE WITH AN 'X'. FOR EXAMPLE,
*P*             THE CONSTANT X'10' WOULD BE NAMED X10, MUCH LIKE
*P*             THE METASYMBOL CONSTANT WITHOUT THE QUOTES.
*P*                  LEFT JUSTIFIED CONSTANTS ARE NAMED BY PREFIXING
*P*             THE VALUE WITH A 'Y'.  THE VALUE FOLLOWING THE 'Y'
*P*             IS LEFT ALIGNED IN A WORD FILLED WITH TRAILING ZEROES.
*P*             FOR EXAMPLE, THE CONSTANT X'09000000' WOULD BE
*P*             NAMED Y09.
*P**********************************************************************
         PAGE
************************************************************************
*                           EXTERNAL DEFINITIONS
************************************************************************
         SPACE    2
* NOTE:  THE SYMBOL ':1STDEF' MUST BE THE FIRST DEF CARD IN THIS
*        MODULE.  IT IS USED BY SYMCON TO FORM THE :J2 LIBRARY.
         DEF      :1STDEF           FIRST DEF IN LITERALS
:1STDEF  EQU      %
         SPACE    2
         DEF      BLANK             CONSTANT X'40404040'
         DEF      BT31TO0           ORDERED TABLE OF BITS
         DEF      C:CTUN            CLOCK3 INTERVAL CURRENT
         DEF      C:MSM             MILLISECONDS SINCE MIDNIGHT
         DEF      C:TIC             # OF 2MS TICS SINCE STARTUP
         DEF      C:TINC            # OF TICS REMAINING IN CLOCK3 INTERVAL
         DEF      CORED             PHYSICAL CORE SIZE IN WORDS
         DEF      DATE              DATE: 'MMDD  YY'
         DEF      DOUBLEONE         DOUBLEWORD 1,1
         DEF      DOUBLEZERO        DOUBLEWORD 0,0
         DEF      FF3FFFFF          CONSTANT X'FF3FFFFF'
         DEF      FIN               CONSTANT '!FIN'
         DEF      GRANCYL           COUNT OF CYLINDER ALLOCATED GRANS
         DEF      GRANMIN           #GRAN BEFORE PURGE THRESHOLD
         DEF      GRANPACK          COUNT OF PACK GRANULES
         DEF      GRANRAD           COUNT OF RAD GRANULES
         DEF      GRANRESET         #GRAN TO RELEASE BEFORE RESETING GRANMIN
         DEF      GRANSYM           COUNT OF SYMBIONT GRANULES REMAINING
         DEF      GRAVAIL           GRANULE AVAILABLE COUNTS
         DEF      HEX               TEXT '0123456789ABCDEF'
         DEF      LITERALS:         PATCHING DEF
LITERALS: RES
         DEF      MASKS             ORDERED TABLE OF MASKS
         DEF      MINUS2            CONSTANT X'FFFFFFFE' (-2)
         DEF      MN9               CONSTANT X'0001FE00' PAGE MASK
         DEF      M11               CONSTANT X'000007FF'
         DEF      M13               CONSTANT X'00001FFF'
         DEF      M15               CONSTANT X'0000EFFF'
         DEF      M16               CONSTANT X'0000FFFF'
         DEF      M17               CONSTANT X'0001FFFF'
         DEF      M19               CONSTANT X'0007FFFF'
         DEF      M2                CONSTANT X'00000003'
         DEF      M21               CONSTANT X'001FFFFF'
         DEF      M22               CONSTANT X'003FFFFF'
         DEF      M23               CONSTANT X'007FFFFF'
         DEF      M24               CONSTANT X'00FFFFFF'
         DEF      M3                CONSTANT X'00000007'
         DEF      M31               CONSTANT X'7FFFFFFF'
         DEF      M32               CONSTANT X'FFFFFFFF'
         DEF      M4                CONSTANT X'0000000F'
         DEF      M5                CONSTANT X'0000001F'
         DEF      M6                CONSTANT X'0000003F'
         DEF      M7                CONSTANT X'0000007F'
         DEF      M8                CONSTANT X'000000FF'
         DEF      M9                CONSTANT X'000001FF'
         DEF      NB31TO0           ORDERED TABLE OF INVERTED BITS
         DEF      PURGEFLAG         PURGE-READY FLAG
         DEF      S:COUP            TERMINAL COUPLING FLAGS
         DEF      S:OPTION          PATCHABLE OPTION BITS
         DEF      STDOPT            STANDARD SETTING FOR J:OPT
         DEF      SYSACCT           CONSTANT ':SYS    '
         DEF      SYSACT            DOUBLEWORD TEXT ':SYS    '
         DEF      TINC              SAME AS C:TINC
         DEF      TIME              TIME: 'HHMM'
         DEF      TJOB              CONSTANT '!JOB' BANG-JOB
         DEF      XA                CONSTANT X'0000000A'
         DEF      XCF               CONSTANT X'000000CF'
         DEF      XDFFF             CONSTANT X'FFFFDFFF'
         DEF      XE7               CONSTANT X'000000E7'
         DEF      XF                CONSTANT X'0000000F'
         DEF      XFB               CONSTANT X'000000FB'
         DEF      XFC               CONSTANT X'000000FC'
         DEF      XFE               CONSTANT X'000000FE'
         DEF      XFF               CONSTANT X'000000FF'
         DEF      XFFEF             CONSTANT X'FFFFFFEF'
         DEF      XFFF              CONSTANT X'00000FFF'
         DEF      XFFFD             CONSTANT X'FFFFFFFD'
         DEF      XFFFE00           CONSTANT X'00FFFE00'
         DEF      XFFFF             CONSTANT X'0000FFFF'
         DEF      XFFFF00           CONSTANT X'00FFFF00'
         DEF      XFFF0             CONSTANT X'0000FFF0'
         DEF      X7FF800           CONSTANTX'007FF800'
         DEF      XFF00             CONSTANT X'0000FF00'
         DEF      XF0               CONSTANT X'000000F0'
         DEF      XF1FFFFFF         CONSTANT X'F1FFFFFF'
         DEF      XF3FF             CONSTANT X'FFFFF3FF'
         DEF      XF7FF             CONSTANT X'FFFFF7FF'
         DEF      XN2               CONSTANT X'FFFFFFFE' (-2)
         DEF      X0                CONSTANT X'00000000'
         DEF      X1                CONSTANT X'00000001'
         DEF      X1FE00            CONSTANT X'0001FE00'
         DEF      X1FFFF            CONSTANT X'0001FFFF'
         DEF      X10               CONSTANT X'00000010'
         DEF      X100              CONSTANT X'00000100'
         DEF      X1000FFFF         CONSTANT X'1000FFFF'
         DEF      X1000001          CONSTANT X'01000001'
         DEF      X2                CONSTANT X'00000002'
         DEF      X20               CONSTANT X'00000020'
         DEF      X3                CONSTANT X'00000003'
         DEF      X3FFE00           CONSTANT X'003FFE00'
         DEF      X4                CONSTANT X'00000004'
         DEF      X40               CONSTANT X'00000040'
         DEF      X400              CONSTANT X'00000400'
         DEF      X4000             CONSTANT X'00004000'
         DEF      X44               CONSTANT X'00000044'
         DEF      X500000D          CONSTANT X'0500000D'
         DEF      X7                CONSTANT X'00000007'
         DEF      X7F               CONSTANT X'0000007F'
         DEF      X7000             CONSTANT X'00007000'
         DEF      X8                CONSTANT X'00000008'
         DEF      X80               CONSTANT X'00000080'
         DEF      X8000             CONSTANT X'00008000'
         DEF      YA                CONSTANT X'A0000000'
         DEF      YBE               CONSTANT X'BE000000'
         DEF      YC                CONSTANT X'C0000000'
         DEF      YC1FF             CONSTANT X'C1FF0000'
         DEF      YE                CONSTANT X'E0000000'
         DEF      YF                CONSTANT X'F0000000'
         DEF      YFA               CONSTANT X'FA000000'
         DEF      YFF               CONSTANT X'FF000000'
         DEF      YFFF              CONSTANT X'FFF00000'
         DEF      YFFFE             CONSTANT X'FFFE0000'
         DEF      YFFFF             CONSTANT X'FFFF0000'
         DEF      Y0A               CONSTANT X'0A000000'
         DEF      Y0C               CONSTANT X'0C000000'
         DEF      Y00FE             CONSTANT X'00FE0000'
         DEF      Y00FF             CONSTANT X'00FF0000'
         DEF      Y000A             CONSTANT X'000A0000'
         DEF      Y000C             CONSTANT X'000C0000'
         DEF      Y0001             CONSTANT X'00010000'
         DEF      Y0002             CONSTANT X'00020000'
         DEF      Y0003             CONSTANT X'00030000'
         DEF      Y0004             CONSTANT X'00040000'
         DEF      Y0008             CONSTANT X'00080000'
         DEF      Y001              CONSTANT X'00100000'
         DEF      Y002              CONSTANT X'00200000'
         DEF      Y003              CONSTANT X'00300000'
         DEF      Y003E             CONSTANT X'003E0000'
         DEF      Y0038             CONSTANT X'00380000'
         DEF      Y004              CONSTANT X'00400000'
         DEF      Y008              CONSTANT X'00800000'
         DEF      Y01               CONSTANT X'01000000'
         DEF      Y01FE             CONSTANT X'01FE0000'
         DEF      Y02               CONSTANT X'02000000'
         DEF      Y03               CONSTANT X'03000000'
         DEF      Y04               CONSTANT X'04000000'
         DEF      Y05               CONSTANT X'05000000'
         DEF      Y06               CONSTANT X'06000000'
         DEF      Y07               CONSTANT X'07000000'
         DEF      Y08               CONSTANT X'08000000'
         DEF      Y09               CONSTANT X'09000000'
         DEF      Y1                CONSTANT X'10000000'
         DEF      Y15               CONSTANT X'15000000'
         DEF      Y18               CONSTANT X'18000000'
         DEF      Y2                CONSTANT X'20000000'
         DEF      Y3                CONSTANT X'30000000'
         DEF      Y4                CONSTANT X'40000000'
         DEF      Y40               CONSTANT X'40000000'
         DEF      Y6                CONSTANT X'60000000'
         DEF      Y7D               CONSTANT X'7D000000'
         DEF      Y7F               CONSTANT X'7F000000'
         DEF      Y8                CONSTANT X'80000000'
         DEF      Y82               CONSTANT X'82000000'
         DEF      1MIN              1.2 SECOND TICS REMAINING IN MINUTE
         SPACE    2
         DEF      24BM14            24 BIT -14
         DEF      24BM15            24 BIT -15
         DEF      24BM18            24 BIT -18
         DEF      24BM2             24 BIT -2
         PAGE
************************************************************************
*                           FIXED CONSTANTS
************************************************************************
         SPACE    2
         BOUND    8
X0       DATA     0,0
DOUBLEZERO EQU X0
DOUBLEONE DATA 1,1
         PAGE
*                           ORDERED TABLE OF BITS
************************************************************************
BT31TO0  EQU      %-1
I        DO       32
         DATA     1**(I-1)
         FIN
         PAGE
*                         ORDERED TABLE OF INVERTED BITS
************************************************************************
NB31TO0  EQU      %-1
I        DO       32
         DATA     X'FFFFFFFF'-1**(I-1)
         FIN
         PAGE
*                          ORDERED TABLE OF MASKS
************************************************************************
MASKS    EQU      %-1
I        DO       32
         DATA     -1+1**I
         FIN
         PAGE
************************************************************************
*                            NAMES FOR BITS
************************************************************************
X1       EQU      BT31TO0+1
X2       EQU      BT31TO0+2
X4       EQU      BT31TO0+3
X8       EQU      BT31TO0+4
X10      EQU      BT31TO0+5
X20      EQU      BT31TO0+6
X40      EQU      BT31TO0+7
X80      EQU      BT31TO0+8
X100     EQU      BT31TO0+9
X200     EQU      BT31TO0+10
X400     EQU      BT31TO0+11
X800     EQU      BT31TO0+12
X1000    EQU      BT31TO0+13
X2000    EQU      BT31TO0+14
X4000    EQU      BT31TO0+15
X8000    EQU      BT31TO0+16
Y0001    EQU      BT31TO0+17
Y0002    EQU      BT31TO0+18
Y0004    EQU      BT31TO0+19
Y0008    EQU      BT31TO0+20
Y001     EQU      BT31TO0+21
Y002     EQU      BT31TO0+22
Y004     EQU      BT31TO0+23
Y008     EQU      BT31TO0+24
Y01      EQU      BT31TO0+25
Y02      EQU      BT31TO0+26
Y04      EQU      BT31TO0+27
Y08      EQU      BT31TO0+28
Y1       EQU      BT31TO0+29
Y2       EQU      BT31TO0+30
Y4       EQU      BT31TO0+31
Y8       EQU      BT31TO0+32
         PAGE
************************************************************************
*                            NAMES FOR MASKS
************************************************************************
M1       EQU      MASKS+1
M2       EQU      MASKS+2
M3       EQU      MASKS+3
M4       EQU      MASKS+4
M5       EQU      MASKS+5
M6       EQU      MASKS+6
M7       EQU      MASKS+7
M8       EQU      MASKS+8
M9       EQU      MASKS+9
M10      EQU      MASKS+10
M11      EQU      MASKS+11
M12      EQU      MASKS+12
M13      EQU      MASKS+13
M14      EQU      MASKS+14
M15      EQU      MASKS+15
M16      EQU      MASKS+16
M17      EQU      MASKS+17
M18      EQU      MASKS+18
M19      EQU      MASKS+19
M20      EQU      MASKS+20
M21      EQU      MASKS+21
M22      EQU      MASKS+22
M23      EQU      MASKS+23
M24      EQU      MASKS+24
M25      EQU      MASKS+25
M26      EQU      MASKS+26
M27      EQU      MASKS+27
M28      EQU      MASKS+28
M29      EQU      MASKS+29
M30      EQU      MASKS+30
M31      EQU      MASKS+31
M32      EQU      MASKS+32
XFFF     EQU      M12
         PAGE
************************************************************************
*                           NAMES FOR INVERTED BITS
************************************************************************
XFFFE    EQU      NB31TO0+1
XFFFD    EQU      NB31TO0+2
XFFFB    EQU      NB31TO0+3
XFFF7    EQU      NB31TO0+4
XFFEF    EQU      NB31TO0+5
XFFDF    EQU      NB31TO0+6
XFFBF    EQU      NB31TO0+7
XFF7F    EQU      NB31TO0+8
XFEFF    EQU      NB31TO0+9
XFDFF    EQU      NB31TO0+10
XFBFF    EQU      NB31TO0+11
XF7FF    EQU      NB31TO0+12
XEFFF    EQU      NB31TO0+13
XDFFF    EQU      NB31TO0+14
XBFFF    EQU      NB31TO0+15
X7FFF    EQU      NB31TO0+16
MINUS2   EQU      NB31TO0+1
XN2      EQU      NB31TO0+1
XFFFFFEFF EQU     NB31TO0+9
         PAGE
************************************************************************
*                      MISC CONSTANTS
************************************************************************
XF       EQU      M4
XFF      EQU      M8
XFFFF    EQU      M16
X10000   EQU      Y0001
X1FFFF   EQU      M17
X7FFFF   EQU      M19
X1FE00   DATA     X'1FE00'
MN9      EQU      X1FE00
XFE      DATA     X'FE'
X7F      EQU      M7
X3       EQU      M2
XFB      DATA     X'FB'
XE7      DATA     X'E7'
X7       EQU      M3
X44      DATA     X'44'
XFF00    DATA     X'FF00'
XF3FF    DATA     X'F3FF'
XF1FFFFFF  DATA   X'F1FFFFFF'
XF0      DATA     X'F0'
X3FFE00  DATA     X'3FFE00'
XFFFE00  DATA     X'00FFFE00'
X1000FFFF DATA    X'1000FFFF'
X7000    DATA     X'7000'
X7FF800  DATA     X'7FF800'
XA       DATA     X'A'
XFFFF00  DATA     X'00FFFF00'
XFC      DATA     X'000000FC'
XCF      DATA     X'CF'
X1000001 DATA     X'1000001'
X500000D DATA     X'500000D'
XFFF0    DATA     X'FFF0'
Y000A    DATA     X'000A0000'
YBE      DATA     X'BE000000'
Y000C    DATA     X'C0000'
Y003     DATA     X'300000'
Y0038    DATA     X'380000'
Y00FE    DATA     X'FE0000'
Y00FF    DATA     X'FF0000'
Y03      DATA     X'3000000'
Y05      DATA     X'05000000'
Y06      DATA     X'6000000'
Y07      DATA     X'07000000'
Y09      DATA     X'9000000'
Y0A      DATA     X'0A000000'
YE       DATA     X'E0000000'
YF       DATA     X'F0000000'
Y0C      DATA     X'C000000'
Y01FE    DATA     X'01FE0000'
Y15      DATA     X'15000000'
Y18      DATA     X'18000000'
Y3       DATA     X'30000000'
Y40      EQU      Y4
Y6       DATA     X'60000000'
Y0003    DATA     X'30000'
Y7D      DATA     X'7D000000'
Y7F      DATA     X'7F000000'
YC1FF    DATA     X'C1FF0000'
Y003E    DATA     X'3E0000'
         PAGE
*
*        ORDERED TABLE FOR CONVERTING HEX AND DECIMAL FOR OUTPUT
*
HEX      TEXT     '0123456789ABCDEF'
Y82      DATA     X'82000000'
YA       DATA     X'A0000000'
YC       DATA     X'C0000000'
YFA      DATA     X'FA000000'
YFF      DATA     X'FF000000'
YFFF     DATA     X'FFF00000'
YFFFE    DATA     X'FFFE0000'
YFFFF    DATA     X'FFFF0000'
FF3FFFFF DATA     X'FF3FFFFF'
         DEF      X1FFFE
X1FFFE   DATA     X'1FFFE'
24BM2    GEN,8,24 0,-2
24BM18   GEN,8,24 0,-18
24BM14   GEN,8,24 0,-14
24BM15   GEN,8,24 ,-15
         SPACE    3
FIN      TEXT     '!FIN'
BLANK    TEXT     '    '
TJOB     TEXT     '!JOB'
         BOUND    8
SYSACCT  TEXT     ':SYS    '
SYSACT   EQU      SYSACCT
         PAGE
************************************************************************
*                 VARIABLE DATA FOR PAGE ZERO
*                  (VISIBLE TO ALL USERS)
************************************************************************
         SPACE    1
STDOPT   DATA     X'101'            USED BY LOGON & TEL TO INITIALIZE
*                                   J:OPT.
*  THE FOLLOWING WORD, S:OPTIONS, IS A GENERAL FLAG WORD
*  WHICH MAY BE CHANGED WITH ANLZ DELTA. BIT USAGE IS AS FOLLOWS:
*
*              -------------------------------------
*    S:OPTION  |        |        |     1 1| 1 1 1 1|
*    (1ST HW)  | 0 1 2 3| 4 5 6 7| 8 9 0 1| 2 3 4 5|
*              -------------------------------------
*
*              -------------------------------------
*    S:OPTION  | 1 1 1 1| 2 2 2 2| 2 2 2 2| 2 2 3 3|
*    (2ND HW)  | 6 7 8 9| 0 1 2 3| 4 5 6 7| 8 9 0 1|
*              -------------------------------------
*                                           | | | |
*                                           | | | \
*                                           | | |  - :ACCTLG ELAP. TIME
*                                           | | |    IN SECONDS
*                                           | | \
*                                           | |  - INHIBIT SPECIAL STEPOVR
*                                           | |    !XEQ FILE DETECTION
*                                           | \
*                                           |  - FASTER BUT LESS CERTAIN
*                                           |    TAPE AVR SEQUENCE - USE
*                                           |    WITH (HOTAVR) SYSGEN.
*                                           \
*                                            - INHIBIT SOUNDING OF AUDIO
*                                              ALARM ON DEVICE 'MOUNT' AND
*                                              'PLEASE RESPOND' MESSAGES.
*
S:OPTION DATA     X'00000000'
         SPACE    2
DATE     TEXT     '0101  70'
TIME     TEXT     '0000'
1MIN     DATA     50                # OF 1.2 SEC INTERVALS PER MINUTE
         PAGE
*                 COUNTERS FOR BUFGRAN-PURGE..USED IN DETERMINING
*                 WHEN OPERATOR MESSAGES AND AUTO PURGES MUST BE DONE
GRANRESET DATA    1                 NO. GRANULES TO RELEASE BEFORE
*                                   RESETTING GRANMIN
GRANMIN  DATA     1                 NO. GRANULES THAT MAY BE ALLOCATED
*                                   BEFORE REACHING A PURGE THRESHOLD
*                 ABOVE VALUES ASSURE PURGE WILL BE CALLED TO
*                 RESET THESE ITEMS
PURGEFLAG DATA    0                 BUFGRAN CALLS PURGE ONLY IF LATTER
*                                   READY, NON-ZERO SAYS READY
GRAVAIL  EQU      %
GRANRAD  DATA     0
GRANPACK DATA     0
GRANSYM  DATA     0
GRANCYL  DATA     0
         PAGE
************************************************************************
*                         CLOCK3 DATA FOR TIME OF DAY
************************************************************************
         SPACE    1
C:TIC    DATA     0                 # OF TICS SINCE SYSTEM STARTUP
C:CTUN   DATA     600               CURRENT CLOCK3 INTERVAL
C:TINC   DATA     600               WORKING INTERVAL FOR CLOCK3
C:MSM    DATA     0                 MILLISECONDS SINCE MIDNIGHT
*                                   (TARGET OF MTW,-1)
TINC     EQU      C:TINC            SYNONYM
         PAGE
************************************************************************
*                        TERMINAL COUPLING CONTROL
************************************************************************
         SPACE    1
S:COUP   DATA     X'FF'             TERMINAL COUPLING CONTROL FLAGS
************************************************************************
*                        PHYSICAL MEMORY SIZE
************************************************************************
         SPACE    1
*        THIS CELL CONTAINING THE SIZE OF PHYSICAL MEMORY IN WORDS
*        IS OF INTEREST TO THE LOADER.  USED TO ENABLE SPECIAL ACTION
*        REQUIRED FOR SYSGENS ON 64K SYSTEMS.
         SPACE    1
CORED    DATA     0                 PHYSICAL MEMORY SIZE IN WORDS
*                                   SETUP AT INITIALIZATION
* NOTE:  THE SYMBOL ':LSTDEF' MUST BE THE LAST DEF CARD IN THIS
*        MODULE.  IT IS USED BY SYMCON TO FORM THE :J2 LIBRARY.
         DEF      :LSTDEF           LAST DEF IN LITERALS
:LSTDEF  EQU      %
         END

