Jump to content

Hp 48gII

From Alfawiki
HP 49/50 series
Company typeProduct line
IndustryElectronics, Computing
PredecessorHP 48 series
FoundedAugust 1999
FounderHewlett-Packard
ProductsGraphing calculators (HP 49G, HP 49g+, HP 48gII, HP 50g)
OwnerHewlett-Packard

The HP 49/50 series represents a line of graphing calculators developed by Hewlett-Packard (HP) as successors to the HP 48 series. This collection comprises five distinct models that support both algebraic and RPN input methods. They are capable of performing numeric and symbolic computations through an integrated CAS, which is an advanced fusion of ALG48 and Erable technologies originating from the HP 48 generation.

Highly regarded by professionals such as engineers, scientists, and surveyors, these calculators provide sophisticated tools for fields including mathematics, linear algebra, physics, statistical analysis, numerical analysis, and computer science. Although production has ceased, continued demand keeps their resale prices elevated.

HP 49G

Introduced in August 1999, the HP 49G (F1633A, F1896A) incorporated robust interfaces and mathematical functionalities derived from the HP 48 series firmware. It allowed users to easily decompile and compile both SysRPL and Saturn assembly programs directly on the device.

Significantly, the 49G was HP’s inaugural calculator to feature flash memory along with firmware that could be updated. It came with a rigid sliding cover, replacing the previously used soft cases. Its internal hardware shares many similarities with the HP 39G and HP 40G models.

The last official firmware release was version 1.18, while unofficial updates extended up to version 1.19-6. Additionally, some firmware versions designed for successors utilizing ARM-based CPUs could be run on the original 49G through PC-based emulation software.

In 2003, HP published the CAS source code under the LGPL, which included an interactive geometry application and commands ensuring compatibility with newer devices. However, license restrictions prohibit redistribution of recompiled firmware versions.

hp 49g+

Launched in August 2003, the hp 49g+ (F2228A) featured a distinctive metallic gold exterior and maintained backward compatibility with the HP 49G. Manufactured by Kinpo Electronics on behalf of HP, it introduced a new processor design alongside USB Mini-B and IrDA infrared communication capabilities, SD/MMC card support for memory expansion, and a slightly enlarged display.

This model operated using an emulation layer to run older Saturn processor instructions instead of executing them natively on its ARM920T core. Its firmware closely resembled that of the HP 49G but incorporated patches substituting certain code segments with virtual "Saturn+" instructions that execute natively on the ARM processor, resulting in improved speed. This method preserved binary compatibility with most HP 49G software and source compatibility with numerous HP 48 series applications.

Despite the overhead caused by emulation, the hp 49g+ achieved performance improvements ranging from three to seven times faster than its predecessor depending on usage. It also supported native ARM applications that bypassed emulation entirely. An advanced programming option was available via a port of the GNU C compiler known as HPGCC.

hp 48gII

Announced on October 20, 2003, the hp 48gII (F2226A) was not intended as a direct successor to the HP 48 series, despite its naming convention. Essentially, it is a variant of the 49g+ equipped with an ARM processor but featuring reduced memory capacity, absence of SD card expansion, a lower clock frequency, a smaller screen size, and firmware that cannot be updated via flash. This model was aimed at users requiring robust mathematical functions without extensive program installation needs. The initial version released in 2003 included 128 KB of RAM and operated on three AAA batteries. A revised edition launched in 2007—based on the Apple V2 platform—upgraded RAM to 256 KB, added a USB Mini-B connector, enhanced keyboard design, and required four AAA batteries for power.

HP 50g

Released in 2006 as the newest addition to the 49/50 series, the HP 50g (F2229A) showcased a refreshed color palette that revisited HP's classic look, featuring a black plastic casing complemented by white, orange, and yellow function keys. The back cover was redesigned with a more pronounced texture to enhance handling. Between 2009 and 2010, HP introduced a high-contrast blue and white variant (NW240AA) specifically designed to support users with color vision deficiencies, followed by a slightly modified blue/white version in 2011–2012.

While retaining the physical dimensions of the 49g+ line, the HP 50g switched to using four AAA batteries instead of three. It encompasses all capabilities found in the 49g+ and adds the comprehensive equation library from the HP 48 series, integrated starting with firmware versions 2.15/2.16, along with the periodic table library originally developed as a plug-in for the HP 48S series. For connectivity, it offers USB Mini-B, IrDA infrared communication (limited to approximately 10 cm), and a 3.3 V TTL-level asynchronous serial interface that requires an adapter for RS-232 compatibility.

The keyboard design incorporates the hinged keys introduced in later models of the 49g+ to address previous user feedback. Its firmware is largely based on that of the 49G but continues to receive incremental updates during its lifecycle.

HP made the HP 50g globally available in September 2006; production ceased in 2015. This model represents HP’s last calculator to support RPL, with subsequent devices such as the HP Prime adopting an RPN-based system known as Advanced RPN.

Programming

Calculators in the HP 49/50 series provide programming capabilities through both algebraic expressions and a stack-oriented language called RPL, which integrates Reverse Polish Notation (RPN) with concepts from the Lisp. RPL extends traditional stack programming by incorporating lists and functions, allowing programmers to manipulate unevaluated code directly on the stack.

The top-tier programming language is User RPL, which utilizes built-in postfix commands along with optional looping and conditional structures. User RPL routines perform argument validation on the stack and generate errors if inputs are invalid.

Beneath User RPL lies System RPL (SysRPL), which does not perform argument checks and requires specific argument types, resulting in significantly faster execution. SysRPL includes advanced functionality not accessible through User RPL. Developers can write SysRPL programs directly on the calculator using MASD, an integrated compiler that also supports assembly programming for both the Saturn processor and, with recent firmware updates for the 49g+/50g models, ARMv4T assembly language. A variety of tools exist to further enhance this development environment.

Assembly programming for Saturn and ARM processors (on 49g+/50g), as well as development in C, is achievable through desktop-based compilers. Additionally, numerous programs created for the HP 48 series remain compatible. It is important to note that none of these calculators support programming in HP PPL.

HPGCC for the 49g+/50g

HPGCC is a GCC port distributed under the GNU GPL, primarily designed for ARM-based calculators such as the 49g+ and 50g. Earlier iterations supported other ARM models including the 48gII, hp 39g+/HP 39gs, and HP 40gs, but these were phased out due to limited demand and compatibility challenges. Functioning as a cross-compiler, HPGCC compiles code targeting ARM calculators while running on standard PC platforms.

The most recent version of HPGCC defaults to ARM Thumb mode, optimizing code size with only minor performance impact. It supports most of the ANSI C standard and provides device-specific libraries granting access to features such as the calculator’s RPN stack, memory management, and buzzer control. Although GCC itself imposes no restrictions on generated output licensing, HPGCC’s accompanying libraries are released under a modified GPL license that mandates linked applications also be GPL-licensed—except for "non-profit" software exceptions.

HPGCC is available across Linux, Windows, and Mac OS X operating systems. The Windows distribution includes Programmer's Notepad as a simple integrated development environment (IDE).

Emulators

Multiple emulators have been developed for the HP 49G calculator. Among them, EMU48 is integrated into the Debug4x IDE and simulates most functionalities of the 49g+/50g models; however, it does not support execution of ARM code.

The ARM-capable emulator x49gp offers authentic emulation of the 49g+/50g ARM processor and can run programs compiled with HPGCC versions 2 and 3. This emulator is compatible with Linux and Mac OS X, but it requires users to compile the source code themselves.

The commercial software m48 also provides support for the HP 49G. Emulators designed for smartphones are limited in number; notably, only the HP 50g emulator was released in 2012 for iPhone and iPad devices.

There is an emulator available for Microsoft Windows Mobile platforms, whereas Android-based emulators for 49G/49g+/50g models do not support ARM emulation.[1]

In 2012, Hewlett-Packard introduced the HP 50g Virtual Calculator emulator for Windows (versions 3.1.29/3.1.30), which includes firmware 2.16 and compatibility with the StreamSmart 410.[2][3]

Firmware updates

The firmware on the 49/50 series calculators can be updated by users to add new capabilities or correct issues. Official updates are distributed by Hewlett-Packard, while unofficial firmware versions can be found on websites such as hpcalc.org.[4]

Further reading

  • [1]
  • [2]
  • [3] Searchable
  • (Catalog of known firmware bugs, both fixed and outstanding.)
  • (Discussion thread regarding unresolved firmware problems.)
  • (Forum conversation about firmware reliability.)

External links

  • Official Hewlett-Packard support for , , ,
  • HP 49/50 series resources available at www.hpcalc.org
  • Software collections for HP 50g hosted by Software49
  • Software packages for HP 50g provided by Heuson-Software

de:HP-49G

  1. ↑ Cite error: Invalid <ref> tag; no text was provided for refs named Smet_2013
  2. ↑ Cite error: Invalid <ref> tag; no text was provided for refs named Emulateurs
  3. ↑ Cite error: Invalid <ref> tag; no text was provided for refs named HP_6
  4. ↑ Cite error: Invalid <ref> tag; no text was provided for refs named ROM