IDENT TSIM
ENTRY TSIM
TITLE TSIM - TERMINAL STATUS AND INFORMATION.
*COMMENT TSIM - TERMINAL STATUS AND INFORMATION.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SPACE 4
*** TSIM - TERMINAL STATUS AND INFORMATION.
* J.C.BOHNHOFF. CPD. 72/08/31.
SPACE 4
*CALL,COMKMAC
*CALL COMSPRD
SPACE 4
*** CALL FORMAT -
*
* FORTRAN EXTENDED
* CALL TSIM(CODE,MASK,CRIT,RLENG,LIST,LENG)
* COBOL
* ENTER TSIM USING CODE,MASK,CRIT,RLENG,LIST,LENG
*
* WHERE: CODE= 0 IF DATA BASE NAME FIELD IS TO BE SEARCHED.
* = 1 IF USER ARGUMENT FIELD IS TO BE SEARCHED.
* = 2 IF COMMUNICATION LINE FIELD IS TO BE SEARCHED.
* = 3 IF TERMINAL NAME FIELD IS TO BE SEARCHED.
* COBOL - COMPUTATIONAL-1
* FORTRAN EXTENDED - INTEGER
* MASK= A VALUE TAKEN AS A BINARY MASK.
* CRIT= CRITERION VALUE FOR SEARCH.
* RLENG= NUMBER OF ENTRIES FOUND. THIS ARGUMENT IS ALSO
* RETURNED AS A FORTRAN FUNCTION VALUE.
* COBOL - COMPUTATIONAL-1
* FORTRAN EXTENDED - INTEGER
* LIST= LOCATION OF A LIST TO CONTAIN FOUND ENTRIES.
* IF ZERO OR ABSENT, NO LIST IS RETURNED BUT RLENG
* IS GIVEN AS THE NUMBER OF FOUND ENTRIES.
* LENG= NUMBER OF WORDS THAT LIST CAN HOLD.
* IF ZERO OR ABSENT, NO LIST IS RETURNED BUT RLENG
* IS GIVEN AS THE NUMBER OF FOUND ENTRIES.
* ONLY THE LOWEST ORDER 12 BITS OF THIS VALUE
* ARE USED.
* COBOL - COMPUTATIONAL-1
* FORTRAN EXTENDED - INTEGER
*
* OPERATION:
* THE FIELD SPECIFIED BY *CODE* IS EXAMINED IN EACH TERMINAL
* TABLE ENTRY BY TAKING THE LOGICAL PRODUCT OF THE FIELD AND
* *MASK* AND THEN TAKING THE LOGICAL DIFFERENCE OF THIS PRODUCT
* AND *CRIT*. IF THIS RESULT IS ZERO, THE TERMINAL ENTRY IS
* PLACED IN *LIST*. IF NOT ZERO, NO ACTION.
*
* SEE *TRANEX* FOR TERMINAL TABLE FORMAT.
TSIM PS ENTRY/EXIT
SA2 A1+1 READ MASK ADDRESS
SA3 A1+2 READ CRITERION ADDRESS
SA2 X2 READ MASK
SA3 X3 READ CRITERION
BX6 X2 STORE MASK AND CRIT. ARGUMENTS
SA2 X1 READ CODE
BX7 X3
SA6 TSIA+1 STORE MASK
UX2 X2
SA5 A1+3 READ RLENG ADDRESS
SA7 TSIA+2 STORE CRITERION
SA1 A1+4 READ LIST ADDRESS
BX3 X3-X3 ASSUME NO LIST
MX0 42
ZR X1,TSI1 IF NO LIST, LENG
SA3 A1+1 READ LENG ADDRESS
BX1 -X0*X1 LIST ADDRESS
ZR X3,TSI1 IF NO LENG
SA3 X3 READ LENG
MX6 -12 EXTRACT LENGTH
BX3 -X6*X3
* FORM WORD 0 OF ARGUMENT LIST.
TSI1 MX6 6
LX2 -12 POSITION CODE
BX5 -X0*X5 RLENG ADDRESS
LX6 -6
LX1 30 POSITION LIST ADDRESS
BX2 X6*X2
LX3 18 LIST LENGTH
BX6 X1+X5 LIST, RLENG
IX7 X2+X3 CODE, LENG
BX6 X6+X7 COMPLETE WORD 0
SA6 TSIA
TSIM A6 ISSUE REQUEST
SA1 X5 RETURN RLENG
BX6 X1
JP TSIM RETURN
TSIA CON 0,0,0 ARGUMENT STORAGE
END