COMTALT 
COMMON
  
#     COMTALT - COMMON DEFINITIONS FOR *SSALTER* ROUTINES.             #
                                               CONTROL NOLIST;
                                               CONTROL IFEQ LISTCON,1;
                                               CONTROL LIST;
                                               CONTROL FI;
      BEGIN  # COMTALT #
  
# 
***   COMTALT - COMMON DEFINITIONS FOR *SSALTER* ROUTINES.
* 
*     COMTALT CONTAINS THE ITEMS, ARRAYS AND THE
*     COMMON AREA USED BY *SSALTER* ROUTINES. 
* 
# 
  
  
# 
*     FIRST *K* DISPLAY COMMANDS
# 
  
      DEF ALTK$PLUS  #"+"#;          # ADVANCE K DISPLAY #
      DEF ALTK$END   #"END"#;        # END K DISPLAY #
      DEF ALTK$STOP  #"STOP"#;       # STOP PROGRAM IMMEDIATELY # 
      DEF ALTK$SM    #"SM"#;         # REQUEST *SM* DISPLAY # 
      DEF ALTK$CU    #"CU"#;         # REQUEST *CU* DISPLAY # 
  
# 
*     *SM*/*CU* *K* DISPLAY STATUSES
# 
  
      DEF ALTK$CLUP  #"X"#;          # CLEAN-UP STATUS #
      DEF ALTK$MAINT #"M"#;          # MAINTENANCE MODE STATUS #
      DEF ALTK$ONLINE #"U"#;         # ON-LINE STATUS # 
      DEF ALTK$OFFLINE #"F"#;        # OFF-LINE STATUS #
      DEF ALTK$AST   #"*"#;          # REQUESTED STATUS CHANGE #
  
  
# 
*     *CU* DISPLAY MISCELLANEOUS
# 
  
      DEF ALTK$CHON  #"ON"#;         # STATUS OF *ON* # 
      DEF ALTK$CHOFF #"OF"#;         # STATUS OF *OFF* #
      DEF ALTK$CIF0  #"0"#;          # CHANNEL INTERFACE 0 #
      DEF ALTK$CIF1  #"1"#;          # CHANNEL INTERFACE 1 #
      DEF ALTK$CIF2  #"2"#;          # CHANNEL INTERFACE 2 #
      DEF ALTK$CIF3  #"3"#;          # CHANNEL INTERFACE 3 #
      DEF ALTK$DRC2  #"2"#;            # DRC 2 #
      DEF ALTK$DRC3  #"3"#;            # DRC 3 #
      DEF ALTK$B6    #"      "#;     # 6 BLANK CHARACTERS # 
      DEF ALTK$B5    #"     "#;      # FIVE BLANK CHARACTERS #
      DEF ALTK$BL    #" "#;          # BLANKS # 
  
# 
*     LEFT SCREEN DESCRIPTION 
# 
  
      DEF LF$AL$NLIN   #27#;         # NUMBER OF LINES ON LEFT SCREEN # 
      DEF LF$AL$TITLE  #1#;          # TITLE LINE LOCATION #
      DEF LF$AL$BODY   #3#;          # START OF BODY #
      DEF LF$AL$KBREJ  #21#;         # KEYBOARD REJECT LINE # 
      DEF LF$AL$KBECHO #22#;         # KEYBOARD ECHO LINE # 
  
      DEF TITLELINE$AL #"           7990 SUBSYSTEM - SSALTER    "#; 
      DEF TITLEBOX$AL  #"           --------------------------  "#; 
      DEF TITLELINE$MD #"             SSEXEC INITIALIZATION     "#; 
  
# 
*     LEFT SCREEN CONTROLS
# 
  
      DEF KCSIZ$AL   #0#;            # SMALL CHARACTERS # 
      DEF KCFORM$AL  #1#;            # TEXT FORMAT #
      DEF KCSPACE$AL #1#;            # 721 SPACING #
  
  
# 
*     MISCELLANEOUS DEFINITIONS 
# 
  
      DEF BZEROES$AL #0#;            # CLEAR *B* DISPLAY LINE 2 # 
  
# 
*     COMTALT COMMON BLOCK
# 
  
      COMMON TALTCOM; 
  
        BEGIN  # TALTCOM #
  
        ITEM REQID$AL   I;           # REQUESTOR ID # 
        ITEM SSID$AL    I;           # SUBSYSTEM ID # 
  
# 
*     CONSOLE PARAMETER DISPLAY 
# 
  
        ARRAY CPARAM[0:0] S(1); 
          BEGIN 
          ITEM CP$KBADDR  U(00,00,24);  # KEYBOARD ADDRESS #
          ITEM CP$KRADDR  U(00,24,18);  # RIGHT SCREEN ADDRESS #
          ITEM CP$KLADDR  U(00,42,18);  # LEFT SCREEN ADDRESS # 
          END 
  
  
# 
*     CONSOLE KEYBOARD BUFFER 
# 
  
        ARRAY KBINPUTAL[0:0] S(8);
          BEGIN 
          ITEM KB$AL$SCAN  C(00,00,80);  # FULL RESPONSE #
          ITEM KB$AL$CLEAR U(00,00,60);  # CLEAR THE RESPONSE # 
          END 
  
# 
*     *KLEFTSCRNAL* IS THE BUFFER FOR THE LEFT SCREEN OF THE *SSALTER*
*     *K* DISPLAY.
# 
  
        ARRAY KLEFTSCRNAL [0:LF$AL$NLIN] S(6);
          BEGIN 
          ITEM KL$AL$CTL  U(00,00,60) = [0];  # K-CONTROL # 
          ITEM KL$AL$S    U(00,10,01) = [ KCSIZ$AL ];  # CHARACTER SIZE 
                                                       #
          ITEM KL$AL$F    U(00,11,01) = [ KCFORM$AL ];  # FORMAT #
          ITEM KL$AL$A    U(00,12,01) = [KCSPACE$AL];  # ALTERNATE
                                                         SPACING #
          ITEM KL$AL$COMP B(00,59,01);  # *DSD* ACTIVE FLAG # 
          ITEM KL$AL$LRSV C(01,00,42) = [ " " ];  # RESERVED #
          ITEM KL$AL$LINE C(00,00,52) = [  ## 
          , 
          LF$AL$NLIN(" ")];          # LINES ON LEFT SCREEN # 
  
          ITEM KL$AL$SUBL1 C(01,00,40);  # SUB-LINE # 
          ITEM KL$AL$ZERO U(05,12,48) = [  ## 
          0,
          LF$AL$NLIN(0) ];           # ZERO TERMINATOR #
  
          END 
  
  
# 
*     BUFFERS.
# 
  
        ARRAY ALTMSG [0:0] P(4);     # *SSALTER* FATAL ERROR MESSAGE #
          BEGIN 
          ITEM ALTMSG$LN  C(00,00,38);  # MESSAGE LINE #
          ITEM ALTMSG$ABN  C(00,00,18); 
          ITEM ALTMSG$PROC C(01,48,08);  # PROC NAME #
          ITEM ALTMSG$BLNK C(02,36,12) = ["            "];
          ITEM ALTMSG$VAL  C(02,06,10);  # NUMERIC VALUE #
          ITEM ALTMSG$TERM U(03,48,12) = [0];  # ZERO BYTE TERMINATOR # 
          END 
  
# 
*     ARRAYS TO HOLD UDT
# 
  
        ITEM UDT$HDR    U;           # UDT HEADER DATA #
  
        ARRAY UDT$M862[0:MAXCTNM1] S(UDTCNTL);; 
        ARRAY UDT$M861[0:MAXSML1] S(SMALT);;
  
# 
*     BASED ARRAY FOR UDT 
# 
  
        BASED 
        ARRAY UDT$LOC[0:0] S(1);; 
  
# 
*     BASED ARRAY FOR *CU* DISPLAY
# 
  
        BASED 
        ARRAY CU$SCREEN[0:LF$AL$NLIN] S(6); 
          BEGIN 
          ITEM CU$LN      C(00,00,58);  # FULL LINE # 
          ITEM CU$EOL     U(05,48,12);  # END OF LINE # 
          END 
  
# 
*     BASED ARRAY FOR *SM* DISPLAY
# 
  
        BASED 
        ARRAY SM$SCREEN[0:LF$AL$NLIN] S(6); 
          BEGIN 
          ITEM SM$LN      C(00,00,58);  # FULL LINE # 
          ITEM SM$EOL     U(05,48,12);  # END OF LINE # 
          END 
  
# 
*     MISCELLANEOUS ITEMS 
# 
  
        ITEM KREQCLEARAL   B;        # K-REQUEST MESSAGE CLEARED #
  
  
  
        END  # TALTCOM #
  
      END  # COMTALT #
  
                                               CONTROL LIST;
