*DECK     GTL 
          IDENT  GTL
          TITLE  GTL - GET TEXT LENGTH. 
          SST 
          SYSCOM B1 
          ENTRY  GTL
  
*COMMENT  GTL - GET TEXT LENGTH.
          COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1994. 
          SPACE  4,10 
**        GTL - GET TEXT LENGTH.
* 
*         J. G. CLARK        80/02/22.
          SPACE  4,10 
**        COMMON DECKS. 
* 
*         COMCMAC - CPU SYSTEM MACROS.
  
  
 GTL      SPACE  4,10 
**               GTL IS CALLED TO DETERMINE THE LENGTH OF A CHARACTER 
*         STRING IN ZERO BYTE TERMINATED FORMAT.  THE LENGTH
*         RETURNED IS IN CHARACTERS AND DOES NOT INCLUDE ANY
*         TRAILING SPACES.
* 
*         CALL FORMAT 
*                LEN = GTL (TEXT) 
* 
*         ENTRY  (A1) = PARAMETER LIST ADDRESS
* 
*         PARAMETER LIST FORMAT 
*         TEXT   - TEXT STRING TO DETERMINE LENGTH OF.
* 
*         EXIT   (X6) = COMPUTED LENGTH IN CHARACTERS 
*                (A1) = LAST WORD ADDRESS OF THE TEXT.
* 
*         USES   A - 1. 
*                B - NONE.
*                X - 0,1,2,3,6. 
* 
*         CALLS  NONE.
  
  
 GTL2     SX6    X6-2        CORRECT TEXT LENGTH
          LX1    -12
          BX2    -X0*X1 
 GTL3     ZR     X2,GTL2     IF NOT THE END OF TEXT 
          MX0    -6 
          BX2    -X0*X2 
          SX3    X2-1R
          SX6    X6-1 
          ZR     X2,GTLX     IF NOT END OF LINE 
          ZR     X3,GTLX     IF NOT END OF LINE 
          SX6    X6+1 
  
 GTL      SUBR               ENTRY/EXIT 
          SA1    X1 
          MX6    0           CLEAR TEXT LENGTH COUNTER
          SX0    -7777B      (MX0 -12)
          ZR     X1,GTLX     IF NO TEXT TO COUNT
 GTL1     SX6    X6+10       INCREMENT TEXT LENGTH COUNTER
          BX2    -X0*X1 
          ZR     X2,GTL2     IF END OF TEXT FOUND 
          SA1    A1+1 
          NZ     X1,GTL1     IF LAST WORD NOT EMPTY 
          EQ     GTL3        LOOP TO END OF TEXT
          SPACE  4
          END 
