        SUBROUTINE SYMBOL(ISYMNO,SYMSIZ)
	IMPLICIT NONE
	INTEGER ISYMNO
	REAL*4 SYMSIZ
C
C       THIS SUBROUTINE PLACES THE DESIRED SYMBOL ("ISYMNO") AT THE
C       CURRENT LOCATION WITH A SIZE OF "SYMSIZ".
C
        INCLUDE DIGLIB$KOM:GCVPOS.PRM
        REAL*4 SYMMOV(38)
	INTEGER ISYMST(5),NSYM,IPTR
	REAL*4 X0,Y0
        DATA SYMMOV /
     1   0.0,0.666667,  -0.5,-0.333333,  0.5,-0.333333,  0.0,0.666667,
     2   -0.5,0.5,  -0.5,-0.5,  0.5,-0.5,  0.5,0.5,  -0.5,0.5,
     3   0.0,0.5,  -0.4,0.0,  0.0,-0.5,  0.4,0.0,  0.0,0.5,
     4   -0.4,0.5,  0.4,0.5,  -0.4,-0.5,  0.4,-0.5,  -0.4,0.5/
        DATA ISYMST /1,9,19,29,39/
        DATA NSYM /4/
C
C       SAVE CURRENT LOCATION
C
        X0 = XVPOS
        Y0 = YVPOS
C
C       DRAW SYMBOL IN PROPER SIZE
C
        IF (ISYMNO .LE. 0 .OR. ISYMNO .GT. NSYM) RETURN
        IPTR = ISYMST(ISYMNO)
        CALL GSMOVE(X0+SYMSIZ*SYMMOV(IPTR),Y0+SYMSIZ*SYMMOV(IPTR+1))
100     IPTR = IPTR + 2
        IF (IPTR .EQ. ISYMST(ISYMNO+1)) GO TO 200
        CALL GSDRAW(X0+SYMSIZ*SYMMOV(IPTR),Y0+SYMSIZ*SYMMOV(IPTR+1))
        GO TO 100
200     CALL GSMOVE(X0,Y0)
        RETURN
        END
