SUBROUTINE GETNNB(IPT,RETCD) INCLUDE 'VKLUGPRM.FTN' C PARAMETER RRW = 32 C PARAMETER RCL = 32 C RRW=MAX REAL ROWS C RCL=MAX REAL COLS C RRW MUST BE 1 LARGER TO HANDLE 1ST 27 VARIABLES IN AVBLS C VBLS AND TYPE DIMENSIONED RRW,RCL C ************************************************** C * * C * SUBROUTINE GETNNB(IPT,RETCD) * C * * C ************************************************** C C C GET NEXT NON-BLANK ELEMENT FROM LINE STARTING AT NONBLK+1 C C RETCD = 1 O.K. C 2 NO NON-BLANK FOUND C C IPT POINTS TO POSITION IN LINE WHERE NEXT NON-BLANK IS FOUND. C IT IS UP TO CALLING PROGRAM TO RESET NONBLK FOR NEXT SCAN. C C C C C C C C GETNNB IS CALLED BY C C AT C BASCNG C CMND C NEXTEL C STRCMP C C C MODIFICATION CLASSES: M2 C C C C C VARIABLE USE C C BLANK ' ' C IPT RETURNS POSITION OF NEXT NON-BLANK. C K HOLDS TEMPORARY VALUES. C LEND LAST NON-BLANK IN LINE(80). C NONBLK HOLDS CHARACTER TO LEFT OF THE START OF THE SCAN. C RETCD HOLDS THE RETURN CODE. 1=O.K. 2=THE REST IS BLANKS. C C C C C SUBROUTINE GETNNB(IPT,RETCD) C C C INTEGER*2 IPT INTEGER*2 LEVEL,NONBLK,LEND INTEGER*2 VIEWSW,BASED,BASE,RETCD INTEGER*2 K C LOGICAL*1 LINE(80),ALPHA(27),COMMA,BLANK,RPAR,LPAR,EQ C COMMON LEVEL,LINE,NONBLK,LEND,VIEWSW,BASED COMMON /CONS/ ALPHA,COMMA,BLANK,RPAR,LPAR,EQ C RETCD=1 IF (NONBLK.GE.LEND) GOTO 999 C C AT LEAST 1 NON-BLANK EXISTS. K=NONBLK+1 DO 10 IPT=K,LEND IF (LINE(IPT).NE.BLANK) GOTO 1000 10 CONTINUE C C C ACTUALLY, SHOULD NEVER FALL THROUGH IF 'LEND' IS SET CORRECTLY. C C C THE REST ARE BLANKS 999 RETCD=2 1000 RETURN END