If you're interested in what's been going on with Free42 so far,
see the project history.
If you have questions or comments about Free42, you can contact me, Thomas Okken, via email at firstname.lastname@example.org.
You can find answers to some frequently asked questions in the Free42 FAQ.
AndroidGet it at Google Play, or if you prefer the manual approach, download Free42Android.apk for side-loading.
Requires Android 2.2 or later.
iOS (iPhone, iPad, iPod touch)Get it from the iTunes App Store.
Requires iOS 8.0 or later.
NOTE: This is an "iPhone only" app, and as such, if you're using an iPad, the App Store app won't show it to you by default. You must select the "iPhone only" option from the drop-down menu in the top-left corner first. The app runs fine on iPads; Apple just makes it hard to find.
Requires Windows 2000 SP4 or later.
If, when you try to run Free42, Windows says "This application has failed to start because the application configuration was incorrect. Reinstalling the application may fix this problem," then you also need to download and install the Microsoft Visual C++ 2008 Redistributable Package.
MacOSDownload App: Free42Mac.zip
Requires MacOS 10.6 or later.
Download Dashboard Widget: Free42MacDashboard.zip
Built in Ubuntu 12.04, with glibc 3.2, libstdc++ 4.6.3, and GTK+ 3.4.2. It should work on any Linux (x86_64) with those or similar libraries.
SkinsSome skins to use instead of the faceplates built into Free42.
HP-42S/Free42 programsA small collection of HP-42S/Free42 programs.
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.
Free42 Source CodeDownload: free42.tgz
Download for GTK only, no HP logo, for building Linux packages: upstream.
• Building the Android version requires the Android SDK 2.2 and NDK r4b or later.
There is no manual for Free42 per se, but since it is an accurate
simulation of the HP-42S, the original HP-42S manual should be adequate for
most purposes. The functionality that is specific to Free42, e.g. printer
emulation, skin switching, etc., is fairly simple and should be
self-explanatory -- except perhaps for program import/export, which is documented
here, and the accelerometer, GPS, compass,
and time/date functions, which are documented here.
You may be able to download the original HP-42S manual using the links at this HP Support Forum page.
I also recommend the Alternative HP-42S/Free42 Manual, written by José Lauro Strapasson and Russ Jones; you can get it here, in PDF and Word formats.
Loading and saving programs is possible in all Free42 versions except MacOS
Dashboard. The exact process is pretty straightforward in the desktop versions
(Windows, MacOS, Linux), but it is a bit more complicated on mobile devices.
For instructions for all versions, see here.
Starting with release 2.0, you can use Copy and Paste to get programs into and out of Free42. In PRGM mode, Copy puts a text representation of the current program onto the system clipboard, and Paste takes a text representation of a program from the clipboard and loads it as the last program. This works in all Free42 versions, including mobile and MacOS Dashboard.
While Free42 originally used Binary math exclusively, all releases starting
with 1.4 have come in two versions, Binary and Decimal. The two look and
behave identically; the only difference is the way they represent numbers
All the Free42 versions on this site include both the Binary and Decimal versions, except for the iOS and Android versions, which are Decimal only.
Free42 Decimal uses the Intel Decimal Floating-Point Math Library; it uses IEEE 754-2008 quadruple precision decimal floating-point, which consumes 16 bytes per number, and gives 34 decimal digits of precision, with exponents ranging from -6143 to +6144.
Free42 Binary uses the PC's FPU; 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 +308.
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 do not fully understand the above, it is best to play safe and use Free42 Decimal.