File: FIDELT.FT of Tape: Various/System-Tapes/eb-plot
(Source file text)
SUBROUTINE FIDELT (IDX,IDY) C ----------------- C C GENERATE DELTA BYTES FOR IDX,IDY C DIMENSION IB(8) C C DETERMINE SECTOR C JDY = IDY JDX = IDX IF (JDX) 1020,1010,1000 1000 IF (JDY) 1110,1080,1080 1010 IF (JDY) 1110,1310,1100 1020 IF (JDY) 1090,1090,1100 C X>0 , Y>=0 1080 IBCOM = 47 GOTO 1120 C X<0 , Y<=0 1090 IBCOM = 55 JDX = -JDX JDY = -JDY GOTO 1120 C X<=0 , Y>0 1100 IBCOM = 63 JDX = -JDX GOTO 1120 C X>=0 , Y<0 1110 IBCOM = 71 JDY = -JDY C C DETERMINE NO OF BYTES FOR GREATER VALUE C 1120 I = JDX IF (JDX .LT. JDY) I = JDY IF (I .EQ. 0) RETURN NBYTE = 1 IF (I- 64) 1160,1130,1130 1130 NBYTE = 2 IF (I- 4096) 1160,1140,1140 1140 NBYTE = 3 IF (I-262144) 1160,1150,1150 1150 NBYTE = 4 C C INIT FOR X DIRECTION C 1160 I = JDX NB = 0 IR = 1 C C GENERATE THEM C 1170 IF (I .LE. 0) GOTO 1220 GOTO (1210,1200,1190,1180) , NBYTE C 1180 NB = NB+1 J = I/262144 IB(NB) = J+32 I = I-J*262144 C 1190 NB = NB+1 J = I/4096 IB(NB) = J+32 I = I-J*4096 C 1200 NB = NB+1 J = I/64 IB(NB) = J+32 I = I-J*64 C 1210 NB = NB+1 IB(NB) = I+32 C C LOOP FOR Y-DIRECTION C 1220 IF (IR-2) 1230,1240,1230 1230 IR = 2 I = JDY GOTO 1170 C C PUT DELTA COMMAND IN BUFFER C 1240 IBCOM = IBCOM + NBYTE IF (NB .NE. NBYTE) IBCOM = IBCOM + 4 CALL FIBYTE (IBCOM) DO 1300 I = 1,NB J = IB(I) 1300 CALL FIBYTE (J) 1310 RETURN END