SUBROUTINE MANDFM (XL,YL,SIDEX,SIDEY,NITER,COL,MCPAX,MCPAY)
C
C COPYRIGHT (C) 1985-1992 BY ART MATRIX. ALL RIGHTS RESERVED.
C
IMPLICIT REAL*8 (A-H,O-Z)
C
INCLUDE 'RC.INC'
C
INTEGER*2 COL(0:MCPAX,0:MCPAY)
C
COMPLEX*16 Z,C,FX
C
C**********************************************************************
C**********************************************************************
C
CALL DRVID ('FM ',102,1,2,5)
C
C***********************************************************************
C***********************************************************************
C
C ESC = 4D00
ESC = 10000
C
DO 2000 IY = 0,MCPAY
C
Y = YL + (IY*SIDEY)/MCPAY
C
CALL SHOWIY (10,IY,Y)
IF (RC .EQ. 1) RETURN
C
DO 1000 IX = 0,MCPAX
C
X = XL + (IX*SIDEX)/MCPAX
C
C**********************************************************************
C**********************************************************************
C
C = DCMPLX(X,Y)
FX = 1 - CDSQRT(1-4*C)
IF (DREAL(FX)*DREAL(FX)+IMAG(FX)*IMAG(FX) .LT. 1D0) GOTO 430
FX = 1 + C
IF (DREAL(FX)*DREAL(FX)+IMAG(FX)*IMAG(FX) .LE. 1/16D0) GOTO 430
Z = 0
DO 400 I = 1,NITER
C
Z = Z*Z +C
C
IF (DREAL(Z)*DREAL(Z) + IMAG(Z)*IMAG(Z) .GT. ESC ) GOTO 420
C
400 CONTINUE
C
410 COL(IX,IY) = 0
GOTO 1000
C
430 COL(IX,IY) = 0
GOTO 1000
C
420 IF (IMAG(Z) .GE. 0) THEN
COL(IX,IY) = 1 + 5*I
ELSE
COL(IX,IY) = 4 + 5*I
ENDIF
C
C***********************************************************************
C***********************************************************************
C
1000 CONTINUE
2000 CONTINUE
RETURN
END