File REVCOT.FT (FORTRAN source file)

Directory of image this file is from
This file as a plain text file

      SUBROUTINE REVCOT(IX,IY,X,Y)
      LOGICAL DEC
      COMMON /TKTRNX/ TMINVX,TMINVY,TMAXVX,TMAXVY,TREALX,TREALY,
     1 TIMAGX,TIMAGY,TRCOSF,TRSINF,TRSCAL,TRFACX,TRFACY,
     2 TRPAR1,TRPAR2,TRPAR3,TRPAR4,TRPAR5,TRPAR6,KMOFLG(8),KPAD2,
     3 KBAUDR,KGNFLG,KGRAFL,KHOMEY,KKMODE,KHORSZ,KVERSZ,KTBLSZ,
     4 KSIZEF,KLMRGN,KRMRGN,KFACTR,KTERM,KLINE,KZAXIS,KBEAMX,KBEAMY,
     5 KMOVEF,KPCHAR(5),KDASHT,KMINSX,KMINSY,KMAXSX,KMAXSY,KEYCON,
     6 KINLFT,KOTLFT,KUNIT
      E=2.7182818284
      DX=FLOAT(IX-KMINSX)/TRFACX
      DY=FLOAT(IY-KMINSY)/TRFACY
      KEY=KEYCON
      IF(KEYCON .LT. 1)KEY=5
      IF(KEYCON .GT. 4)KEY=4
C * LINEAR LOG POLAR USER ERROR
      GO TO(300, 400, 500, 600, 100  ),KEY
C * ERROR
100   X=IX
      Y=IY
      GO TO 700
C * LINEAR
300   X=DX+TMINVX
      Y=DY+TMINVY
      GO TO 700
C * LOG SCALES
400   KEYL=TRPAR1
      X=DX+TMINVX
      Y=DY+IMINVY
      IF(KEYL .NE. 2)X=E**(DX+TRPAR2)
      IF(KEYL .NE. 1)Y=E**(DY+TRPAR3)
      GO TO 700
C * POLAR
500   DX=FLOAT(IX)-TRPAR3
      DY=FLOAT(IY)-TRPAR4
      Y=ATAN2(DY,DX)*57.2957795131
      X=SQRT(DY*DY+DX*DX)/TRFACX+TRPAR5
C * ADJUST ANGLE MOD 2 PI TO VALUE WITHIN WINDOW
      DEC=.FALSE.
510   IF(Y .GT. TRPAR1) GO TO 530
C * INCREMENT ANGLE
      Y=Y+360.0
      GO TO 510
530   IF(Y .LE.TRPAR2) GO TO 550
C * DECREMENT ANGLE
      Y=Y-360.0
      DEC=.TRUE.
      GO TO 530
550   IF(DEC .AND. Y .LT. TRPAR1)Y=Y+360.0
      IF(TMINVX .GE. 0.)GO TO 560
      TR1A=AMOD(TRPAR1+180.,360.)
      TR2A=AMOD(TRPAR2+180.,360.)
      IF(Y.GT.AMAX1(TR1A,TR2A).OR.Y.LT.AMIN1(TR1A,TR2A))GO TO 560
      Y=AMOD(Y+180.,360.)
      X=-X

560 Y=Y/TRFACY+TRPAR6 GO TO 700 C * USER CONVERSION 600 CONTINUE C CALL UREVCT(IX,IY,X,Y) C * EXIT POINT 700 CALL PCLIPT(X,Y) RETURN END



Feel free to contact me, David Gesswein djg@pdp8online.com with any questions, comments on the web site, or if you have related equipment, documentation, software etc. you are willing to part with.  I am interested in anything PDP-8 related, computers, peripherals used with them, DEC or third party, or documentation. 

PDP-8 Home Page   PDP-8 Site Map   PDP-8 Site Search