Thank you for supporting the continued development of the Free42 project.
![]() |
Free42 for Pocket PCPackage: Free42PocketPC.zipRequires Pocket PC 2002 (ARM) or later. |
![]() |
Free42 for WindowsPackage: Free42Windows.zipRequires Microsoft Windows 98 or later. |
![]() |
Free42 for PalmOSPackage: Free42PalmOS.zipRequires PalmOS 3.0 or later. This package contains 68K and ARM versions of the PalmOS application, and a HotSync conduit that allows you to transfer files between your PC and your hand-held.
The 68K version of Free42 Binary requires the MathLib
floating-point library; in case you don't already have it, you
can get it from
Rick
Huebner's MathLib page.
|
![]() |
Free42 for Linux (x86)Package: Free42Linux.tgzRuns on SUSE 10 with glibc version 2.4, libstdc++ version 4.1.2, GTK+ version 2.8.11, and Open Motif version 2.2.4. It should work on any Linux (x86) with those or similar libraries. This package contains GTK+ and Motif versions of Free42. The only difference between the two is the look and feel of the menu bar and dialog boxes; other than that, they are identical. |
![]() |
Free42 for MacOS X DashboardPackage: Free42MacDashboard.zipRequires MacOS X 10.4 or later, Intel or PowerPC.
This is Free42 built as a MacOS X Dashboard widget.
It does not have printer emulation and program import/export,
and the user interface could be improved, but it is otherwise
fully functional. Starting with release 1.4.43, user programs
and interruptible matrix operations are working.
|
![]() |
Free42 for Zaurus X/QtRuns on the Sharp Zaurus with X/Qt installed (and possibly also with the native GTK GUI (GPE), although this has not been tested), and on the Nokia 770 Internet Tablet.Maintained by Egan Ford; more information and downloads are available on his web site at http://sense.net/zc/free42/. |
![]() |
Free42 Source CodePackage: free42.tgzRequires Linux, or any reasonably Unix-like environment, with X11, GTK+ or Motif/Lesstif, and the usual development tools and libraries. For the Windows version, you need either Microsoft Visual C++ 6.0 or MinGW; for the Pocket PC version, Microsoft eMbedded Visual C++ 3.0; for the PalmOS version, you need PRC-tools (with Ton van Overbeek's multi-segment debugging patches applied); and for the PalmOS/Windows Conduit, you need Microsoft Visual C++ 6.0. |
![]() |
SkinsSome skins to use instead of the faceplates built into Free42.Separate packages for Pocket PC, Windows and Unix and PalmOS. |
HP-42S/Free42 programsA small collection of HP-42S/Free42 programs. |
|
txt2raw.plA Perl script that converts HP-42S program listings, such as those generated by the PRP and LIST commands, to Free42/Emu42 compatible "raw" program files.Written by Vini Matangrano; look here for documentation and the script itself. |
|
rom2rawA C program that converts HP-41 ROM images to Free42/Emu42 compatible "raw" program files.Download rom2raw.zip; source code and Win32 console executable included. NOTE: the source code for this program is also included with the Free42 Source Code package. |
Free42 does not come with a manual (yet). Since it is an accurate
simulation of the HP-42S, an HP-42S manual should be adequate for most
purposes, since the Free42-specific functionality is fairly simple and
(I hope!) self-explanatory.
You can obtain a copy of the original HP-42S manual (in English) in PDF
format, on CD-ROM or DVD-ROM, at The
Museum of HP Calculators. Look for the CD/DVD offers here.
Alternatively, there is a new HP-42S/Free42 manual, written by José
Lauro Strapasson; you can obtain it from my web site
here, or get the most up-to-date version from the
author's web site here.
Starting with release 1.4, Free42 comes in Decimal and Binary versions. The two look and behave identically; the only difference is the way they represent numbers internally. All the download packages include both the Decimal and the Binary versions.
Free42 Decimal uses Hugh Steers' 7-digit base-10000 BCD20 library, which gives 25 decimal digits of precision, with exponents ranging from -10000 to +9999. Transcendental functions are evaluated to at least 20 digits. Each number consumes 16 bytes of memory.
Free42 Binary uses the PC's FPU, if available; it represents numbers as IEEE-754 compatible double precision binary floating point, which consumes 8 bytes per number, and gives an effective precision of nearly 16 decimal digits, with exponents ranging from -308 to +307 (actually, exponents can be less than -308, but such small numbers are "denormalized" and don't have the full precision of "normalized" numbers).
The binary version has the advantage of being much faster than the decimal version; also, it uses less memory. However, numbers such as 0.1 (one-tenth) cannot be represented exactly in binary, since they are repeating fractions then. This inexactness can cause some HP-42S programs to fail.
If you understand the issues surrounding binary floating point, and you do not rely on legacy software that may depend on the exactness of decimal fractions, you may use Free42 Binary and enjoy its speed advantage. If, on the other hand, you need full HP-42S compatibility, you should use Free42 Decimal.
If you don't fully understand the above, it is best to play safe and use Free42 Decimal.
The ultimate source for HP calculator enthusiasts:
The Museum of HP Calculators.
Other HP-42S emulators: Christoph Gießelink's Emu42 (for Windows and Pocket PC); HrastProgrammer's HP-42X (for the HP-48 and HP-49 series calculators).
You can contact me, Thomas Okken, at
.