The PC simulator is available for download directly from Sourceforge:

Download latest files from Sourceforge.net

An early alpha version of the firmware for the 50g hardware can be downloaded from here:

Download firmware for 50g

To install this firmware, simply use the standard tools for a firmware update via USB, or use an SD card. The procedure using an SD card is as follows:

  • Copy the downloaded firmware (newrplfw.bin) to the root directory of your FAT16 formatted SD card.
  • Create a text file with a plain text editor containing a single line of text with the name of the firmware file: newrplfw.bin
  • Save that text file also to the root directory of the SD card. The file must be named update.scp
  • Reset your calculator while at the same time pressing the + and - keys to access the boot loader
  • Select option 1 (Update), then option 2 (SD card), and the process will begin. Do not interrupt the process until complete.

To revert to the original firmware follow the same procedure, replacing the name of the firmware file for your favorite ROM version.

 

newRPL is under heavy development. This page reflects the status of the project, but since it is manually updated it may not reflect the latest changes to the source repository.

This list reflect the global components and features, not all commands related to each feature may be have been implemented, for example when we say that "Integers" is complete means that the object is implemented, not that every single operation with integers is finished. For a detailed list of RPL commands that are implemented, their status and compatibility notes, see the Detailed status page.

 

RPL CORE
COMPONENT / TASK STATUS REMARKS
Execution loop Complete  
Memory manager Complete  
Garbage collector Complete Naive mark and sweep
Compiler Complete  
Decompiler Complete  
     
SIMULATOR / TARGET - USER INTERFACE
COMPONENT / TASK STATUS REMARKS
Display Complete  
Keyboard Complete  
Text Editor Complete  
Stack environment Partial Needs pretty print support
Soft menus Complete  
     
RPL LANGUAGE FEATURES
FEATURE / OBJECT STATUS REMARKS
Secondary object Complete  
Local variables Complete  
Global variables Complete  
Directories Complete  
IF / ELSE / END Complete  
CASE / THEN / END Complete  
IFERR / THEN / END Complete  
FOR / START loops Complete  
WHILE / REPEAT loops Complete  
DO / UNTIL loops Complete  
Overloadable operators Complete  
Integers Complete  
Infinite precision integers Will not implement Replace with real numbers
Reals Complete  
Complex Complete  
Strings Complete  
Char Will not implement Use strings instead
Hex Strings Will not implement Use new BINDATA objects
Arrays Complete  
Complex arrays Will not implement Included in regular arrays
Lists Complete  
Symbolic Complete Basic CAS rules engine. Needs more work.
Symbolic arrays Will not implement Included in regular arrays
Units Complete  
Tags Complete  
Grobs    

 

Introduction

What exactly is newRPL?

newRPL is a re-implementation of the HP48/49/50 series calculators programming environment. The RPL scripting language is being redesigned and recreated with even more powerful features.

While this new implementation is written in portable C, initially, the target will be the HP50g hardware, consisting on the following:

  • ARM 920T processor running at up to 200 MHz
  • 512 KBytes of RAM
  • 2 MBytes of NOR flash memory.
  • 16-grays screen, 131x80 pixels

Simultaneously, a simulator for the PC environment is being used for development and also offered to the users for testing.

Being a complete firmware replacement, installing newRPL on a HP 50g calculator completely removes the old Operating System and transforms the calculator into a newRPL device. The installation process is no different from installing any other ROM updates, and is completely reversible: simply flash the original "stock" firmware from HP and the calculator will be back to normal.

The newRPL firmware provides a few advantages over the standard OS:

  • An order of magnitude faster
  • More RAM available to the user
  • Arbitrary numeric system precision up to 2000 digits
  • Dual soft-menu interface
  • Many keyboard shortcuts to work more efficiently
  • More powerful units
  • Faster support for SD cards, including SDHC cards
  • 8-level stack undo/redo
  • Unicode text support throughout for better exchange of information with other devices

Status

The firmware is usable as a programmable scientific calculator. For more details refer to the Project Status page.

The firmware image can be downloaded from the Downloads page.