FTN,L C C C CC************************************************************ C (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1978. ALL RIGHTS * C RESERVED. NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, RE- * C PRODUCED, OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITH- * C OUT THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY. * CC************************************************************ C C C C NAME: INTERACTIVE COMMANDS:WHERE,CURCOR,DIGITIZE C SOURCE: 92840 - 18057 C RELOC: 92840 - 16001 C C C CC*********************************************************** C SUBROUTINE INTAC(IND, IGCB,XCORD,YCORD, 1IZCRD), 92840-16001 REV.1819 780515 INTEGER GRIFX INTEGER CURSR,DIGTZ,POSCR DIMENSION VAR(8),ICODE(2),IBUFR(3),ENDPT(4) DIMENSION IEBUF(4) EQUIVALENCE (VAR,A),(VAR(2),B),(VAR(3),C) EQUIVALENCE (VAR(4),D),(VAR(5),X),(VAR(6),Y) EQUIVALENCE (VAR(7),X0),(VAR(8),Y0) EQUIVALENCE (ENDPT,G1X),(ENDPT(2),G1Y),(ENDPT(3),G2X) EQUIVALENCE (ENDPT(4),G2Y) EQUIVALENCE (ICODE(2),ICD2),(IBUFR(2),IB2),(IBUFR(3),IB3) C DATA X0/0./ DATA Y0/0./ DATA CURSR/5403B/ DATA DIGTZ/6003B/ DATA POSCR/25402B/ C THIS IS THE FUNCTIONAL MODULE FOR PROCESSING THE C INTERACTIVE AGL COMMANDS WHERE, CURSOR, DIGITIZE AND POINT. CCCC C THIS CALL ESTABLISHES AN ADDRESS LINK BETWEEN THE GRAPGHICS C PACKAGE AND THE CURRENT GCB AND ALSO CHECKS FOR A SUSPENDED GCB. C ISUSP= 0 CALL GCBIM(99,1,IGCB,ISUSP) IF(ISUSP.NE.0)RETURN C C GET THE APPROPRIATE CONSTANTS TO CONVERT XCORD AND YCORD C TO CURRENT UNIT SYSTEM (UDU'S OR GDU'S). C ICD2 = 18 ICODE = IADCD(D) CALL GCBIM(ICODE,2,VAR,0,1) GO TO(10,20,30,40),IND C C WHERE - GET LOGICAL PEN POSITION C 10 CALL GRSTS(1,600B,IZCRD) IF(IZCRD.NE.0)IZCRD = 1 15 XCORD = (X - B)/A YCORD = (Y - D)/C RETURN C C CURSOR - GET CURSOR POSITION WITHOUT WAIT C 20 CALL OUTPT(1,CURSR,1) 25 CALL GCBIM(16,1,IBUFR,3,1) X = IBUFR Y = IB2 IZCRD = IB3 GO TO 15 C C DIGITIZE C 30 CALL OUTPT(1,DIGTZ,1) GO TO 25 C C POINTER C 40 X = XCORD * A + B Y = YCORD * C + D C C GET HARD CLIP ENDPOINTS C IBUFR = POSCR IB2 = GRIFX(X) IB3 = GRIFX(Y) CALL OUTPT(1,IBUFR,2) RETURN END END$