COMFVD2 
COMMON
  
#     COMFVD2 - VIRTUAL TERMINAL STORAGE MODULE 2. #
  
CONTROL NOLIST; 
CONTROL IFEQ LISTCON,1; 
CONTROL LIST; 
CONTROL FI; 
  
# 
***   COMFVD2 - VIRTUAL TERMINAL STORAGE MODULE 2.
* 
*     COPYRIGHT CONTROL DATA SYSTEMS INC.  1992.
* 
*     COMFVD2 CONTAINS *VDT* SUBROUTINE ARGUMENTS AND STORAGE.
# 
  
#     SUBROUTINE ARGUMENTS (FOR VIRTUAL INPUT ROUTINE)                # 
  
ITEM  VTCHAR     I = 0;              # CHARACTER RETURNED *VDT* INPUT # 
ITEM  VTINCR     I = 0;              # RESIDUAL CURSOR INCREMENT FLAG # 
ITEM  VTORDN     I = 0;              # VIRTUAL TERMINAL EVENT ORDINAL # 
ITEM  VTOXPOS    I = 0;              # PREVIOUS COLUMN (FOR HOME)     # 
ITEM  VTOYPOS    I = 0;              # PREVIOUS ROW (FOR HOME)        # 
ITEM  VTXCUR     I = 0;              # CURRENT COLUMN POSITION        # 
ITEM  VTYCUR     I = 0;              # CURRENT ROW POSITION           # 
  
#     STORAGE LOCATIONS (FOR ALL VIRTUAL ROUTINES)                    # 
  
ITEM  BOXWEIGHT  I = 0;              # BOX WEIGHT FOR LINE DRAWING    # 
ITEM  NUMBERBYTE I = 0;              # OUTPUT SEQUENCE BYTE NUMBER    # 
ITEM  VTCHARS    C(10) = " ";        # TEMPORARY STORAGE              # 
ITEM  VTCOUNT    I = 0;              # TEMPORARY STORAGE              # 
ITEM  VTDELT     I = 0;              # INCREMENTAL CURSOR MOVEMENT    # 
ITEM  VTHOLD     I = 0;              # TEMPORARY STORAGE              # 
ITEM  VTI        I = 0;              # TEMPORARY STORAGE              # 
ITEM  VTINPDATA  I = 0;              # INPUT DE-ACCUMULATOR           # 
ITEM  VTINPNEXT  I = 60;             # CURRENT INPUT BIT POSITION     # 
*IF DEF,QTRM
ITEM  VTINPWORD  I = 0;              # CURRENT QTRM INPUT WORD INDEX  # 
*ENDIF
ITEM  VTJ        I = 0;              # TEMPORARY STORAGE              # 
ITEM  VTMODEL    I = 0;              # TERMINAL MODEL                 # 
*IF UNDEF,QTRM
ITEM  VTOUTDATA  I = O"00070000000000000000";  # TRANSPARENT OUTPUT   # 
ITEM  VTOUTNEXT  I = 12;             # CURRENT OUTPUT BIT POSITION    # 
*ELSE 
ITEM  VTOUTDATA  I = 0;              # CURRENT QTRM OUTPUT WORD       # 
ITEM  VTOUTNEXT  I = 0;              # CURRENT QTRM OUTPUT BIT INDEX  # 
*ENDIF
ITEM  VTRESINP   I = 0;              # BLOCK MODE RESIDUAL INPUT      # 
ITEM  VTYMAX     I = 0;              # CURRENT NUMBER OF LINES -1     # 
ITEM  VTXMAX     I = 0;              # CURRENT NUMBER OF COLUMNS -1   # 
  
ARRAY ATTRIBWORD [0:0] P(1);         # CURRENT SCREEN ATTRIBUTES      # 
  BEGIN 
  ITEM ATTFULLWRD I(00,00,60) = [0]; # INITIALIZE ALL ATTRIBUTES ZERO # 
  ITEM ATTUNUSED  U(00,00,24);       # UNUSED                         # 
  ITEM ATTNEWMASK U(00,24,12);       # HOLDS NEW ATRIBUTES FOR VDTSAM # 
  ITEM ATTRIBSAME U(00,36,12);       # UNCHANGED ATTRIBUTES (VDTSAM)  # 
  ITEM ATTRIBMASK U(00,48,12);       # TWELVE BIT ATTRIBUTE MASK      # 
  ITEM ATTLOGICAL B(00,48,01);       # LOGICAL OR PHYSICAL ATTRIBUTE  # 
  ITEM ATTPROTECT B(00,49,01);       # PROTECT                        # 
  ITEM ATTGUARDMD B(00,50,01);       # GUARD MODE                     # 
  ITEM ATTRESERVD U(00,51,03);       # RESERVED                       # 
  ITEM ATTORDINAL U(00,54,06);       # LOGICAL ORDINAL                # 
  ITEM ATTUNDERLN B(00,56,01);       # UNDERLINE                      # 
  ITEM ATTALTERIN B(00,57,01);       # ALTERNATE INTENSITY            # 
  ITEM ATTINVERSE B(00,58,01);       # INVERSE VIDEO                  # 
  ITEM ATTBLINKMD B(00,59,01);       # BLINK MODE                     # 
  END 
  
ARRAY TDUPOINT [0:0] P(1);           # *TDU* TABLE POINTERS           # 
  BEGIN 
  ITEM TDUPONTERS I(00,00,60) = [0]; # INITIALIZE ALL POINTERS ZERO   # 
  ITEM TDURESID   B(00,00,01);       # RESIDENT TABLE FLAG            # 
  ITEM TDUNUSED   U(00,01,41);       # UNUSED                         # 
  ITEM TDUINDEX   U(00,42,18);       # INDEX INTO *TDU* TABLE         # 
  END 
  
ARRAY VTMODES [0:0] P(1);            # VIRTUAL TERMINAL MODES         # 
  BEGIN 
  ITEM VTALLMODES I(00,00,60) = [0]; # INITIALIZE ALL MODES FALSE     # 
  ITEM VTINSMODE  B(00,00,01);       # INSERT MODE                    # 
  ITEM VTTDUREAD  B(00,01,01);       # VALID *TDU* TABLE READ         # 
  ITEM VTCLRFRST  B(00,02,01);       # CLEAR TO EOL, THEN PRINT LINE  # 
  ITEM VTPSUNDREQ B(00,03,01);       # PSEUDO UNDERLINE REQUIRED      # 
  ITEM VTPSUNDACT B(00,04,01);       # PSEUDO UNDERLINE ACTIVE        # 
  ITEM VTMODECDC  I(00,05,37);       # RESERVED FOR CDC               # 
  ITEM VTNUMBLNK  I(00,42,18);       # BLANKS VS. *VDTPOS* THRESHOLD  # 
  END 
  
# END OF VIRTUAL TERMINAL STORAGE MODULE 2.                           # 
  
*IF DEF,QTRM
# END OF COMVDT COMMON BLOCK.                                         # 
  
END  # COMVDT # 
  
*ENDIF
CONTROL LIST; 
