! IMP dummies for the Fortran routines in the Versaplot Colour Random Library

external routine AUTHOR (integer name ITEXT, NC)
!   %integer I
!   %byte %name B
!   B == Byte (Addr (Itext))
!   Print string ("AUTHOR: ")
!   Print symbol (B) %and B == B[1] %for I = 1, 1, NC
!   Newline
end

external routine CIRCLE (real name X, Y, RADIUS,
                           integer name IWIDTH)
!   Print string ("CIRCLE: ")
!   %if RADIUS = 0 %start
!      Print string ("Radius = 0  =>  Ignored")
!      Newline
!      %return
!   %finish
!   %if RADIUS > 0 %start
!       Print string ("(solid)")
!   %else
!       Print string ("(outline)")
!   %finish
!   Print string (" X=")
!   Print (x,0,3)
!   Print string (" Y=")
!   Print (y,0,3)
!   Print string (" Rad=")
!   Print (|radius|,0,3)
!   Print string (" Iwidth=")
!   Write (Iwidth,0)
!   Newline
end

external routine CONVEX (real name X, Y, integer name NPT)
!   Print string ("CONVEX polygon of ".Itos(Npt,0)." sides")
!   Newline
end

external routine DASHLN (real name X, Y, integer name NPTS,
                           real name ONLTH, OFFLTH)
!   Print string ("DASHLN")
!   Newline
end

external routine DEFCLR (integer name ICLRX, ICPAT, NPWRD)
!   Print string ("DEFCLR")
!   Newline
end

external routine DEFPAT (integer name IP, JPAT, NTP)
!   Print string ("DEFPAT".ItoS(IP,0)." (".ItoS(NTP,0).")")
!   Newline
end

external routine DEFPEN (integer name IPEN, JWIDTH, NBON1, NBOFF1,
                                                        NBON2, NBOFF2)
!   Print string ("DEFPEN".Itos(Ipen,1).Itos(Jwidth,1).Itos(NBon1,1).-
!                          Itos(NBOff1,1).Itos(NBon2,1).Itos(NBOff2,1))
!   Newline
end

external routine FACTOR (real name FACT)
!   Print string ("FACTOR: ".RtoS(Fact,0,3))
!   Newline
end

external routine GRID   (real name X, Y, integer name NX,
                           real name XD, integer name NY,
                           real name YD, integer name LMASK)
!   Print string ("GRID")
!   Newline
end

external routine NEWPEN (integer name INP)
!   Print string ("NEWPEN: ".ItoS(INP,0))
!   Newline
end

external routine PAPER  (real name PXMIN, PYMIN, PXMAX, PYMAX)
!   Print string ("PAPER")
!   Newline
end

external routine PENCLR (integer name ICPEN, NUMCLR)
!   Print string ("PENCLR")
!   Newline
end

external routine PLOT   (real name X, Y, integer name IPEN)
!   Print string ("PLOT: ".Rtos(x,0,3).Rtos(y,1,3).Itos(ipen,1))
!   Newline
end

external routine PLOTS  (integer name ISF, INDEX, LDEV)
!   Print string ("PLOTS: ".Itos(ISF,0).ItoS(Index,1).ItoS(Ldev,1))
!   Newline
end

external routine RECT   (real name X1, X2, Y1, Y2,
                           integer name IFLG)
!   Print string ("RECT: ".Rtos(x1,0,3).Rtos(y1,1,3).RtoS(x2,4,3).RtoS(y2,1,3))
!   %if Iflg = 0 %start
!      print string (" No outline")
!   %else
!      print string (" with outline")
!   %finish
!   Newline
end

external routine SETPAT (integer name IARG)
!   Print string ("SETPAT: ".ItoS(IARG,0))
!   Newline
end

external routine TONCLR (integer name NCOLOR)
!   Print string ("TONCLR: ".ItoS(NCOLOR,0))
!   Newline
end

external routine TONE   (real name X, Y, integer name NE, NA)
!   Print string ("TONE")
!   Newline
end

external routine TONFLG (integer name IPTFLG)
!   Print string ("TONFLG: ".ItoS(IPTFLG,0))
!   Newline
end

external routine VPOPT  (integer name ICODE, IARG, real name RARG,
                           integer name IERROR)
    if Icode = -1 start
       RArg = 200 * 2.54
    else if Icode = -2
       Real (addr(Rarg)+4) = 45.0
       Real (addr(Rarg)+12) = 45.0
    else
    finish
!   IArg = -1
!   Print string ("VPOPT ")
!   %if Icode < 0 %start
!       print string ("Getting option ".Itos(-Icode,0))
!   %else
!       print string ("Setting option ".Itos(Icode,0))
!   %finish
!   Newline
end

external routine VPORT  (real name VXMIN, VYMIN, VXMAX, VYMAX)
!   Print string ("VPORT")
!   Print (VXmin, 1, 3); print symbol (','); Print (VYmin, 0, 3)
!   Print (VXmax, 1, 3); print symbol (','); Print (VYmax, 0, 3)
!   Newline
end

external routine VTEC   (integer name IDEN, IBYTES)
!   Print string ("VTEC")
!   Newline
end

external routine WINDOW (real name WXMIN, WYMIN, WXMAX, WYMAX)
!   Print string ("WINDOW")
!   Print (WXmin, 1, 3); print symbol (','); Print (WYmin, 0, 3)
!   Print (WXmax, 1, 3); print symbol (','); Print (WYmax, 0, 3)
!   Newline
end

end of file