HP-49 series
From Wikipedia, the free encyclopedia
The HP 49G series are Hewlett-Packard (HP) manufactured graphing calculators. They are the successors of the HP-48 series, one of the best-selling calculator ranges among engineers, scientists, and students.
There are now four calculators in the 49 series of HP graphing calculators. These calculators all have both algebraic and RPN entry modes, and can perform numeric and symbolic calculations using the built-in CAS, which is an improved ALG48 and Erable combination from the HP-48 series.
The 49 series is often compared to the Texas Instruments' TI-89 series. Speed of calculation varies between the systems — generally the TI-89 series CAS (based on Texas Instruments' Derive engine) outperforms the HP-49G series CAS in areas such as simultaneous equation solving, integration and symbolic matrix manipulation; however, the 49 series is generally faster in other areas, such as 3D plot generation, series expansion and numeric matrix manipulation.
The 49 CAS has more tools to solve a wider array of problems than the TI-89 CAS, but this flexibility makes it more difficult to use and often slower on classroom book problems.
Contents |
[edit] HP 49G
Released in August 1999, this calculator was the first HP unit to break from the more traditional subdued coloration. In addition to having a metallic blue color, the keyboard material was rubber and did not have the traditional HP calculator hinged keyboard feel. In addition, it lacked a large ENTER key which was seen by many as the defining sign of an HP calculator. These changes were disliked by many traditional HP calculator users.
The 49G incorporated many of the most powerful interface and mathematics tools available on the HP-48 series into the firmware of the new 49G, including the ability to easily decompile and compile both SysRPL and Saturn assembly code on the unit.
The 49G was the first HP calculator to use flash memory and have an upgradable ROM. In addition, it had a hard sliding case as opposed to the soft pouches supplied with the HP-48 series. The last officially supported ROM update for this calculator was 1.18, but several unofficial ROMs were released by the developers. The final ROM version was 1.19-6.
In 2003, the CAS source code of the 49G ROM was released under the LGPL. In addition, this release included an interactive geometry program and some commands to allow compatibility with certain programs written for the newer 49g+ calculator. Due to licensing restrictions, the recompiled ROM cannot be redistributed.
[edit] Issues, bugs and criticism
The major criticisms of the 49G calculator dealt with the new rubber keyboard design and strange blue coloration. Users reported that some of the rubber keys could easily disconnect from the plastic structure. In addition, many felt that the 49G was based on outdated hardware that was surpassed by the TI-89's faster processor and higher resolution screen.
In using a 4MHz Saturn processor the designers were able to easily reuse old code from the HP-48 series, but there was not the great advance in technology that many users were expecting.
Documentation of new features was poor, making learning difficult for new users.
[edit] Basic characteristics
- Screen resolution: 131×64 pixels
- CPU: 4 MHz Saturn
- Memory: 2 MiB flash memory and 512 KiB RAM
- Communication: RS232 (using the Kermit or XModem protocols, 10 pin proprietary connector)
[edit] HP 49g+
In August 2003, HP released the 49g+. This unit had metallic gold coloration and was backward compatible with the HP 49G. Instead of the rubber keyboard found on the HP 49G, this calculator's keyboard had plastic hinges intended to return the feel of older HP calculators, and also included a pouch to protect the unit, similar to those included with older HP models. It was designed and manufactured by Kinpo Electronics for HP.
This calculator featured an entirely new processor architecture, USB and IrDA (infrared) communication, memory expansion via an SD card, and a slightly larger screen, as well as other improvements over the previous model.
It is worth noting that the calculator system did not run directly on the new ARM processor, but rather on an emulation layer for the older Saturn processors found in older HP calculators. This allowed the 49g+ to maintain binary-level compatibility with most of the programs written for the HP 49G calculator, as well as source code-level compatibility with many written for the HP 48 series.
Despite the emulation, the 49g+ was still much faster than any older model of HP calculator. The speed increase over the HP 49G is around 3-7 times depending on the task. It is even possible to run programs written for the ARM processor thus bypassing the emulation layer completely. A port of the GNU C compiler is also available (see HPGCC below).
[edit] Issues, bugs and criticism
The 49g+ was criticized more than any previous HP calculator.
The new keyboard design caused a hollow clunking noise when pressed, and many users began reporting frequent physical key failures. A black plastic decorative piece also began cracking due to the brittleness of the material used. In addition, the gold coloration began wearing off over time causing an unsightly look.
These physical defects caused many users to seek new units under warranty from HP. Some users have reported receiving three or more replacement units and experiencing the same problems.
In addition to physical problems, many software issues plagued the initial launch. Despite having a larger screen, the software did not take advantage of it with applications such as plotting. Many keystrokes were often missed or even doubled, resulting in further problems with data entry. The screen would flicker with usage, and even sometimes experience an unsightly display issue dubbed the “earthquake effect”.
For this reason, many internet reviews have been unfavorable. For example, on Amazon the average rating for HP 49g+ is 3 on a scale of 1 to 5, versus 4.5 for its predecessor HP 48GX, 4.5 for its competitor TI-89, and 5.0 for its successor, the HP 50g. Used HP 48GX calculators are 2–3 times more expensive than a new 49g+, and whilst the HP 49G/g+ is decreasing in price, the used 48GX's are actually increasing in value.
While HP has made no official response to these criticisms, there have been changes attempting to rectify the problems. Software updates fixed most problems experienced with previous ROM revisions, and the new keyboard introduced with the 49g+ has undergone several revisions that seem to be improving its reliability with each change. Later units failed less frequently than initial units, but with no official statement from HP on when these improvements occurred it has been difficult to determine which units feature the latest keyboard design.
The latest 49g+ model, with serial numbers CNA6XXXXXXX and above[citation needed], has the latest keyboard design found on the new 39gs, 40gs and 50g calculators. Many have reported a dramatic improvement between the feel of the keyboards found on these newer 49g+ models and the older 39/49g+ models. While no users have had the new keyboard long enough to determine how it will perform over time, they appear to be much more durable than previous generations.
Over time, additional documentation has been written to aid in the learning of new features in the 49g+ calculator. An Advanced Users Guide, as well as a longer User's Manual are available for download on HP's calculator page. This brings the documentation for the 49g+ to well over 2000 pages of information.
[edit] Basic characteristics
- Screen resolution: 131×80 pixels
- CPU: 203 MHz ARM (clocked at 75 MHz by default, but can be overclocked by certain user programs)
- Memory: 2 MiB flash memory (~768 KiB user accessible), 512 KiB RAM (~380 KiB user accessible)
- Expansion: SD memory card (up to 2 GB)
- Communication: USB port (using the Kermit or XModem protocols), IrDA (infrared)
[edit] HP 48gII
The HP 48gII was not a replacement for the HP 48G series as its name suggested. Rather it was a 49g+ with reduced memory, no expansion via an SD memory card, lower clock speed, and a smaller screen. This calculator seems to target users that desire mathematic capability, but have no desire to install many programs.
[edit] Issues, bugs and criticism
The HP 48gII suffered from all the problems the 49g+. As early units did not allow ROM updates, a general recall had to be issued when a problem with battery life was discovered in early 2004.
Additionally, some users have complained about the non-standard RS-232 communications used by the unit. Early units came with a special RS-232 serial cable with a built in converter - unfortunately, even with this cable, the units still do not function properly with most RS-232 equipment. For this reason, the main advantage the 48gII had over the 49g+ (the ability to communicate with instrumentation using the RS-232 communication protocol) is essentially moot. The currently-produced 48gII, however, has the same USB port and serial port as the 50g.
The 48gII will run most 49g+ compatible programs, provided there is enough memory available.
[edit] Basic characteristics
- Screen resolution: 131×64 pixels
- CPU: 203 MHz ARM (clocked at 48 MHz by default, but can be overclocked by certain user programs)
- Memory: 128 KiB RAM (~80 KiB user accessible)
- Communication: RS-232 port (using the Kermit or XModem protocols, non-standard -- must use included cable), and IrDA (infrared); or USB port, IrDA, and asynchronous serial.
[edit] HP 50g
The HP 50g is the latest calculator in the "49" series. The most apparent change is a revised color scheme, returning the unit to a more traditional HP calculator appearance. Using dark black plastic for the entire body, white, orange and yellow are used for function shift keys. The back shell is textured more deeply than the 49g+ to provide a more secure grip.
The form and size of the calculator shell is identical to the current 49g+ series, but four AAA batteries are used as opposed to three in previous models. In addition to all the features of the 49g+, the 50g also includes the full equation library found in the 48G series (also available for the 49g+ with ROM 2.06 and above) and has an asynchronous serial port in addition to IrDA and USB ports of the 49g+. Like the 49g+, the range of the infrared port has been limited to about 10 cm (4 inches). There are two explanations for this: the common one is that the range was limited due to educators' concerns that students would use the communication technology to cheat on exams; another less known (and more plausible) explanation is that the range of the infrared port is limited due to the low sensitivity of the receiver as more sensitive receivers use more power.[citation needed] This second explanation is somewhat supported by the usefulness of the older models as remote controls--they have significant range (often many tens of feet) in this application, but only a few centimeters between two calculators. The newer models (HP 49 and up) unfortunately are not supported by the HP 48 program that was used for this, as its actual transmit code was written in Saturn assembler and highly timing dependent, to the extent that there were different versions for the HP 48SX and GX.
The new asynchronous serial port is not a true RS-232 port as it uses different voltage levels and a non-standard connector. An external converter/adapter is required to interface with RS-232 equipment. Serial cables now available from Samson Cables and hpcalc.org contain all the electronics required to convert the signals to true RS-232.
The keyboard, the most often criticized feature of the 49g+ calculators, has been redesigned to eliminate previous problems.
A world-wide announcement regarding the availability of this calculator was made by HP in August 2006, and official details are available on the HP calculator webpage.
[edit] Issues, bugs and criticism
Despite the relatively recent market release of the HP 50g (fall 2006), several users have complained that it does not feature any significant technological advancements over the 49g+.[citation needed] The general feeling expressed is that this unit looks to be what the 49g+ should have been upon release.[citation needed]
The Conn4x software used to connect the HP 50g to a PC to exchange files and complete other tasks is compatible with Windows Vista, but unless the user knows that they must manually run the Conn4x setup program with Administrator rights, the Setup program silently exits without installing the Conn4x software.
[edit] Basic characteristics
- Screen resolution: 131×80 pixels
- CPU: 203 MHz ARM (clocked at 75 MHz by default, but can be adjusted by certain user programs)
- Memory: 2 MiB flash memory (~768 KiB user accessible), 512 KiB RAM (~380 KiB user accessible)
- Expansion: SD memory card (up to 2 GB)
- Communication: USB port (using the Kermit or XModem protocols), IrDA (infrared), and asynchronous serial.
[edit] Programming
The HP 49 series of calculators support both algebraic and a stack-based programming language named RPL (ROM Procedural Language or Reverse Polish Lisp), a combination of Reverse Polish Notation (RPN) and Lisp. RPL adds the concepts of lists and functions to stack-based programming, allowing the programmer to pass unevaluated code as arguments to functions, or return unevaluated code from a function by leaving it on the stack.
The highest level language is User RPL, consisting of sequences of built-in postfix operations, optionally including loops and conditionals. Every User RPL command checks the stack for its particular arguments and returns an error if they are incorrect or not present. Below User RPL is System RPL (SysRPL). Most System RPL commands lack argument checking and are defined only for specific argument types (e.g. short integer vs. long integer), making System RPL programs run dramatically faster than equivalent User RPL ones. In addition, System RPL includes many advanced functions that are not available in User RPL. System RPL programs can be created without the use of PC software (although it is available), thanks to the calculator's excellent builtin compiler, MASD. MASD also can compile Saturn ASM and with the latest ROM revision for the 49g+/50g, ARM ASM on the calculator itself. Many tools exist to assist programmers and make the calculator a powerful programming environment.
Saturn ASM, and, on the 49g+/50g, ARM ASM and C, are also available using desktop based compilers. See also the programs available for the HP-48 series.
[edit] HPGCC for the 49g+/50g
HPGCC (alternate website HPGCC at hpcalc) is an implementation of the GCC compiler, released under a GPL licence. It is now mainly targeted at the ARM based 49g+/50g calculator. Previous versions of HPGCC supported the other ARM based calculator models (the 48gII, and the 39g+/39gs/40gs), but this was removed due to lack of interest and compatibility issues.
The latest version of HPGCC offers many enhancements from earlier versions. Most notably, the compiled code is now in ARM Thumb mode by default, resulting in great reduction in code size with little performance hit. Besides implementing most of ANSI C, there are device-specific libraries that allow access to things like the calculator's RPN stack, memory and piezoelectric buzzer. Since they are also released under a modified GPL license, it allows only the development of free software (with an exception for "non-profit" software), contrary to GCC on many other platforms.
Linux and Windows versions are available for download. The Windows version also includes a version of Programmer's Notepad for a basic IDE.
[edit] Emulators for the 49 series
There are several emulators available for the HP 49G calculator. However, there are currently no emulators for the ARM based units that actually emulate the ARM processor. A version of Emu48 is available in the Debug4x IDE that allows emulation of most of the features of the 49g+ but will not execute any ARM based code.
Another emulator, x49gp, is currently under development. It will allow true emulation of the 49g+ ARM processor and already successfully runs HPGCC compiled programs.
[edit] ROM Updates
The 49 series allows the user to update the ROM to gain enhanced features or bug fixes. To retrieve the ROM version, one must execute the command VERSION. This will return two strings to the stack which should look similar to this:
"Version HP49-C Revision #2.09" "Copyright HP 2006"
A current ROM and installation instructions can be found at HP's 49g+ homepage (see external links).
It is important to note that there are several unofficial ROMs available for download. These are not officially supported, but it is recommended by users to use the latest ROM possible. Unofficial ROMs are best found on hpcalc.org where they are released by the ROM maintainers.
[edit] External links
- HP Calculator Timeline
- Introduction to HP CAS
- HP 49G FAQ section at www.hpcalc.org
- HP 49g pictures on MyCalcDB (database about 70's and 80's pocket calculators)
- HP 49G manuals in .PDF format
- HP 49 ROM Updating from hpcalc.org
- HP 49-50 Connectivity from Educalc.net
- HP 49g+ news section at www.hpcalc.org
- HP 49g+ pictures
- HP 49g+ manuals in .PDF format
- HP-GCC C compiler
- HP-GCC 2.0 C Tutorial
- OpenFire - grayscale system for 49g+ & 50g
- An alternative equation library for the HP 49G/49g+/50g with the ability to create new or modify existing collection of formulas.
- HP 49g+/50g ROM upgrade
- HP's official HP 50g homepage
- HP 50g user group
- 50g wiki