New:
Bateman's G function,
Bernoulli polynomials (bernpoly),
Chebyshev polynomials of the third and fourth kinds (chebyshev_v, chebyshev_w),
power integrals (cosint, sinint),
internal special_reduce_modpi
Improved: sfc_zetah/hurwitz_formula
Changed: Quasi-periodic code for sfc_ellint_1/2/3 and sfc_hlambda
Unit AMath V1.74 with
degrees versions of trigonometric functions and their inverses
Special Functions V1.18.19
with the new unit sfHyperG for hypergeometric functions:
Gauss (hyperg_2f1), Kummer (hyperg_1f1), Tricomi (hyperg_u).
New Airy/Scorer functions Gi and Hi, and improved functions
(beta3 for a ≤ 0 or b ≤ 0;
polygamma for large order: e.g. (3000,200))
The Compvers V0.26 unit from the
util archive supports Delphi 18 (XE4).
May 05, 2013
Unit AMath V1.69 with
new functions (exp10m1, log2p1, log10p1)
and changed functions (frexp/d/s, ilogb, power support denormal).
Special Functions V1.17.12 units
with new functions: fermi_dirac_p15, separate FresnelC/S, non-normalised incomplete beta (beta3),
statistical distributions (Extreme Value Type I, Maxwell, Rayleigh);
improved functions: sfc_chi2_pdf for very small x, sfc_beta, sfc_polygamma;
and changed functions (longint k in sfc_poisson_pmf,
ibeta_series with parameter normalised).
Version 1.56 of the standard include file in std.zip
with definitions for Delphi 18 (XE4, VER250)
Apr. 03, 2013
AMath units
Special Functions V1.16.13
with new functions (remaining Jacobi elliptic functions and their inverses,
trilogarithm, Hurwitz zeta for s < 0),
improved functions (sfc_binomial, sfc_jacobi_arcsn/cn/dn),
and fixes (sfc_zeta for TP5).
orthogonal polynomials, Legendre functions and related
statistical distributions,
and other special functions.
AMath archive
with unit AMath V1.61
(special cases |y|=1/2 in power, constants succx0Hex, succx0, ln_succx0) and
Special Functions V1.15.07 units with
new function Yv_series (handles some near overflows in bessel_jy),
improved functions (sfc_git, sfc_jn, sfc_yn, sfc_zetah),
and fixes (sfc_expint3 for arguments 0.4e-6 .. 6e-6; sfc_trigamma, sfc_tetragamma,
sfc_pentagamma for very large arguments).
New DAMath archive for 64-bit compatible
double precision accurate mathematical methods without
extended precision, 387-FPU, or assembler:
The DAMath unit
implements the double precision accurate mathematical functions,
polynomial, vector, statistic operations and more, the
DAMTools unit
provides reliable tools
for finding zeros and local minima, numerical integration etc.
Special Functions units
with D17 (XE3) adjustments and a more compact sfc_eiex function in
the updated AMath archive
Minor changes for MPArith V1.25.03
after switching to max. 2^24 mp_digits.
The basic introduction and the multi precision
calculator t_rcalc are updated.
Jan. 07, 2013
MPArith V1.24.23 without
the old 32000 digits restriction: For 32/64-bit compilers
mp_int numbers with up to 2^24 mp_digits (max. about 520 Mio bits)
are implemented; if uint64 is available, the configuration
parameter MPC_PurePascal can be used to avoid ASM code.
There is the new fast generalized binomial coefficient function (s_mp_gbinom);
the factorial, binomial, and Catalan functions use prime sieve generators;
and more.
The PurePascalCRC/Hash
routines are now included in the main archive, together with some D17(XE3) and 64-bit adjustments.
The Delphi CRT unit now supports ANSI console output with D17(XE3)
on 32- and 64-bit Windows systems.
Updated util and
PRNG archives with D17/64-bit compatibility changes
Version 1.55 of the standard include file in std.zip
Small D17/64-bit adjustments for some test programs of Crypto archives, mainly
related to D17 unit scope names and 64-bit console mode selection
Dec. 02, 2012
Small 64-bit adjustments for AES,
version 1.53 of the standard include file in std.zip,
and a few new links
Nov. 14, 2012
Updated preliminary Keccak (SHA-3) implementation
with 64-bit code, HMAC unit, and Monte Carlo tests
Oct. 29, 2012
MPArith V1.23.24 with
improved power and root functions,
Cornacchia algorithm for prime products,
valuation related functions,
two new units forked from mp_numth,
and more.
A first Pascal/Delphi Keccak implementation using the SHA-3 NIST API
MPArith V1.22.28 with
Borwein/Schönhage factorial algorithm,
Cornacchia algorithm for prime powers,
full longint range for prime number generator,
fundamental units of real quadratic fields,
Pollard-Brent factorization, and more.
Version 1.52 of standard include file in std.zip
with basic support for D14, D15(XE), D16(XE2), D17(XE3)
MPArith V1.21.35
with 32-bit prime factorization and related functions (PrimeFactor32,
EulerPhi32, primroot32, ...), primepi32 with Lehmer's algorithm,
Shanks' SQUFOF, faster mpf_numbpart, new mp_catalan, mp_perm, mp_poch, and more.
Unit AMath V1.59:
Power(x,y) uses intpower only for |y| < 8192; constant sqrt_epsh = sqrt(eps_x/2);
and fixed fix of exp/3/5/7/10 for very large x.
Special Functions units with
new functions
(Fermi-Dirac integrals,
generalized Dawson integral,
generalized error function,
generalized exponential integral,
repeated integrals of erfc,
Tricomi's incomplete gamma,
etaint and internal/debug functions sfc_taylor, sfc_diagctr and sfc_write_debug_str);
improved functions
(sfc_rgamma,
sfc_en with uniform asymptotic expansion ep_largep for n >= 10000);
and fixes
(corrected bound in sfc_en,
sfc_igprefix for a < 1 and underflow of exp(-x)).
June 17, 2012
Updated PRNG archive
with fixed pseudo random number generator _read functions.
May 29, 2012
Unit AMath V1.56 with new functions
(Langevin, PolEvalCHE/X, PolEvalEE/X, rint) and two small fixes.
Special Functions units with
new functions (non-normalised incomplete igamma/igammal,
legendre_qlm,
lngammas,
poch1,
toroidal_plm,
toroidal_qlm),
improved functions (legendre_p, legendre_plm, legendre_q for |x| > 1;
gamma;
gamma_delta_ratio for negative arguments;
LegendreChi; pochhammer)
and fixes (special case in sfc_incgamma_ex;
avoid over/underflow for large x in debye_dei).
Mar. 27, 2012
CRC/Hash/HMAC standard archive and
PPCH Pure-Pascal version
with fully integrated Hash algorithms SHA-512/224 and SHA-512/256 from FIPS 180-4
and improved 64-bit compatibility
Unit TSC V0.38 with
improved 64-bit compatibility in the util archive
Mar. 09, 2012
The new site is functional; the old Netsurf pages will be
available until end of May 2012.
Feb. 21, 2012
Updated AMath archive:
There is the new Special Functions unit
sfzeta.pas with zeta functions, polylogarithms and related.
New functions: DirichletBeta, DirichletLambda, LegendreChi, LerchPhi,
polylogr (polylogarithm of real order).
MPArith V1.20.24
with the first release of 64-bit compatible code,
fast subquadratic conversion to ansistring, fast AGM based logarithm.
The introduction and the
t_rcalc calculator
are adjusted.
Updated util archive with 64-bit compatibility changes
Special Functions units:
Improved lngamma, new function lngamma1p; improved incomplete normalised Beta function,
Hurwitz Zeta range extended to 0 <= s < 1;
Unit AMTools with
Finite Hilbert Transform and Double Exponential Transformation for automatic quadrature;
Unit AMath V1.49
with fixes for extreme arguments in arccsch, arcsech, arccsc.
Aug. 28, 2011
Updated AMath archive
with some minor changes in the Special Functions units:
Extended ranges: reciprocal-modulus transformation in EllipticE,
dfac for odd negative n,
Some improvements, e.g. polygamma with hard-coded polynomials for x < 0 and 1 ≤ n ≤ 10,
Fix: t_cdf for t>0 and large nu,
Reciprocal gamma function renamed to rgamma (formerly invgamma).
June 26, 2011
MPArith V1.18.07 with
additional mp_float functions
(mpf_arcgd,
mpf_archav,
mpf_coshm1,
mpf_gd,
mpf_hav,
mpf_lambertw,
mpf_sinc)
and improved mpf_tanh
Unit AMath V1.46 with new
(DegToRad,
Hex2Dbl,
Hex2Ext,
Hex2Sgl,
hypot3,
RadToDeg)
and improved (covers, coshm1, vers) functions
New Special functions:
comp_ellint_1/2/3,
ein,
ellint_1/2/3,
erfce,
heuman_lambda,
jacobi_am,
jacobi_arcsn/cn/dn,
jacobi_sn/cn/dn,
jacobi_zeta
May 27, 2011
New special functions:
Struve functions (H0, H1, L0, and L1), Jacobi theta functions,
elliptic modulus, and elliptic nome
Unit AMath V1.39
with improved argument reduction functions rem_pio2 and rem_2pi
The Compvers V0.23 unit from the
util archive supports FPC 2.4.4
Apr. 26, 2011
AMath V1.36: Accurate geometric functions (angle2, area_triangle, in_triangle, orient2)
Special functions units:
Zero order Kelvin functions (ber, bei, ker, kei) and additional statistical
distributions (Cauchy, exponential, Laplace, logistic, lognormal, normal,
Pareto, uniform, Weibull)
Mar. 28, 2011
Unit AMTools with new procedures for
adaptive numerical integration
of one-dimensional functions over finite or infinite intervals
Three new functions (isign, RandG, RandG01) in the AMath V1.33 unit
Feb. 24, 2011
New secure hash algorithms SHA-512/224 and SHA-512/256
on the CRC/Hash page.
Unit AMath V1.31 with
with additional trigonometric (arcgd, archav, covers, gd, hav, vers)
and ulp functions; new special functions
(Goodwin-Staton integral, imaginary error function, RiemannR, expint3).
Jan. 28, 2011
AMath V1.24 with many new single
functions, RoundingMode-safe exp, exp3, exp10, and arccos.
Updated or removed some links
Jan. 04, 2011
Updated AMath archive:
Polygamma, polylogarithms, Debye functions, binomial coefficients, and more
in the Special functions units
MPArith V1.17.06 with
RSASSA-PKCS1-V1_5 signature generation/verification and some minor changes
AMath unit:
Type definitions for AMTools functions and compatible int, frac, arctan, sqrt;
statistical moments, skewness, and kurtosis of vectors.
Special functions:
Hurwitz zeta function, Pochhammer symbol, gamma ratios and double factorial;
sfPoly
unit implementing orthogonal polynomials and related.
New AMTools unit
for root finding, function minimization, and quadratic equations solving.
AMath unit:
Significantly improved accuracy for the power function; more accurate ln1pmx;
new exp2m1; bugfix versions of frac, int, trunc for Delphi 2-5 and FPC 1
Special functions:
Old unit sfCommon split into several new units; improved argument checking and NAN/INF handling;
new Gamma related functions
(normalised incomplete gamma functions and inverse, Temme's gammastar, trigamma, Dirichlet eta)
and statistical distribution functions
(pdf, cdf, and inverse cdf for gamma and chi-square distribution)
Aug. 20, 2010
All block ciphers now support longint message lengths in encrypt/decrypt routines
and CTR mode seek functions for random access reads
Updated Mem_Util V0.98 unit with CompMemXL and RandMemXL
July 26, 2010
MPArith V1.16.08 implements
functions for decomposition of mp_ints into four squares,
a bit table for the constant exp(1),
and includes the updated introduction.
The AMath archive contains
special cases for elementary transcendental functions,
many new statistic functions, and additional special functions
(pdf, cdf, and inverse cdf for beta distribution, F distribution, and Student's t distribution).
The separate introduction is updated.
June 30, 2010
AES counter mode supports
user-requested seek function for random access reads
July 18, 2009
Delphi 2009 adjustments for the algorithms on the Crypto page
July 12, 2009 Some Delphi 2009 (D12) related changes:
In order to compile without errors the
HRTimer and Base2N units in the util
archive are fixed, and a new symbol D12Plus is defined in std.inc.
With these new files most packages (except DCRT, zlib) work with D12, there are
some string/char related warnings which will be addressed during normal updates.
There is an updated Blowfish archive: Besides the D12 changes,
an issue with a lost {$apptype console} directive is fixed.
Apr. 04, 2009
Updated Compvers V0.20 supports FPC 2.2.4 in the util archive
Version 1.11.20 of MPArith and separate introduction:
With Burnikel-Ziegler division,
Toom-3 multiplication / squaring
and more
Mar. 02, 2009
Updated standard include file and BTypes unit in std.zip MPArith V1.10.27
with modular cube roots, CRT-RSA factor recovery,
number of partitions with Hardy - Ramanujan - Rademacher formula
Jan. 07, 2009 MPArith V1.9.18
with Karatsuba square root, fast 32 bit prime generator, RSA factor recovery
Dec. 12, 2008
Now there is a separate page for archived news
More packages use the updated BTypes unit:
Nov. 22, 2008
After some feedback related to D12 (aka Delphi 2009) and 64 bit FPC,
the BTypes unit in the
util archive has been rewritten for better portability.
The following packages are the first that use the updated unit, other
will be released in the near future:
Nov. 07, 2008 PRNG archive: added dword functions for all generators
Version 1.8.21 of MPArith and separate introduction
with significant improvements for power detection and root extraction
Oct. 03, 2008
Version 1.7.23 of MPArith and separate introduction
Updated standard include file in std.zip
Sep. 07, 2008
Changes on the CRC/Hash page:
- FPC V2.2.2 fix for FCRC32
- Interactive TCRC16 GUI demo program
32 bit Camellia implementation on the Crypto page
Small fixes for the zlib library
Aug. 04, 2008
Changes on the Crypto page:
- All-in-one AES EAX functions
- Range check safe AES IncProcs for FPC -dDebug
- New defaults values for Salsa20 stream cipher
July 17, 2008
Changes on the CRC/Hash page:
- Renamed and expanded KDF unit
- Updated information about Hash/HMAC routines
- Improved and fixed crcmodel unit
- New crcm_cat unit with 30+ CRC algorithms
FPC V2.2.2 fixes for zlib library and example programs
Updated FCA demo programs
Mar. 30, 2008
Updated util archive:
TSC V0.35 and HRTimer V0.23
implement _ReadCounter and CalcCPUFrequency via sysutils.time on non-Windows 32 bit systems (e.g. BSD or Linux);
Base2N V0.38 with ansistring functions for all 32 bit compilers.
Feb. 03, 2008
Version 1.5.16 of the MPArith archive with
separate introduction
Dec. 24, 2007
Floating point arithmetic in V1.3.19 of the MPArith package
Updated util archive (HRTimer V0.22, Mem_Util V0.94)
Oct. 12, 2007 AES with XTS mode (IEEE P1619 Draft
Standard) on Crypto page
Oct. 05, 2007
Changes on the CRC/Hash page:
- Fixed SHA512 unit for messages with more than 512MB
- PPCH: Pure Pascal CRC/Hash replacement units
- Updated CRC/Hash demo programs
- Version 1.17 of the FAR manager plugin
Updated standard include file in std.zip
(FPC {$asmmode intel} is defined for CPUI386 only.)
Sep. 22, 2007
Version 1.2.30 of the mpint archive
FPC V2.2.0 related update of the util
archive (CompVers V0.17, BitArray V0.17)
Aug. 10, 2007
Updated util archive (CompVers V0.16)
Version 1.1.27 of the mpint
archive
July 08, 2007
Changes on the CRC/Hash page:
- Fast FCRC32 implementation (Slicing-by-4 from zlib 1.2.3)
- BASM16 for Adler32 (speed-up factor 15)
- Include file for BASM16 table alignment
June 24, 2007 AES: AES-CMAC-PRF-128 from RFC 4615; new EAX context name
EAX and OMAC modes for Twofish
and Blowfish
Updated information about Hash/HMAC routines
May 17, 2007
Multi precision rational arithmetic in the updated mpint
archive and its associated introduction page
Apr. 25, 2007 prng archive with xor4096 pseudo random number generator
The stream ciphers ABC and Phelix are no longer updated
Mar. 17, 2007
Updated versions of the mpint
archive and the related separate introduction
Mar. 07, 2007
MD4, eDonkey/eMule on CRC/Hash page;
updated demo programs with new GUI layout
Version 1.16 of the FAR manager plugin
with MD4, eDonkey/eMule
prng archive with kiss123 pseudo random number generator
Feb. 09, 2007
All 32 bit Delphi versions (including Turbo Delphi) have buggy eof functions
(end of file) for files larger than 4 GB. Therefore the file handling routines from
this site should be considered valid only for file sizes less than 4 GB.
Jan. 26, 2007
Fixed Whirlpool unit (V0.33) and Rocksoft™ Model CRC Algorithm
on CRC/Hash page
Updated CRC/Hash demo programs
Version 1.14 of the FAR manager plugin
Updated util archive (Base2n V0.37, Dates V0.33)
Jan. 21, 2007
The Whirlpool implementations (up to V0.32) had a bug for messages with more than 512 MB.
Nov. 20, 2006
Phelix stream cipher on Crypto page
Updated standard include file in std.zip
Nov. 08, 2006
Updated mpint with expression parsing/evaluation, Kronecker symbol etc
Sort, BTypes, and Delphi CRT units on the Misc. page
Contributed AES256 file crypt/authenticate unit for FCA
on crypto page
Sep. 09, 2006
Updated mpint version with
new inversionless ECM, square roots (mod p), and other new functions
May 24, 2006
Version 1.13 of the FAR manager plugin with
special MD5 processing for PE files and optional expanded file names in result files
May 07, 2006 Salsa20 stream cipher on Crypto page
Salsa20 based cryptographic random number generator in prng archive
ABC V2 is no longer supported
Apr. 14, 2006
OpenPGP compatible CRC24 on CRC/Hash page;
updated demo programs with new GUI layout
Version 1.12 of the FAR manager plugin with CRC24 support and reduced file/data size
Updated util archive with help files and fio unit
Mar. 12, 2006
Updated mpint version with Windows and Borland Pascal help files
ABC V2 should be considered insecure
Dec. 23, 2005
Whirlpool hash function on the CRC/Hash page
and updated demo programs
Version 1.10 of the FAR manager plugin with Whirlpool support
Updated HRTimer V.21 and MemUtil 0.92 in the util archive
Dec. 03, 2005
Updated CRC/Hash demo programs: GCH V0.66 with
Hex upcase checkbox and CCH V0.71 fixed for some $ifdefs.
Nov. 30, 2005
Updated mpint version with
basic RSA support and other new functions
Some small units are integrated into the new util archive.
Oct. 31, 2005
Updated MemUtil version with
new unit Base2N
D9/WDOSX compatible Dates unit
Sep. 28, 2005
Updated mpint version with
many new functions and features, and a separate short
introduction
Sep. 24, 2005
CRC/Hash FAR plugin version 1.9 with multi file mode on the CRC/Hash page
Sep. 05, 2005
Dmitry Yerokhin contributed Russian translations of the .hlp and .lng files for
FAR plugin V1.8.
Aug. 19, 2005
Updated mpint version with
William's p+1 method, Lucas V functions, bug fixes
Aug. 09, 2005
ABC V2 stream cipher on renamed Crypto page
ABC and AES based cryptographic random number generators in prng archive
Aug. 03, 2005
Improvements and more generators (incl. cryptographic ISAAC generator)
in prng archive
FPC V2.0 fixes for zlib library and example programs
Work on ABC stream cipher in progress
June 04, 2005 prng archive with pseudo random number generators and the small ministat statistics unit
CRC/Hash demo program CCH V0.70 now with command line options
May 22, 2005
The new FPC version 2.0 is out, at the moment without "out of the box" DOS/Go32v2 support - contrary to
statements on www.freepascal.org and in the readme.txt!
It compiles my sources without errors;
StrictLong related warnings can be avoided with temporary new versions of
std.inc and zconf.inc.
May 16, 2005
Updated mpint: Non-recursive Jacobi/Legendre symbol
New zlibex unit with custom inflate and deflate zlib routines
used in the updated FCA demo program
Small compatibility changes to other sources for D9 (aka Delphi 2005) and FPC 1.9.8
Mar. 28, 2005
Updated mpint: Montgomery reduction, Jacobi/Legendre symbol
Pascal port of zlib library on Misc. page
Jan. 31, 2005
FAR plugin version 1.8 on the CRC/Hash page
Jan. 16, 2005
New mpint multi precision integer package on Misc. page
Additional mpint related links
Jan. 06, 2005 CRC/Hash page: Bugfix for SHA512 and recompiled binaries
keyderiv with longint iteration count and new HMACSHA256/512 functions
Faster CRC16/32 routines for 16 bit BASM
Dec. 28, 2004
Faster AES routines and new Blowfish
section on renamed Crypto page
Updated MemUtil unit
Oct. 23, 2004
Faster key generation and updated benchmark on AES page
Jul. 18, 2004
EAX mode, AES DLL, and new demo program on AES page
PBKDF2 key derivation function, DLL now with HMACs and keyderiv on
the CRC/Hash page
Jun. 10, 2004
OMAC mode on AES page
Minor changes (removed dead links, updated AES timings, ...)
Apr. 14, 2004
FAR plugin version 1.7 on the CRC/Hash page
Delphi 7 support verified, minor bug fixes
Mar. 07, 2004
Int64 support for SHA384/512 hash functions
Significant speedup of AES key generation
Jan. 09, 2004
New considerably faster AES routines
Jan. 05, 2004
New SHA224 Hash function and FAR plugin version 1.6
Dec. 21, 2003
The long announced AES page is released
Dec. 17, 2003
Recompilation of the FAR Manager plugin, HRTimer V0.15, and new a Dates unit
Dec. 01, 2003
New page layout
New Hash functions SHA384/512, speedup 25% Delphi32 .. 42% BP7, GCH: INI file and Richedit
Nov. 2003
Hash/CRC V1.5: Includes the Oct speedups and some Virtual Pascal improvements
Oct. 2003
This version of the basic CRC/Hash routines comes with english comments in the
source, some optimizations, and is about 25% faster than the Sep 2003 version
(measured with CCH for a 40 MB file)
Sep. 2003
Hash/CRC V1.4: New Adler32 and CRC64 routines are integrated into the FAR plugin
Sep. 2003
Basic routines with new Adler32, CRC64, bCRC64 code; "XL" versions for
WIN32 compilers; updated GCH/CCH demo programs
Jul. 2003
Tableless bCRC32 routine, "File" and "Full" versions
May 2003
GCH/CCH demo programs as applications for the base routines
Mar. 2003
Hash/CRC V1.2: better SHA256 display; interruptible; plugin compiled with Virtual Pascal
Feb. 2003
Hash/CRC V1.1: FAR plugin published on the new home page