SUBROUTINE LINLAB(NUM,IEXP,STRNG,LRMTEX) LOGICAL*1 LRMTEX BYTE STRNG(8) C BYTE BMINUS, BZERO(4) EXTERNAL LEN DATA BMINUS /'-'/ DATA BZERO /'0', '.', '0', 0/ C C LRMTEX = .TRUE. C C WORK WITH ABSOLUTE VALUE AS IT IS EASIER TO PUT SIGN IN NOW C IF (NUM .LT. 0) GO TO 10 NVAL = NUM ISTART = 1 GO TO 20 10 CONTINUE NVAL = -NUM ISTART = 2 STRNG(1) = BMINUS 20 CONTINUE IF (IEXP .GE. -2 .AND. IEXP .LE. 2) LRMTEX = .FALSE. IF (IEXP .GT. 0 .AND. (.NOT. LRMTEX)) NVAL = NVAL*10**IEXP CALL NUMSTR(NVAL,STRNG(ISTART)) IF ((NVAL .EQ. 0) .OR. LRMTEX .OR. (IEXP .GE. 0)) GOTO 800 C C NUMBER IS IN RANGE 10**-1 OR 10**-2, SO FORMAT PRETTY C N = -IEXP L = LEN(STRNG(ISTART)) IZBGN = 1 NIN = 3 IF (N .EQ. L) NIN = 2 C C IF N