Google
 

Trailing-Edge - PDP-10 Archives - fortv11 - mthhst.mac
There are 5 other files named mthhst.mac in the archive. Click here to see a list.

	SEARCH	MTHPRM
	TV	MTHHST	Math Library Revision History ,2(4021)

;COPYRIGHT (C) DIGITAL EQUIPMENT CORPORATION 1981, 1986
;ALL RIGHTS RESERVED.
;
;THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
;ONLY  IN  ACCORDANCE  WITH  THE  TERMS  OF  SUCH LICENSE AND WITH THE
;INCLUSION OF THE ABOVE COPYRIGHT NOTICE.  THIS SOFTWARE OR ANY  OTHER
;COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY
;OTHER PERSON.  NO TITLE TO AND OWNERSHIP OF THE  SOFTWARE  IS  HEREBY
;TRANSFERRED.

;THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT  NOTICE
;AND  SHOULD  NOT  BE  CONSTRUED  AS A COMMITMENT BY DIGITAL EQUIPMENT
;CORPORATION.

;DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY  OF  ITS
;SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL.

COMMENT	\

***** Begin Revision History *****

3200	JLC	10-May-82
	Mathlib integration. Change all LERRs to $LCALLs. Change
	TWOSEG/RELOC to SEGMENT macros.
	Modules:	all

3201	RVM	17-May-82
	Add the routine CMPX.G for converting two gfloating numbers to
	complex, and fix a boundary condition that prevented an argument
	of plus or minus one being used to routines GASIN and GACOS.
	Modules:	MTHCXP,  MTHGDB

3202	JLC	26-May-82
	Fix MTHERR, was referring to P1 as arg pointer. Fix square
	bracket matching code.
	Module:		MTHERR

3203	JLC	27-May-82
	Fix trapping mechanism typo.
	Module:		MTHTRP

3204	JLC	2-Jun-82
	Remove ERR segment, was of marginal utility.

3205	JLC	3-Jun-82
	Moved error character to first argument in error macros and 
	messages.

3206	AHM	8-Jun-82
	Remove CKS's older version  of GINT. in  favor of CDM's  newer
	version.
	Module:		MTHGDB

3207	AHM	14-Jun-82
	Remove definitions  of random  .JB??? symbols  fron the  FSRCH
	macro and just have it always SEARCH JOBDAT.
	Module:		MTHPRM

3210	CKS	15-Jun-82
	Insert changes from Mary Payne's memos of May 18, 1982 and
	June 11, 1982.

3211	JLC	26-Jun-82
	Separated variable type and "2nd error number" args in user
	subroutine call.

3212	JLC	12-Jul-82
	Added %ERRPC to externs.

3213	JLC	20-Jul-82
	Save user's PDP in %ERPDP in trap processing, so that error
	processor can call GETPC to get module name.

3214	JLC	16-Aug-82
	Fix code at NOCLRF so it gets the original flags into PC
	for JRSTF. Turn off extraneous bits (namely, WRONGBIT) before
	using index into XLOAD and XSTORE.

3215	RVM	20-Aug-82
	Change a CAIGE to a CAIG in GINT.  Numbers less than 1.00D0
	were not being set to 0.00D0.
	Module:		MTHGDB

3216	JLC	3-Sep-82
	Remove extraneous MTHDAR universal file and SEARCHes of it,
	since it was moved to MTHPRM long ago.

3217	JLC	8-Oct-82
	Modify SIXBIT names of the complex multiply and divide routines
	so that TRACE won't look for an argument block.

3220	PLB	12-Oct-82
	Remove IFIWs from FUNCT calls in MTH*.MAC, Add IFIW to FUNCT macro
	definition.
	Modules:	MTHCPX, MTHPRM

3221	BCM	29-Oct-82
	Moved SNGL, SNGL., and SNG.nn routines to the end of file
	MTHSNG and out of MTHDBL.  Resolves forward reference problem.

3222	JLC	9-Nov-82
	Insert patch to MTHTRP to use APRENB instead of UTRP for
	the KS-10, avoiding a microcode/monitor problem.

3223	CDM	11-Nov-82	Q 10-03002
	Replace IFX.n routines as per customer QAR.

3224	JLC	10-Dec-82
	Added new module MTHDUM for use of math library and MTHTRP
	by MACRO programs.

3225	CKS	4-Jan-83
	Clear floating underflow PC flag when returning from underflow trap
	caught by JOV.  Otherwise, since the JOV only clears overflow, you
	get stray underflow flags left around.

3226	CKS	4-Jan-83	Q10-03055
	Detect 0 ** 0 in EXP1.  Return 0 instead of 1 for this case to be
	consistent with EXP2., DEXP2., and CEXP2.

3227	CKS	5-Jan-83	Q20-06094
	Incorporate rewritten EXP2, DEXP2, GEXP2 from Mary Payne.  Fix problem
	with overflow in CEXP3.

3230	JLC	12-Jan-83
	Add OPDEFs to MTHPRM.

***** Begin Version 1A *****

3231	CKS	23-Mar-83
	Work on RANS.  Change the constant multiplier of the seed
	from 16807 to 630360016 so that RANS matches RAN.   Don't
	use a  FLTR to  float the  integer number,  instead use  a
	MOVSI and a DFAD, since this will not cause the number to
	be rounded.  Optimize  the routine by  doing away with  a
	dead  subtract   instruction  and   by  using   an   EXCH
	instruction.
	Module:
		MTHSNG

3232	CKS	23-Mar-83
	Rewrote DMOD to remove restrictions on the magnitudes of
	its arguments.
	Module:
		MTHDBL

3233	CKS	23-Mar-83
	Rewrote GMOD to remove restrictions on the magnitudes of
	its arguments.
	Module:
		MTHGDB

3234	CKS	23-Mar-83
	The maximum value of the arg to SIN was given erroneously
	as 36394.429 instead of the correct value of 823549.66.  
	Fix this in the code and any of the comments which it
	appears.
	Module:
		MTHCPX

3235	RVM	24-Mar-83
	Equate REAL to FLOAT. so that REAL is defined.
	Module:
		MTHSNG

3236	PLB	25-Mar-83
	Once again, change the FUNCT macro.  It should
	not OR the IFIW in, since that implies a 30 bit
	argument address.
	Module:

3237	RVM	30-Mar-83
	CGSQRT was not returning the primary square root (ie, the
	result was not in the right half-plane).  In addition,
	there was an instruction which confused register T3 with
	P3, and the underflow code didn't zero the result.
	Module:
		MTHCGX

3240	RVM	30-Mar-83
	CDSQRT used an old standard for register names, this edit
	updated the routine to be more modern.  Also, memory
	locations allocated but not used were deleted.
	Module:
		MTHCDX

3241	TGS	31-Mar-83
	Fix FUNCT macro to correctly expand arguments of the type
	(SUB,<<TP%SPR,adr>>).  FORPL2 was getting Q compilation errors.
	Module:
		MTHPRM

3242	TGS	1-Apr-83
	Turn on FTGFL flag so gfloating arguments passed to MTHCDX routines
	will correctly call their gfloating counterparts. Move ARGKWD, ARGTYP
	and ARGADR definitions from FORPRM to MTHPRM and delete FTGFL flag
	from FORPRM (Forots edit 3300).
	Module:
		MTHPRM

3243	BCM	29-Mar-83
	Get and clear PC flags with new GETFLG and RESFLG macros.  Fixes
	always clearing underflow in MTHTRP.  Only applies to JOV branches.
	Module:
		MTHDBL, MTHGDB, MTHPRM, MTHSNG, MTHTRP

3244	TGS	07-Mar-83
	Retract edit 3232 to MTHDBL.  DMOD was returning inaccurate results
	in the 2d word.
	Module:
		MTHDBL

3245	MRB	11-Apr-83
	DCOTAN routine pop's to meny AC's off the stack.
	Module:
		MTHDBL

3246	The double precision sine and cosine functions destroy the
	input variables. The result field gets written over the 
	input variable in some cases.
	Module:
		MTHDCX

3247	10-33795	MRB	24-May-83
	Fixed bug in the interface of CEXP2 with CEXP3, and to
	fix bug in block 2 (of CEXP3) at XISO.


3251	10-34015	MRB	30-Aug-83
	Added a special case in CEXP2. When the imaginary part of 
	the complex number is zero and the real part in an integer
	call EXP2. instead. (This is edit 3344 to FOROT7) 

3252	10-34127	MRB	27-Sep-83
	Changed error message "integer overflow" to "Arithmetic
	integer overflow" to avoid confusion with "Input integer
	overflow" in MTHTRP. (This is edit 3352 to FOROT7.)

3253	10-34340	TGS	29-NOV-83
	Make SEGMENT macro case-insensitive by converting its string
	argument to SIXBIT. Edit 3370 to FOROT7.

3254	20-19812	MRB	13-Dec-83
	The DEXP2. routine is failing to clear the result field on an
	underflow. (This is edit 3374 to FOROT7.)

3255	20-19901	MRB	23-Jan-84
	The CDLOG routine is returning an incorrect value for the case
	(0,0) returns (+inifinity,0) should be (-infinity,0).
	(This is edit 3404 to FOROT7.)

3257	20-20394	MRB	6-Nov-84
	Clear out the extra bits if the COS routine when the result
	is greater than one. This routine has a 3-bit error range and
	in some cases, when the result is very close to one, this 
	three bit error range can put us over the maximum result of
	one. This edit will scale the result down to one.
	(this is FOROTS edit 3452)
	Module:
		MTHSNG

***** End Revision History *****

***** Begin Version 2 *****

4000	JLC	1-Jul-83
	Create MTHLIB.REL, a separate math library. Eliminate MTHEPR,
	and make MTHPRM stand-alone. Create B20MTH.CTL to build
	MTHLIB.REL, and associated M20LIB.CCL MAKLIB command file.

4001	PLB	6-Jul-83
	Remove indexing from XJRSTF AC in RESFLG macro living in MTHPRM.

4002	JLC	3-Aug-83
	Fix ordering problems for MTHSNG, MTHDBL, and MTHGDB. Tangent
	functions call exponential functions, which were placed first.
	LINK hid the problem until MTHLIB was searched via .REQUEST.

4003	JLC	8-Sep-83
	Fix extended addressing bug in MTHDUM, found in parallel code
	in FORERR long ago. Add MTHCNV.MAC to MTHLIB, initially containing
	the power of ten tables.

4004	JLC	26-Sep-83
	Moved most of FORCNV to MTHCNV. Modified INTO to use string
	instructions, and to allow double word output.

4005	JLC	5-Oct-83
	Added code to do truncation for FLOUT if %FTAST not set.
	Fixed INTO to suppress leading blanks if %FTSLB set.

4006	JLC	27-Oct-83
	Fixed new FLOUT for outsize scale factors and decimal widths.
	Removed "arithmetic" from integer overflow message.

4007	JLC	29-Feb-84
	Add some AC definitions, remove those foreign to MTHLIB.

4010	JLC	16-Mar-84
	Add some new error macros.

4011	JLC	4-May-84
	Add code for MOD, AMOD, DMOD, and GMOD for 2nd arg=0.

4012	MRB	6-Jun-84
	Change the names of routines SETRAN, SAVRAN, GTODA, DTOGA to
	dotted names (STRAN.,SVRAN.,GTODA.,DTOGA.) to allow the FORTRAN
	compatibility flagger to work.

4013	JLC	12-Jun-84
	Fix TOPS-10 trapping.

4014	MRB	18-Jul-84
	The double precision sine and cosine functions destroy the
	input variables. The result field gets written over the 
	input variable in some cases. Module: MTHCGX

4015	MRB	17-Aug-84
	Change GABS., GMAX1., GMIN1. & GSIGN. to <nnn.+0> to get 
	macro to generate the correct polish stuff.

4016	JLC	17-Oct-84
	Remove DCALL and DJCAL, as they really belong in FORPRM.

4017	JLC	16-Jan-84
	Remove IF10s and IF20s from GETFLG and RESFLG in MTHPRM.
	Fix trapping code at OVNONZ in MTHTRP.

4020	DCE	17-Dec-85
	The GFLOATING exponentiation routine uses an incorrect method of
	getting the exponent of the magnitude of certain intermediate 
	GFLOATING numbers. A MOVM on the first word of the double word 
	value is used followed by stripping out the exponent field. 
	This does not work for all negative GFLOATING numbers where the 
	mantissa part in the first word is all zero (the first 
	non-zero bit of the mantissa is in the second word). Due to the 
	fact that these errors occur in an intermediate calculation, 
	it is impossible to specify the class of input numbers which 
	will result in this problem.

4021	MRB	13-Jan-86
	The math library may not give the correct name of the math function
	in which an error was detected.  This is due to the incorrect
	computation of the high-segment starting address. (This is edit 4221
	to FOROTS) Module: MTHDUM
\

	ENTRY	%VER
	%VER=<VER>
	END