*DECK EXTINFO 
      PROC TSBINFO ( TSBSIZE , TSBADDR , TSBN );
      BEGIN # TSBINFO # 
*IF DEF,IMS 
 #
**
* 
*     1. PROC NAME           AUTHOR              DATE 
*        TSBINFO             M. D. PICKARD       76/11/30 
* 
*     2. FUNCTIONAL DESCRIPTION 
*        TSBINFO WILL SUPPLY THE CALLER WITH THE CURRENT FWA AND SIZE 
*        OF AN ASSIGNED TSB.
* 
*     3. METHOD USED
*        IF THE TSBN IS VALID THE FWA AND SIZE OF THE USER AREA ARE 
*        PUT IN THE CALLER"S PARAMETERS AND THE TSB IS SET NOT
*        MOVEABLE.
* 
*     4.  ENTRY PARAMETERS
*        TSBN (FORMAL)       TSB NUMBER OF AN ASSIGNED TSB
* 
*     5. EXIT PARAMETERS
*        TSBADDR             FWA OF USER AREA FOR TSB ASSOCIATED TO 
*        TSBSIZE             SIZE OF USER AREA FOR TSB ASSOCIATED TO
*                            TSBN 
*                            TSBN 
* 
*     6. COMDECKS CALLED
*        TSBBASE             TSB MANAGER BASED ARRAY DEFINITIONS
*        TSBDATA             TSB MANAGER DATA AREA DEFINITIONS
*        TSBDEFS             TSB MANAGER SYMPL DEFS 
*     7. ROUTINES CALLED
*        NONE.
* 
*     8. DAYFILE MESSAGES 
*        NONE.
* 
 #
*ENDIF
      CONTROL NOLIST;        # STOPS LIST TSBDEFS,TSBDATA,TSBBASE   # 
*CALL CYBERDEFS 
*CALL TSBDEFS 
*CALL TSBBASE 
*CALL TSBDATA 
      CONTROL LIST; 
      XREF PROC ABORT;
      ITEM
           TSBSIZE U,        # SIZE OF TSB USER AREA RETURNED          #
           TSBADDR U,        # ADDRESS OF TSB USER AREA RETURNED       #
           TSBN U;           # TSB NUMBER THAT INFO. IS WANTED FOR     #
      IF ( NOT TBUSY[TSBN] ) OR ( TSBN GQ LENGTH[0] ) OR
         ( TSBN LQ 0 )
      THEN                   # TSBN IS ILLEGAL                         #
        BEGIN 
        $BEGIN
        ABORT;
        $END
        TSBADDR = -1;        # SET FOR REJECT                          #
        TSBSIZE = 0;         # SET FOR REJECT                          #
        END 
      ELSE                   # EVERYTHING IS GO                        #
        BEGIN 
        P<BTSBHDR> = TTSBFWA[TSBN]; 
        BNOTMOV[0] = TRUE;   # SET NOT MOVEABLE                        #
        TSBADDR = TTSBFWA[TSBN] + TSBHDRL; # SET USER AREA FWA         #
        TSBSIZE = BTSBL[0] - TSBHDRL; # SET USER AREA SIZE             #
        END 
      RETURN; 
      END TERM # TSBINFO #
