SUBROUTINE EXTRC(BUFFER,DCTWRD,NUMWRD,MAXDIC) C+ C SUBROUTINE EXTRC WILL TAKE THE BUFFER READ IN RANDOM ACCESS C BLOCK IO AND FILL THE DICTIONARY WORD LIST TO BE CHECKED C AGAINST THE WORD. MAXDIC SHOULD NOT EVER BE >125 (I HOPE). C C LOCAL VARIABLES C POSITN - HOLDER FOR CURRENT POSITION INTO BUFFER READ C C SUBROUTINES REFERENCED C BLANK - FILL BYTE BUFFER WITH BLANKS C EXIT - FORTRAN EXIT ROUTINE C C- BYTE BUFFER(512),DCTWRD(25,125) INTEGER POSITN IF(MAXDIC.GT.125)THEN 10 WRITE(3,1000) CALL EXIT END IF IF(NUMWRD.GT.0)CALL BLANK(DCTWRD,25*NUMWRD) NUMWRD=1 !NUMBER OF WORDS IN BUFFER FOUND POSITN=1 DO 20,I=1,512 !DO ALL THE BYTES IF(BUFFER(I).NE.'0'O)THEN !NULL SEPERATES THE WORDS DCTWRD(POSITN,NUMWRD)=BUFFER(I) POSITN=POSITN+1 ELSE IF(I.EQ.512.OR.BUFFER(I+1).EQ.'0'O)RETURN POSITN=1 !REPOSITN TO START OF WORD IF(NUMWRD.LT.125)THEN NUMWRD=NUMWRD+1 !ANOTHER WORD FOUND ELSE GO TO 10 END IF END IF 20 CONTINUE RETURN 1000 FORMAT(' SPE - EXTRC >DCTWRD SIZE') END