HP-49 series
Encyclopedia
The HP 49G series are Hewlett-Packard
Hewlett-Packard
Hewlett-Packard Company or HP is an American multinational information technology corporation headquartered in Palo Alto, California, USA that provides products, technologies, softwares, solutions and services to consumers, small- and medium-sized businesses and large enterprises, including...

 (HP) manufactured graphing calculator
Graphing calculator
A graphing calculator typically refers to a class of handheld calculators that are capable of plotting graphs, solving simultaneous equations, and performing numerous other tasks with variables...

s. They are the successors of the popular HP-48 series
HP-48 series
The HP-48 is a series of graphing calculators using Reverse Polish notation and the RPL programming language, produced by Hewlett-Packard from 1990 until 2003. The series include the HP-48S, HP-48SX, HP-48G, HP-48GX, and HP-48G+, the G models being expanded and improved versions of the S models...

.

There are four calculators in the 49 series of HP graphing calculators. These calculators have both algebraic and RPN
Reverse Polish notation
Reverse Polish notation is a mathematical notation wherein every operator follows all of its operands, in contrast to Polish notation, which puts the operator in the prefix position. It is also known as Postfix notation and is parenthesis-free as long as operator arities are fixed...

 entry modes, and can perform numeric and symbolic calculations using the built-in Computer Algebra System (CAS)
Computer algebra system
A computer algebra system is a software program that facilitates symbolic mathematics. The core functionality of a CAS is manipulation of mathematical expressions in symbolic form.-Symbolic manipulations:...

, which is an improved ALG48 and Erable combination from the HP-48 series
HP-48 series
The HP-48 is a series of graphing calculators using Reverse Polish notation and the RPL programming language, produced by Hewlett-Packard from 1990 until 2003. The series include the HP-48S, HP-48SX, HP-48G, HP-48GX, and HP-48G+, the G models being expanded and improved versions of the S models...

.

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
HP-48 series
The HP-48 is a series of graphing calculators using Reverse Polish notation and the RPL programming language, produced by Hewlett-Packard from 1990 until 2003. The series include the HP-48S, HP-48SX, HP-48G, HP-48GX, and HP-48G+, the G models being expanded and improved versions of the S models...

 into the firmware
Firmware
In electronic systems and computing, firmware is a term often used to denote the fixed, usually rather small, programs and/or data structures that internally control various electronic devices...

 of the new 49G, including the ability to easily decompile and compile both SysRPL and Saturn
Saturn (microprocessor)
The Saturn family of microprocessors was developed by Hewlett-Packard in the 1980s for programmable scientific calculators/microcomputers. The original Saturn chipset was first used in the HP-71B hand-held BASIC computer, introduced in 1984. Later models of the family powered the popular HP-48...

 assembly code on the unit.

The 49G was the first HP calculator to use flash memory
Flash memory
Flash memory is a non-volatile computer storage chip that can be electrically erased and reprogrammed. It was developed from EEPROM and must be erased in fairly large blocks before these can be rewritten with new data...

 and have an upgradable ROM
ROM image
A ROM image, or ROM file, is a computer file which contains a copy of the data from a read-only memory chip, often from a video game cartridge, a computer's firmware, or from an arcade game's main board...

. 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
Computer algebra system
A computer algebra system is a software program that facilitates symbolic mathematics. The core functionality of a CAS is manipulation of mathematical expressions in symbolic form.-Symbolic manipulations:...

 source code
Source code
In computer science, source code is text written using the format and syntax of the programming language that it is being written in. Such a language is specially designed to facilitate the work of computer programmers, who specify the actions to be performed by a computer mostly by writing source...

 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
ROM image
A ROM image, or ROM file, is a computer file which contains a copy of the data from a read-only memory chip, often from a video game cartridge, a computer's firmware, or from an arcade game's main board...

 cannot be redistributed.

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
Universal Serial Bus
USB is an industry standard developed in the mid-1990s that defines the cables, connectors and protocols used in a bus for connection, communication and power supply between computers and electronic devices....

 and IrDA
IRDA
IRDA may refer to:* Infrared Data Association, in information and communications technology , a standard for communication between devices over short distances using infrared signals...

 (infrared
Infrared
Infrared light is electromagnetic radiation with a wavelength longer than that of visible light, measured from the nominal edge of visible red light at 0.74 micrometres , and extending conventionally to 300 µm...

) communication, memory expansion via an SD
Secure Digital card
Secure Digital is a non-volatile memory card format developed by the SD Card Association for use in portable devices. The SD technology is used by more than 400 brands across dozens of product categories and more than 8,000 models, and is considered the de-facto industry standard.Secure Digital...

 card, and a slightly larger screen, as well as other improvements over the previous model.

The calculator system did not run directly on the new ARM
ARM architecture
ARM is a 32-bit reduced instruction set computer instruction set architecture developed by ARM Holdings. It was named the Advanced RISC Machine, and before that, the Acorn RISC Machine. The ARM architecture is the most widely used 32-bit ISA in numbers produced...

 processor, but rather on an emulation
Emulator
In computing, an emulator is hardware or software or both that duplicates the functions of a first computer system in a different second computer system, so that the behavior of the second system closely resembles the behavior of the first system...

 layer for the older Saturn
Saturn (microprocessor)
The Saturn family of microprocessors was developed by Hewlett-Packard in the 1980s for programmable scientific calculators/microcomputers. The original Saturn chipset was first used in the HP-71B hand-held BASIC computer, introduced in 1984. Later models of the family powered the popular HP-48...

 processors found in previous 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
ARM architecture
ARM is a 32-bit reduced instruction set computer instruction set architecture developed by ARM Holdings. It was named the Advanced RISC Machine, and before that, the Acorn RISC Machine. The ARM architecture is the most widely used 32-bit ISA in numbers produced...

 processor thus bypassing the emulation layer completely. A port of the GNU C compiler
GNU Compiler Collection
The GNU Compiler Collection is a compiler system produced by the GNU Project supporting various programming languages. GCC is a key component of the GNU toolchain...

 is also available (see HPGCC below).

HP 48gII

The HP 48gII was not a replacement for the HP 48G series
HP-48 series
The HP-48 is a series of graphing calculators using Reverse Polish notation and the RPL programming language, produced by Hewlett-Packard from 1990 until 2003. The series include the HP-48S, HP-48SX, HP-48G, HP-48GX, and HP-48G+, the G models being expanded and improved versions of the S models...

 as its name suggested. Rather it was a 49g+, also with an ARM processor (unlike the 48g
HP-48 series
The HP-48 is a series of graphing calculators using Reverse Polish notation and the RPL programming language, produced by Hewlett-Packard from 1990 until 2003. The series include the HP-48S, HP-48SX, HP-48G, HP-48GX, and HP-48G+, the G models being expanded and improved versions of the S models...

), but with reduced memory, no expansion via an SD
Secure Digital card
Secure Digital is a non-volatile memory card format developed by the SD Card Association for use in portable devices. The SD technology is used by more than 400 brands across dozens of product categories and more than 8,000 models, and is considered the de-facto industry standard.Secure Digital...

 memory card, lower clock speed, and a smaller screen. This calculator seems to target users that desire mathematical capability, but have no desire to install many programs.

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 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
AAA battery
A triple A or AAA battery is a standard size of dry cell battery commonly used in portable electronic devices. A carbon-zinc battery in this size is designated by IEC as "R03", by ANSI C18.1 as "24", by old JIS standard as "UM 4", and by other manufacturer and national standard designations that...

 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), as well as the periodic table library originally available as a plug-in card for the 48S series, as of ROM 2.15, and has an asynchronous serial port in addition to IrDA
IRDA
IRDA may refer to:* Infrared Data Association, in information and communications technology , a standard for communication between devices over short distances using infrared signals...

 and USB ports of the 49g+. Like the 49g+, the range of the infrared port has been limited to about 10 cm (4 inches).

The new asynchronous serial port is not a true RS-232
RS-232
In telecommunications, RS-232 is the traditional name for a series of standards for serial binary single-ended data and control signals connecting between a DTE and a DCE . It is commonly used in computer serial ports...

 port as it uses different voltage levels and a non-standard connector. An external converter/adapter is required to interface with RS-232
RS-232
In telecommunications, RS-232 is the traditional name for a series of standards for serial binary single-ended data and control signals connecting between a DTE and a DCE . It is commonly used in computer serial ports...

 equipment.

The keyboard, the most often criticized feature of the 49g+ calculators, uses the new design introduced on the very last 49g+ calculators to eliminate previous problems.

A worldwide announcement regarding the availability of this calculator was made by HP in September 2006, and official details are available on the HP calculators
HP calculators
HP calculators are various calculators manufactured by the Hewlett-Packard company over the years.- History :In the 1960s, Hewlett-Packard was becoming a diversified electronics company with product lines in electronic test equipment, scientific instrumentation, and medical electronics, and was...

 webpage.

Programming

The HP 49 series of calculators support both algebraic (HP-Basic) and a stack-based programming language named RPL (ROM Procedural Language or Reverse Polish Lisp)
RPL programming language
The RPL programming language is a handheld calculator system and application programming language used on Hewlett-Packard's engineering graphing RPN calculators of the HP-28, HP-48, HP-49 and HP-50 series, but it is also usable on non-RPN calculators, such as the HP-39...

, a combination of Reverse Polish Notation (RPN)
Reverse Polish notation
Reverse Polish notation is a mathematical notation wherein every operator follows all of its operands, in contrast to Polish notation, which puts the operator in the prefix position. It is also known as Postfix notation and is parenthesis-free as long as operator arities are fixed...

 and Lisp
Lisp programming language
Lisp is a family of computer programming languages with a long history and a distinctive, fully parenthesized syntax. Originally specified in 1958, Lisp is the second-oldest high-level programming language in widespread use today; only Fortran is older...

. RPL adds the concepts of lists and functions to stack
Stack (data structure)
In computer science, a stack is a last in, first out abstract data type and linear data structure. A stack can have any abstract data type as an element, but is characterized by only three fundamental operations: push, pop and stack top. The push operation adds a new item to the top of the 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 builtin compiler, MASD. MASD also can compile Saturn
Saturn (microprocessor)
The Saturn family of microprocessors was developed by Hewlett-Packard in the 1980s for programmable scientific calculators/microcomputers. The original Saturn chipset was first used in the HP-71B hand-held BASIC computer, introduced in 1984. Later models of the family powered the popular HP-48...

 assembly language
Assembly language
An assembly language is a low-level programming language for computers, microprocessors, microcontrollers, and other programmable devices. It implements a symbolic representation of the machine codes and other constants needed to program a given CPU architecture...

 and, with the latest ROM revision for the 49g+/50g, ARM
ARM architecture
ARM is a 32-bit reduced instruction set computer instruction set architecture developed by ARM Holdings. It was named the Advanced RISC Machine, and before that, the Acorn RISC Machine. The ARM architecture is the most widely used 32-bit ISA in numbers produced...

 assembly language on the calculator itself. Many tools exist to assist programmers and make the calculator a powerful programming environment.

Saturn
Saturn (microprocessor)
The Saturn family of microprocessors was developed by Hewlett-Packard in the 1980s for programmable scientific calculators/microcomputers. The original Saturn chipset was first used in the HP-71B hand-held BASIC computer, introduced in 1984. Later models of the family powered the popular HP-48...

 assembly
Assembly language
An assembly language is a low-level programming language for computers, microprocessors, microcontrollers, and other programmable devices. It implements a symbolic representation of the machine codes and other constants needed to program a given CPU architecture...

, and, on the 49g+/50g, ARM
ARM architecture
ARM is a 32-bit reduced instruction set computer instruction set architecture developed by ARM Holdings. It was named the Advanced RISC Machine, and before that, the Acorn RISC Machine. The ARM architecture is the most widely used 32-bit ISA in numbers produced...

 assembly
Assembly language
An assembly language is a low-level programming language for computers, microprocessors, microcontrollers, and other programmable devices. It implements a symbolic representation of the machine codes and other constants needed to program a given CPU architecture...

 and C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

, are also programmable using desktop based compilers. See also the programs available for the HP-48 series
HP-48 series
The HP-48 is a series of graphing calculators using Reverse Polish notation and the RPL programming language, produced by Hewlett-Packard from 1990 until 2003. The series include the HP-48S, HP-48SX, HP-48G, HP-48GX, and HP-48G+, the G models being expanded and improved versions of the S models...

.

HPGCC for the 49g+/50g

HPGCC is an implementation of the GCC compiler
GNU Compiler Collection
The GNU Compiler Collection is a compiler system produced by the GNU Project supporting various programming languages. GCC is a key component of the GNU toolchain...

, released under the GNU GPL
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....

. 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. Formally, HPGCC is a cross-compiler; it compiles code for the ARM-based HP calculators, but runs on a PC rather than the target system.

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
American National Standards Institute
The American National Standards Institute is a private non-profit organization that oversees the development of voluntary consensus standards for products, services, processes, systems, and personnel in the United States. The organization also coordinates U.S. standards with international...

 C, there are device-specific libraries that allow access to things like the calculator's RPN stack, memory and piezoelectric buzzer. The GCC compiler itself is the property of the Free Software Foundation, and they state that its use does not impose any particular licensing restrictions on any of its output. However, the libraries included with HPGCC, including routines necessary to actually invoke any HPGCC-compiled program on an actual calculator, are released under a modified GPL license, contrary to GCC on many other platforms which use a more permissive license for their libraries. Thus any programs that link against them can only be distributed if they are also released under the GPL (with an exception for "non-profit" software).

Linux, Windows, and Mac OS X versions are available for download. The Windows version also includes a version of Programmer's Notepad
Programmer's Notepad
Programmer's Notepad is an open-source text editor targeted at users who work with source code. It was released in 1998 by Echo Software . PN1's successor, Programmer's Notepad 2 , was released in 2002 and is now based on Scintilla...

 for a basic IDE
Integrated development environment
An integrated development environment is a software application that provides comprehensive facilities to computer programmers for software development...

.

Emulators for the 49 series

There are several emulators available for the HP 49G calculator. A version of Emu48 is available in the Debug4x IDE
Integrated development environment
An integrated development environment is a software application that provides comprehensive facilities to computer programmers for software development...

 that allows emulation of most of the features of the 49g+/50g but will not execute any ARM-based code.

An ARM-based emulator, x49gp, has been released and allows the true emulation of the 49g+/50g ARM processor and successfully runs HPGCC 2 and 3 compiled programs. At this time the emulator is only available for Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

 and Mac OS X
Mac OS X
Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...

 and must be compiled from the source. (See README.QUICKSTART for details.)

An emulator for the HP48 is available for iOS devices. The free app m48 emulates a HP 48GX, and the paid version also supports HP 49G. So far, there are no 49g+/50g emulators for smartphones.

An emulator for Microsoft
Microsoft
Microsoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...

 Windows Mobile
Windows Mobile
Windows Mobile is a mobile operating system developed by Microsoft that was used in smartphones and Pocket PCs, but by 2011 was rarely supplied on new phones. The last version is "Windows Mobile 6.5.5"; it is superseded by Windows Phone, which does not run Windows Mobile software.Windows Mobile is...

(PPC, smartphones) is available.

ROM Updates

The 49 series allows the user to update the ROM to gain enhanced features or bug fixes. Official ROM updates are released by HP. Unsupported unofficial ROM updates are also available at sites such as hpcalc.org.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK