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