SUBROUTINE NUMBER (XPAGE,YPAGE,HEIGHT,FPN,ANGLE,NDEC)
X = XPAGE
Y = YPAGE
FPV = FPN
N = NDEC
MAXN = 9
IF (N - MAXN) 11, 11, 10
10 N = MAXN
11 IF (N + MAXN) 12, 20, 20
12 N = -MAXN
20 IF (FPV) 21, 30, 30
21 CALL SYMBOL (X,Y,HEIGHT,'-',ANGLE,1)
X = 999.
Y = 999.
30 MN = -N
IF (N) 31, 32, 32
31 MN = MN - 1
32 FPV = ABS(FPV) + (0.5 * 10. ** MN)
I = ALOG(FPV) * 0.4342944 + 1.0
ILP = I
IF (N + 1) 40, 41, 41
40 ILP = ILP + N + 1
41 IF (ILP) 50, 50, 51
50 CALL SYMBOL (X,Y,HEIGHT,'0',ANGLE,1)
X = 999.
Y = 999.
GO TO 61
51 DO 60 J = 1, ILP
K = FPV * 10. ** (J - I)
CALL SYMBOL (X,Y,HEIGHT,(K+48),ANGLE,0)
FPV = FPV - (FLOAT(K) * 10. ** (I - J))
X = 999.
60 Y = 999.
61 IF (N) 99, 70, 70
70 CALL SYMBOL (X,Y,HEIGHT,'.',ANGLE,1)
IF (N) 99, 99, 80
80 DO 90 J = 1, N
K = FPV * 10.
CALL SYMBOL (X,Y,HEIGHT,(K+48),ANGLE,0)
90 FPV = FPV * 10. - FLOAT(K)
99 RETURN
END