ROM Updates
ROM Updates
These are the latest stable HP49 ROM versions.
They are available for download at HPCalc.org

ROM 1.19.5 for HP49 ( Dec 17th, 2000)
ROM 1.19.5 for EMU49 ( Dec 17th, 2000)

ROM 1.18( May 27th, 2000)

ROM 1.16 ( December 6th, 1999)

Note:
Dates between parenthesis of ROMs 1.18 and 1.16
are the dates the ROM was uploaded for the first time
at HPCALC.org.


1 - How to upgrade your HP49

From ROM 1.19-5, you will need to follow a new procedure in order to upgrade the calculator.

At present the following ROM update instructions are only valid under Windows 95/98/NT/2000.

In order to update your 49G's ROM, you need the HP Graphing Calculator PC Connectivity Kit 3.0, also known as HPComm 3.0. I.

If you are unsure of your ROM version, type VERSION and press [ENTER]. It will return two strings, with the first saying something like "Version HP49-C Revision 1.10". If your calculator shows anything less than the latest ROM version (1.18 is the latest official ROM and 1.19-5 is the latest beta ROM), it is time for an upgrade.

It is important that you use fresh batteries in your calculator when you attempt a software upgrade. The upgrade process uses more power than normal operations, and the upgrade will fail if the batteries are not fresh enough. If the operating system upgrade fails, you cannot use your calculator until you upgrade the operating system.

Also, back up the 49G's user memory to the PC, as you should do before transferring any new software onto your calculator.

1.1 - Updating the 49G's ROM

If you're running ROM 1.19-5 and higher, you can skip this procedure and jump to "1". On the PC:

From ROM 1.19-5, the HP49 is using an extra 64KB of Flash ROM. This 64KB used to be allocated by the user memory. Therefore, you need to save the content of this 64KB bank if you don't want to loose any files.

  1. Send the following program to extract the content of the 64KB Flash Bank 64KB Extractor
  2. Run the program. It will put on the stack a list containing either Library or Backup Object.
  3. Save the list as-is in the HOME directory
  4. Follow the next instructions to upgrade your calculator

1.2 -  On the PC:

  1. Unzip the ROM update file to a folder on your hard drive, noting the location. Make sure it has a .flash extension; some zip decompressors do not support long file names, requiring you to rename the file.
  2. Connect the HP 49G to the PC, and start the PC Connectivity Kit.
  3. In the PC Connectivity Kit, navigate to the PC directory that holds the operating system file.
  4. Double-click the .flash operating system file to display the Download program dialog box.

1.3 -  On the 49G:

  1. Enter diagnostic mode by turning the calculator on, holding [ON], and pressing [F4].
  2. While the Tests screen is showing, use your thumb to hold down [+] and [ENTER].
  3. While holding down [+] and [ENTER], press and release [ON] to show the No System menu, and then release [+] and [ENTER].
  4. Press [4] to select terminal mode. A blank screen appears. To abort at this time, hold down [ON], press [F3], and then release both keys.

1.4 - On the PC:

On the Flash upgrade dialog box:

  1. Use the Config Comms button to configure the PC serial port that the calculator is connected to.
  2. Click the Talk to calc button to send the download program to the HP 49G.

1.5 - On the 49G:

The download program sent from the PC is now running.

  1. If you're running a ROM 1.19-5 or newer jump to 5
  2. Press [4] to select Erase Bank. The screen will now display "0 User Bank". If not, use the up and down arrow key until Bank 0 appear.
  3. Press [ENTER] to format the 64KB Bank.
  4. The HP49 returns to the Download menu
  5. Press [1] to select Download System. The 49G communicates with the PC Connectivity Kit and commences the upgrade.
  6. When the process finishes, the 49G will display "The system may not be installed. Please go to 'Download Pack' menu. Press any key. You now see the main Download menu.
  7. Press [2] for 'Download pack'. "System present" press Q twice to reboot. The operating system is now upgraded.
  8. If you were already running ROM 1.19-5 or newer you're done
  9. Put the list that you've extracted from the 64KB Flash Bank on the RPL stack
  10. Extract the content by running the command LIST->
  11. For each object from the list, do: 2 STO in order to re-save them in the Flash User Memory

1.6 - If it fails:

If it fails, your calculator will no longer operate properly until you re-flash the ROM. To do this, perform the following steps and then go back to 3. On the PC above:

  1. Insert a paper clip into the reset hole in the back of the 49G
  2. While the screen is blank, use your thumb to hold down [+] and [ENTER].
  3. While holding down [+] and [ENTER], press and release [ON] to show the No System menu, and then release [+] and [ENTER].
  4. Press [4] to select terminal mode. A blank screen appears. To abort at this time, hold down [ON], press [F3], and then release both keys.


2 - ROM Fixes and Improvments

2.1 - What's New from Release 1.19-4:

  • Algebraic Mode: Added autoquote process on some functions. Warning, arguments within lists will not be quoted.
  • RPL/Algebraic Compiler. New keyword to create greyscale graphic object. Syntax: GREY xx yy data. At this stage, greyscale objects are not yet supported by the graphical commands.
  • InputForm engine: In algebraic mode, algebraic expression field will automatically be quoted.
  • Filer: SORT option. Sort the file list by name, type or size
  • Filer: PageUp/PageDown are now working
  • MASD: Display statistics while compiling
  • System: New CALC menu organisation (direct access to DERVX and INTVX)
  • System: Various speed improvements
  • Bugs fixed (the following bugs have been fixed):
    • System: Filling a user bank in port 2 could disable the Flash access
    • System: Recalling a non-existent object in port 2 using a path could reset the calculator
    • Algebraic Compiler: incorrect compilation of | (where) when using expression
    • Table View: Some twisted Parametric equations could reboot the calculator
    • CAS: all known problems
    • MASD: Problem when using name longer than 8 characters

2.2 -  What's New from Release 1.19-3:

  • CAS: New EXP2HYP command (see online help for more information)
  • CAS: New LOCAL command. Create (and initialize) local variables from a list. To be used to avoid the need of nested -> << >> in algebraic mode
  • CAS: New UNBIND command. Delete local variables
  • System: New clock display manager. Will not create temporary objects anymore (reducing the frequency of Garbage Collector)
  • System: New expression optimizer. It is now possible to plot or solve functions that include non-algebraic expressions (as the HP48)
  • MASD: Added LIBDAT support, $ "" support, GOSBVL/GOVLNG =label support, Fixed a problem that could prevent the HP49 to start after a very low memory condition (exists in all previous HP calculator)
  • Bugs fixed (the following bugs have been fixed):
    • System: Storing 128KB+1 bytes could corrupt the Flash structure
    • System: Fixed a clock problem that could prevent the HP49 to start after a very low memory condition (exists in all previous HP calculator)
    • CAS: various bugs fixed
    • MASD: Incorrect error messages when a SKIP structure was not correctly closed

2.3 - What's New from Release 1.19-1:

  • Real numbers in unit objects are displayed without the . (dot) if the value is below 1000. Example: 2_m^2 is not displayed as 2._m^2. anymore, and do not follow display format (FIX, SCI etc.)
  • New commands GBASIS and GREDUCE (see inline-help for more details)
  • Bugs fixed (the following bugs have been fixed):
    • System: Crash when pressing Shift F6 from plotter
    • System: DOLIST can hang the calculator when passing bad argument types
    • System: New 1.19 Menu are not accessible using the MENU and TMENU commands
    • CAS: CAS menu REWRITE is not linked to the MAIN menu
    • CAS: Mistakes in inline help
    • CAS: Inline help added for commands GBASIS, GREDUCE, POTENTIAL and VPOTENTIAL
    • CAS: When called from an empty stack CASCMD doesn't return a result
    • 48GX Finance Solver: Pressing F6 on some fields could corrupt the stack

2.4 - What's New from Release 1.19-1:

  • Real numbers in unit objects are displayed without the . (dot) if the value is below 1000. Example: 2_m^2 is not displayed as 2._m^2. anymore, and do not follow display format (FIX, SCI etc.)
  • New commands GBASIS and GREDUCE (see inline-help for more details)
  • Bugs fixed (the following bugs have been fixed):
    • System: Crash when pressing Shift F6 from plotter
    • System: DOLIST can hang the calculator when passing bad argument types
    • System: New 1.19 Menu are not accessible using the MENU and TMENU commands
    • CAS: CAS menu REWRITE is not linked to the MAIN menu
    • CAS: Mistakes in inline help
    • CAS: Inline help added for commands GBASIS, GREDUCE, POTENTIAL and VPOTENTIAL
    • CAS: When called from an empty stack CASCMD doesn't return a result
    • 48GX Finance Solver: Pressing F6 on some fields could corrupt the stack

2.5 - What's New from Release 1.18:

  • New CAS (Computer Algebra System) including:
    • on-line help. Inside the EQW, press [HELP]. If you have a symbolic highlighted (e.g. COLLECT(X+1)) you will get directly help on COLLECT, otherwise or if the top operator is not a CAS command you will have a choosebox with all the CAS commands. Also the Catalog and each menu give access to the CAS help if available.
    • New arithmetic functions like cyclotomic polynomials and Sturm sequences (e.g. STURMAB will return the number of real zeros in an interval)
    • Assumption on variables like ASSUME(X>1), this properties will be used to simplify ABS value or to find some limits
    • SIMPLIFY command which is essentially TEXPAND followed by EXPAND
    • New linear algebra commands: KER, IMAGE of a linear application, BASIS of a vector space, IBASIS intersection basis of two vector spaces, ISOM to find the elements of a 2-d or 3-d linear isometry.
    • Main changes in existing functions:
      • Step by step implemented for: integration, GCD and IEGCD for integers, PARTFRAC
      • EXPAND does now EXP2POW (convert EXP[c*LN] to power)
      • TAN2SC2 does no more take care of prefer sin/cos flag, use the new command TAN2CS2
      • SOLVE / SOLVEVX can solve 1 rational inequality in 1 var
      • SOLVE / LINSOLVE accept systems written as a symbolic: use AND between equations
      • TABVAR accepts now some non rational functions: e.g. EXP(X)-X
      • Improvements or optimizations in SOLVE, integration, LAP/ILAP, SERIES
  • Zoom capabilities in 3D Plotter using the [+] and [-] keys
  • New UserKeys assignements for simultaneous shifted key press. Example, doing << "Hello World" 1 DISP >> 82.21 ASN will assign this program to [Shift] and simultaneously [4]

2.6 -  What's New from Release 1.16:

  • Holding BackSpace during Boot Sequence will put the calculator in safe mode. User library will be completely ignored unlike previous version. STARTUP will also be ignored if BackSpace is hold after the MetaKernel logo appearance.
  • Switch between complex to real mode from the keyboard (press and hold down LeftShift and then [TOOL]).
  • Decompiler now fully compatible with HP48 (DECOMP$).
  • HP48 Input Forms: Global names are not evaluated anymore.

2.7 - What's New from Release 1.10:

  • SIZE returns the number of digits for an integer instead of 1.
  • Symbolic series: SUM(I=1,N,I) will return (N^2+N)/2. Implementation of gamma, digammas etc.. functions
  • New Y= window: You can now create your own user functions and combine functions together like:
    Y2(X)=Y1(SIN(X)).
  • Switch between approx to exact mode from the keyboard (press and hold down RightShift and then ENTER)
  • New power algorithm: 3^1000 takes less than 2s now.
  • UserRPL optimization: 1 1000 FOR I NEXT is now much faster Binary functions related to integers are now faster (+,-,*,/,^,NEG, INV, SQ)
  • STARTED and EXITED can customize the command line editor
  • Multiple Equation Solver now contained in ROM.
  • sysRPL stack is now implemented: set the flag -85 to use it.
  • Complex Matrices are now displayed in textbook mode.
  • New XModem Server. It's now possible to transfer the ROM of an HP49G to another one using the ROMUPLOAD command. You can also control another HP49G using the xmodem protocol :
    • XSERV: Put the calculator in XModem server mode No Inputs/outputs The Xmodem server recognize the following commands:
    • P: Put a file in the calculator
    • G: Get a file from the calculator
    • E: Execute the command line
    • M: Get the calculator memory
    • L: List the files in the current directory
    • XGET: Get a file from a XModem server
      Input: the name of the file to get (a global or local name)
    • XPUT: Put a file in a XModem server
      Input: The name of the file to send (a global or local name)
  • ROMUPLOAD: Put the calculator in ROM upload mode.
    When in ROMUPLOAD mode, the calculator act like the FDP program, allowing another calculator to upgrade its ROM.
    (The baudrate must be 9600bps for a ROM upgrade)
  • MASD is in the ROM. Attach the library 256 to use it. You will also need the extable library in order to use the mnemonic tables.

*When unzipping make sure the ROM file has a .flash extension. Depending on file associations this may be truncated causing it to no longer work with the flash download program (FDP).



3 - HP48 ROMs
Prohibited during years due of copyright during the last decade, HP48 ROMs finaly was liberated and are available for download. Eric Rechlin maintain HPCALC.org, the greatest repository of HP48/49 files in the web, where you can look for HP48 ROM Version for download.


The thing most beutifull in the world is the world itself.
- Anonymous