SUBROUTINE GETIN(WORD1,WORD1X,WORD2,WORD2X) C GET A COMMAND FROM THE ADVENTURER. SNARF OUT THE FIRST WORD, PAD IT WITH C BLANKS, AND RETURN IT IN WORD1. CHARS 5 THRU 8 ARE RETURNED IN WORD1X, IN C CASE WE NEED TO PRINT OUT THE WHOLE WORD IN AN ERROR MESSAGE. ANY NUMBER OF C BLANKS MAY FOLLOW THE WORD. IF A SECOND WORD APPEARS, IT IS RETURNED IN C WORD2 (CHARS 5 THRU 8 IN WORD2X), ELSE WORD2 IS SET TO ZERO. IMPLICIT INTEGER*4 (A-Z) C INTEGER*2 ASCVAR LOGICAL BLKLIN LOGICAL*1 FRST(20) COMMON /BLKCOM/ BLKLIN IF(BLKLIN) WRITE(*,1) 1 FORMAT() 2 ACCEPT 3,K,FRST 3 FORMAT(Q,20A1) ST1=0 ST2=1 IX1=0 IX2=0 I=0 10 I=I+1 ST1=ST1+1 IF(I.GT.20) GOTO 2 IF(FRST(I).EQ.' ') GOTO 10 15 IX1=IX1+1 I=I+1 IF(I.GT.20) GOTO 500 IF(FRST(I).NE.' ') GOTO 15 20 I=I+1 IF(I.GT.20) GOTO 500 IF(FRST(I).EQ.' ') GOTO 20 ST2=I 25 IX2=IX2+1 I=I+1 IF(I.GT.20) GOTO 500 IF(FRST(I).NE.' ') GOTO 25 500 IX1=MIN0(8,IX1) IX2=MIN0(8,IX2) DECODE(IX1,99,FRST(ST1)) WORD1,WORD1X 99 FORMAT(2A4) WORD2=0 IF(IX2.EQ.0) RETURN DECODE(IX2,99,FRST(ST2)) WORD2,WORD2X RETURN END