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