mirror of
https://github.com/lcn2/calc.git
synced 2025-08-19 01:13:27 +03:00
Compare commits
10 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
fc85ac3791 | ||
|
3d55811205 | ||
|
296aa50ac7 | ||
|
5e098d2adf | ||
|
ae2a752314 | ||
|
61dd47526f | ||
|
417ffb6ab5 | ||
|
121b8f72c6 | ||
|
9968a69f50 | ||
|
1ea579d929 |
48
BUGS
48
BUGS
@@ -20,20 +20,21 @@ configuration, try backing them out and see if things get better.
|
||||
|
||||
To be sure that your version of calc is up to date, check out:
|
||||
|
||||
http://reality.sgi.com/chongo/tech/comp/calc/calc-download.html
|
||||
http://www.isthe.com/chongo/tech/comp/calc/calc-download.html
|
||||
|
||||
The calc web site is located at:
|
||||
|
||||
http://reality.sgi.com/chongo/tech/comp/calc/index.html
|
||||
http://www.isthe.com/chongo/tech/comp/calc/index.html
|
||||
|
||||
=-=
|
||||
|
||||
If you have tried all of the above and things still are not right,
|
||||
then it may be time to send in a bug report. You can send bug reports to:
|
||||
|
||||
calc-bugs at postofc dot corp dot sgi dot com
|
||||
calc-bugs at asthe dot com
|
||||
|
||||
[[ Replace 'at' with @, 'dot' is with . and remove the spaces ]]
|
||||
[[ NOTE: Replace 'at' with @, 'dot' is with . and remove the spaces ]]
|
||||
[[ NOTE: The EMail address uses 'asthe', the web site URL uses 'isthe' ]]
|
||||
|
||||
When you send your report, please include the following information:
|
||||
|
||||
@@ -58,9 +59,10 @@ Stack traces from core dumps are useful to send as well.
|
||||
Send any comments, compiler warning messages, suggestions and most
|
||||
importantly, fixes (in the form of a context diff patch) to:
|
||||
|
||||
calc-tester at postofc dot corp dot sgi dot com
|
||||
calc-bugs at asthe dot com
|
||||
|
||||
[[ Replace 'at' with @, 'dot' is with . and remove the spaces ]]
|
||||
[[ NOTE: Replace 'at' with @, 'dot' is with . and remove the spaces ]]
|
||||
[[ NOTE: The EMail address uses 'asthe', the web site URL uses 'isthe' ]]
|
||||
|
||||
You should use the above calc-bugs address for bug reports, if you are
|
||||
not currently a member of the calc-tester mailing list.
|
||||
@@ -81,6 +83,32 @@ Problems with known work-a-rounds:
|
||||
to fail the regression test. The work-a-round is to compile with -O
|
||||
or to use gcc-2.96 or later.
|
||||
|
||||
This bug has been observed on the Sparc and the PowerPC machine.
|
||||
|
||||
On the PowerPC with gcc-2.95 when compiled with -O2, the following
|
||||
patch seems to help:
|
||||
|
||||
*** zfunc.c.orig Fri Feb 23 18:18:39 2001
|
||||
--- zfunc.c Fri Feb 23 18:39:33 2001
|
||||
***************
|
||||
*** 1481,1487 ****
|
||||
{
|
||||
HALF *a, *A, *b, *a0, u;
|
||||
int i, j, j1, j2, k, k1, m, m0, m1, n, n0, o;
|
||||
! FULL d, e, f, g, h, s, t, x, topbit;
|
||||
int remsign;
|
||||
BOOL up, onebit;
|
||||
ZVALUE sqrt;
|
||||
--- 1481,1488 ----
|
||||
{
|
||||
HALF *a, *A, *b, *a0, u;
|
||||
int i, j, j1, j2, k, k1, m, m0, m1, n, n0, o;
|
||||
! volatile FULL d;
|
||||
! FULL e, f, g, h, s, t, x, topbit;
|
||||
int remsign;
|
||||
BOOL up, onebit;
|
||||
ZVALUE sqrt;
|
||||
|
||||
* Solaris cc somtimes barfs while compiling zrand.c. In particular, calc
|
||||
barfs on on the SVAL macro. The work-a-round is to use the Solaric cc
|
||||
Makefile set sets -DFORCE_STDC. I.e,:
|
||||
@@ -177,12 +205,12 @@ Problems with known work-a-rounds:
|
||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
## 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
##
|
||||
## @(#) $Revision: 29.4 $
|
||||
## @(#) $Id: BUGS,v 29.4 1999/12/15 09:13:29 chongo Exp $
|
||||
## @(#) $Revision: 29.7 $
|
||||
## @(#) $Id: BUGS,v 29.7 2001/02/25 21:01:52 chongo Exp $
|
||||
## @(#) $Source: /usr/local/src/cmd/calc/RCS/BUGS,v $
|
||||
##
|
||||
## Under source code control: 1994/03/18 14:06:13
|
||||
## File existed as early as: 1994
|
||||
##
|
||||
## chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
## Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
## chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
## Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
|
49
COPYING
49
COPYING
@@ -12,8 +12,8 @@ This file is Copyrighted
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
# @(#) $Revision: 29.1 $
|
||||
# @(#) $Id: COPYING,v 29.1 1999/12/14 09:15:29 chongo Exp $
|
||||
# @(#) $Revision: 29.5 $
|
||||
# @(#) $Id: COPYING,v 29.5 2000/12/18 10:22:55 chongo Exp $
|
||||
# @(#) $Source: /usr/local/src/cmd/calc/RCS/COPYING,v $
|
||||
|
||||
=-=
|
||||
@@ -55,16 +55,28 @@ Calc is covered by the GNU Lesser General Public License
|
||||
|
||||
The contact addresses for calc is as follows:
|
||||
|
||||
Web: http://reality.sgi.com/chongo/tech/comp/calc/index.html
|
||||
http://www.isthe.com/chongo/tech/comp/calc/index.html
|
||||
Web: http://www.isthe.com/chongo/tech/comp/calc/index.html
|
||||
EMail: calc-contrib at asthe dot com
|
||||
|
||||
EMail: calc-tester at postofc dot corp dot sgi dot com
|
||||
calc-tester at isthe dot com
|
||||
To join the calc-tester mailing list. Send a request to:
|
||||
|
||||
[[ Replace 'at' with @, 'dot' is with . and remove spaces ]]
|
||||
calc-tester-request at asthe dot com
|
||||
|
||||
The 2nd address set is provided in case the 1st address set no
|
||||
longer functions.
|
||||
Your message body (not the subject) should consist of:
|
||||
|
||||
subscribe calc-tester address
|
||||
end
|
||||
name your_full_name
|
||||
|
||||
where ``address'' is your EMail address and ``your_full_name'' is
|
||||
your full name.
|
||||
|
||||
Calc bug reports, however should be sent to:
|
||||
|
||||
calc-bugs at asthe dot com
|
||||
|
||||
[[ NOTE: Replace 'at' with @, 'dot' is with . and remove the spaces ]]
|
||||
[[ NOTE: The EMail address uses 'asthe' and the web site URL uses 'isthe' ]]
|
||||
|
||||
=-=
|
||||
|
||||
@@ -128,7 +140,7 @@ Calc copyrights and exception files
|
||||
-----------------------------------
|
||||
|
||||
With the exception of the files listed below, Calc is covered under
|
||||
the following Copyrights:
|
||||
the following GNU Lesser General Public License Copyrights:
|
||||
|
||||
Copyright (C) year David I. Bell
|
||||
Copyright (C) year David I. Bell and Landon Curt Noll
|
||||
@@ -138,12 +150,11 @@ Calc copyrights and exception files
|
||||
Copyright (C) year Ernest Bowen and Landon Curt Noll
|
||||
Copyright (C) year Ernest Bowen
|
||||
|
||||
A few files are not covered under the GNU Lesser General Public
|
||||
License. The source files not covered are:
|
||||
These files are not covered under one of the Copyrights listed above:
|
||||
|
||||
shs1.c shs1.h shs.c shs.h
|
||||
md5.c md5.h lib/qtime.cal COPYING
|
||||
COPYING-LGPL
|
||||
shs1.c shs1.h shs.c shs.h
|
||||
md5.c md5.h COPYING COPYING-LGPL
|
||||
cal/qtime.cal
|
||||
|
||||
The file COPYING-LGPL, which contains a copy of the version 2.1
|
||||
GNU Lesser General Public License, is itself Copyrighted by the
|
||||
@@ -155,6 +166,14 @@ Calc copyrights and exception files
|
||||
top of this file. It is important to note that you may distribute
|
||||
verbatim copies of this file but you may not modify this file.
|
||||
|
||||
Some of these exception files are in the public domain. Other
|
||||
exception files have non-LGPL Copyrights. Other files are under a
|
||||
LGPL Copyright but have different authors.
|
||||
|
||||
In all cases one may use and distribute these exception files freely.
|
||||
And because one may freely distribute the LGPL covered files, the
|
||||
entire calc source may be freely used and distributed.
|
||||
|
||||
=-=
|
||||
|
||||
General Copyleft and License info
|
||||
|
@@ -65,12 +65,12 @@ the calc help subsystem. See the README file for details.
|
||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
## 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
##
|
||||
## @(#) $Revision: 29.1 $
|
||||
## @(#) $Id: HOWTO.INSTALL,v 29.1 1999/12/14 09:15:29 chongo Exp $
|
||||
## @(#) $Revision: 29.2 $
|
||||
## @(#) $Id: HOWTO.INSTALL,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
## @(#) $Source: /usr/local/src/cmd/calc/RCS/HOWTO.INSTALL,v $
|
||||
##
|
||||
## Under source code control: 1999/09/27 20:48:44
|
||||
## File existed as early as: 1999
|
||||
##
|
||||
## chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
## Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
## chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
## Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
|
8
LIBRARY
8
LIBRARY
@@ -471,12 +471,12 @@ need call libcalc_call_me_last() only once.
|
||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
## 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
##
|
||||
## @(#) $Revision: 29.1 $
|
||||
## @(#) $Id: LIBRARY,v 29.1 1999/12/14 09:15:29 chongo Exp $
|
||||
## @(#) $Revision: 29.2 $
|
||||
## @(#) $Id: LIBRARY,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
## @(#) $Source: /usr/local/src/cmd/calc/RCS/LIBRARY,v $
|
||||
##
|
||||
## Under source code control: 1993/07/30 19:44:49
|
||||
## File existed as early as: 1993
|
||||
##
|
||||
## chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
## Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
## chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
## Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
|
323
Makefile
323
Makefile
@@ -20,15 +20,15 @@
|
||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# @(#) $Revision: 29.5 $
|
||||
# @(#) $Id: Makefile.ship,v 29.5 1999/12/17 09:07:35 chongo Exp $
|
||||
MAKEFILE_REV= $$Revision: 29.14 $$
|
||||
# @(#) $Id: Makefile.ship,v 29.14 2001/02/25 22:07:36 chongo Exp $
|
||||
# @(#) $Source: /usr/local/src/cmd/calc/RCS/Makefile.ship,v $
|
||||
#
|
||||
# Under source code control: 1990/02/15 01:48:41
|
||||
# File existed as early as: before 1990
|
||||
#
|
||||
# chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
# Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
# chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
# Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
#
|
||||
# calculator by David I. Bell with help/mods from others
|
||||
# Makefile by Landon Curt Noll
|
||||
@@ -42,7 +42,7 @@
|
||||
#
|
||||
# value meaning
|
||||
# -------- -------
|
||||
# (nothing) let the makefile guess at what you need
|
||||
# (nothing) let the Makefile guess at what you need
|
||||
# -DUSE_TERMIOS use struct termios from <termios.h>
|
||||
# -DUSE_TERMIO use struct termios from <termio.h>
|
||||
# -DUSE_SGTTY use struct sgttyb from <sys/ioctl.h>
|
||||
@@ -63,7 +63,7 @@ TERMCONTROL=
|
||||
# If you do not have vsprintf(), then calc will try sprintf() and hope
|
||||
# for the best.
|
||||
#
|
||||
# If HAVE_VSPRINTF is empty, this makefile will run the have_stdvs.c and/or
|
||||
# If HAVE_VSPRINTF is empty, this Makefile will run the have_stdvs.c and/or
|
||||
# have_varvs.c program to determine if vsprintf() is supported. If
|
||||
# HAVE_VSPRINTF is set to -DDONT_HAVE_VSPRINTF then calc will hope that
|
||||
# sprintf() will work.
|
||||
@@ -78,7 +78,7 @@ HAVE_VSPRINTF=
|
||||
# Big Endian: Amdahl, 68k, Pyramid, Mips, Sparc, ...
|
||||
# Little Endian: Vax, 32k, Spim (Dec Mips), i386, i486, ...
|
||||
#
|
||||
# If in doubt, leave BYTE_ORDER empty. This makefile will attempt to
|
||||
# If in doubt, leave BYTE_ORDER empty. This Makefile will attempt to
|
||||
# use BYTE_ORDER in <machine/endian.h> or it will attempt to run
|
||||
# the endian program. If you get syntax errors when you compile,
|
||||
# try forcing the value to be BIG_ENDIAN and run the calc regression
|
||||
@@ -92,7 +92,7 @@ BYTE_ORDER=
|
||||
|
||||
# Determine the number of bits in a long
|
||||
#
|
||||
# If in doubt, leave LONG_BITS empty. This makefile will run
|
||||
# If in doubt, leave LONG_BITS empty. This Makefile will run
|
||||
# the longbits program to determine the length.
|
||||
#
|
||||
# In order to avoid make brain damage in some systems, we avoid placing
|
||||
@@ -125,7 +125,7 @@ LONGLONG_BITS=
|
||||
# Determine if we have the ANSI C fgetpos and fsetpos alternate interface
|
||||
# to the ftell() and fseek() (with whence set to SEEK_SET) functions.
|
||||
#
|
||||
# If HAVE_FPOS is empty, this makefile will run the have_fpos program
|
||||
# If HAVE_FPOS is empty, this Makefile will run the have_fpos program
|
||||
# to determine if there is are fgetpos and fsetpos functions. If HAVE_FPOS
|
||||
# is set to -DHAVE_NO_FPOS, then calc will use ftell() and fseek().
|
||||
#
|
||||
@@ -134,11 +134,22 @@ LONGLONG_BITS=
|
||||
HAVE_FPOS=
|
||||
#HAVE_FPOS= -DHAVE_NO_FPOS
|
||||
|
||||
# Determine if we have an __pos element of a file position (fpos_t) structure.
|
||||
#
|
||||
# If HAVE_FPOS_POS is empty, this Makefile will run the have_fpos_pos program
|
||||
# to determine if fpos_t has a __pos structure element. If HAVE_FPOS_POS
|
||||
# is set to -DHAVE_NO_FPOS_POS, then calc assume there is no __pos element.
|
||||
#
|
||||
# If in doubt, leave HAVE_FPOS_POS empty and this Makefile will figure it out.
|
||||
#
|
||||
HAVE_FPOS_POS=
|
||||
#HAVE_FPOS= -DHAVE_NO_FPOS_POS
|
||||
|
||||
# Determine if we have an off_t which one can perform arithmetic operations,
|
||||
# assignments and comparisons. On some systems off_t is some sort of union
|
||||
# or struct.
|
||||
#
|
||||
# If HAVE_OFFSCL is empty, this makefile will run the have_offscl program
|
||||
# If HAVE_OFFSCL is empty, this Makefile will run the have_offscl program
|
||||
# to determine if off_t is a scalar. If HAVE_OFFSCL is set to the value
|
||||
# -DOFF_T_NON_SCALAR when calc will assume that off_t some sort of
|
||||
# union or struct which.
|
||||
@@ -153,7 +164,7 @@ HAVE_OFFSCL=
|
||||
# or struct. Some systems do not have an fpos_t and long is as a file
|
||||
# offset instead.
|
||||
#
|
||||
# If HAVE_POSSCL is empty, this makefile will run the have_offscl program
|
||||
# If HAVE_POSSCL is empty, this Makefile will run the have_offscl program
|
||||
# to determine if off_t is a scalar, or if there is no off_t and long
|
||||
# (a scalar) should be used instead. If HAVE_POSSCL is set to the value
|
||||
# -DFILEPOS_NON_SCALAR when calc will assume that fpos_t exists and is
|
||||
@@ -166,7 +177,7 @@ HAVE_POSSCL=
|
||||
|
||||
# Determine if we have ANSI C const.
|
||||
#
|
||||
# If HAVE_CONST is empty, this makefile will run the have_const program
|
||||
# If HAVE_CONST is empty, this Makefile will run the have_const program
|
||||
# to determine if const is supported. If HAVE_CONST is set to -DHAVE_NO_CONST,
|
||||
# then calc will not use const.
|
||||
#
|
||||
@@ -177,7 +188,7 @@ HAVE_CONST=
|
||||
|
||||
# Determine if we have uid_t
|
||||
#
|
||||
# If HAVE_UID_T is empty, this makefile will run the have_uid_t program
|
||||
# If HAVE_UID_T is empty, this Makefile will run the have_uid_t program
|
||||
# to determine if const is supported. If HAVE_UID_T is set to -DHAVE_NO_UID_T,
|
||||
# then calc will treat uid_t as an unsigned short. This only matters if
|
||||
# $HOME is not set and calc must look up the home directory in /etc/passwd.
|
||||
@@ -189,7 +200,7 @@ HAVE_UID_T=
|
||||
|
||||
# Determine if we have memcpy(), memset() and strchr()
|
||||
#
|
||||
# If HAVE_NEWSTR is empty, this makefile will run the have_newstr program
|
||||
# If HAVE_NEWSTR is empty, this Makefile will run the have_newstr program
|
||||
# to determine if memcpy(), memset() and strchr() are supported. If
|
||||
# HAVE_NEWSTR is set to -DHAVE_NO_NEWSTR, then calc will use bcopy() instead
|
||||
# of memcpy(), use bfill() instead of memset(), and use index() instead of
|
||||
@@ -202,7 +213,7 @@ HAVE_NEWSTR=
|
||||
|
||||
# Determine if we have memmove()
|
||||
#
|
||||
# If HAVE_MEMMOVE is empty, this makefile will run the have_memmv program
|
||||
# If HAVE_MEMMOVE is empty, this Makefile will run the have_memmv program
|
||||
# to determine if memmove() is supported. If HAVE_MEMMOVE is set to
|
||||
# -DHAVE_NO_MEMMOVE, then calc will use internal functions to simulate
|
||||
# the memory move function that does correct overlapping memory modes.
|
||||
@@ -214,7 +225,7 @@ HAVE_MEMMOVE=
|
||||
|
||||
# Determine if we have ustat()
|
||||
#
|
||||
# If HAVE_USTAT is empty, this makefile will run the have_memmv program
|
||||
# If HAVE_USTAT is empty, this Makefile will run the have_memmv program
|
||||
# to determine if ustat() is supported. If HAVE_USTAT is set to
|
||||
# -DHAVE_NO_USTAT, then calc will use internal functions to simulate
|
||||
# the memory move function that does correct overlapping memory modes.
|
||||
@@ -226,7 +237,7 @@ HAVE_USTAT=
|
||||
|
||||
# Determine if we have getsid()
|
||||
#
|
||||
# If HAVE_GETSID is empty, this makefile will run the have_memmv program
|
||||
# If HAVE_GETSID is empty, this Makefile will run the have_memmv program
|
||||
# to determine if getsid() is supported. If HAVE_GETSID is set to
|
||||
# -DHAVE_NO_GETSID, then calc will use internal functions to simulate
|
||||
# the memory move function that does correct overlapping memory modes.
|
||||
@@ -238,7 +249,7 @@ HAVE_GETSID=
|
||||
|
||||
# Determine if we have getpgid()
|
||||
#
|
||||
# If HAVE_GETPGID is empty, this makefile will run the have_memmv program
|
||||
# If HAVE_GETPGID is empty, this Makefile will run the have_memmv program
|
||||
# to determine if getpgid() is supported. If HAVE_GETPGID is set to
|
||||
# -DHAVE_NO_GETPGID, then calc will use internal functions to simulate
|
||||
# the memory move function that does correct overlapping memory modes.
|
||||
@@ -250,7 +261,7 @@ HAVE_GETPGID=
|
||||
|
||||
# Determine if we have clock_gettime()
|
||||
#
|
||||
# If HAVE_GETTIME is empty, this makefile will run the have_memmv program
|
||||
# If HAVE_GETTIME is empty, this Makefile will run the have_memmv program
|
||||
# to determine if clock_gettime() is supported. If HAVE_GETTIME is set to
|
||||
# -DHAVE_NO_GETTIME, then calc will use internal functions to simulate
|
||||
# the memory move function that does correct overlapping memory modes.
|
||||
@@ -262,7 +273,7 @@ HAVE_GETTIME=
|
||||
|
||||
# Determine if we have getprid()
|
||||
#
|
||||
# If HAVE_GETPRID is empty, this makefile will run the have_memmv program
|
||||
# If HAVE_GETPRID is empty, this Makefile will run the have_memmv program
|
||||
# to determine if getprid() is supported. If HAVE_GETPRID is set to
|
||||
# -DHAVE_NO_GETPRID, then calc will use internal functions to simulate
|
||||
# the memory move function that does correct overlapping memory modes.
|
||||
@@ -274,7 +285,7 @@ HAVE_GETPRID=
|
||||
|
||||
# Determine if we have /dev/urandom
|
||||
#
|
||||
# If HAVE_URANDOM is empty, this makefile will run the have_memmv program
|
||||
# If HAVE_URANDOM is empty, this Makefile will run the have_memmv program
|
||||
# to determine if /dev/urandom is supported. If HAVE_URANDOM is set to
|
||||
# -DHAVE_NO_URANDOM, then calc will use internal functions to simulate
|
||||
# the memory move function that does correct overlapping memory modes.
|
||||
@@ -286,7 +297,7 @@ HAVE_URANDOM=
|
||||
|
||||
# Determine if we have getrusage()
|
||||
#
|
||||
# If HAVE_GETRUSAGE is empty, this makefile will run the have_memmv program
|
||||
# If HAVE_GETRUSAGE is empty, this Makefile will run the have_memmv program
|
||||
# to determine if getrusage() is supported. If HAVE_GETRUSAGE is set to
|
||||
# -DHAVE_NO_GETRUSAGE, then calc will use internal functions to simulate
|
||||
# the memory move function that does correct overlapping memory modes.
|
||||
@@ -298,7 +309,7 @@ HAVE_GETRUSAGE=
|
||||
|
||||
# Determine if we have strdup()
|
||||
#
|
||||
# If HAVE_STRDUP is empty, this makefile will run the have_memmv program
|
||||
# If HAVE_STRDUP is empty, this Makefile will run the have_memmv program
|
||||
# to determine if strdup() is supported. If HAVE_STRDUP is set to
|
||||
# -DHAVE_NO_STRDUP, then calc will use internal functions to simulate
|
||||
# the memory move function that does correct overlapping memory modes.
|
||||
@@ -824,8 +835,8 @@ ECHO= /bin/echo
|
||||
|
||||
# Makefile debug
|
||||
#
|
||||
# Q=@ do not echo internal makefile actions (quiet mode)
|
||||
# Q= echo internal makefile actions (debug / verbose mode)
|
||||
# Q=@ do not echo internal Makefile actions (quiet mode)
|
||||
# Q= echo internal Makefile actions (debug / verbose mode)
|
||||
#
|
||||
# V=@: do not echo debug statements (quiet mode)
|
||||
# V=@ do echo debug statements (debug / verbose mode)
|
||||
@@ -885,7 +896,7 @@ LIB_H_SRC= alloc.h blkcpy.h block.h byteswap.h calc.h cmath.h \
|
||||
# we build these .h files during the make
|
||||
#
|
||||
BUILD_H_SRC= align32.h args.h calcerr.h conf.h endian_calc.h \
|
||||
fposval.h have_const.h have_fpos.h have_malloc.h \
|
||||
fposval.h have_const.h have_fpos.h have_fpos_pos.h have_malloc.h \
|
||||
have_memmv.h have_newstr.h have_offscl.h have_posscl.h \
|
||||
have_stdlib.h have_string.h have_times.h have_uid_t.h \
|
||||
have_unistd.h longbits.h longlong.h terminal.h \
|
||||
@@ -903,7 +914,7 @@ BUILD_C_SRC= calcerr.c
|
||||
#
|
||||
UTIL_C_SRC= align32.c endian.c longbits.c have_newstr.c have_uid_t.c \
|
||||
have_const.c have_stdvs.c have_varvs.c fposval.c have_fpos.c \
|
||||
longlong.c have_offscl.c have_posscl.c have_memmv.c \
|
||||
have_fpos_pos.c longlong.c have_offscl.c have_posscl.c have_memmv.c \
|
||||
have_ustat.c have_getsid.c have_getpgid.c \
|
||||
have_gettime.c have_getprid.c have_rusage.c have_strdup.c
|
||||
|
||||
@@ -918,8 +929,8 @@ UTIL_MISC_SRC= calcerr_h.sed calcerr_h.awk calcerr_c.sed calcerr_c.awk \
|
||||
# There MUST be a .o for every .c in UTIL_C_SRC.
|
||||
#
|
||||
UTIL_OBJS= endian.o longbits.o have_newstr.o have_uid_t.o \
|
||||
have_const.o fposval.o have_fpos.o longlong.o try_strarg.o \
|
||||
have_stdvs.o have_varvs.o have_posscl.o have_memmv.o \
|
||||
have_const.o fposval.o have_fpos.o have_fpos_pos.o longlong.o \
|
||||
try_strarg.o have_stdvs.o have_varvs.o have_posscl.o have_memmv.o \
|
||||
have_ustat.o have_getsid.o have_getpgid.o \
|
||||
have_gettime.o have_getprid.o ver_calc.o have_rusage.o have_strdup.o
|
||||
|
||||
@@ -936,7 +947,7 @@ UTIL_PROGS= align32 fposval have_uid_t longlong have_const \
|
||||
have_ustat have_getsid have_getpgid \
|
||||
have_gettime have_getprid ver_calc have_strdup
|
||||
|
||||
# The complete list of makefile vars passed down to custom/Makefile.
|
||||
# The complete list of Makefile vars passed down to custom/Makefile.
|
||||
#
|
||||
CUSTOM_PASSDOWN= Q="${Q}" \
|
||||
TOPDIR="${TOPDIR}" \
|
||||
@@ -964,7 +975,7 @@ CUSTOM_PASSDOWN= Q="${Q}" \
|
||||
MAKEDEPEND=${MAKEDEPEND} \
|
||||
SORT=${SORT}
|
||||
|
||||
# The complete list of makefile vars passed down to sample/Makefile.
|
||||
# The complete list of Makefile vars passed down to sample/Makefile.
|
||||
#
|
||||
SAMPLE_PASSDOWN= Q="${Q}" \
|
||||
TOPDIR="${TOPDIR}" \
|
||||
@@ -991,7 +1002,7 @@ SAMPLE_PASSDOWN= Q="${Q}" \
|
||||
CHMOD=${CHMOD} \
|
||||
SORT=${SORT}
|
||||
|
||||
# The compelte list of makefile vars passed down to help/Makefile.
|
||||
# The compelte list of Makefile vars passed down to help/Makefile.
|
||||
#
|
||||
HELP_PASSDOWN= Q="${Q}" \
|
||||
TOPDIR="${TOPDIR}" \
|
||||
@@ -1005,7 +1016,7 @@ HELP_PASSDOWN= Q="${Q}" \
|
||||
CHMOD=${CHMOD} \
|
||||
FMT=${FMT}
|
||||
|
||||
# The compelte list of makefile vars passed down to cal/Makefile.
|
||||
# The compelte list of Makefile vars passed down to cal/Makefile.
|
||||
#
|
||||
CAL_PASSDOWN= Q="${Q}" \
|
||||
TOPDIR="${TOPDIR}" \
|
||||
@@ -1013,7 +1024,7 @@ CAL_PASSDOWN= Q="${Q}" \
|
||||
MAKE_FILE=${MAKE_FILE} \
|
||||
CHMOD=${CHMOD}
|
||||
|
||||
# The compelte list of makefile vars passed down to cscript/Makefile.
|
||||
# The compelte list of Makefile vars passed down to cscript/Makefile.
|
||||
#
|
||||
CSCRIPT_PASSDOWN= Q="${Q}" \
|
||||
BINDIR="${BINDIR}" \
|
||||
@@ -1039,7 +1050,7 @@ LICENSE= COPYING COPYING-LGPL
|
||||
# These files are found (but not built) in the distribution
|
||||
#
|
||||
DISTLIST= ${C_SRC} ${H_SRC} ${MAKE_FILE} BUGS CHANGES LIBRARY README \
|
||||
calc.man HOWTO.INSTALL ${UTIL_MISC_SRC} ${LICENSE}
|
||||
README.WINDOWS calc.man HOWTO.INSTALL ${UTIL_MISC_SRC} ${LICENSE}
|
||||
|
||||
# These files are used to make (but not built) a calc .a link library
|
||||
#
|
||||
@@ -1559,7 +1570,51 @@ have_fpos.h: have_fpos.c ${MAKE_FILE}
|
||||
true; \
|
||||
fi
|
||||
|
||||
fposval.h: fposval.c have_fpos.h have_offscl.h have_posscl.h \
|
||||
have_fpos_pos.h: have_fpos_pos.c have_fpos.h have_posscl.h ${MAKE_FILE}
|
||||
-${Q}rm -f have_fpos_pos have_fpos_pos.o fpos_tmp have_fpos_pos.h
|
||||
${Q}echo 'forming have_fpos_pos.h'
|
||||
${Q}echo '/*' > have_fpos_pos.h
|
||||
${Q}echo ' * DO NOT EDIT -- generated by the Makefile' \
|
||||
>> have_fpos_pos.h
|
||||
${Q}echo ' */' >> have_fpos_pos.h
|
||||
${Q}echo '' >> have_fpos_pos.h
|
||||
${Q}echo '' >> have_fpos_pos.h
|
||||
${Q}echo '#if !defined(__HAVE_FPOS_POS_H__)' >> have_fpos_pos.h
|
||||
${Q}echo '#define __HAVE_FPOS_POS_H__' >> have_fpos_pos.h
|
||||
${Q}echo '' >> have_fpos_pos.h
|
||||
${Q}echo '' >> have_fpos_pos.h
|
||||
${Q}echo '/* do we have fgetpos & fsetpos functions? */' \
|
||||
>> have_fpos_pos.h
|
||||
-${Q}rm -f have_fpos_pos.o have_fpos_pos
|
||||
-${Q}${LCC} ${HAVE_FPOS_POS} ${ICFLAGS} have_fpos_pos.c -c \
|
||||
2>/dev/null; true
|
||||
-${Q}${LCC} ${ILDFLAGS} have_fpos_pos.o -o have_fpos_pos \
|
||||
2>/dev/null; true
|
||||
-${Q}${SHELL} -c "./have_fpos_pos > fpos_tmp 2>/dev/null" \
|
||||
>/dev/null 2>&1; true
|
||||
-${Q}if [ -s fpos_tmp ]; then \
|
||||
cat fpos_tmp >> have_fpos_pos.h; \
|
||||
else \
|
||||
echo '#undef HAVE_FPOS_POS /* no */' >> have_fpos_pos.h; \
|
||||
echo '' >> have_fpos_pos.h; \
|
||||
echo '#undef FPOS_POS_BITS' >> have_fpos_pos.h; \
|
||||
fi
|
||||
${Q}echo '' >> have_fpos_pos.h
|
||||
${Q}echo '' >> have_fpos_pos.h
|
||||
${Q}echo '#endif /* !__HAVE_FPOS_POS_H__ */' >> have_fpos_pos.h
|
||||
-${Q}rm -f have_fpos_pos have_fpos_pos.o fpos_tmp
|
||||
${Q}echo 'have_fpos_pos.h formed'
|
||||
-@if [ -z "${Q}" ]; then \
|
||||
echo ''; \
|
||||
echo '=-=-= start of $@ =-=-='; \
|
||||
cat $@; \
|
||||
echo '=-=-= end of $@ =-=-='; \
|
||||
echo ''; \
|
||||
else \
|
||||
true; \
|
||||
fi
|
||||
|
||||
fposval.h: fposval.c have_fpos.h have_fpos_pos.h have_offscl.h have_posscl.h \
|
||||
endian_calc.h ${MAKE_FILE}
|
||||
-${Q}rm -f fposv_tmp fposval fposval.o fposval.h
|
||||
${Q}echo 'forming fposval.h'
|
||||
@@ -2084,7 +2139,7 @@ have_urandom.h: ${MAKE_FILE}
|
||||
${Q}echo '' >> have_urandom.h
|
||||
${Q}echo '' >> have_urandom.h
|
||||
${Q}echo '/* do we have /dev/urandom? */' >> have_urandom.h
|
||||
-${Q}if [ -c /dev/urandom ]; then \
|
||||
-${Q}if [ -e /dev/urandom ] 2>/dev/null; then \
|
||||
echo '#define HAVE_URANDOM_H /* yes */' >> have_urandom.h; \
|
||||
else \
|
||||
echo '#undef HAVE_URANDOM_H /* no */' >> have_urandom.h; \
|
||||
@@ -2397,7 +2452,11 @@ sample/sample:
|
||||
status="$$?"; \
|
||||
if [ "$$status" -ne 0 ]; then \
|
||||
echo "$$status" > ../.sample_error; \
|
||||
else \
|
||||
true ; \
|
||||
fi; \
|
||||
else \
|
||||
true ; \
|
||||
fi
|
||||
${Q}if [ -f .sample_error ]; then \
|
||||
echo "sample make failed, code: `cat .sample_error`" 1>&2; \
|
||||
@@ -2419,7 +2478,7 @@ sample/all:
|
||||
|
||||
##
|
||||
#
|
||||
# The BSDI cdrom makefile expects certain files to be pre-built in a sub-dir
|
||||
# The BSDI cdrom Makefile expects certain files to be pre-built in a sub-dir
|
||||
# called gen_h. This rule creats this sub-directory so that the release can
|
||||
# be shipped off to BSDI. You can ignore this rule.
|
||||
#
|
||||
@@ -2587,108 +2646,110 @@ chk: ./cal/regress.cal
|
||||
# debug
|
||||
#
|
||||
# make env:
|
||||
# * print major makefile variables
|
||||
# * print major Makefile variables
|
||||
#
|
||||
# make mkdebug:
|
||||
# * print major makefile variables
|
||||
# * print major Makefile variables
|
||||
# * build anything not yet built
|
||||
#
|
||||
# make debug:
|
||||
# * remove everything that was previously built
|
||||
# * print major makefile variables
|
||||
# * print major Makefile variables
|
||||
# * make everything
|
||||
# * run the regression tests
|
||||
##
|
||||
|
||||
env:
|
||||
@echo '=-=-=-=-= dumping major make variables =-=-=-=-='
|
||||
@echo "TERMCONTROL=${TERMCONTROL}"; echo ""
|
||||
@echo "HAVE_VSPRINTF=${HAVE_VSPRINTF}"; echo ""
|
||||
@echo "BYTE_ORDER=${BYTE_ORDER}"; echo ""
|
||||
@echo "LONG_BITS=${LONG_BITS}"; echo ""
|
||||
@echo "LONGLONG_BITS=${LONGLONG_BITS}"; echo ""
|
||||
@echo "HAVE_FPOS=${HAVE_FPOS}"; echo ""
|
||||
@echo "HAVE_OFFSCL=${HAVE_OFFSCL}"; echo ""
|
||||
@echo "HAVE_POSSCL=${HAVE_POSSCL}"; echo ""
|
||||
@echo "HAVE_CONST=${HAVE_CONST}"; echo ""
|
||||
@echo "HAVE_UID_T=${HAVE_UID_T}"; echo ""
|
||||
@echo "HAVE_NEWSTR=${HAVE_NEWSTR}"; echo ""
|
||||
@echo "HAVE_USTAT=${HAVE_USTAT}"; echo ""
|
||||
@echo "HAVE_GETSID=${HAVE_GETSID}"; echo ""
|
||||
@echo "HAVE_GETPGID=${HAVE_GETPGID}"; echo ""
|
||||
@echo "HAVE_GETTIME=${HAVE_GETTIME}"; echo ""
|
||||
@echo "HAVE_GETPRID=${HAVE_GETPRID}"; echo ""
|
||||
@echo "HAVE_URANDOM=${HAVE_URANDOM}"; echo ""
|
||||
@echo "ALIGN32=${ALIGN32}"; echo ""
|
||||
@echo "BINDIR=${BINDIR}"; echo ""
|
||||
@echo "TOPDIR=${TOPDIR}"; echo ""
|
||||
@echo "LIBDIR=${LIBDIR}"; echo ""
|
||||
@echo "HELPDIR=${HELPDIR}"; echo ""
|
||||
@echo "CUSTOMLIBDIR=${CUSTOMLIBDIR}"; echo ""
|
||||
@echo "CUSTOMHELPDIR=${CUSTOMHELPDIR}"; echo ""
|
||||
@echo "SCRIPTDIR=${SCRIPTDIR}"; echo ""
|
||||
@echo "MANDIR=${MANDIR}"; echo ""
|
||||
@echo "CATDIR=${CATDIR}"; echo ""
|
||||
@echo "MANEXT=${MANEXT}"; echo ""
|
||||
@echo "CATEXT=${CATEXT}"; echo ""
|
||||
@echo "NROFF=${NROFF}"; echo ""
|
||||
@echo "NROFF_ARG=${NROFF_ARG}"; echo ""
|
||||
@echo "MANMAKE=${MANMAKE}"; echo ""
|
||||
@echo "CALCPATH=${CALCPATH}"; echo ""
|
||||
@echo "CALCRC=${CALCRC}"; echo ""
|
||||
@echo "CALCPAGER=${CALCPAGER}"; echo ""
|
||||
@echo "DEBUG=${DEBUG}"; echo ""
|
||||
@echo "NO_SHARED=${NO_SHARED}"; echo ""
|
||||
@echo "LD_NO_SHARED=${LD_NO_SHARED}"; echo ""
|
||||
@echo "RANLIB=${RANLIB}"; echo ""
|
||||
@echo "MAKE_FILE=${MAKE_FILE}"; echo ""
|
||||
@echo "PURIFY=${PURIFY}"; echo ""
|
||||
@echo "LD_DEBUG=${LD_DEBUG}"; echo ""
|
||||
@echo "CALC_ENV=${CALC_ENV}"; echo ""
|
||||
@echo "ALLOW_CUSTOM=${ALLOW_CUSTOM}"; echo ""
|
||||
@echo "CCOPT=${CCOPT}"; echo ""
|
||||
@echo "CCWARN=${CCWARN}"; echo ""
|
||||
@echo "CCMISC=${CCMISC}"; echo ""
|
||||
@echo "CFLAGS=${CFLAGS}"; echo ""
|
||||
@echo "ICFLAGS=${ICFLAGS}"; echo ""
|
||||
@echo "LDFLAGS=${LDFLAGS}"; echo ""
|
||||
@echo "ILDFLAGS=${ILDFLAGS}"; echo ""
|
||||
@echo "LCC=${LCC}"; echo ""
|
||||
@echo "CC=${CC}"; echo ""
|
||||
@echo "SHELL=${SHELL}"; echo ""
|
||||
@echo "MAKE=${MAKE}"; echo ""
|
||||
@echo "AWK=${AWK}"; echo ""
|
||||
@echo "SED=${SED}"; echo ""
|
||||
@echo "SORT=${SORT}"; echo ""
|
||||
@echo "TEE=${TEE}"; echo ""
|
||||
@echo "CTAGS=${CTAGS}"; echo ""
|
||||
@echo "MAKEDEPEND=${MAKEDEPEND}"; echo ""
|
||||
@echo "Q=${Q}"; echo ""
|
||||
@echo "V=${V}"; echo ""
|
||||
@echo "LIBSRC=${LIBSRC}"; echo ""
|
||||
@echo "LIBOBJS=${LIBOBJS}"; echo ""
|
||||
@echo "CALCSRC=${CALCSRC}"; echo ""
|
||||
@echo "CALCOBJS=${CALCOBJS}"; echo ""
|
||||
@echo "BUILD_H_SRC=${BUILD_H_SRC}"; echo ""
|
||||
@echo "BUILD_C_SRC=${BUILD_C_SRC}"; echo ""
|
||||
@echo "UTIL_C_SRC=${UTIL_C_SRC}"; echo ""
|
||||
@echo "UTIL_MISC_SRC=${UTIL_MISC_SRC}"; echo ""
|
||||
@echo "UTIL_OBJS=${UTIL_OBJS}"; echo ""
|
||||
@echo "UTIL_TMP=${UTIL_TMP}"; echo ""
|
||||
@echo "UTIL_PROGS=${UTIL_PROGS}"; echo ""
|
||||
@echo "LIB_H_SRC=${LIB_H_SRC}"; echo ""
|
||||
@echo "CUSTOM_PASSDOWN=${CUSTOM_PASSDOWN}"; echo ""
|
||||
@echo "SAMPLE_PASSDOWN=${SAMPLE_PASSDOWN}"; echo ""
|
||||
@echo "HELP_PASSDOWN=${HELP_PASSDOWN}"; echo ""
|
||||
@echo "CAL_PASSDOWN=${CAL_PASSDOWN}"; echo ""
|
||||
@echo "CSCRIPT_PASSDOWN=${CSCRIPT_PASSDOWN}"; echo ""
|
||||
@echo "H_SRC=${H_SRC}"; echo ""
|
||||
@echo "C_SRC=${C_SRC}"; echo ""
|
||||
@echo "DISTLIST=${DISTLIST}"; echo ""
|
||||
@echo "OBJS=${OBJS}"; echo ""
|
||||
@echo "CALC_LIBS=${CALC_LIBS}"; echo ""
|
||||
@echo "PROGS=${PROGS}"; echo ""
|
||||
@echo "TARGETS=${TARGETS}"; echo ""
|
||||
@echo 'MAKEFILE_REV=${MAKEFILE_REV}'; echo ''
|
||||
@echo 'TERMCONTROL=${TERMCONTROL}'; echo ''
|
||||
@echo 'HAVE_VSPRINTF=${HAVE_VSPRINTF}'; echo ''
|
||||
@echo 'BYTE_ORDER=${BYTE_ORDER}'; echo ''
|
||||
@echo 'LONG_BITS=${LONG_BITS}'; echo ''
|
||||
@echo 'LONGLONG_BITS=${LONGLONG_BITS}'; echo ''
|
||||
@echo 'HAVE_FPOS=${HAVE_FPOS}'; echo ''
|
||||
@echo 'HAVE_FPOS_POS=${HAVE_FPOS_POS}'; echo ''
|
||||
@echo 'HAVE_OFFSCL=${HAVE_OFFSCL}'; echo ''
|
||||
@echo 'HAVE_POSSCL=${HAVE_POSSCL}'; echo ''
|
||||
@echo 'HAVE_CONST=${HAVE_CONST}'; echo ''
|
||||
@echo 'HAVE_UID_T=${HAVE_UID_T}'; echo ''
|
||||
@echo 'HAVE_NEWSTR=${HAVE_NEWSTR}'; echo ''
|
||||
@echo 'HAVE_USTAT=${HAVE_USTAT}'; echo ''
|
||||
@echo 'HAVE_GETSID=${HAVE_GETSID}'; echo ''
|
||||
@echo 'HAVE_GETPGID=${HAVE_GETPGID}'; echo ''
|
||||
@echo 'HAVE_GETTIME=${HAVE_GETTIME}'; echo ''
|
||||
@echo 'HAVE_GETPRID=${HAVE_GETPRID}'; echo ''
|
||||
@echo 'HAVE_URANDOM=${HAVE_URANDOM}'; echo ''
|
||||
@echo 'ALIGN32=${ALIGN32}'; echo ''
|
||||
@echo 'BINDIR=${BINDIR}'; echo ''
|
||||
@echo 'TOPDIR=${TOPDIR}'; echo ''
|
||||
@echo 'LIBDIR=${LIBDIR}'; echo ''
|
||||
@echo 'HELPDIR=${HELPDIR}'; echo ''
|
||||
@echo 'CUSTOMLIBDIR=${CUSTOMLIBDIR}'; echo ''
|
||||
@echo 'CUSTOMHELPDIR=${CUSTOMHELPDIR}'; echo ''
|
||||
@echo 'SCRIPTDIR=${SCRIPTDIR}'; echo ''
|
||||
@echo 'MANDIR=${MANDIR}'; echo ''
|
||||
@echo 'CATDIR=${CATDIR}'; echo ''
|
||||
@echo 'MANEXT=${MANEXT}'; echo ''
|
||||
@echo 'CATEXT=${CATEXT}'; echo ''
|
||||
@echo 'NROFF=${NROFF}'; echo ''
|
||||
@echo 'NROFF_ARG=${NROFF_ARG}'; echo ''
|
||||
@echo 'MANMAKE=${MANMAKE}'; echo ''
|
||||
@echo 'CALCPATH=${CALCPATH}'; echo ''
|
||||
@echo 'CALCRC=${CALCRC}'; echo ''
|
||||
@echo 'CALCPAGER=${CALCPAGER}'; echo ''
|
||||
@echo 'DEBUG=${DEBUG}'; echo ''
|
||||
@echo 'NO_SHARED=${NO_SHARED}'; echo ''
|
||||
@echo 'LD_NO_SHARED=${LD_NO_SHARED}'; echo ''
|
||||
@echo 'RANLIB=${RANLIB}'; echo ''
|
||||
@echo 'MAKE_FILE=${MAKE_FILE}'; echo ''
|
||||
@echo 'PURIFY=${PURIFY}'; echo ''
|
||||
@echo 'LD_DEBUG=${LD_DEBUG}'; echo ''
|
||||
@echo 'CALC_ENV=${CALC_ENV}'; echo ''
|
||||
@echo 'ALLOW_CUSTOM=${ALLOW_CUSTOM}'; echo ''
|
||||
@echo 'CCOPT=${CCOPT}'; echo ''
|
||||
@echo 'CCWARN=${CCWARN}'; echo ''
|
||||
@echo 'CCMISC=${CCMISC}'; echo ''
|
||||
@echo 'CFLAGS=${CFLAGS}'; echo ''
|
||||
@echo 'ICFLAGS=${ICFLAGS}'; echo ''
|
||||
@echo 'LDFLAGS=${LDFLAGS}'; echo ''
|
||||
@echo 'ILDFLAGS=${ILDFLAGS}'; echo ''
|
||||
@echo 'LCC=${LCC}'; echo ''
|
||||
@echo 'CC=${CC}'; echo ''
|
||||
@echo 'SHELL=${SHELL}'; echo ''
|
||||
@echo 'MAKE=${MAKE}'; echo ''
|
||||
@echo 'AWK=${AWK}'; echo ''
|
||||
@echo 'SED=${SED}'; echo ''
|
||||
@echo 'SORT=${SORT}'; echo ''
|
||||
@echo 'TEE=${TEE}'; echo ''
|
||||
@echo 'CTAGS=${CTAGS}'; echo ''
|
||||
@echo 'MAKEDEPEND=${MAKEDEPEND}'; echo ''
|
||||
@echo 'Q=${Q}'; echo ''
|
||||
@echo 'V=${V}'; echo ''
|
||||
@echo 'LIBSRC=${LIBSRC}'; echo ''
|
||||
@echo 'LIBOBJS=${LIBOBJS}'; echo ''
|
||||
@echo 'CALCSRC=${CALCSRC}'; echo ''
|
||||
@echo 'CALCOBJS=${CALCOBJS}'; echo ''
|
||||
@echo 'BUILD_H_SRC=${BUILD_H_SRC}'; echo ''
|
||||
@echo 'BUILD_C_SRC=${BUILD_C_SRC}'; echo ''
|
||||
@echo 'UTIL_C_SRC=${UTIL_C_SRC}'; echo ''
|
||||
@echo 'UTIL_MISC_SRC=${UTIL_MISC_SRC}'; echo ''
|
||||
@echo 'UTIL_OBJS=${UTIL_OBJS}'; echo ''
|
||||
@echo 'UTIL_TMP=${UTIL_TMP}'; echo ''
|
||||
@echo 'UTIL_PROGS=${UTIL_PROGS}'; echo ''
|
||||
@echo 'LIB_H_SRC=${LIB_H_SRC}'; echo ''
|
||||
@echo 'CUSTOM_PASSDOWN=${CUSTOM_PASSDOWN}'; echo ''
|
||||
@echo 'SAMPLE_PASSDOWN=${SAMPLE_PASSDOWN}'; echo ''
|
||||
@echo 'HELP_PASSDOWN=${HELP_PASSDOWN}'; echo ''
|
||||
@echo 'CAL_PASSDOWN=${CAL_PASSDOWN}'; echo ''
|
||||
@echo 'CSCRIPT_PASSDOWN=${CSCRIPT_PASSDOWN}'; echo ''
|
||||
@echo 'H_SRC=${H_SRC}'; echo ''
|
||||
@echo 'C_SRC=${C_SRC}'; echo ''
|
||||
@echo 'DISTLIST=${DISTLIST}'; echo ''
|
||||
@echo 'OBJS=${OBJS}'; echo ''
|
||||
@echo 'CALC_LIBS=${CALC_LIBS}'; echo ''
|
||||
@echo 'PROGS=${PROGS}'; echo ''
|
||||
@echo 'TARGETS=${TARGETS}'; echo ''
|
||||
@echo '=-=-=-=-= end of major make variable dump =-=-=-=-='
|
||||
|
||||
mkdebug: env version.c
|
||||
@@ -3278,6 +3339,7 @@ file.o: fposval.h
|
||||
file.o: hash.h
|
||||
file.o: have_const.h
|
||||
file.o: have_fpos.h
|
||||
file.o: have_fpos_pos.h
|
||||
file.o: have_malloc.h
|
||||
file.o: have_memmv.h
|
||||
file.o: have_newstr.h
|
||||
@@ -3295,6 +3357,7 @@ file.o: zmath.h
|
||||
fposval.o: endian_calc.h
|
||||
fposval.o: fposval.c
|
||||
fposval.o: have_fpos.h
|
||||
fposval.o: have_fpos_pos.h
|
||||
fposval.o: have_offscl.h
|
||||
fposval.o: have_posscl.h
|
||||
func.o: alloc.h
|
||||
@@ -3316,6 +3379,7 @@ func.o: have_malloc.h
|
||||
func.o: have_memmv.h
|
||||
func.o: have_newstr.h
|
||||
func.o: have_stdlib.h
|
||||
func.o: have_strdup.h
|
||||
func.o: have_string.h
|
||||
func.o: have_times.h
|
||||
func.o: have_unistd.h
|
||||
@@ -3364,6 +3428,9 @@ hash.o: zrand.h
|
||||
hash.o: zrandom.h
|
||||
have_const.o: have_const.c
|
||||
have_fpos.o: have_fpos.c
|
||||
have_fpos_pos.o: have_fpos.h
|
||||
have_fpos_pos.o: have_fpos_pos.c
|
||||
have_fpos_pos.o: have_posscl.h
|
||||
have_getpgid.o: have_getpgid.c
|
||||
have_getprid.o: have_getprid.c
|
||||
have_getsid.o: have_getsid.c
|
||||
|
22
README
22
README
@@ -4,7 +4,7 @@ See the HOWTO.INSTALL file for information on how to build and install calc.
|
||||
|
||||
To be sure that your version of calc is up to date, check out:
|
||||
|
||||
http://reality.sgi.com/chongo/tech/comp/calc/calc-download.html
|
||||
http://www.isthe.com/chongo/tech/comp/calc/calc-download.html
|
||||
|
||||
We are interested in any/all feedback on recent versions of calc.
|
||||
In particular we would like to hear about:
|
||||
@@ -75,9 +75,10 @@ for a wish/todo list. Code contributions are welcome.
|
||||
|
||||
To join the calc-tester mailing list. Send a request to:
|
||||
|
||||
calc-tester-request at postofc dot corp dot sgi dot com
|
||||
calc-tester-request at asthe dot com
|
||||
|
||||
[[ Replace 'at' with @, 'dot' is with . and remove the spaces ]]
|
||||
[[ NOTE: Replace 'at' with @, 'dot' is with . and remove the spaces ]]
|
||||
[[ NOTE: The EMail address uses 'asthe' and the web site URL uses 'isthe' ]]
|
||||
|
||||
Your message body (not the subject) should consist of:
|
||||
|
||||
@@ -90,15 +91,16 @@ your full name.
|
||||
|
||||
Calc bug reports, however should be sent to:
|
||||
|
||||
calc-bugs at postofc dot corp dot sgi dot com
|
||||
calc-bugs at asthe dot com
|
||||
|
||||
[[ Replace 'at' with @, 'dot' is with . and remove the spaces ]]
|
||||
[[ NOTE: Replace 'at' with @, 'dot' is with . and remove the spaces ]]
|
||||
[[ NOTE: The EMail address uses 'asthe' and the web site URL uses 'isthe' ]]
|
||||
|
||||
but see the BUGS file first.
|
||||
|
||||
The calc web site is located at:
|
||||
|
||||
http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
http://www.isthe.com/chongo/tech/comp/calc/
|
||||
|
||||
## Copyright (C) 1999 Landon Curt Noll
|
||||
##
|
||||
@@ -116,12 +118,12 @@ The calc web site is located at:
|
||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
## 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
##
|
||||
## @(#) $Revision: 29.1 $
|
||||
## @(#) $Id: README,v 29.1 1999/12/14 09:15:29 chongo Exp $
|
||||
## @(#) $Revision: 29.2 $
|
||||
## @(#) $Id: README,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
## @(#) $Source: /usr/local/src/cmd/calc/RCS/README,v $
|
||||
##
|
||||
## Under source code control: 1995/10/25 05:27:59
|
||||
## File existed as early as: 1995
|
||||
##
|
||||
## chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
## Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
## chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
## Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
|
113
README.WINDOWS
Normal file
113
README.WINDOWS
Normal file
@@ -0,0 +1,113 @@
|
||||
Dear calc user on a Windoz based system,
|
||||
|
||||
See the HOWTO.INSTALL file for information on how to build and install calc.
|
||||
See also the README file.
|
||||
|
||||
NOTE: The Windoz port is extremely experimental, untested and perhaps
|
||||
incomplete. We are in the process of making it easier. The
|
||||
following should help anyone who is trying to make a go of this
|
||||
under the current code conditions.
|
||||
|
||||
NOTE: We are currently ONLY making an effort to support building under
|
||||
Windoz using the Cygwin project (http://sources.redhat.com/cygwin/)
|
||||
with the GCC compiler and Un*x tools for Windows.
|
||||
|
||||
NOTE: The main developers do not have access to a Windoz based platform.
|
||||
While we will make an effort to not break calc Windoz based system,
|
||||
our lack of a Windoz test environment will mean we will make mistakes
|
||||
from time to time. Hopefully Windowz users can overcome these mistakes.
|
||||
Of course you are welcome to send us any patches that fix your
|
||||
Windoz build environment.
|
||||
|
||||
=-=
|
||||
|
||||
An effort is being made to allow windows users to compile calc using the
|
||||
Cygwin project (http://sources.redhat.com/cygwin/) with the GCC compiler
|
||||
and Un*x tools for Windows.
|
||||
|
||||
The major porting work was performed by Thomas Jones-Low
|
||||
(tjoneslo at softstart dot com). He said:
|
||||
|
||||
I had previous stated to this group that I have successfully managed
|
||||
to port a version of Calc to Windows, and promised some point to
|
||||
post what was required, so here it is.
|
||||
|
||||
One obvious manner of doing this port is to get the latest version
|
||||
of the Cygwin project (http://sources.redhat.com/cygwin/) with the
|
||||
GCC compiler and Un*x tools for Windows and recompile.
|
||||
|
||||
I built my working version using Calc ... I am using Visual C++
|
||||
version 7.0, which is an older version of the Microsoft development
|
||||
tools. The make file provided with Calc is not compatible with
|
||||
NMAKE, so I used the Visual Studio tools to generate another one
|
||||
(not included). Calc is built in two parts, calc.dll, which is the
|
||||
library, and calcexe.exe which is the command line interface.
|
||||
|
||||
He recommends that you generate by hand all of the header files generated
|
||||
by the make file:
|
||||
|
||||
align32.h args.h calcerr.h conf.h endian_calc.h
|
||||
fposval.h have_const.h have_fpos.h have_fpos_pos.h have_malloc.h
|
||||
have_memmv.h have_newstr.h have_offscl.h have_posscl.h
|
||||
have_stdlib.h have_string.h have_times.h have_uid_t.h
|
||||
have_unistd.h longbits.h longlong.h terminal.h
|
||||
have_ustat.h have_getsid.h have_getpgid.h
|
||||
have_gettime.h have_getprid.h have_urandom.h have_rusage.h
|
||||
have_strdup.h
|
||||
|
||||
NOTE: In a future release, a tarball of these files will be shipped with
|
||||
calc so that you do not have to do much other than inspect them.
|
||||
|
||||
=-=
|
||||
|
||||
People who maintain calc need to keep in mind the following:
|
||||
|
||||
The following was added to opcodes.h, config.h, zmath.h and value.h:
|
||||
|
||||
#if defined (_WIN32)
|
||||
#ifdef _EXPORTING
|
||||
#define DLL __declspec(dllexport)
|
||||
#else
|
||||
#define DLL __declspec(dllimport)
|
||||
#endif
|
||||
|
||||
#else /* Windoz free systems */
|
||||
|
||||
#define DLL
|
||||
|
||||
#endif /* Windoz free systems */
|
||||
|
||||
Then DLL was added in front of all the exported functions. For example:
|
||||
|
||||
extern int configtype(char*);
|
||||
|
||||
was changed to:
|
||||
|
||||
DLL extern int configtype(char*);
|
||||
|
||||
|
||||
## Copyright (C) 2001 Landon Curt Noll and Thomas Jones-Low
|
||||
##
|
||||
## Calc is open software; you can redistribute it and/or modify it under
|
||||
## the terms of the version 2.1 of the GNU Lesser General Public License
|
||||
## as published by the Free Software Foundation.
|
||||
##
|
||||
## Calc is distributed in the hope that it will be useful, but WITHOUT
|
||||
## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
||||
## or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
|
||||
## Public License for more details.
|
||||
##
|
||||
## A copy of version 2.1 of the GNU Lesser General Public License is
|
||||
## distributed with calc under the filename COPYING-LGPL. You should have
|
||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
## 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
##
|
||||
## @(#) $Revision: 29.2 $
|
||||
## @(#) $Id: README.WINDOWS,v 29.2 2001/02/25 22:20:38 chongo Exp $
|
||||
## @(#) $Source: /usr/local/src/cmd/calc/RCS/README.WINDOWS,v $
|
||||
##
|
||||
## Under source code control: 2001/02/25 14:00:05
|
||||
## File existed as early as: 2001
|
||||
##
|
||||
## chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
## Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
10
addop.c
10
addop.c
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: addop.c,v 29.1 1999/12/14 09:15:29 chongo Exp $
|
||||
* @(#) $Revision: 29.3 $
|
||||
* @(#) $Id: addop.c,v 29.3 2000/07/17 15:35:49 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/addop.c,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:48:10
|
||||
* File existed as early as: before 1990
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
@@ -208,7 +208,7 @@ endfunc(void)
|
||||
memcpy((char *) fp, (char *) curfunc, size);
|
||||
if (curfunc != functemplate)
|
||||
free(curfunc);
|
||||
if (conf->traceflags & TRACE_FNCODES) {
|
||||
if (newname[0] != '*' && (conf->traceflags & TRACE_FNCODES)) {
|
||||
dumpnames = TRUE;
|
||||
for (size = 0; size < fp->f_opcodecount; ) {
|
||||
printf("%ld: ", (long)size);
|
||||
@@ -318,7 +318,7 @@ freefunc(FUNC *fp)
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
}
|
||||
if (conf->traceflags & TRACE_FNCODES) {
|
||||
if (newname[0] != '*' && (conf->traceflags & TRACE_FNCODES)) {
|
||||
printf("Freeing function \"%s\"\n",namestr(&funcnames,index));
|
||||
dumpnames = FALSE;
|
||||
for (i = 0; i < fp->f_opcodecount; ) {
|
||||
|
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: align32.c,v 29.1 1999/12/14 09:15:29 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: align32.c,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/align32.c,v $
|
||||
*
|
||||
* Under source code control: 1995/11/23 05:18:06
|
||||
* File existed as early as: 1995
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
6
alloc.h
6
alloc.h
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: alloc.h,v 29.1 1999/12/14 09:15:29 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: alloc.h,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/alloc.h,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:48:29
|
||||
* File existed as early as: before 1990
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: assocfunc.c,v 29.1 1999/12/14 09:15:29 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: assocfunc.c,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/assocfunc.c,v $
|
||||
*
|
||||
* Under source code control: 1993/07/20 23:04:27
|
||||
* File existed as early as: 1993
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
6
blkcpy.c
6
blkcpy.c
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: blkcpy.c,v 29.1 1999/12/14 09:15:29 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: blkcpy.c,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/blkcpy.c,v $
|
||||
*
|
||||
* Under source code control: 1997/04/18 20:41:26
|
||||
* File existed as early as: 1997
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
6
blkcpy.h
6
blkcpy.h
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: blkcpy.h,v 29.1 1999/12/14 09:15:29 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: blkcpy.h,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/blkcpy.h,v $
|
||||
*
|
||||
* Under source code control: 1997/04/18 20:41:25
|
||||
* File existed as early as: 1997
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
8
block.c
8
block.c
@@ -19,15 +19,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: block.c,v 29.1 1999/12/14 09:15:29 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: block.c,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/block.c,v $
|
||||
*
|
||||
* Under source code control: 1997/02/27 00:29:40
|
||||
* File existed as early as: 1997
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
8
block.h
8
block.h
@@ -19,15 +19,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: block.h,v 29.1 1999/12/14 09:15:30 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: block.h,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/block.h,v $
|
||||
*
|
||||
* Under source code control: 1997/02/21 05:03:39
|
||||
* File existed as early as: 1997
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: byteswap.c,v 29.1 1999/12/14 09:15:30 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: byteswap.c,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/byteswap.c,v $
|
||||
*
|
||||
* Under source code control: 1995/10/11 04:44:01
|
||||
* File existed as early as: 1995
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: byteswap.h,v 29.1 1999/12/14 09:15:30 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: byteswap.h,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/byteswap.h,v $
|
||||
*
|
||||
* Under source code control: 1995/10/11 04:44:01
|
||||
* File existed as early as: 1995
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
10
cal/Makefile
10
cal/Makefile
@@ -18,15 +18,15 @@
|
||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# @(#) $Revision: 29.1 $
|
||||
# @(#) $Id: Makefile,v 29.1 1999/12/14 09:15:30 chongo Exp $
|
||||
# @(#) $Revision: 29.3 $
|
||||
# @(#) $Id: Makefile,v 29.3 2000/12/15 14:42:52 chongo Exp $
|
||||
# @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/Makefile,v $
|
||||
#
|
||||
# Under source code control: 1991/07/21 05:00:54
|
||||
# File existed as early as: 1991
|
||||
#
|
||||
# chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
# Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
# chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
# Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
#
|
||||
# calculator by David I. Bell with help/mods from others
|
||||
# Makefile by Landon Curt Noll
|
||||
@@ -70,7 +70,7 @@ CALC_FILES= README bigprime.cal deg.cal ellip.cal lucas.cal lucas_chk.cal \
|
||||
test3500.cal seedrandom.cal test4000.cal test4100.cal test4600.cal \
|
||||
beer.cal hello.cal test5100.cal test5200.cal randombitrun.cal \
|
||||
randomrun.cal xx_print.cal natnumset.cal qtime.cal test8400.cal \
|
||||
test8500.cal
|
||||
test8500.cal test8600.cal
|
||||
|
||||
# These files are found (but not built) in the distribution
|
||||
#
|
||||
|
68
cal/README
68
cal/README
@@ -1,7 +1,7 @@
|
||||
Calc standard resource files
|
||||
----------------------------
|
||||
|
||||
To load a reosurce file, try:
|
||||
To load a resource file, try:
|
||||
|
||||
read filename
|
||||
|
||||
@@ -37,9 +37,10 @@ be useful!
|
||||
|
||||
If you write something that you think is useful, please send it to:
|
||||
|
||||
calc-tester at postofc dot corp dot sgi dot com
|
||||
calc-contrib at asthe dot com
|
||||
|
||||
[[ Replace 'at' with @, 'dot' is with . and remove the spaces ]]
|
||||
[[ NOTE: Replace 'at' with @, 'dot' is with . and remove the spaces ]]
|
||||
[[ NOTE: The EMail address uses 'asthe' and the web site URL uses 'isthe' ]]
|
||||
|
||||
By convention, a resource file only defines and/or initializes functions,
|
||||
objects and variables. (The regress.cal and testxxx.cal regression test
|
||||
@@ -58,7 +59,7 @@ files have already been read, the read -once will act as a noop.
|
||||
|
||||
The "resource_debug" parameter is intended for controlling the possible
|
||||
display of special information relating to functions, objects, and
|
||||
other structures created by instructions in calc resoure files.
|
||||
other structures created by instructions in calc resource files.
|
||||
Zero value of config("resource_debug") means that no such information
|
||||
is displayed. For other values, the non-zero bits which currently
|
||||
have meanings are as follows:
|
||||
@@ -115,6 +116,10 @@ bernoulli.cal
|
||||
|
||||
Calculate the nth Bernoulli number.
|
||||
|
||||
NOTE: There is now a bernoulli() builtin function. This file is
|
||||
left here for backward compatibility and now simply returns
|
||||
the buildin function.
|
||||
|
||||
|
||||
bigprime.cal
|
||||
|
||||
@@ -273,7 +278,7 @@ pell.cal
|
||||
pell(D)
|
||||
|
||||
Solve Pell's equation; Returns the solution X to: X^2 - D * Y^2 = 1.
|
||||
Type the solution to pells equation for a particular D.
|
||||
Type the solution to Pell's equation for a particular D.
|
||||
|
||||
|
||||
pi.cal
|
||||
@@ -287,7 +292,7 @@ pi.cal
|
||||
The piforever() prints digits of pi, nicely formatted, for as long
|
||||
as your free memory space and system up time allows.
|
||||
|
||||
The piforever() funcion (written by Klaus Alexander Seistrup
|
||||
The piforever() function (written by Klaus Alexander Seistrup
|
||||
<klaus@seistrup.dk>) was inspired by an algorithm conceived by
|
||||
Lambert Meertens. See also the ABC Programmer's Handbook, by Geurts,
|
||||
Meertens & Pemberton, published by Prentice-Hall (UK) Ltd., 1990.
|
||||
@@ -355,7 +360,7 @@ quat.cal
|
||||
quat_shift(a, b)
|
||||
|
||||
Calculate using quaternions of the form: a + bi + cj + dk. In these
|
||||
functions, quaternians are manipulated in the form: s + v, where
|
||||
functions, quaternions are manipulated in the form: s + v, where
|
||||
s is a scalar and v is a vector of size 3.
|
||||
|
||||
|
||||
@@ -385,7 +390,7 @@ randombitrun.cal
|
||||
randombitrun([run_cnt])
|
||||
|
||||
Using randombit(1) to generate a sequence of random bits, determine if
|
||||
the number and kength of identical bits runs match what is expected.
|
||||
the number and length of identical bits runs match what is expected.
|
||||
By default, run_cnt is to test the next 65536 random values.
|
||||
|
||||
This tests the Blum-Blum-Shub generator.
|
||||
@@ -488,7 +493,7 @@ test1700.cal
|
||||
|
||||
value
|
||||
|
||||
This resoure files is used by regress.cal to test the read and use keywords.
|
||||
This resource files is used by regress.cal to test the read and use keywords.
|
||||
|
||||
|
||||
test2600.cal
|
||||
@@ -513,7 +518,7 @@ test2600.cal
|
||||
checkresult(x, y, z, a)
|
||||
test2600(verbose, tnum)
|
||||
|
||||
This resoure files is used by regress.cal to test some of builtin functions
|
||||
This resource files is used by regress.cal to test some of builtin functions
|
||||
in terms of accuracy and roundoff.
|
||||
|
||||
|
||||
@@ -536,7 +541,7 @@ test2700.cal
|
||||
iscomsq(x)
|
||||
test2700(verbose, tnum)
|
||||
|
||||
This resoure files is used by regress.cal to test sqrt() for real and
|
||||
This resource files is used by regress.cal to test sqrt() for real and
|
||||
complex values.
|
||||
|
||||
|
||||
@@ -624,7 +629,7 @@ test4000.cal
|
||||
test4000(verbose, tnum) defined
|
||||
|
||||
This resource file is used by regress.cal to test ptest, nextcand and
|
||||
prevcand buildins.
|
||||
prevcand builtins.
|
||||
|
||||
test4100.cal
|
||||
|
||||
@@ -676,6 +681,35 @@ test5200.cal
|
||||
This resource file is used by regress.cal to test the fix of a
|
||||
global/static bug.
|
||||
|
||||
test8400.cal
|
||||
|
||||
test8400() defined
|
||||
|
||||
This resource file is used by regress.cal to check for quit-based
|
||||
memory leaks.
|
||||
|
||||
test8500.cal
|
||||
|
||||
global err_8500
|
||||
global L_8500
|
||||
global ver_8500
|
||||
global old_seed_8500
|
||||
global cfg_8500
|
||||
onetest_8500(a,b,rnd) defined
|
||||
divmod_8500(N, M1, M2, testnum) defined
|
||||
|
||||
This resource file is used by regress.cal to the // and % operators.
|
||||
|
||||
test8600.cal
|
||||
|
||||
global min_8600
|
||||
global max_8600
|
||||
global hash_8600
|
||||
global hmean_8600
|
||||
|
||||
This resource file is used by regress.cal to test a change of
|
||||
allowing up to 1024 args to be passed to a builtin function.
|
||||
|
||||
unitfrac.cal
|
||||
|
||||
unitfrac(x)
|
||||
@@ -704,7 +738,7 @@ xx_print.cal
|
||||
|
||||
Demo for the xx_print object routines.
|
||||
|
||||
## Copyright (C) 1999 David I. Bell and Landon Curt Noll
|
||||
## Copyright (C) 2000 David I. Bell and Landon Curt Noll
|
||||
##
|
||||
## Primary author: Landon Curt Noll
|
||||
##
|
||||
@@ -722,12 +756,12 @@ xx_print.cal
|
||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
## 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
##
|
||||
## @(#) $Revision: 29.1 $
|
||||
## @(#) $Id: README,v 29.1 1999/12/14 09:15:30 chongo Exp $
|
||||
## @(#) $Revision: 29.4 $
|
||||
## @(#) $Id: README,v 29.4 2000/12/17 12:26:04 chongo Exp $
|
||||
## @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/README,v $
|
||||
##
|
||||
## Under source code control: 1990/02/15 01:50:32
|
||||
## File existed as early as: before 1990
|
||||
##
|
||||
## chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
## Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
## chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
## Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
|
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: beer.cal,v 29.1 1999/12/14 09:15:30 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: beer.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/beer.cal,v $
|
||||
*
|
||||
* Under source code control: 1996/11/13 13:21:05
|
||||
* File existed as early as: 1996
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* bernoulli - clculate the Nth Bernoulli number B(n)
|
||||
*
|
||||
* Copyright (C) 1999 David I. Bell
|
||||
* Copyright (C) 2000 David I. Bell and Landon Curt Noll
|
||||
*
|
||||
* Calc is open software; you can redistribute it and/or modify it under
|
||||
* the terms of the version 2.1 of the GNU Lesser General Public License
|
||||
@@ -17,24 +17,28 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: bernoulli.cal,v 29.1 1999/12/14 09:15:30 chongo Exp $
|
||||
* @(#) $Revision: 29.3 $
|
||||
* @(#) $Id: bernoulli.cal,v 29.3 2000/12/17 12:26:04 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/bernoulli.cal,v $
|
||||
*
|
||||
* Under source code control: 1991/09/30 11:18:41
|
||||
* File existed as early as: 1991
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
* Calculate the Nth Bernoulli number B(n).
|
||||
* This uses the following symbolic formula to calculate B(n):
|
||||
*
|
||||
* NOTE: This is now a bulitin function.
|
||||
*
|
||||
* The non-buildin code used the following symbolic formula to calculate B(n):
|
||||
*
|
||||
* (b+1)^(n+1) - b^(n+1) = 0
|
||||
*
|
||||
* where b is a dummy value, and each power b^i gets replaced by B(i).
|
||||
* For example, for n = 3:
|
||||
*
|
||||
* (b+1)^4 - b^4 = 0
|
||||
* b^4 + 4*b^3 + 6*b^2 + 4*b + 1 - b^4 = 0
|
||||
* 4*b^3 + 6*b^2 + 4*b + 1 = 0
|
||||
@@ -48,11 +52,14 @@
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
static Bnmax;
|
||||
static mat Bn[1001];
|
||||
*/
|
||||
|
||||
define B(n)
|
||||
{
|
||||
/*
|
||||
local nn, np1, i, sum, mulval, divval, combval;
|
||||
|
||||
if (!isint(n) || (n < 0))
|
||||
@@ -85,4 +92,6 @@ define B(n)
|
||||
}
|
||||
Bnmax = n;
|
||||
return Bn[n];
|
||||
*/
|
||||
return bernoulli(n);
|
||||
}
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: bigprime.cal,v 29.1 1999/12/14 09:15:30 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: bigprime.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/bigprime.cal,v $
|
||||
*
|
||||
* Under source code control: 1991/05/22 21:56:32
|
||||
* File existed as early as: 1991
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -16,14 +16,14 @@
|
||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# @(#) $Revision: 29.1 $
|
||||
# @(#) $Id: bindings,v 29.1 1999/12/14 09:15:30 chongo Exp $
|
||||
# @(#) $Revision: 29.2 $
|
||||
# @(#) $Id: bindings,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
# @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/bindings,v $
|
||||
#
|
||||
# Under source code control: 1993/05/02 20:09:19
|
||||
# File existed as early as: 1993
|
||||
#
|
||||
# Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
# Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
|
||||
# NOTE: This facility is ignored if calc was compiled with GNU-readline.
|
||||
# In that case, the standard readline mechanisms (see readline(3))
|
||||
|
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: chrem.cal,v 29.1 1999/12/14 09:15:31 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: chrem.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/chrem.cal,v $
|
||||
*
|
||||
* Under source code control: 1992/09/26 01:00:47
|
||||
* File existed as early as: 1992
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: deg.cal,v 29.1 1999/12/14 09:15:31 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: deg.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/deg.cal,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:50:33
|
||||
* File existed as early as: before 1990
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: ellip.cal,v 29.1 1999/12/14 09:15:31 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: ellip.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/ellip.cal,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:50:33
|
||||
* File existed as early as: before 1990
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: hello.cal,v 29.1 1999/12/14 09:15:31 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: hello.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/hello.cal,v $
|
||||
*
|
||||
* Under source code control: 1996/11/13 13:25:43
|
||||
* File existed as early as: 1996
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: lucas.cal,v 29.1 1999/12/14 09:15:31 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: lucas.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/lucas.cal,v $
|
||||
*
|
||||
* Under source code control: 1990/05/03 16:49:51
|
||||
* File existed as early as: 1990
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: lucas_chk.cal,v 29.1 1999/12/14 09:15:31 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: lucas_chk.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/lucas_chk.cal,v $
|
||||
*
|
||||
* Under source code control: 1991/01/11 05:41:43
|
||||
* File existed as early as: 1991
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: lucas_tbl.cal,v 29.1 1999/12/14 09:15:31 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: lucas_tbl.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/lucas_tbl.cal,v $
|
||||
*
|
||||
* Under source code control: 1991/01/26 02:43:43
|
||||
* File existed as early as: 1991
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: mersenne.cal,v 29.1 1999/12/14 09:15:31 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: mersenne.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/mersenne.cal,v $
|
||||
*
|
||||
* Under source code control: 1991/05/22 21:56:36
|
||||
* File existed as early as: 1991
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: mfactor.cal,v 29.1 1999/12/14 09:15:31 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: mfactor.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/mfactor.cal,v $
|
||||
*
|
||||
* Under source code control: 1996/07/06 06:09:40
|
||||
* File existed as early as: 1996
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: mod.cal,v 29.1 1999/12/14 09:15:31 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: mod.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/mod.cal,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:50:34
|
||||
* File existed as early as: before 1990
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: natnumset.cal,v 29.1 1999/12/14 09:15:31 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: natnumset.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/natnumset.cal,v $
|
||||
*
|
||||
* Under source code control: 1997/09/07 23:53:51
|
||||
* File existed as early as: 1997
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: pell.cal,v 29.1 1999/12/14 09:15:31 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: pell.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/pell.cal,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:50:34
|
||||
* File existed as early as: before 1990
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: pi.cal,v 29.1 1999/12/14 09:15:31 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: pi.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/pi.cal,v $
|
||||
*
|
||||
* Under source code control: 1991/05/22 21:56:37
|
||||
* File existed as early as: 1991
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: pix.cal,v 29.1 1999/12/14 09:15:31 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: pix.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/pix.cal,v $
|
||||
*
|
||||
* Under source code control: 1996/07/09 03:14:14
|
||||
* File existed as early as: 1996
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: pollard.cal,v 29.1 1999/12/14 09:15:31 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: pollard.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/pollard.cal,v $
|
||||
*
|
||||
* Under source code control: 1991/05/22 21:56:37
|
||||
* File existed as early as: 1991
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: poly.cal,v 29.1 1999/12/14 09:15:31 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: poly.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/poly.cal,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:50:35
|
||||
* File existed as early as: before 1990
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: prompt.cal,v 29.1 1999/12/14 09:15:32 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: prompt.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/prompt.cal,v $
|
||||
*
|
||||
* Under source code control: 1995/12/18 04:43:25
|
||||
* File existed as early as: 1995
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: psqrt.cal,v 29.1 1999/12/14 09:15:32 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: psqrt.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/psqrt.cal,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:50:35
|
||||
* File existed as early as: before 1990
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -1,24 +1,46 @@
|
||||
/*
|
||||
* qtime - Display time as English sentence
|
||||
*
|
||||
* Copyright (C) 1999 Klaus Alexander Seistrup and Landon Curt Noll
|
||||
*
|
||||
* Written by: Klaus Alexander Seistrup <kseis@magnetic-ink.dk>
|
||||
* With mods by: Landon Curt Noll <http://www.isthe.com/chongo/>
|
||||
*
|
||||
* Calc is open software; you can redistribute it and/or modify it under
|
||||
* the terms of the version 2.1 of the GNU Lesser General Public License
|
||||
* as published by the Free Software Foundation.
|
||||
*
|
||||
* Calc is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
||||
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
|
||||
* Public License for more details.
|
||||
*
|
||||
* A copy of version 2.1 of the GNU Lesser General Public License is
|
||||
* distributed with calc under the filename COPYING-LGPL. You should have
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.4 $
|
||||
* @(#) $Id: qtime.cal,v 29.4 2000/12/18 10:18:40 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/qtime.cal,v $
|
||||
*
|
||||
* Under source code control: 1999/10/13 04:10:33
|
||||
* File existed as early as: 1999
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
* usage:
|
||||
* qtime(utc_hr_offset)
|
||||
*
|
||||
* utc_hr_offset Offset from UTC in hours.
|
||||
*
|
||||
* Written by: Klaus Alexander Seistrup <kseis@magnetic-ink.dk>
|
||||
* With minor mods by: Landon Curt Noll <http://reality.sgi.com/chongo/>
|
||||
*
|
||||
* See:
|
||||
* http://www.magnetic-ink.dk/download/qtime.html
|
||||
*
|
||||
* for examples of qtime() written on other languages.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: qtime.cal,v 29.1 1999/12/14 09:15:32 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/qtime.cal,v $
|
||||
*
|
||||
* This file is not covered under version 2.1 of the GNU LGPL.
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: quat.cal,v 29.1 1999/12/14 09:15:32 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: quat.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/quat.cal,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:50:35
|
||||
* File existed as early as: before 1990
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: randbitrun.cal,v 29.1 1999/12/14 09:15:32 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: randbitrun.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/randbitrun.cal,v $
|
||||
*
|
||||
* Under source code control: 1995/02/13 03:43:11
|
||||
* File existed as early as: 1995
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: randmprime.cal,v 29.1 1999/12/14 09:15:32 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: randmprime.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/randmprime.cal,v $
|
||||
*
|
||||
* Under source code control: 1994/03/14 23:11:21
|
||||
* File existed as early as: 1994
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: randombitrun.cal,v 29.1 1999/12/14 09:15:32 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: randombitrun.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/randombitrun.cal,v $
|
||||
*
|
||||
* Under source code control: 1995/02/13 03:43:11
|
||||
* File existed as early as: 1995
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: randomrun.cal,v 29.1 1999/12/14 09:15:32 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: randomrun.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/randomrun.cal,v $
|
||||
*
|
||||
* Under source code control: 1997/02/19 03:35:59
|
||||
* File existed as early as: 1997
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: randrun.cal,v 29.1 1999/12/14 09:15:32 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: randrun.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/randrun.cal,v $
|
||||
*
|
||||
* Under source code control: 1995/02/12 20:00:06
|
||||
* File existed as early as: 1995
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
112
cal/regress.cal
112
cal/regress.cal
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: regress.cal,v 29.1 1999/12/14 09:15:32 chongo Exp $
|
||||
* @(#) $Revision: 29.6 $
|
||||
* @(#) $Id: regress.cal,v 29.6 2000/12/17 12:26:42 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/regress.cal,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:50:36
|
||||
* File existed as early as: before 1990
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
@@ -755,7 +755,7 @@ define test_functions()
|
||||
vrfy(den(17) == 1, '712: den(17) == 1');
|
||||
vrfy(den(3/7) == 7, '713: den(3/7) == 7');
|
||||
vrfy(den(-2/3) == 3, '714: den(-2/3) == 3');
|
||||
vrfy(digits(0) == 1, '715: digits(0) == 1');
|
||||
vrfy(digits(0) == 0, '715: digits(0) == 0');
|
||||
vrfy(digits(9) == 1, '716: digits(9) == 1');
|
||||
vrfy(digits(10) == 2, '717: digits(10) == 2');
|
||||
vrfy(digits(-691) == 3, '718: digits(-691) == 3');
|
||||
@@ -1029,8 +1029,8 @@ define test_functions()
|
||||
vrfy(digit(a,-1) == 4, '974: digit(a,-1) == 4');
|
||||
vrfy(digit(a,-2) == 2, '975: digit(a,-2) == 2');
|
||||
vrfy(digit(a,-3) == 8, '976: digit(a,-3) == 8');
|
||||
vrfy(digits(0) == 1, '977: digits(0) == 1');
|
||||
vrfy(digits(0.0123) == 1, '978: digits(0.0123) == 1');
|
||||
vrfy(digits(0) == 0, '977: digits(0) == 0');
|
||||
vrfy(digits(0.0123) == 0, '978: digits(0.0123) == 0');
|
||||
vrfy(digits(3.7) == 1, '979: digits(3.7) == 1');
|
||||
vrfy(digits(-27) == 2, '980: digits(-27) == 2');
|
||||
vrfy(digits(-99.7) == 2, '981: digits(-99.7) == 2');
|
||||
@@ -1223,7 +1223,85 @@ define test_functions()
|
||||
vrfy(hnrmod(21<<500+7,3,500,-1) == (21<<500+7)%(3<<500-1),
|
||||
'1112: hnrmod(21<<500+7,3,500,-1) == (21<<500+7)%(3<<500-1)');
|
||||
|
||||
print '1113: Ending test_functions';
|
||||
/*
|
||||
* catalan testing
|
||||
*/
|
||||
vrfy(catalan(2) == 2, '1113: catalan(2) == 2');
|
||||
vrfy(catalan(3) == 5, '1114: catalan(3) == 5');
|
||||
vrfy(catalan(4) == 14, '1115: catalan(4) == 14');
|
||||
vrfy(catalan(20) == 6564120420, '1116: catalan(20) == 6564120420');
|
||||
|
||||
/*
|
||||
* bernoulli builtin function testing
|
||||
*/
|
||||
vrfy(bernoulli(0) == 1, '1117: bernoulli(0) == 1');
|
||||
vrfy(bernoulli(1) == -1/2, '1118: bernoulli(1) == -1/2');
|
||||
vrfy(bernoulli(2) == 1/6, '1119: bernoulli(2) == 1/6');
|
||||
vrfy(bernoulli(3) == 0, '1120: bernoulli(3) == 0');
|
||||
vrfy(bernoulli(4) == -1/30, '1121: bernoulli(4) == -1/30');
|
||||
vrfy(bernoulli(5) == 0, '1122: bernoulli(5) == 0');
|
||||
vrfy(bernoulli(6) == 1/42, '1123: bernoulli(6) == 1/42');
|
||||
vrfy(bernoulli(32) == -7709321041217/510,
|
||||
'1124: bernoulli(32) == -7709321041217/510');
|
||||
|
||||
/*
|
||||
* euler function testing
|
||||
*/
|
||||
vrfy(euler(0) == 1, '1125: euler(0) == 1');
|
||||
vrfy(euler(1) == 0, '1126: euler(1) == 0');
|
||||
vrfy(euler(2) == -1, '1127: euler(2) == -1');
|
||||
vrfy(euler(3) == 0, '1128: euler(3) == 0');
|
||||
vrfy(freeeuler() == null(), '1129: freeeuler() == null()');
|
||||
vrfy(euler(4) == 5, '1130: euler(4) == 5');
|
||||
vrfy(euler(5) == 0, '1131: euler(5) == 0');
|
||||
vrfy(euler(6) == -61, '1132: euler(6) == -61');
|
||||
vrfy(euler(32) == 177519391579539289436664789665,
|
||||
'1130: euler(32) == 177519391579539289436664789665');
|
||||
vrfy(freeeuler() == null(), '1133: freeeuler() == null()');
|
||||
|
||||
/*
|
||||
* digit with non-10 base
|
||||
*/
|
||||
a = 123456.789;
|
||||
print '1134: a = 123456.789';
|
||||
vrfy(digit(a, 6, 100) == 0, '1135: digit(a, 6, 100) == 0');
|
||||
vrfy(digit(a, 5, 100) == 0, '1136: digit(a, 5, 100) == 0');
|
||||
vrfy(digit(a, 4, 100) == 0, '1137: digit(a, 4, 100) == 0');
|
||||
vrfy(digit(a, 3, 100) == 0, '1138: digit(a, 3, 100) == 0');
|
||||
vrfy(digit(a, 2, 100) == 12, '1139: digit(a, 2, 100) == 12');
|
||||
vrfy(digit(a, 1, 100) == 34, '1140: digit(a, 1, 100) == 34');
|
||||
vrfy(digit(a, 0, 100) == 56, '1141: digit(a, 0, 100) == 56');
|
||||
vrfy(digit(a, -1, 100) == 78, '1142: digit(a, -1, 100) == 78');
|
||||
vrfy(digit(a, -2, 100) == 90, '1143: digit(a, -2, 100) == 90');
|
||||
vrfy(digit(a, -3, 100) == 0, '1144: digit(a, -3, 100) == 0');
|
||||
vrfy(digit(a, -4, 100) == 0, '1145: digit(a, -4, 100) == 0');
|
||||
vrfy(digit(a, -5, 100) == 0, '1146: digit(a, -5, 100) == 0');
|
||||
vrfy(digit(a, -6, 100) == 0, '1146: digit(a, -6, 100) == 0');
|
||||
|
||||
/*
|
||||
* digits with a non-10 base
|
||||
*/
|
||||
vrfy(digits(a, 100) == 3, '1147: digits(a, 100) == 3');
|
||||
vrfy(digits(2^256-1, 256) == 32,'1148: digits(2^256-1, 256) == 32');
|
||||
|
||||
/*
|
||||
* places with a non-10 base
|
||||
*/
|
||||
vrfy(places(0.0123, 2) == -1, '1149: places(0.0123, 2) == -1');
|
||||
vrfy(places(0.625, 2) == 3, '1150: places(0.625, 2) == 3');
|
||||
vrfy(places(0.625, 8) == 1, '1151: places(0.625, 8) == 1');
|
||||
vrfy(places(171/2^712, 2) == 712,
|
||||
'1152: places(171/2^7120.625, 2) == 712');
|
||||
vrfy(places(171/2^712, 64) == 119,
|
||||
'1152: places(171/2^7120.625, 64) == 119');
|
||||
|
||||
/*
|
||||
* verify sleep
|
||||
*/
|
||||
vrfy(sleep(1/5) == null(), '1153: sleep(1/5) == null()');
|
||||
vrfy(sleep(1) == null(), '1154: sleep(1) == null()');
|
||||
|
||||
print '1155: Ending test_functions';
|
||||
}
|
||||
print '017: parsed test_functions()';
|
||||
|
||||
@@ -2987,7 +3065,7 @@ define test_error()
|
||||
vrfy(root(3,2,0) == error(10029),
|
||||
'3644: root(3,2,0) == error(10029)');
|
||||
vrfy(norm("x") == error(10030), '3645: norm("x") == error(10030)');
|
||||
vrfy(null() << 2 == error(10031),'3646: null() << 2 == error(10031)');
|
||||
vrfy(list() << 2 == error(10031),'3646: list() << 2 == error(10031)');
|
||||
vrfy(1.5 << 2 == error(10031), '3647: 1.5 << 2 == error(10031)');
|
||||
vrfy(3 << "x" == error(10032), '3648: 3 << "x" == error(10032)');
|
||||
vrfy(3 << 1.5 == error(10032), '3649: 3 << 1.5 == error(10032)');
|
||||
@@ -3085,8 +3163,7 @@ define test_error()
|
||||
print '3712: e9999 = error(9999)';
|
||||
vrfy(errno() == 9999, '3713: errno() == 9999');
|
||||
vrfy(error() == e9999, '3714: error() == e9999');
|
||||
vrfy(substr(strerror(), strpos(strerror(),"9999"), 4) == "9999",
|
||||
'3715: substr(strerror(), strpos(strerror(),"9999"), 4) == "9999"');
|
||||
/* test 3715 removed due to non-portable strerror() output */
|
||||
x = newerror("Alpha");
|
||||
print '3716: x = newerror("Alpha")';
|
||||
n = iserror(x);
|
||||
@@ -3097,16 +3174,14 @@ define test_error()
|
||||
vrfy(errno(9999) == n, '3721: errno() == n');
|
||||
vrfy(errno() == 9999, '3722: errno() == 9999');
|
||||
vrfy(error() == e9999, '3723: error() == e9999');
|
||||
vrfy(substr(strerror(), strpos(strerror(),"9999"), 4) == "9999",
|
||||
'3724: substr(strerror(), strpos(strerror(),"9999"), 4) == "9999"');
|
||||
/* test 3724 removed due to non-portable strerror() output */
|
||||
a = 1/0;
|
||||
print '3725: a = 1/0';
|
||||
vrfy(strerror() == "Division by zero",
|
||||
'3726: strerror() == "Division by zero"');
|
||||
n = 8191;
|
||||
print '3727: n = 8191';
|
||||
vrfy(substr(strerror(8191),strpos(strerror(n),"8191"), 4) == "8191",
|
||||
'3728: substr(strerror(n),strpos(strerror(n),"8191"),4) == "8191"');
|
||||
/* test 3728 removed due to non-portable strerror() output */
|
||||
|
||||
/* errmax and errcount should be bumped up the 148 errors above */
|
||||
vrfy(errcount() == ecnt, '3729: errcount() == ecnt');
|
||||
@@ -7541,6 +7616,15 @@ read -once "test8500";
|
||||
/* 85xx: Ending test_divmod is printed by test8500.cal */
|
||||
|
||||
|
||||
/*
|
||||
* test_maxargs - test up to 1024 args being passed to a builtin function
|
||||
*/
|
||||
print;
|
||||
print '8600: Starting test_1024args'
|
||||
read -once "test8600";
|
||||
/* 86xx: Ending test_1024args is printed by test8600.cal */
|
||||
|
||||
|
||||
/*
|
||||
* read various calc resource files
|
||||
*
|
||||
|
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: seedrandom.cal,v 29.1 1999/12/14 09:15:33 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: seedrandom.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/seedrandom.cal,v $
|
||||
*
|
||||
* Under source code control: 1996/01/01 08:21:00
|
||||
* File existed as early as: 1996
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: solve.cal,v 29.1 1999/12/14 09:15:33 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: solve.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/solve.cal,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:50:37
|
||||
* File existed as early as: before 1990
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: sumsq.cal,v 29.1 1999/12/14 09:15:33 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: sumsq.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/sumsq.cal,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:50:37
|
||||
* File existed as early as: before 1990
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: surd.cal,v 29.1 1999/12/14 09:15:33 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: surd.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/surd.cal,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:50:38
|
||||
* File existed as early as: before 1990
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: test1700.cal,v 29.1 1999/12/14 09:15:33 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: test1700.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/test1700.cal,v $
|
||||
*
|
||||
* Under source code control: 1994/03/14 23:12:51
|
||||
* File existed as early as: 1994
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: test2300.cal,v 29.1 1999/12/14 09:15:33 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: test2300.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/test2300.cal,v $
|
||||
*
|
||||
* Under source code control: 1995/07/09 06:12:13
|
||||
* File existed as early as: 1995
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: test2600.cal,v 29.1 1999/12/14 09:15:33 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: test2600.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/test2600.cal,v $
|
||||
*
|
||||
* Under source code control: 1995/10/13 00:13:14
|
||||
* File existed as early as: 1995
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: test2700.cal,v 29.1 1999/12/14 09:15:33 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: test2700.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/test2700.cal,v $
|
||||
*
|
||||
* Under source code control: 1995/11/01 22:52:25
|
||||
* File existed as early as: 1995
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: test3100.cal,v 29.1 1999/12/14 09:15:33 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: test3100.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/test3100.cal,v $
|
||||
*
|
||||
* Under source code control: 1995/11/28 11:56:57
|
||||
* File existed as early as: 1995
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: test3300.cal,v 29.1 1999/12/14 09:15:33 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: test3300.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/test3300.cal,v $
|
||||
*
|
||||
* Under source code control: 1995/12/02 04:27:41
|
||||
* File existed as early as: 1995
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: test3400.cal,v 29.1 1999/12/14 09:15:34 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: test3400.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/test3400.cal,v $
|
||||
*
|
||||
* Under source code control: 1995/12/02 05:20:11
|
||||
* File existed as early as: 1995
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: test3500.cal,v 29.1 1999/12/14 09:15:34 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: test3500.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/test3500.cal,v $
|
||||
*
|
||||
* Under source code control: 1995/12/18 22:50:46
|
||||
* File existed as early as: 1995
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: test4000.cal,v 29.1 1999/12/14 09:15:34 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: test4000.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/test4000.cal,v $
|
||||
*
|
||||
* Under source code control: 1996/03/13 02:38:45
|
||||
* File existed as early as: 1996
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: test4100.cal,v 29.1 1999/12/14 09:15:34 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: test4100.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/test4100.cal,v $
|
||||
*
|
||||
* Under source code control: 1996/03/13 03:53:22
|
||||
* File existed as early as: 1996
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: test4600.cal,v 29.1 1999/12/14 09:15:34 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: test4600.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/test4600.cal,v $
|
||||
*
|
||||
* Under source code control: 1996/07/02 20:04:40
|
||||
* File existed as early as: 1996
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: test5100.cal,v 29.1 1999/12/14 09:15:34 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: test5100.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/test5100.cal,v $
|
||||
*
|
||||
* Under source code control: 1996/12/02 23:57:10
|
||||
* File existed as early as: 1996
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: test5200.cal,v 29.1 1999/12/14 09:15:34 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: test5200.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/test5200.cal,v $
|
||||
*
|
||||
* Under source code control: 1997/02/07 02:48:10
|
||||
* File existed as early as: 1997
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: test8400.cal,v 29.1 1999/12/14 09:15:34 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: test8400.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/test8400.cal,v $
|
||||
*
|
||||
* Under source code control: 1999/10/31 01:00:03
|
||||
* File existed as early as: 1999
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: test8500.cal,v 29.1 1999/12/14 09:15:34 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: test8500.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/test8500.cal,v $
|
||||
*
|
||||
* Under source code control: 1999/11/12 20:59:59
|
||||
* File existed as early as: 1999
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
1406
cal/test8600.cal
Normal file
1406
cal/test8600.cal
Normal file
File diff suppressed because it is too large
Load Diff
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: unitfrac.cal,v 29.1 1999/12/14 09:15:34 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: unitfrac.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/unitfrac.cal,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:50:38
|
||||
* File existed as early as: before 1990
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: varargs.cal,v 29.1 1999/12/14 09:15:34 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: varargs.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/varargs.cal,v $
|
||||
*
|
||||
* Under source code control: 1991/05/22 21:56:34
|
||||
* File existed as early as: 1991
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: xx_print.cal,v 29.1 1999/12/14 09:15:34 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: xx_print.cal,v 29.2 2000/06/07 14:02:25 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/cal/RCS/xx_print.cal,v $
|
||||
*
|
||||
* Under source code control: 1997/04/17 00:08:50
|
||||
* File existed as early as: 1997
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
28
calc.h
28
calc.h
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: calc.h,v 29.2 1999/12/14 19:37:46 chongo Exp $
|
||||
* @(#) $Revision: 29.5 $
|
||||
* @(#) $Id: calc.h,v 29.5 2000/12/04 19:32:33 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/calc.h,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:48:31
|
||||
* File existed as early as: before 1990
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
@@ -60,10 +60,9 @@
|
||||
#define MAXERROR 512 /* maximum length of error message string */
|
||||
|
||||
#define SYMBOLSIZE 256 /* maximum symbol name size */
|
||||
#define MAXINDICES 20 /* maximum number of indices for objects */
|
||||
#define MAXLABELS 100 /* maximum number of user labels in function */
|
||||
#define MAXSTRING 1024 /* maximum size of string constant */
|
||||
#define MAXSTACK 1000 /* maximum depth of evaluation stack */
|
||||
#define MAXSTACK 2048 /* maximum depth of evaluation stack */
|
||||
#define MAXFILES 20 /* maximum number of opened files */
|
||||
#define PROMPT1 "> " /* default normal prompt*/
|
||||
#define PROMPT2 ">> " /* default prompt inside multi-line input */
|
||||
@@ -167,7 +166,6 @@ extern BOOL calc_tty(int fd);
|
||||
extern BOOL orig_tty(int fd);
|
||||
extern void showerrors(void);
|
||||
extern char *calc_strdup(CONST char *);
|
||||
extern void getshellfile(char *shellfile);
|
||||
|
||||
/*
|
||||
* Initialization
|
||||
@@ -229,15 +227,15 @@ extern int allow_exec; /* FALSE => may not execute any commands */
|
||||
* calc startup and run state
|
||||
*/
|
||||
typedef enum {
|
||||
RUN_UNKNOWN = -1, /* unknown or unset start state */
|
||||
RUN_BEGIN = 0, /* calc execution starts */
|
||||
RUN_RCFILES = 1, /* rc files being evaluated */
|
||||
RUN_PRE_CMD_ARGS = 2, /* prepare to evaluate cmd args */
|
||||
RUN_CMD_ARGS = 3, /* cmd args being evaluated */
|
||||
RUN_PRE_TOP_LEVEL = 4, /* prepare to start top level activity */
|
||||
RUN_TOP_LEVEL = 5, /* running at top level */
|
||||
RUN_EXIT = 6, /* normal exit from calc */
|
||||
RUN_EXIT_WITH_ERROR = 7 /* exit with error */
|
||||
RUN_ZERO, /* unknown or unset start state */
|
||||
RUN_BEGIN, /* calc execution starts */
|
||||
RUN_RCFILES, /* rc files being evaluated */
|
||||
RUN_PRE_CMD_ARGS, /* prepare to evaluate cmd args */
|
||||
RUN_CMD_ARGS, /* cmd args being evaluated */
|
||||
RUN_PRE_TOP_LEVEL, /* prepare to start top level activity */
|
||||
RUN_TOP_LEVEL, /* running at top level */
|
||||
RUN_EXIT, /* normal exit from calc */
|
||||
RUN_EXIT_WITH_ERROR /* exit with error */
|
||||
} run;
|
||||
extern run run_state;
|
||||
extern char *run_state_name(run state);
|
||||
|
24
calc.man
24
calc.man
@@ -15,15 +15,15 @@
|
||||
.\" received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
.\" 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
.\"
|
||||
.\" @(#) $Revision: 29.4 $
|
||||
.\" @(#) $Id: calc.man,v 29.4 1999/12/17 10:06:31 chongo Exp $
|
||||
.\" @(#) $Revision: 29.5 $
|
||||
.\" @(#) $Id: calc.man,v 29.5 2000/06/07 14:02:13 chongo Exp $
|
||||
.\" @(#) $Source: /usr/local/src/cmd/calc/RCS/calc.man,v $
|
||||
.\"
|
||||
.\" Under source code control: 1991/07/23 05:48:26
|
||||
.\" File existed as early as: 1991
|
||||
.\"
|
||||
.\" chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
.\" Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
.\" chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
.\" Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
.\"
|
||||
.\" calculator by David I. Bell
|
||||
.\" man page by Landon Noll
|
||||
@@ -1007,9 +1007,7 @@ in future distributions to:
|
||||
.sp
|
||||
.in +0.5i
|
||||
.nf
|
||||
calc-tester at postofc dot corp dot sgi dot com
|
||||
|
||||
[[ Replace 'at' with @, 'dot' is with . and remove the spaces ]]
|
||||
calc-contrib at asthe dot com
|
||||
.fi
|
||||
.in -0.5i
|
||||
.sp
|
||||
@@ -1017,9 +1015,10 @@ Bug reports are sent to:
|
||||
.sp
|
||||
.in +0.5i
|
||||
.nf
|
||||
calc-bugs at postofc dot corp dot sgi dot com
|
||||
calc-bugs at asthe dot com
|
||||
|
||||
[[ Replace 'at' with @, 'dot' is with . and remove the spaces ]]
|
||||
[[ NOTE: Replace 'at' with @, 'dot' is with . and remove the spaces ]]
|
||||
[[ NOTE: The EMail address uses 'asthe' and the web site URL uses 'isthe' ]]
|
||||
.fi
|
||||
.in -0.5i
|
||||
.sp
|
||||
@@ -1045,7 +1044,7 @@ Landon Noll maintains the the
|
||||
web site is located at:
|
||||
.sp
|
||||
.in +0.5i
|
||||
http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
http://www.isthe.com/chongo/tech/comp/calc/
|
||||
.in -0.5i
|
||||
.sp
|
||||
One may join the
|
||||
@@ -1054,9 +1053,10 @@ testing group by sending a request to:
|
||||
.sp
|
||||
.in +0.5i
|
||||
.nf
|
||||
calc-tester-request at postofc dot corp dot sgi dot com
|
||||
calc-tester-request at asthe dot com
|
||||
|
||||
[[ Replace 'at' with @, 'dot' is with . and remove the spaces ]]
|
||||
[[ NOTE: Replace 'at' with @, 'dot' is with . and remove the spaces ]]
|
||||
[[ NOTE: The EMail address uses 'asthe' and the web site URL uses 'isthe' ]]
|
||||
.fi
|
||||
.in -0.5i
|
||||
.sp
|
||||
|
24
calcerr.tbl
24
calcerr.tbl
@@ -17,14 +17,14 @@
|
||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# @(#) $Revision: 29.1 $
|
||||
# @(#) $Id: calcerr.tbl,v 29.1 1999/12/14 09:15:35 chongo Exp $
|
||||
# @(#) $Revision: 29.3 $
|
||||
# @(#) $Id: calcerr.tbl,v 29.3 2000/07/17 15:35:49 chongo Exp $
|
||||
# @(#) $Source: /usr/local/src/cmd/calc/RCS/calcerr.tbl,v $
|
||||
#
|
||||
# Under source code control: 1996/05/23 17:38:44
|
||||
# File existed as early as: 1996
|
||||
#
|
||||
# Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
# Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
|
||||
# This file is used to build calcerr.h include file.
|
||||
#
|
||||
@@ -375,3 +375,21 @@ E_GD3 Infinite or too-large result for gd
|
||||
E_AGD3 Infinite or too-large result for agd
|
||||
E_POWER4 Too-large value for power
|
||||
E_ROOT4 Too-large value for root
|
||||
E_DGT1 Non-real first arg for digit
|
||||
E_DGT2 Non-integral second arg for digit
|
||||
E_DGT3 Bad third arg for digit
|
||||
E_PLCS1 Bad first argument for places
|
||||
E_PLCS2 Bad second argument for places
|
||||
E_DGTS1 Bad first argument for digits
|
||||
E_DGTS2 Bad second argument for digits
|
||||
E_ILOG Bad first argument for ilog
|
||||
E_ILOGB Bad second argument for ilog
|
||||
E_ILOG10 Bad argument for ilog10
|
||||
E_ILOG2 Bad argument for ilog2
|
||||
E_COMB1 Non-integer second arg for comb
|
||||
E_COMB2 Too-large second arg for comb
|
||||
E_CTLN Bad argument for catalan
|
||||
E_BERN Bad argument for bern
|
||||
E_EULER Bad argument for euler
|
||||
E_SLEEP Bad argument for sleep
|
||||
E_TTY calc_tty failure
|
||||
|
@@ -18,15 +18,15 @@
|
||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# @(#) $Revision: 29.1 $
|
||||
# @(#) $Id: calcerr_c.awk,v 29.1 1999/12/14 09:15:35 chongo Exp $
|
||||
# @(#) $Revision: 29.2 $
|
||||
# @(#) $Id: calcerr_c.awk,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
# @(#) $Source: /usr/local/src/cmd/calc/RCS/calcerr_c.awk,v $
|
||||
#
|
||||
# Under source code control: 1996/05/24 03:15:35
|
||||
# File existed as early as: 1996
|
||||
#
|
||||
# chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
# Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
# chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
# Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
#
|
||||
BEGIN {
|
||||
printf("#include <stdio.h>\n");
|
||||
|
@@ -18,15 +18,15 @@
|
||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# @(#) $Revision: 29.1 $
|
||||
# @(#) $Id: calcerr_c.sed,v 29.1 1999/12/14 09:15:35 chongo Exp $
|
||||
# @(#) $Revision: 29.2 $
|
||||
# @(#) $Id: calcerr_c.sed,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
# @(#) $Source: /usr/local/src/cmd/calc/RCS/calcerr_c.sed,v $
|
||||
#
|
||||
# Under source code control: 1996/05/24 03:15:35
|
||||
# File existed as early as: 1996
|
||||
#
|
||||
# chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
# Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
# chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
# Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
#
|
||||
s/#.*//
|
||||
s/[ ][ ]*$//
|
||||
|
@@ -18,15 +18,15 @@
|
||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# @(#) $Revision: 29.1 $
|
||||
# @(#) $Id: calcerr_h.awk,v 29.1 1999/12/14 09:15:35 chongo Exp $
|
||||
# @(#) $Revision: 29.2 $
|
||||
# @(#) $Id: calcerr_h.awk,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
# @(#) $Source: /usr/local/src/cmd/calc/RCS/calcerr_h.awk,v $
|
||||
#
|
||||
# Under source code control: 1996/05/23 17:38:44
|
||||
# File existed as early as: 1996
|
||||
#
|
||||
# chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
# Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
# chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
# Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
#
|
||||
BEGIN {
|
||||
ebase = 10000;
|
||||
|
@@ -18,15 +18,15 @@
|
||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# @(#) $Revision: 29.1 $
|
||||
# @(#) $Id: calcerr_h.sed,v 29.1 1999/12/14 09:15:35 chongo Exp $
|
||||
# @(#) $Revision: 29.2 $
|
||||
# @(#) $Id: calcerr_h.sed,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
# @(#) $Source: /usr/local/src/cmd/calc/RCS/calcerr_h.sed,v $
|
||||
#
|
||||
# Under source code control: 1996/05/23 17:38:44
|
||||
# File existed as early as: 1996
|
||||
#
|
||||
# chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
# Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
# chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
# Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
#
|
||||
s/#.*//
|
||||
s/[ ][ ]*$//
|
||||
|
@@ -18,15 +18,15 @@
|
||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# @(#) $Revision: 29.1 $
|
||||
# @(#) $Id: check.awk,v 29.1 1999/12/14 09:15:35 chongo Exp $
|
||||
# @(#) $Revision: 29.2 $
|
||||
# @(#) $Id: check.awk,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
# @(#) $Source: /usr/local/src/cmd/calc/RCS/check.awk,v $
|
||||
#
|
||||
# Under source code control: 1996/05/25 22:07:58
|
||||
# File existed as early as: 1996
|
||||
#
|
||||
# chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
# Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
# chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
# Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
#
|
||||
# This awk script will print 3 lines before and after any non-blank line that
|
||||
# does not begin with a number. This allows the 'make debug' rule to remove
|
||||
|
7
cmath.h
7
cmath.h
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: cmath.h,v 29.1 1999/12/14 09:15:35 chongo Exp $
|
||||
* @(#) $Revision: 29.3 $
|
||||
* @(#) $Id: cmath.h,v 29.3 2000/07/17 15:35:49 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/cmath.h,v $
|
||||
*
|
||||
* Under source code control: 1993/07/30 19:42:45
|
||||
* File existed as early as: 1993
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
@@ -83,6 +83,7 @@ extern BOOL ccmp(COMPLEX *c1, COMPLEX *c2);
|
||||
* More complicated functions.
|
||||
*/
|
||||
extern COMPLEX *cpowi(COMPLEX *c, NUMBER *q);
|
||||
extern NUMBER *cilog(COMPLEX *c, ZVALUE base);
|
||||
|
||||
|
||||
/*
|
||||
|
423
codegen.c
423
codegen.c
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: codegen.c,v 29.1 1999/12/14 09:15:35 chongo Exp $
|
||||
* @(#) $Revision: 29.3 $
|
||||
* @(#) $Id: codegen.c,v 29.3 2000/07/17 15:35:49 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/codegen.c,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:48:13
|
||||
* File existed as early as: before 1990
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
@@ -49,7 +49,7 @@ static BOOL rdonce; /* TRUE => do not reread this file */
|
||||
|
||||
FUNC *curfunc;
|
||||
|
||||
static BOOL getfilename(char *name, BOOL msg_ok, BOOL *once);
|
||||
static int getfilename(char *name, BOOL *once);
|
||||
static BOOL getid(char *buf);
|
||||
static void getshowstatement(void);
|
||||
static void getfunction(void);
|
||||
@@ -71,7 +71,7 @@ static void getsimplebody(void);
|
||||
static void getcondition(void);
|
||||
static void getmatargs(void);
|
||||
static void getelement(void);
|
||||
static void usesymbol(char *name, BOOL autodef);
|
||||
static void usesymbol(char *name, int autodef);
|
||||
static void definesymbol(char *name, int symtype);
|
||||
static void getcallargs(char *name);
|
||||
static void do_changedir(void);
|
||||
@@ -90,9 +90,16 @@ static int getshiftexpr(void);
|
||||
static int getreference(void);
|
||||
static int getincdecexpr(void);
|
||||
static int getterm(void);
|
||||
static int getidexpr(BOOL okmat, BOOL autodef);
|
||||
static int getidexpr(BOOL okmat, int autodef);
|
||||
static long getinitlist(void);
|
||||
|
||||
#define INDICALLOC 8
|
||||
|
||||
static int quickindices[INDICALLOC];
|
||||
static int * newindices;
|
||||
static int * indices;
|
||||
static int maxindices;
|
||||
|
||||
|
||||
/*
|
||||
* Read all the commands from an input file.
|
||||
@@ -133,49 +140,63 @@ getcommands(BOOL toplevel)
|
||||
return;
|
||||
|
||||
case T_HELP:
|
||||
if (!getfilename(name, FALSE, NULL)) {
|
||||
strcpy(name, DEFAULTCALCHELP);
|
||||
for (;;) {
|
||||
switch(getfilename(name, NULL)) {
|
||||
case 1:
|
||||
strcpy(name, DEFAULTCALCHELP);
|
||||
case 0:
|
||||
givehelp(name);
|
||||
continue;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
givehelp(name);
|
||||
break;
|
||||
|
||||
case T_READ:
|
||||
if (!getfilename(name, TRUE, &rdonce))
|
||||
break;
|
||||
if (!allow_read) {
|
||||
scanerror(T_NULL,
|
||||
"read command disallowed by -m mode\n");
|
||||
break;
|
||||
}
|
||||
switch (opensearchfile(name,calcpath,CALCEXT,rdonce)) {
|
||||
case 0:
|
||||
getcommands(FALSE);
|
||||
closeinput();
|
||||
break;
|
||||
case 1:
|
||||
/* previously read and -once was given */
|
||||
break;
|
||||
case -2:
|
||||
scanerror(T_NULL,
|
||||
"Maximum input depth reached");
|
||||
break;
|
||||
default:
|
||||
scanerror(T_NULL, "Cannot open \"%s\"\n", name);
|
||||
for (;;) {
|
||||
if (getfilename(name, &rdonce))
|
||||
break;
|
||||
switch (opensearchfile(name,calcpath,
|
||||
CALCEXT,rdonce)) {
|
||||
case 0:
|
||||
getcommands(FALSE);
|
||||
closeinput();
|
||||
continue;
|
||||
case 1:
|
||||
/* prev read and -once was given */
|
||||
continue;
|
||||
case -2:
|
||||
scanerror(T_NULL,
|
||||
"Maximum input depth reached");
|
||||
break;
|
||||
default:
|
||||
scanerror(T_NULL,
|
||||
"Cannot open \"%s\"", name);
|
||||
continue;
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case T_WRITE:
|
||||
if (!getfilename(name, TRUE, NULL))
|
||||
break;
|
||||
if (!allow_write) {
|
||||
scanerror(T_NULL,
|
||||
"write command disallowed by -m mode\n");
|
||||
break;
|
||||
}
|
||||
if (writeglobals(name))
|
||||
if (getfilename(name, NULL))
|
||||
break;
|
||||
if (writeglobals(name)) {
|
||||
scanerror(T_NULL,
|
||||
"Error writing \"%s\"\n", name);
|
||||
}
|
||||
break;
|
||||
|
||||
case T_CD:
|
||||
@@ -529,7 +550,7 @@ getonevariable(int symtype)
|
||||
res = getonevariable(symtype);
|
||||
definesymbol(name, symtype);
|
||||
if (res) {
|
||||
usesymbol(name, FALSE);
|
||||
usesymbol(name, 0);
|
||||
addop(OP_ASSIGNBACK);
|
||||
}
|
||||
return res;
|
||||
@@ -892,7 +913,7 @@ getstatement(LABEL *contlabel, LABEL *breaklabel, LABEL *nextcaselabel, LABEL *d
|
||||
return;
|
||||
|
||||
case T_ELSE:
|
||||
scanerror(T_SEMICOLON, "ELSE without preceeding IF");
|
||||
scanerror(T_SEMICOLON, "ELSE without preceding IF");
|
||||
return;
|
||||
|
||||
case T_SHOW:
|
||||
@@ -1021,7 +1042,6 @@ getobjdeclaration(int symtype)
|
||||
int count; /* number of elements */
|
||||
int index; /* current index */
|
||||
int i; /* loop counter */
|
||||
int indices[MAXINDICES]; /* indices for elements */
|
||||
int oldmode;
|
||||
|
||||
if (gettoken() != T_SYMBOL) {
|
||||
@@ -1038,58 +1058,89 @@ getobjdeclaration(int symtype)
|
||||
* Read in the definition of the elements of the object.
|
||||
*/
|
||||
count = 0;
|
||||
indices = quickindices;
|
||||
maxindices = INDICALLOC;
|
||||
|
||||
oldmode = tokenmode(TM_DEFAULT);
|
||||
|
||||
for (;;) {
|
||||
switch (gettoken()) {
|
||||
case T_SYMBOL:
|
||||
if (count == MAXINDICES) {
|
||||
scanerror(T_SEMICOLON,
|
||||
"Too many elements in OBJ "
|
||||
"statement");
|
||||
(void) tokenmode(oldmode);
|
||||
return;
|
||||
}
|
||||
index = addelement(tokensymbol());
|
||||
for (i = 0; i < count; i++) {
|
||||
if (indices[i] == index) {
|
||||
scanerror(T_SEMICOLON,
|
||||
"Duplicate element name "
|
||||
"\"%s\"", tokensymbol());
|
||||
case T_SYMBOL:
|
||||
if (count == maxindices) {
|
||||
if (maxindices == INDICALLOC) {
|
||||
maxindices += INDICALLOC;
|
||||
newindices = (int *) malloc(maxindices *
|
||||
sizeof(int));
|
||||
if (newindices == NULL) {
|
||||
scanerror(T_SEMICOLON, "Out of memory for indices malloc");
|
||||
(void) tokenmode(oldmode);
|
||||
return;
|
||||
}
|
||||
memcpy(newindices, quickindices,
|
||||
INDICALLOC * sizeof(int));
|
||||
indices = newindices;
|
||||
} else {
|
||||
maxindices += INDICALLOC;
|
||||
newindices = (int *) realloc(indices,
|
||||
maxindices * sizeof(int));
|
||||
if (newindices == NULL) {
|
||||
free(indices);
|
||||
scanerror(T_SEMICOLON, "Out of memory for indices realloc");
|
||||
(void) tokenmode(oldmode);
|
||||
return;
|
||||
}
|
||||
indices = newindices;
|
||||
}
|
||||
indices[count++] = index;
|
||||
if (gettoken() == T_COMMA)
|
||||
continue;
|
||||
rescantoken();
|
||||
if (gettoken() != T_RIGHTBRACE) {
|
||||
scanerror(T_SEMICOLON,
|
||||
"Bad object type definition");
|
||||
}
|
||||
index = addelement(tokensymbol());
|
||||
for (i = 0; i < count; i++) {
|
||||
if (indices[i] == index) {
|
||||
if (indices != quickindices)
|
||||
free(indices);
|
||||
scanerror(T_SEMICOLON, "Duplicate element name \"%s\"", tokensymbol());
|
||||
(void) tokenmode(oldmode);
|
||||
return;
|
||||
}
|
||||
/*FALLTHRU*/
|
||||
case T_RIGHTBRACE:
|
||||
(void) tokenmode(oldmode);
|
||||
if (defineobject(name, indices, count)) {
|
||||
scanerror(T_NULL,
|
||||
"Object type \"%s\" is already defined", name);
|
||||
return;
|
||||
}
|
||||
getobjvars(name, symtype);
|
||||
return;
|
||||
case T_NEWLINE:
|
||||
}
|
||||
indices[count++] = index;
|
||||
if (gettoken() == T_COMMA)
|
||||
continue;
|
||||
default:
|
||||
scanerror(T_SEMICOLON,
|
||||
"Bad object type definition");
|
||||
rescantoken();
|
||||
if (gettoken() != T_RIGHTBRACE) {
|
||||
if (indices != quickindices)
|
||||
free(indices);
|
||||
scanerror(T_SEMICOLON, "Bad object type definition");
|
||||
(void) tokenmode(oldmode);
|
||||
return;
|
||||
}
|
||||
/*FALLTHRU*/
|
||||
case T_RIGHTBRACE:
|
||||
(void) tokenmode(oldmode);
|
||||
if (defineobject(name, indices, count)) {
|
||||
if (indices != quickindices)
|
||||
free(indices);
|
||||
scanerror(T_NULL,
|
||||
"Object type \"%s\" is already defined", name);
|
||||
return;
|
||||
}
|
||||
if (indices != quickindices)
|
||||
free(indices);
|
||||
getobjvars(name, symtype);
|
||||
return;
|
||||
case T_NEWLINE:
|
||||
continue;
|
||||
default:
|
||||
if (indices != quickindices)
|
||||
free(indices);
|
||||
scanerror(T_SEMICOLON, "Bad object type definition");
|
||||
(void) tokenmode(oldmode);
|
||||
return;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
getoneobj(long index, int symtype)
|
||||
{
|
||||
@@ -1098,11 +1149,11 @@ getoneobj(long index, int symtype)
|
||||
if (gettoken() == T_SYMBOL) {
|
||||
if (symtype == SYM_UNDEFINED) {
|
||||
rescantoken();
|
||||
(void) getidexpr(TRUE, TRUE);
|
||||
(void) getidexpr(TRUE, 1);
|
||||
} else {
|
||||
symname = tokensymbol();
|
||||
definesymbol(symname, symtype);
|
||||
usesymbol(symname, FALSE);
|
||||
usesymbol(symname, 0);
|
||||
}
|
||||
getoneobj(index, symtype);
|
||||
addop(OP_ASSIGN);
|
||||
@@ -1181,11 +1232,11 @@ getonematrix(int symtype)
|
||||
if (gettoken() == T_SYMBOL) {
|
||||
if (symtype == SYM_UNDEFINED) {
|
||||
rescantoken();
|
||||
(void) getidexpr(FALSE, TRUE);
|
||||
(void) getidexpr(FALSE, 1);
|
||||
} else {
|
||||
name = tokensymbol();
|
||||
definesymbol(name, symtype);
|
||||
usesymbol(name, FALSE);
|
||||
usesymbol(name, 0);
|
||||
}
|
||||
while (gettoken() == T_COMMA);
|
||||
rescantoken();
|
||||
@@ -2028,7 +2079,25 @@ getterm(void)
|
||||
|
||||
case T_SYMBOL:
|
||||
rescantoken();
|
||||
type = getidexpr(TRUE, FALSE);
|
||||
type = getidexpr(TRUE, 0);
|
||||
break;
|
||||
|
||||
case T_GLOBAL:
|
||||
if (gettoken() != T_SYMBOL) {
|
||||
scanerror(T_NULL, "Global id expected");
|
||||
break;
|
||||
}
|
||||
rescantoken();
|
||||
type = getidexpr(TRUE, T_GLOBAL);
|
||||
break;
|
||||
|
||||
case T_LOCAL:
|
||||
if (gettoken() != T_SYMBOL) {
|
||||
scanerror(T_NULL, "Local id expected");
|
||||
break;
|
||||
}
|
||||
rescantoken();
|
||||
type = getidexpr(TRUE, T_LOCAL);
|
||||
break;
|
||||
|
||||
case T_LEFTBRACKET:
|
||||
@@ -2077,11 +2146,11 @@ getterm(void)
|
||||
/*
|
||||
* Read in an identifier expressions.
|
||||
* This is a symbol name followed by parenthesis, or by square brackets or
|
||||
* element refernces. The symbol can be a global or a local variable name.
|
||||
* element references. The symbol can be a global or a local variable name.
|
||||
* Returns the type of expression found.
|
||||
*/
|
||||
static int
|
||||
getidexpr(BOOL okmat, BOOL autodef)
|
||||
getidexpr(BOOL okmat, int autodef)
|
||||
{
|
||||
int type;
|
||||
char name[SYMBOLSIZE+1]; /* symbol name */
|
||||
@@ -2091,18 +2160,19 @@ getidexpr(BOOL okmat, BOOL autodef)
|
||||
if (!getid(name))
|
||||
return type;
|
||||
switch (gettoken()) {
|
||||
case T_LEFTPAREN:
|
||||
oldmode = tokenmode(TM_DEFAULT);
|
||||
getcallargs(name);
|
||||
(void) tokenmode(oldmode);
|
||||
type = 0;
|
||||
break;
|
||||
case T_ASSIGN:
|
||||
autodef = TRUE;
|
||||
/* fall into default case */
|
||||
default:
|
||||
rescantoken();
|
||||
usesymbol(name, autodef);
|
||||
case T_LEFTPAREN:
|
||||
oldmode = tokenmode(TM_DEFAULT);
|
||||
getcallargs(name);
|
||||
(void) tokenmode(oldmode);
|
||||
type = 0;
|
||||
break;
|
||||
case T_ASSIGN:
|
||||
if (autodef != T_GLOBAL && autodef != T_LOCAL)
|
||||
autodef = 1;
|
||||
/* fall into default case */
|
||||
default:
|
||||
rescantoken();
|
||||
usesymbol(name, autodef);
|
||||
}
|
||||
/*
|
||||
* Now collect as many element references and matrix index operations
|
||||
@@ -2110,27 +2180,27 @@ getidexpr(BOOL okmat, BOOL autodef)
|
||||
*/
|
||||
for (;;) {
|
||||
switch (gettoken()) {
|
||||
case T_LEFTBRACKET:
|
||||
rescantoken();
|
||||
if (!okmat)
|
||||
return type;
|
||||
getmatargs();
|
||||
type = 0;
|
||||
break;
|
||||
case T_ARROW:
|
||||
addop(OP_DEREF);
|
||||
/*FALLTHRU*/
|
||||
case T_PERIOD:
|
||||
getelement();
|
||||
type = 0;
|
||||
break;
|
||||
case T_LEFTPAREN:
|
||||
scanerror(T_NULL,
|
||||
"Function calls not allowed "
|
||||
"as expressions");
|
||||
default:
|
||||
rescantoken();
|
||||
case T_LEFTBRACKET:
|
||||
rescantoken();
|
||||
if (!okmat)
|
||||
return type;
|
||||
getmatargs();
|
||||
type = 0;
|
||||
break;
|
||||
case T_ARROW:
|
||||
addop(OP_DEREF);
|
||||
/*FALLTHRU*/
|
||||
case T_PERIOD:
|
||||
getelement();
|
||||
type = 0;
|
||||
break;
|
||||
case T_LEFTPAREN:
|
||||
scanerror(T_NULL,
|
||||
"Function calls not allowed "
|
||||
"as expressions");
|
||||
default:
|
||||
rescantoken();
|
||||
return type;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2144,71 +2214,37 @@ getidexpr(BOOL okmat, BOOL autodef)
|
||||
*
|
||||
* given:
|
||||
* name filename to read
|
||||
* msg_ok TRUE => ok to print error messages
|
||||
* once non-NULL => set to TRUE of -once read
|
||||
*/
|
||||
static BOOL
|
||||
getfilename(char *name, BOOL msg_ok, BOOL *once)
|
||||
static int
|
||||
getfilename(char *name, BOOL *once)
|
||||
{
|
||||
STRING *s;
|
||||
int i;
|
||||
|
||||
/* look at the next token */
|
||||
(void) tokenmode(TM_NEWLINES | TM_ALLSYMS);
|
||||
switch (gettoken()) {
|
||||
case T_STRING:
|
||||
s = findstring(tokenstring());
|
||||
strcpy(name, s->s_str);
|
||||
sfree(s);
|
||||
break;
|
||||
case T_SYMBOL:
|
||||
strcpy(name, tokensymbol());
|
||||
break;
|
||||
default:
|
||||
if (msg_ok)
|
||||
scanerror(T_SEMICOLON, "Filename expected");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/* determine if we care about a possible -once option */
|
||||
if (once != NULL) {
|
||||
/* we care about a possible -once option */
|
||||
if (strcmp(name, "-once") == 0) {
|
||||
/* -once option found */
|
||||
*once = TRUE;
|
||||
/* look for the filename */
|
||||
switch (gettoken()) {
|
||||
case T_STRING:
|
||||
s = findstring(tokenstring());
|
||||
strcpy(name, s->s_str);
|
||||
sfree(s);
|
||||
break;
|
||||
case T_SYMBOL:
|
||||
strcpy(name, tokensymbol());
|
||||
break;
|
||||
default:
|
||||
if (msg_ok)
|
||||
scanerror(T_SEMICOLON,
|
||||
"Filename expected");
|
||||
return FALSE;
|
||||
}
|
||||
} else {
|
||||
*once = FALSE;
|
||||
for (i = 2; i > 0; i--) {
|
||||
switch (gettoken()) {
|
||||
case T_STRING:
|
||||
s = findstring(tokenstring());
|
||||
strcpy(name, s->s_str);
|
||||
sfree(s);
|
||||
break;
|
||||
case T_SYMBOL:
|
||||
strcpy(name, tokensymbol());
|
||||
break;
|
||||
default:
|
||||
rescantoken();
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
/* look at the next token */
|
||||
switch (gettoken()) {
|
||||
case T_SEMICOLON:
|
||||
case T_NEWLINE:
|
||||
case T_EOF:
|
||||
break;
|
||||
default:
|
||||
if (msg_ok)
|
||||
scanerror(T_SEMICOLON,
|
||||
"Missing semicolon after filename");
|
||||
return FALSE;
|
||||
if (i == 2 && once != NULL) {
|
||||
if ((*once = !strcmp(name, "-once")))
|
||||
continue;
|
||||
}
|
||||
break;
|
||||
}
|
||||
return TRUE;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -2433,11 +2469,26 @@ definesymbol(char *name, int symtype)
|
||||
*
|
||||
* given:
|
||||
* name symbol name to be checked
|
||||
* autodef TRUE => define is symbol is not known
|
||||
* autodef 1 => define if symbol is not known
|
||||
* T_GLOBAL => get global, define if necessary
|
||||
*/
|
||||
static void
|
||||
usesymbol(char *name, BOOL autodef)
|
||||
usesymbol(char *name, int autodef)
|
||||
{
|
||||
|
||||
if (autodef == T_GLOBAL) {
|
||||
addopptr(OP_GLOBALADDR, (char *) addglobal(name, FALSE));
|
||||
return;
|
||||
}
|
||||
if (autodef == T_LOCAL) {
|
||||
if (symboltype(name) == SYM_PARAM) {
|
||||
scanerror(T_COMMA,
|
||||
"Variable \"%s\" is already defined", name);
|
||||
return;
|
||||
}
|
||||
addopone(OP_LOCALADDR, addlocal(name));
|
||||
return;
|
||||
}
|
||||
switch (symboltype(name)) {
|
||||
case SYM_LOCAL:
|
||||
addopone(OP_LOCALADDR, (long) findlocal(name));
|
||||
@@ -2544,24 +2595,25 @@ static void
|
||||
do_changedir(void)
|
||||
{
|
||||
char *p;
|
||||
STRING *s;
|
||||
|
||||
/* look at the next token */
|
||||
(void) tokenmode(TM_NEWLINES | TM_ALLSYMS);
|
||||
|
||||
/* determine the new directory */
|
||||
s = NULL;
|
||||
switch (gettoken()) {
|
||||
case T_NULL:
|
||||
case T_NEWLINE:
|
||||
case T_SEMICOLON:
|
||||
p = home;
|
||||
break;
|
||||
default:
|
||||
p = tokensymbol(); /* This is not enough XXX */
|
||||
if (p == NULL) {
|
||||
case T_STRING:
|
||||
s = findstring(tokenstring());
|
||||
p = s->s_str;
|
||||
break;
|
||||
case T_SYMBOL:
|
||||
p = tokensymbol();
|
||||
break;
|
||||
default:
|
||||
p = home;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
if (p == NULL) {
|
||||
fprintf(stderr, "Cannot determine HOME directory\n");
|
||||
}
|
||||
@@ -2570,29 +2622,8 @@ do_changedir(void)
|
||||
if (chdir(p)) {
|
||||
perror(p);
|
||||
}
|
||||
return;
|
||||
if (s != NULL)
|
||||
sfree(s);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* getshellfile - process the contents of a shellfile
|
||||
*/
|
||||
void
|
||||
getshellfile(char *shellfile)
|
||||
{
|
||||
/*
|
||||
* treat the calc shell script as if we were reading it
|
||||
*/
|
||||
if (!allow_read) {
|
||||
scanerror(T_NULL,
|
||||
"reading of calc shell script \"%s\" "
|
||||
"dislloaed by -m mode\n", shellfile);
|
||||
} else if (opensearchfile(shellfile, NULL, NULL, FALSE) == 0) {
|
||||
getcommands(FALSE);
|
||||
closeinput();
|
||||
} else {
|
||||
scanerror(T_NULL,
|
||||
"Cannot open calc shell script \"%s\"\n", shellfile);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
32
comfunc.c
32
comfunc.c
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: comfunc.c,v 29.1 1999/12/14 09:15:35 chongo Exp $
|
||||
* @(#) $Revision: 29.3 $
|
||||
* @(#) $Id: comfunc.c,v 29.3 2000/07/17 15:35:49 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/comfunc.c,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:48:13
|
||||
* File existed as early as: before 1990
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
@@ -1007,7 +1007,7 @@ cpolar(NUMBER *q1, NUMBER *q2, NUMBER *epsilon)
|
||||
long m, n;
|
||||
|
||||
if (qiszero(epsilon)) {
|
||||
math_error("Zero epsilson for cpolar");
|
||||
math_error("Zero epsilon for cpolar");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
if (qiszero(q1))
|
||||
@@ -1162,3 +1162,27 @@ cprintfr(COMPLEX *c)
|
||||
zprintval(i->den, 0L, 0L);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
NUMBER *
|
||||
cilog(COMPLEX *c, ZVALUE base)
|
||||
{
|
||||
NUMBER *qr, *qi;
|
||||
|
||||
qr = qilog(c->real, base);
|
||||
qi = qilog(c->imag, base);
|
||||
|
||||
if (qr == NULL) {
|
||||
if (qi == NULL)
|
||||
return NULL;
|
||||
return qi;
|
||||
}
|
||||
if (qi == NULL)
|
||||
return qr;
|
||||
if (qrel(qr, qi) >= 0) {
|
||||
qfree(qi);
|
||||
return qr;
|
||||
}
|
||||
qfree(qr);
|
||||
return qi;
|
||||
}
|
||||
|
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: commath.c,v 29.1 1999/12/14 09:15:35 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: commath.c,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/commath.c,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:48:10
|
||||
* File existed as early as: before 1990
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
246
config.c
246
config.c
@@ -19,14 +19,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: config.c,v 29.2 1999/12/14 19:37:46 chongo Exp $
|
||||
* @(#) $Revision: 29.4 $
|
||||
* @(#) $Id: config.c,v 29.4 2000/07/17 15:35:49 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/config.c,v $
|
||||
*
|
||||
* Under source code control: 1991/07/20 00:21:56
|
||||
* File existed as early as: 1991
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
@@ -109,10 +109,10 @@ CONFIG oldstd = { /* backward compatible standard configuration */
|
||||
SQ_ALG2, /* size of number to use square alg 2 */
|
||||
POW_ALG2, /* size of modulus to use REDC for powers */
|
||||
REDC_ALG2, /* size of modulus to use REDC algorithm 2 */
|
||||
TRUE, /* ok to print a tilde on aproximations */
|
||||
TRUE, /* ok to print a tilde on approximations */
|
||||
TRUE, /* ok to print tab before numeric values */
|
||||
0, /* quomod() default rounding mode */
|
||||
2, /* quotent // default rounding mode */
|
||||
2, /* quotient // default rounding mode */
|
||||
0, /* mod % default rounding mode */
|
||||
24, /* sqrt() default rounding mode */
|
||||
24, /* appr() default rounding mode */
|
||||
@@ -149,10 +149,10 @@ CONFIG newstd = { /* new non-backward compatible configuration */
|
||||
SQ_ALG2, /* size of number to use square alg 2 */
|
||||
POW_ALG2, /* size of modulus to use REDC for powers */
|
||||
REDC_ALG2, /* size of modulus to use REDC algorithm 2 */
|
||||
TRUE, /* ok to print a tilde on aproximations */
|
||||
TRUE, /* ok to print a tilde on approximations */
|
||||
TRUE, /* ok to print tab before numeric values */
|
||||
0, /* quomod() default rounding mode */
|
||||
0, /* quotent // default rounding mode */
|
||||
0, /* quotient // default rounding mode */
|
||||
0, /* mod % default rounding mode */
|
||||
24, /* sqrt() default rounding mode */
|
||||
24, /* appr() default rounding mode */
|
||||
@@ -287,10 +287,11 @@ static NAMETYPE truth[] = {
|
||||
|
||||
|
||||
/*
|
||||
* declate static functions
|
||||
* declare static functions
|
||||
*/
|
||||
static long lookup_long(NAMETYPE *set, char *name);
|
||||
static char *lookup_name(NAMETYPE *set, long val);
|
||||
static int getlen(VALUE *vp, LEN *lp);
|
||||
|
||||
|
||||
/*
|
||||
@@ -360,6 +361,26 @@ lookup_name(NAMETYPE *set, long val)
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Check whether VALUE at vp is a LEN (32-bit signed integer) and if so,
|
||||
* copy that integer to lp.
|
||||
* Return: 1, 2, 0, or -1 XXX
|
||||
*/
|
||||
|
||||
static int
|
||||
getlen(VALUE *vp, LEN *lp)
|
||||
{
|
||||
if (vp->v_type != V_NUM || !qisint(vp->v_num))
|
||||
return 1;
|
||||
if (zge31b(vp->v_num->num))
|
||||
return 2;
|
||||
*lp = ztoi(vp->v_num->num);
|
||||
if (*lp < 0)
|
||||
return -1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Set the specified configuration type to the specified value.
|
||||
* An error is generated if the type number or value is illegal.
|
||||
@@ -370,6 +391,7 @@ setconfig(int type, VALUE *vp)
|
||||
NUMBER *q;
|
||||
CONFIG *newconf; /* new configuration to set */
|
||||
long temp;
|
||||
LEN len;
|
||||
char *p;
|
||||
|
||||
switch (type) {
|
||||
@@ -414,15 +436,11 @@ setconfig(int type, VALUE *vp)
|
||||
break;
|
||||
|
||||
case CONFIG_DISPLAY:
|
||||
if (vp->v_type != V_NUM) {
|
||||
math_error("Non-numeric for display");
|
||||
if (getlen(vp, &len)) {
|
||||
math_error("Bad value for display");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
q = vp->v_num;
|
||||
temp = qtoi(q);
|
||||
if (qisfrac(q) || qisneg(q) || !zistiny(q->num))
|
||||
temp = -1;
|
||||
math_setdigits(temp);
|
||||
math_setdigits(len);
|
||||
break;
|
||||
|
||||
case CONFIG_MODE:
|
||||
@@ -447,91 +465,51 @@ setconfig(int type, VALUE *vp)
|
||||
break;
|
||||
|
||||
case CONFIG_MAXPRINT:
|
||||
if (vp->v_type != V_NUM) {
|
||||
math_error("Non-numeric for maxprint");
|
||||
if (getlen(vp, &len)) {
|
||||
math_error("Bad value for maxprint");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
q = vp->v_num;
|
||||
temp = qtoi(q);
|
||||
if (qisfrac(q) || qisneg(q) || !zistiny(q->num))
|
||||
temp = -1;
|
||||
if (temp < 0) {
|
||||
math_error("Maxprint value is out of range");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
conf->maxprint = temp;
|
||||
conf->maxprint = len;
|
||||
break;
|
||||
|
||||
case CONFIG_MUL2:
|
||||
if (vp->v_type != V_NUM) {
|
||||
math_error("Non-numeric for mul2");
|
||||
if (getlen(vp, &len)) {
|
||||
math_error("Bad value for mul2");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
q = vp->v_num;
|
||||
temp = qtoi(q);
|
||||
if (qisfrac(q) || qisneg(q))
|
||||
temp = -1;
|
||||
if (temp == 0)
|
||||
temp = MUL_ALG2;
|
||||
if (temp < 2) {
|
||||
math_error("Illegal mul2 value");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
conf->mul2 = (int)temp;
|
||||
if (len == 0)
|
||||
len = MUL_ALG2;
|
||||
conf->mul2 = len;
|
||||
break;
|
||||
|
||||
case CONFIG_SQ2:
|
||||
if (vp->v_type != V_NUM) {
|
||||
math_error("Non-numeric for sq2");
|
||||
if (getlen(vp, &len)) {
|
||||
math_error("Bad value for sq2");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
q = vp->v_num;
|
||||
temp = qtoi(q);
|
||||
if (qisfrac(q) || qisneg(q))
|
||||
temp = -1;
|
||||
if (temp == 0)
|
||||
temp = SQ_ALG2;
|
||||
if (temp < 2) {
|
||||
math_error("Illegal sq2 value");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
conf->sq2 = (int)temp;
|
||||
if (len == 0)
|
||||
len = SQ_ALG2;
|
||||
conf->sq2 = len;
|
||||
break;
|
||||
|
||||
case CONFIG_POW2:
|
||||
if (vp->v_type != V_NUM) {
|
||||
math_error("Non-numeric for pow2");
|
||||
if (getlen(vp, &len)) {
|
||||
math_error("Bad value for pow2");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
q = vp->v_num;
|
||||
temp = qtoi(q);
|
||||
if (qisfrac(q) || qisneg(q))
|
||||
temp = -1;
|
||||
if (temp == 0)
|
||||
temp = POW_ALG2;
|
||||
if (temp < 1) {
|
||||
math_error("Illegal pow2 value");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
conf->pow2 = (int)temp;
|
||||
if (len == 0)
|
||||
len = POW_ALG2;
|
||||
conf->pow2 = len;
|
||||
break;
|
||||
|
||||
case CONFIG_REDC2:
|
||||
if (vp->v_type != V_NUM) {
|
||||
math_error("Non-numeric for redc2");
|
||||
if (getlen(vp, &len)) {
|
||||
math_error("Bad value for redc2");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
q = vp->v_num;
|
||||
temp = qtoi(q);
|
||||
if (qisfrac(q) || qisneg(q))
|
||||
temp = -1;
|
||||
if (temp == 0)
|
||||
temp = REDC_ALG2;
|
||||
if (temp < 1) {
|
||||
math_error("Illegal redc2 value");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
conf->redc2 = (int)temp;
|
||||
if (len == 0)
|
||||
len = REDC_ALG2;
|
||||
conf->redc2 = len;
|
||||
break;
|
||||
|
||||
case CONFIG_TILDE:
|
||||
@@ -563,129 +541,75 @@ setconfig(int type, VALUE *vp)
|
||||
break;
|
||||
|
||||
case CONFIG_QUOMOD:
|
||||
if (vp->v_type != V_NUM) {
|
||||
math_error("Non numeric for quomod");
|
||||
if (getlen(vp, &len)) {
|
||||
math_error("Illegal value for quomod");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
q = vp->v_num;
|
||||
temp = qtoi(q);
|
||||
if (qisfrac(q) || qisneg(q) || !zistiny(q->num)) {
|
||||
math_error("Illegal quomod parameter value");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
conf->quomod = temp;
|
||||
conf->quomod = len;
|
||||
break;
|
||||
|
||||
case CONFIG_QUO:
|
||||
if (vp->v_type != V_NUM) {
|
||||
math_error("Non numeric for quo");
|
||||
if (getlen(vp, &len)) {
|
||||
math_error("Illegal value for quo");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
q = vp->v_num;
|
||||
temp = qtoi(q);
|
||||
if (qisfrac(q) || qisneg(q) || !zistiny(q->num)) {
|
||||
math_error("Illegal quo parameter value");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
conf->quo = temp;
|
||||
conf->quo = len;
|
||||
break;
|
||||
|
||||
case CONFIG_MOD:
|
||||
if (vp->v_type != V_NUM) {
|
||||
math_error("Non numeric for mod");
|
||||
if (getlen(vp, &len)) {
|
||||
math_error("Illegal value for mod");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
q = vp->v_num;
|
||||
temp = qtoi(q);
|
||||
if (qisfrac(q) || qisneg(q) || !zistiny(q->num)) {
|
||||
math_error("Illegal mod parameter value");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
conf->mod = temp;
|
||||
conf->mod = len;
|
||||
break;
|
||||
|
||||
case CONFIG_SQRT:
|
||||
if (vp->v_type != V_NUM) {
|
||||
math_error("Non numeric for sqrt");
|
||||
if (getlen(vp, &len)) {
|
||||
math_error("Illegal value for sqrt");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
q = vp->v_num;
|
||||
temp = qtoi(q);
|
||||
if (qisfrac(q) || qisneg(q) || !zistiny(q->num)) {
|
||||
math_error("Illegal sqrt parameter value");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
conf->sqrt = temp;
|
||||
conf->sqrt = len;
|
||||
break;
|
||||
|
||||
case CONFIG_APPR:
|
||||
if (vp->v_type != V_NUM) {
|
||||
math_error("Non numeric for appr");
|
||||
if (getlen(vp, &len)) {
|
||||
math_error("Illegal value for appr");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
q = vp->v_num;
|
||||
temp = qtoi(q);
|
||||
if (qisfrac(q) || qisneg(q) || !zistiny(q->num)) {
|
||||
math_error("Illegal appr parameter value");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
conf->appr = temp;
|
||||
conf->appr = len;
|
||||
break;
|
||||
|
||||
case CONFIG_CFAPPR:
|
||||
if (vp->v_type != V_NUM) {
|
||||
math_error("Non numeric for cfappr");
|
||||
if (getlen(vp, &len)) {
|
||||
math_error("Illegal value for cfappr");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
q = vp->v_num;
|
||||
temp = qtoi(q);
|
||||
if (qisfrac(q) || qisneg(q) || !zistiny(q->num)) {
|
||||
math_error("Illegal cfappr parameter value");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
conf->cfappr = temp;
|
||||
conf->cfappr = len;
|
||||
break;
|
||||
|
||||
case CONFIG_CFSIM:
|
||||
if (vp->v_type != V_NUM) {
|
||||
math_error("Non numeric for cfsim");
|
||||
if (getlen(vp, &len)) {
|
||||
math_error("Illegal value for cfsim");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
q = vp->v_num;
|
||||
temp = qtoi(q);
|
||||
if (qisfrac(q) || qisneg(q) || !zistiny(q->num)) {
|
||||
math_error("Illegal cfsim parameter value");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
conf->cfsim = temp;
|
||||
conf->cfsim = len;
|
||||
break;
|
||||
|
||||
case CONFIG_OUTROUND:
|
||||
if (vp->v_type != V_NUM) {
|
||||
math_error("Non numeric for outround");
|
||||
if (getlen(vp, &len)) {
|
||||
math_error("Illegal value for outround");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
q = vp->v_num;
|
||||
temp = qtoi(q);
|
||||
if (qisfrac(q) || qisneg(q) || !zistiny(q->num)) {
|
||||
math_error("Illegal output parameter value");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
conf->outround = temp;
|
||||
conf->outround = len;
|
||||
break;
|
||||
|
||||
case CONFIG_ROUND:
|
||||
if (vp->v_type != V_NUM) {
|
||||
math_error("Non numeric for round");
|
||||
if (getlen(vp, &len)) {
|
||||
math_error("Illegal value for round");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
q = vp->v_num;
|
||||
temp = qtoi(q);
|
||||
if (qisfrac(q) || qisneg(q) || !zistiny(q->num)) {
|
||||
math_error("Illegal output parameter value");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
conf->round = temp;
|
||||
conf->round = len;
|
||||
break;
|
||||
|
||||
case CONFIG_LEADZERO:
|
||||
@@ -1311,12 +1235,12 @@ config_cmp(CONFIG *cfg1, CONFIG *cfg2)
|
||||
*/
|
||||
if (cfg1 == NULL || cfg1->epsilon == NULL || cfg1->prompt1 == NULL ||
|
||||
cfg1->prompt2 == NULL) {
|
||||
math_error("CONFIG #1 value is invaid");
|
||||
math_error("CONFIG #1 value is invalid");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
if (cfg2 == NULL || cfg2->epsilon == NULL || cfg2->prompt1 == NULL ||
|
||||
cfg2->prompt2 == NULL) {
|
||||
math_error("CONFIG #2 value is invaid");
|
||||
math_error("CONFIG #2 value is invalid");
|
||||
/*NOTREACHED*/
|
||||
}
|
||||
|
||||
|
56
config.h
56
config.h
@@ -19,15 +19,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: config.h,v 29.2 1999/12/14 19:37:46 chongo Exp $
|
||||
* @(#) $Revision: 29.5 $
|
||||
* @(#) $Id: config.h,v 29.5 2001/02/25 22:07:36 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/config.h,v $
|
||||
*
|
||||
* Under source code control: 1995/11/01 22:20:17
|
||||
* File existed as early as: 1995
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
@@ -35,6 +35,20 @@
|
||||
#define __CONFIG_H__
|
||||
|
||||
|
||||
#if defined (_WIN32)
|
||||
#ifdef _EXPORTING
|
||||
#define DLL __declspec(dllexport)
|
||||
#else
|
||||
#define DLL __declspec(dllimport)
|
||||
#endif
|
||||
|
||||
#else /* Windoz free systems */
|
||||
|
||||
#define DLL
|
||||
|
||||
#endif /* Windoz free systems */
|
||||
|
||||
|
||||
#include "nametype.h"
|
||||
#include "qmath.h"
|
||||
|
||||
@@ -110,26 +124,26 @@
|
||||
*/
|
||||
struct config {
|
||||
int outmode; /* current output mode */
|
||||
long outdigits; /* current output digits for float or exp */
|
||||
LEN outdigits; /* current output digits for float or exp */
|
||||
NUMBER *epsilon; /* default error for real functions */
|
||||
long epsilonprec; /* epsilon binary precision (tied to epsilon) */
|
||||
FLAG traceflags; /* tracing flags */
|
||||
long maxprint; /* number of elements to print */
|
||||
LEN maxprint; /* number of elements to print */
|
||||
LEN mul2; /* size of number to use multiply algorithm 2 */
|
||||
LEN sq2; /* size of number to use square algorithm 2 */
|
||||
LEN pow2; /* size of modulus to use REDC for powers */
|
||||
LEN redc2; /* size of modulus to use REDC algorithm 2 */
|
||||
BOOL tilde_ok; /* ok to print a tilde on aproximations */
|
||||
BOOL tab_ok; /* ok to print tab before numeric values */
|
||||
long quomod; /* quomod() default rounding mode */
|
||||
long quo; /* quotent // default rounding mode */
|
||||
long mod; /* mod % default rounding mode */
|
||||
long sqrt; /* sqrt() default rounding mode */
|
||||
long appr; /* appr() default rounding mode */
|
||||
long cfappr; /* cfappr() default rounding mode */
|
||||
long cfsim; /* cfsim() default rounding mode */
|
||||
long outround; /* output default rounding mode */
|
||||
long round; /* round()/bround() default rounding mode */
|
||||
LEN quomod; /* quomod() default rounding mode */
|
||||
LEN quo; /* quotient // default rounding mode */
|
||||
LEN mod; /* mod % default rounding mode */
|
||||
LEN sqrt; /* sqrt() default rounding mode */
|
||||
LEN appr; /* appr() default rounding mode */
|
||||
LEN cfappr; /* cfappr() default rounding mode */
|
||||
LEN cfsim; /* cfsim() default rounding mode */
|
||||
LEN outround; /* output default rounding mode */
|
||||
LEN round; /* round()/bround() default rounding mode */
|
||||
BOOL leadzero; /* ok to print leading 0 before decimal pt */
|
||||
BOOL fullzero; /* ok to print trailing 0's */
|
||||
long maxscancount; /* max scan errors before abort */
|
||||
@@ -193,12 +207,12 @@ extern char *user_debug; /* !=NULL => value of config("user_debug") */
|
||||
/*
|
||||
* configuration externals
|
||||
*/
|
||||
extern CONFIG *config_copy(CONFIG *src);
|
||||
extern void config_free(CONFIG *cfg);
|
||||
extern void config_print(CONFIG *cfg);
|
||||
extern int configtype(char*);
|
||||
extern void config_print(CONFIG*);
|
||||
extern BOOL config_cmp(CONFIG*, CONFIG*);
|
||||
DLL extern CONFIG *config_copy(CONFIG *src);
|
||||
DLL extern void config_free(CONFIG *cfg);
|
||||
DLL extern void config_print(CONFIG *cfg);
|
||||
DLL extern int configtype(char*);
|
||||
DLL extern void config_print(CONFIG*);
|
||||
DLL extern BOOL config_cmp(CONFIG*, CONFIG*);
|
||||
|
||||
|
||||
#endif /* !__CONFIG_H__ */
|
||||
|
6
const.c
6
const.c
@@ -17,14 +17,14 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: const.c,v 29.1 1999/12/14 09:15:35 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: const.c,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/const.c,v $
|
||||
*
|
||||
* Under source code control: 1990/02/15 01:48:14
|
||||
* File existed as early as: before 1990
|
||||
*
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -17,15 +17,15 @@
|
||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# @(#) $Revision: 29.3 $
|
||||
# @(#) $Id: Makefile,v 29.3 1999/12/14 19:30:19 chongo Exp $
|
||||
# @(#) $Revision: 29.6 $
|
||||
# @(#) $Id: Makefile,v 29.6 2000/12/15 14:56:14 chongo Exp $
|
||||
# @(#) $Source: /usr/local/src/cmd/calc/cscript/RCS/Makefile,v $
|
||||
#
|
||||
# Under source code control: 1999/11/29 11:10:26
|
||||
# File existed as early as: 1999
|
||||
#
|
||||
# chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
# Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
# chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
# Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
#
|
||||
# calculator by David I. Bell with help/mods from others
|
||||
# Makefile by Landon Curt Noll
|
||||
@@ -65,7 +65,7 @@ FMT= fmt
|
||||
#
|
||||
# The ${SCRIPT_SRC} is built from ${SCRIPT} and has the .calc extensions.
|
||||
#
|
||||
# This list is prodiced by the detaillist rule when no WARNINGS are detected.
|
||||
# This list is produced by the detaillist rule when no WARNINGS are detected.
|
||||
# To add a script:
|
||||
#
|
||||
# 1) Name the file with a .calc filename extension
|
||||
@@ -76,15 +76,15 @@ FMT= fmt
|
||||
#
|
||||
# make detaillist
|
||||
#
|
||||
SCRIPT= mersenne piforever plus simple
|
||||
SCRIPT= mersenne piforever plus simple square
|
||||
|
||||
SCRIPT_SRC= mersenne.calc piforever.calc plus.calc simple.calc
|
||||
SCRIPT_SRC= mersenne.calc piforever.calc plus.calc simple.calc square.calc
|
||||
|
||||
# These files are found (but not built) in the distribution
|
||||
#
|
||||
DISTLIST= ${SCRIPT_SRC} ${MAKE_FILE}
|
||||
DISTLIST= ${SCRIPT_SRC} ${MAKE_FILE} README
|
||||
|
||||
# These files are used to make (but not built) a calc .a library
|
||||
# These files are used to make (but not build) a calc .a library
|
||||
#
|
||||
CALCLIBLIST=
|
||||
|
||||
@@ -92,10 +92,10 @@ CALCLIBLIST=
|
||||
#
|
||||
all: ${SCRIPT} ${SCRIPT_SRC} .all
|
||||
|
||||
# used by the upper level Makefile to determine of we have done all
|
||||
# used by the upper level Makefile to determine if we have done all
|
||||
#
|
||||
# NOTE: Due to bogus shells found on one common system we must have
|
||||
# an non-emoty else clause for every if condition. *sigh*
|
||||
# a non-empty else clause for every if condition. *sigh*
|
||||
#
|
||||
.all:
|
||||
rm -f .all
|
||||
@@ -245,3 +245,7 @@ simple: simple.calc
|
||||
rm -f $@
|
||||
${SED} -e "1s:^#!/usr/local/src/cmd/calc/calc:#!${BINDIR}/calc:" $?>$@
|
||||
${CHMOD} +x $@
|
||||
square: square.calc
|
||||
rm -f $@
|
||||
${SED} -e "1s:^#!/usr/local/src/cmd/calc/calc:#!${BINDIR}/calc:" $?>$@
|
||||
${CHMOD} +x $@
|
||||
|
65
cscript/README
Normal file
65
cscript/README
Normal file
@@ -0,0 +1,65 @@
|
||||
calc shell script examples
|
||||
--------------------------
|
||||
|
||||
These calc shell scripts are provided because they serve as examples of
|
||||
how use the calc language, and/or because the authors thought them to
|
||||
be useful!
|
||||
|
||||
If you write something that you think is useful, please send it to:
|
||||
|
||||
calc-contrib at asthe dot com
|
||||
|
||||
[[ NOTE: Replace 'at' with @, 'dot' is with . and remove the spaces ]]
|
||||
[[ NOTE: The EMail address uses 'asthe' and the web site URL uses 'isthe' ]]
|
||||
|
||||
For more info, see:
|
||||
|
||||
help script
|
||||
help cscript
|
||||
|
||||
=-=
|
||||
|
||||
mersenne exp
|
||||
|
||||
Print the value of 2^exp-1.
|
||||
|
||||
|
||||
piforever
|
||||
|
||||
Print the value of pi forever, or as long as you cpu / memory allows.
|
||||
|
||||
|
||||
plus arg ...
|
||||
|
||||
Print the sum of 1 or more arguments.
|
||||
|
||||
|
||||
simple
|
||||
|
||||
A trivial example of a calc shell script.
|
||||
|
||||
## Copyright (C) 1999 Landon Curt Noll
|
||||
##
|
||||
## Calc is open software; you can redistribute it and/or modify it under
|
||||
## the terms of the version 2.1 of the GNU Lesser General Public License
|
||||
## as published by the Free Software Foundation.
|
||||
##
|
||||
## Calc is distributed in the hope that it will be useful, but WITHOUT
|
||||
## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
||||
## or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
|
||||
## Public License for more details.
|
||||
##
|
||||
## A copy of version 2.1 of the GNU Lesser General Public License is
|
||||
## distributed with calc under the filename COPYING-LGPL. You should have
|
||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
## 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
##
|
||||
## @(#) $Revision: 29.4 $
|
||||
## @(#) $Id: README,v 29.4 2000/06/07 14:02:59 chongo Exp $
|
||||
## @(#) $Source: /usr/local/src/cmd/calc/cscript/RCS/README,v $
|
||||
##
|
||||
## Under source code control: 1999/12/17 10:23:40
|
||||
## File existed as early as: 1999
|
||||
##
|
||||
## chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
## Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
@@ -1,4 +1,4 @@
|
||||
#!/usr/local/src/cmd/calc/calc -S
|
||||
#!/usr/local/src/cmd/calc/calc -q -s -f
|
||||
#
|
||||
# mersenne - print the value of a mersenne number
|
||||
#
|
||||
@@ -18,15 +18,15 @@
|
||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# @(#) $Revision: 29.1 $
|
||||
# @(#) $Id: mersenne.calc,v 29.1 1999/12/14 09:15:35 chongo Exp $
|
||||
# @(#) $Revision: 29.3 $
|
||||
# @(#) $Id: mersenne.calc,v 29.3 2000/12/15 14:56:54 chongo Exp $
|
||||
# @(#) $Source: /usr/local/src/cmd/calc/cscript/RCS/mersenne.calc,v $
|
||||
#
|
||||
# Under source code control: 1999/11/30 00:09:01;
|
||||
# File existed as early as: 1999
|
||||
#
|
||||
# chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
# Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
# chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
# Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
|
||||
# usage:
|
||||
# mersenne exp
|
||||
@@ -35,13 +35,19 @@
|
||||
/*
|
||||
* parse args
|
||||
*/
|
||||
if (argv() != 1) {
|
||||
if (argv() != 2) {
|
||||
/* we include the name of this script in the error message */
|
||||
fprintf(files(2), "usage: %s exp\n", config("program"));
|
||||
abort "wrong number of args";
|
||||
}
|
||||
|
||||
global n = eval(argv(1));
|
||||
|
||||
if (!isint(n) || n <= 0) {
|
||||
quit "Argument to be a positive integer";
|
||||
}
|
||||
|
||||
/*
|
||||
* print the decimal value of 2^n-1
|
||||
*/
|
||||
print "2^": argv(0) : "-1 =", 2^eval(argv(0))-1;
|
||||
print "2^": n : "-1 =", 2^n-1;
|
||||
|
@@ -1,4 +1,4 @@
|
||||
#!/usr/local/src/cmd/calc/calc -S
|
||||
#!/usr/local/src/cmd/calc/calc -q -f
|
||||
#
|
||||
# piforever - print digits of pi forever (or as long as your mem/cpu allow)
|
||||
#
|
||||
@@ -18,15 +18,15 @@
|
||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# @(#) $Revision: 29.1 $
|
||||
# @(#) $Id: piforever.calc,v 29.1 1999/12/14 09:15:36 chongo Exp $
|
||||
# @(#) $Revision: 29.3 $
|
||||
# @(#) $Id: piforever.calc,v 29.3 2000/12/15 14:56:54 chongo Exp $
|
||||
# @(#) $Source: /usr/local/src/cmd/calc/cscript/RCS/piforever.calc,v $
|
||||
#
|
||||
# Under source code control: 1999/11/30 00:11:36
|
||||
# File existed as early as: 1999
|
||||
#
|
||||
# chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
# Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
# chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
# Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
|
||||
# usage:
|
||||
# piforever
|
||||
|
@@ -1,4 +1,4 @@
|
||||
#!/usr/local/src/cmd/calc/calc -S
|
||||
#!/usr/local/src/cmd/calc/calc -q -s -f
|
||||
#
|
||||
# plus - add two or more arguments together
|
||||
#
|
||||
@@ -18,15 +18,15 @@
|
||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# @(#) $Revision: 29.1 $
|
||||
# @(#) $Id: plus.calc,v 29.1 1999/12/14 09:15:36 chongo Exp $
|
||||
# @(#) $Revision: 29.3 $
|
||||
# @(#) $Id: plus.calc,v 29.3 2000/12/15 14:56:54 chongo Exp $
|
||||
# @(#) $Source: /usr/local/src/cmd/calc/cscript/RCS/plus.calc,v $
|
||||
#
|
||||
# Under source code control: 1999/11/29 10:22:37
|
||||
# File existed as early as: 1999
|
||||
#
|
||||
# chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
# Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
# chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
# Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
|
||||
# usage:
|
||||
# plus val ...
|
||||
@@ -35,19 +35,19 @@
|
||||
/*
|
||||
* parse args
|
||||
*/
|
||||
if (argv() < 1) {
|
||||
if (argv() < 2) {
|
||||
/* we include the name of this script in the error message */
|
||||
fprintf(files(2), "usage: %s value ...\n", config("program"));
|
||||
abort "not enough args";
|
||||
}
|
||||
|
||||
/*
|
||||
* print the sum of the 2 args
|
||||
* print the sum of the args
|
||||
*
|
||||
* Since args are strings, we must eval them before using them numerically.
|
||||
*/
|
||||
sum = 0;
|
||||
for (i=0; i < argv(); ++i) {
|
||||
for (i=1; i < argv(); ++i) {
|
||||
sum += eval(argv(i));
|
||||
}
|
||||
print sum;
|
||||
|
@@ -1,4 +1,4 @@
|
||||
#!/usr/local/src/cmd/calc/calc -S
|
||||
#!/usr/local/src/cmd/calc/calc -q -f
|
||||
#
|
||||
# simple - an example of a simple calc shell script
|
||||
#
|
||||
@@ -18,18 +18,18 @@
|
||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# @(#) $Revision: 29.1 $
|
||||
# @(#) $Id: simple.calc,v 29.1 1999/12/14 09:15:36 chongo Exp $
|
||||
# @(#) $Revision: 29.3 $
|
||||
# @(#) $Id: simple.calc,v 29.3 2000/12/15 14:56:54 chongo Exp $
|
||||
# @(#) $Source: /usr/local/src/cmd/calc/cscript/RCS/simple.calc,v $
|
||||
#
|
||||
# Under source code control: 1999/11/29 10:22:37
|
||||
# File existed as early as: 1999
|
||||
#
|
||||
# chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
# Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
# chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
# Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
|
||||
|
||||
/*
|
||||
* This is an example of a simple calc shell script.
|
||||
*/
|
||||
print "The simple calc shell script works!"
|
||||
print "This simple calc shell script works!"
|
||||
|
65
cscript/square.calc
Normal file
65
cscript/square.calc
Normal file
@@ -0,0 +1,65 @@
|
||||
#!/usr/local/src/cmd/calc/calc -q -f
|
||||
#
|
||||
# sqaure - print the squares of input values
|
||||
#
|
||||
# Copyright (C) 2000 Ernest Bowen
|
||||
#
|
||||
# Calc is open software; you can redistribute it and/or modify it under
|
||||
# the terms of the version 2.1 of the GNU Lesser General Public License
|
||||
# as published by the Free Software Foundation.
|
||||
#
|
||||
# Calc is distributed in the hope that it will be useful, but WITHOUT
|
||||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
||||
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
|
||||
# Public License for more details.
|
||||
#
|
||||
# A copy of version 2.1 of the GNU Lesser General Public License is
|
||||
# distributed with calc under the filename COPYING-LGPL. You should have
|
||||
# received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# @(#) $Revision: 29.3 $
|
||||
# @(#) $Id: square.calc,v 29.3 2000/12/17 14:31:58 chongo Exp $
|
||||
# @(#) $Source: /usr/local/src/cmd/calc/cscript/RCS/square.calc,v $
|
||||
#
|
||||
# Under source code control: 2000/12/15 06:52:01
|
||||
# File existed as early as: 2000
|
||||
#
|
||||
# Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
|
||||
# Usage:
|
||||
#
|
||||
# From the shell:
|
||||
#
|
||||
# ./square
|
||||
# cat file | ./square
|
||||
# echo "123" | ./square
|
||||
#
|
||||
# Within calc:
|
||||
#
|
||||
# > read square
|
||||
#
|
||||
# With input from a terminal, there is no prompt but each non-empty
|
||||
# line of input is evaluated as a calc expression and if it can be
|
||||
# calculated, the square of the value of that expression is displayed.
|
||||
# Execution stops when an empty line is input.
|
||||
#
|
||||
# From the shell:
|
||||
#
|
||||
# ./square
|
||||
#
|
||||
# The following shows lines of input followed by output:
|
||||
#
|
||||
# 1234
|
||||
# 1522756
|
||||
# ln(2)
|
||||
# ~.48045301391820142467
|
||||
# config("mode","frac"), bernoulli(10)
|
||||
# 25/4356
|
||||
# config("mode", "hex"), 0xff
|
||||
# 0xfe01
|
||||
#
|
||||
|
||||
global s;
|
||||
while ((s = prompt("")))
|
||||
print "\t":eval(s)^2;
|
8
custom.c
8
custom.c
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: custom.c,v 29.1 1999/12/14 09:15:36 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: custom.c,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/custom.c,v $
|
||||
*
|
||||
* Under source code control: 1997/03/03 04:53:08
|
||||
* File existed as early as: 1997
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
|
||||
|
8
custom.h
8
custom.h
@@ -17,15 +17,15 @@
|
||||
* received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
* 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* @(#) $Revision: 29.1 $
|
||||
* @(#) $Id: custom.h,v 29.1 1999/12/14 09:15:36 chongo Exp $
|
||||
* @(#) $Revision: 29.2 $
|
||||
* @(#) $Id: custom.h,v 29.2 2000/06/07 14:02:13 chongo Exp $
|
||||
* @(#) $Source: /usr/local/src/cmd/calc/RCS/custom.h,v $
|
||||
*
|
||||
* Under source code control: 1997/03/03 04:53:08
|
||||
* File existed as early as: 1997
|
||||
*
|
||||
* chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
* Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
* chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
* Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
*/
|
||||
|
||||
/*
|
||||
|
@@ -57,12 +57,12 @@ pzasusb8.cal
|
||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
## 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
##
|
||||
## @(#) $Revision: 29.1 $
|
||||
## @(#) $Id: CUSTOM_CAL,v 29.1 1999/12/14 09:15:36 chongo Exp $
|
||||
## @(#) $Revision: 29.2 $
|
||||
## @(#) $Id: CUSTOM_CAL,v 29.2 2000/06/07 14:03:03 chongo Exp $
|
||||
## @(#) $Source: /usr/local/src/cmd/calc/custom/RCS/CUSTOM_CAL,v $
|
||||
##
|
||||
## Under source code control: 1997/03/08 20:51:32
|
||||
## File existed as early as: 1997
|
||||
##
|
||||
## chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
## Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
## chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
## Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
|
@@ -635,12 +635,12 @@ Step 12: Contribute
|
||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
## 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
##
|
||||
## @(#) $Revision: 29.1 $
|
||||
## @(#) $Id: HOW_TO_ADD,v 29.1 1999/12/14 09:15:36 chongo Exp $
|
||||
## @(#) $Revision: 29.2 $
|
||||
## @(#) $Id: HOW_TO_ADD,v 29.2 2000/06/07 14:03:03 chongo Exp $
|
||||
## @(#) $Source: /usr/local/src/cmd/calc/custom/RCS/HOW_TO_ADD,v $
|
||||
##
|
||||
## Under source code control: 1997/03/10 03:03:21
|
||||
## File existed as early as: 1997
|
||||
##
|
||||
## chongo <was here> /\oo/\ http://reality.sgi.com/chongo/
|
||||
## Share and enjoy! :-) http://reality.sgi.com/chongo/tech/comp/calc/
|
||||
## chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
## Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user