]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MINICERN/packlib/kernlib/kerngen/tcgen/icdeci.F
This commit was generated by cvs2svn to compensate for changes in r2,
[u/mrichter/AliRoot.git] / MINICERN / packlib / kernlib / kerngen / tcgen / icdeci.F
1 *
2 * $Id$
3 *
4 * $Log$
5 * Revision 1.1.1.1  1996/02/15 17:49:44  mclareni
6 * Kernlib
7 *
8 *
9 #include "kerngen/pilot.h"
10       FUNCTION ICDECI (CHV,JLP,JRP)
11 C
12 C CERN PROGLIB# M432    ICDECI          .VERSION KERNFOR  4.22  890913
13 C ORIG. 04/10/88, JZ
14 C
15 C-    Read decimal integer from CHV(JL:JR)
16
17       DIMENSION    JLP(9), JRP(9)
18
19       COMMON /SLATE/ NDSLAT,NESLAT,NFSLAT,NGSLAT, DUMMY(36)
20       CHARACTER    CHV*(*)
21
22       JJ = JLP(1)
23       JR = JRP(1)
24
25       IVAL = 0
26       NDG  = 0
27       NEG  = 0
28       NGSLAT = 0
29
30    12 IF (JJ.GT.JR)          GO TO 99
31       IF (CHV(JJ:JJ).EQ.' ')  THEN
32           JJ = JJ + 1
33           GO TO 12
34         ELSEIF (CHV(JJ:JJ).EQ.'+')  THEN
35           JJ = JJ + 1
36         ELSEIF (CHV(JJ:JJ).EQ.'-')  THEN
37           NEG = 7
38           JJ  = JJ + 1
39         ENDIF
40
41    21 IF (JJ.GT.JR)          GO TO 99
42 #if defined(CERNLIB_QASCII)
43       K = ICHAR (CHV(JJ:JJ))
44       K = K - 48
45       IF (K.LT.0)            GO TO 98
46       IF (K.GE.10)           GO TO 98
47 #endif
48 #if defined(CERNLIB_QEBCDIC)
49       K = ICHAR (CHV(JJ:JJ))
50       K = K - 240
51       IF (K.LT.0)            GO TO 98
52       IF (K.GE.10)           GO TO 98
53 #endif
54       IVAL = 10*IVAL + K
55       NDG  = NDG + 1
56       JJ   = JJ + 1
57       GO TO 21
58
59    98 IF (CHV(JJ:JJ).NE.' ')  NGSLAT = JJ
60    99 NDSLAT = NDG
61       NESLAT = JJ
62       IF (NEG.NE.0)  THEN
63           IF (IVAL.NE.0)  IVAL = -IVAL
64         ENDIF
65       ICDECI = IVAL
66       RETURN
67       END