1 /*  -- translated by f2c (version 20100827).
2    You must link the resulting object file with libf2c:
3 	on Microsoft Windows system, link with libf2c.lib;
4 	on Linux or Unix systems, link with .../path/to/libf2c.a -lm
5 	or, if you install libf2c.a in a standard place, with -lf2c -lm
6 	-- in that order, at the end of the command line, as in
7 		cc *.o -lf2c -lm
8 	Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
9 
10 		http://www.netlib.org/f2c/libf2c.zip
11 */
12 
13 #include "libtinyf2c.h"
14 
15 /* Table of constant values */
16 
17 static integer c__2 = 2;
18 static real c_b15 = 0.f;
19 static real c_b17 = 3.f;
20 
21 /* ----------------------------------------------------------------------- */
22 /*     USPACK DRAW Y-AXIS (LOG)                        DCL 5.0  95/09/04 */
23 /* ----------------------------------------------------------------------- */
24 /*     Copyright (C) 2000-2004 GFD Dennou Club. All rights reserved. */
25 /* ----------------------------------------------------------------------- */
usyaxl_(char * cys,ftnlen cys_len)26 /* Subroutine */ int usyaxl_(char *cys, ftnlen cys_len)
27 {
28     /* System generated locals */
29     address a__1[2];
30     integer i__1, i__2[2];
31     char ch__1[32];
32 
33     /* Builtin functions */
34     integer i_len(char *, ftnlen);
35     /* Subroutine */ int s_cat(char *, char **, integer *, integer *, ftnlen),
36 	     s_copy(char *, char *, ftnlen, ftnlen);
37 
38     /* Local variables */
39     static integer i__;
40     static char cp[8];
41     static integer it, itr, nys;
42     static logical lab1;
43     static real yfac;
44     static integer nlbl;
45     static char cpos[1];
46     extern integer lenz_(char *, ftnlen);
47     static real xmin, ymin, xmax, ymax, ymina, ymaxa;
48     static char cunit__[32], cysub[32];
49     extern /* Character */ VOID csblbl_(char *, ftnlen, real *, real *, char *
50 	    , ftnlen);
51     extern /* Subroutine */ int msgdmp_(char *, char *, char *, ftnlen,
52 	    ftnlen, ftnlen), uliget_(char *, integer *, ftnlen), uscget_(char
53 	    *, char *, ftnlen, ftnlen);
54     static integer nticks;
55     extern /* Subroutine */ int usiget_(char *, integer *, ftnlen), sgqwnd_(
56 	    real *, real *, real *, real *), uliset_(char *, integer *,
57 	    ftnlen), sgswnd_(real *, real *, real *, real *), sgstrf_(void),
58 	    usrget_(char *, real *, ftnlen), uzlget_(char *, logical *,
59 	    ftnlen), ulylog_(char *, integer *, integer *, ftnlen), sgqtrn_(
60 	    integer *);
61     static integer itypey;
62     extern /* Subroutine */ int usysub_(char *, char *, char *, real *,
63 	    ftnlen, ftnlen, ftnlen);
64 
65     usiget_("NLBLY", &nlbl, (ftnlen)5);
66     usiget_("NTICKSY", &nticks, (ftnlen)7);
67     usiget_("ITYPEY", &itypey, (ftnlen)6);
68     usrget_("YFAC", &yfac, (ftnlen)4);
69     uscget_("CYUNIT", cunit__, (ftnlen)6, (ftnlen)32);
70     uliget_("IYTYPE", &it, (ftnlen)6);
71     uliset_("IYTYPE", &itypey, (ftnlen)6);
72     sgqtrn_(&itr);
73     if (! (itr == 2 || itr == 4)) {
74 	msgdmp_("E", "USXAXL", "INVALID TRANSFORMATION NUMBER.", (ftnlen)1, (
75 		ftnlen)6, (ftnlen)30);
76     }
77     sgqwnd_(&xmin, &xmax, &ymin, &ymax);
78     ymina = ymin / yfac;
79     ymaxa = ymax / yfac;
80     sgswnd_(&xmin, &xmax, &ymina, &ymaxa);
81     sgstrf_();
82 /* ---------------------------- Y-AXIS ----------------------------------- */
83 /* Computing MIN */
84     i__1 = i_len(cys, cys_len);
85     nys = min(i__1,2);
86     i__1 = nys;
87     for (i__ = 1; i__ <= i__1; ++i__) {
88 	ulylog_(cys + (i__ - 1), &nlbl, &nticks, (ftnlen)1);
89 /* Writing concatenation */
90 	i__2[0] = 6, a__1[0] = "LABELY";
91 	i__2[1] = 1, a__1[1] = cys + (i__ - 1);
92 	s_cat(cp, a__1, i__2, &c__2, (ftnlen)8);
93 	uzlget_(cp, &lab1, (ftnlen)8);
94 	if (lab1) {
95 	    csblbl_(ch__1, (ftnlen)32, &yfac, &c_b15, cunit__, (ftnlen)32);
96 	    s_copy(cysub, ch__1, (ftnlen)32, (ftnlen)32);
97 	    if (lenz_(cysub, (ftnlen)32) != 0) {
98 		uscget_("CYSPOS", cpos, (ftnlen)6, (ftnlen)1);
99 		usysub_(cys + (i__ - 1), cpos, cysub, &c_b17, (ftnlen)1, (
100 			ftnlen)1, (ftnlen)32);
101 	    }
102 	}
103 /* L100: */
104     }
105 /* ----------------------------------------------------------------------- */
106     sgswnd_(&xmin, &xmax, &ymin, &ymax);
107     sgstrf_();
108     uliset_("IYTYPE", &it, (ftnlen)6);
109     return 0;
110 } /* usyaxl_ */
111 
112