PROGRAM GETDRV INTEGER RECBUF(15) INTEGER SNDBUF(13) LOGICAL*1 STATE(16) EQUIVALENCE(SNDBUF,STATE) INTEGER STAWRD EQUIVALENCE(SNDBUF(9),STAWRD) INTEGER IDS INTEGER IPARAM(6) INTEGER IOSB(2) BYTE ISB(4) EQUIVALENCE(ISB,IOSB) BYTE ERRBUF(30) DATA ERRBUF/ 1' ',' ','G','E','T','D','R','V',' ','-',' ','C','O','M','M','U','N 1','I','C','A','T','I','O','N',' ','E','R','R','O','R'/ INTEGER ERRSIZ DATA ERRSIZ/30/ BYTE CR4 DATA CR4/"15/ BYTE LF4 DATA LF4/"12/ EQUIVALENCE(CR4,ERRBUF) EQUIVALENCE(LF4,ERRBUF(2)) INTEGER IOWBT DATA IOWBT/"000500/ CONTINUE CALL RECEIV(,RECBUF,,IDS) 30003 CONTINUE IF(.NOT.(IDS.EQ.1) )GOTO 30004 CALL DRV11(STATE,STAWRD) CALL SEND(RECBUF,SNDBUF,,IDS) IF (IDS.NE.1) GOTO 30001 CALL EMST(RECBUF,1,IDS) IF (IDS.NE.1) GOTO 30001 CALL WAIT(RECBUF(3),2) CALL RECOEX(,RECBUF,,IDS) GOTO 30003 30004 CONTINUE GOTO 30002 30001 CONTINUE 30002 CONTINUE CALL GETADR(IPARAM(1),ERRBUF) IPARAM(2)=ERRSIZ IPARAM(3)=0 CALL WTQIO(IOWBT,1,2,,ISB,IPARAM,IDS) CALL EXST(IDS) END