INTEGER FUNCTION IAND*2(A,B) INTEGER*2 A,B INTEGER*4 DA,DB,XIAND DA=A DB=B IAND=XIAND(DA,DB) RETURN END INTEGER FUNCTION IOR*2(A,B) INTEGER*2 A,B INTEGER*4 DA,DB,XIOR DA=A DB=B IOR=XIOR(DA,DB) RETURN END INTEGER FUNCTION IEOR*2(A,B) INTEGER*2 A,B INTEGER*4 DA,DB,XIEOR DA=A DB=B IEOR=XIEOR(DA,DB) RETURN END INTEGER FUNCTION ISHFT*2(A,B) INTEGER*2 A,B INTEGER*4 DA,DB,XISHFT DA=A DB=B ISHFT=XISHFT(DA,DB) RETURN END INTEGER FUNCTION NOT*2(A) INTEGER*2 A INTEGER DA,XNOT DA=A NOT=XNOT(DA) RETURN END INTEGER FUNCTION QQMOD*2(A,B) INTEGER*2 A,B INTEGER*4 DA,DB DA=A DB=B QQMOD=MOD(DA,DB) RETURN END SUBROUTINE QQDATE(BUF) INTEGER*2 BUF(1),OINFO(4) INTEGER*8 INFO EQUIVALENCE (OINFO(1),INFO) CALL ICL9CEIDATE(INFO) DO 10 IK=1,4 BUF(IK)=OINFO(IK) 10 CONTINUE END SUBROUTINE QQTIME(BUF) INTEGER*2 BUF(1),OINFO(4) INTEGER*8 INFO EQUIVALENCE (OINFO(1),INFO) CALL ICL9CEITIME(INFO) DO 10 IK=1,4 BUF(IK)=OINFO(IK) 10 CONTINUE END SUBROUTINE FMTW(CHAN,FMT,BUF,PNTR) INTEGER*2 CHAN,FMT(1),BUF(1),PNTR INTEGER*4 BIGFMT(3),Z10000 DATA Z10000/Z10000/ DO 10 IK=1,3 BIGFMT(IK)= (FMT(2*IK-1)*Z10000) + FMT(2*IK) 10 CONTINUE WRITE(CHAN,BIGFMT)(BUF(IK),IK=1,PNTR) RETURN END