HP Forums

Full Version: HP-41 Advanced Matrix Pac
You're currently viewing a stripped down version of our content. View the full version with proper formatting.

Greetings from the archaelogy SW dept.- This time the focus goes to a tweaked HP-41 Advantage Pac, surely one of the better modules produced - yet if you're like me I'm sure you'd like to customize it a bit or two... Read on if you're interested.

No doubt being bank-switched gives this module a great, er.. advantage. If you haven't thought about this before, it's because of the very long code required to implement SOLVE and INTEG that the bank-switching was probably used: both functions together use almost 3k of the upper page (bank_1), whilst only thre/four FAT entries are required.

The second bank contains the code for matrix functions, and some for the Binary conversions as well. The matrix set is an extension of the CCD's "Array Fns" group - a marvel on itself that got enhanced by HP, topping it up with major matrix operations (Inverse, Determinant,Simultaneous Equations, etc. - as well as some FOCAL programs for easy usage of the main subjects.

If the CCD set the basis for a Matrix-capable Coconut OS-extension, certainly HP rounded it off very nicely. Matrix programs changed from being a convoluted maze or data registers utilization to just a discerning usage of the Alpha register as data entry, relying on XMEM files for the data storage. Simply a brilliant design and a superb execution.

BTW I always wondered about that particular deal: the CCD code is copied almost entirely bit-by-bit, save the bank-switching tricks of course. That speaks tons about the quality of the CCD implementation!

So what about the rest of the Pac? Well, certainly great but a few things could be improved. For starters, the Complex program is a nice beginners pac, nowadays dwarfed by the 41Z. The other FOCAL programs are beautiful, and the menu-driven style is convenient and elegant to say the least. A wide-ranging scope that provided a complete set of frequent topics, all in an 8k-footprint module.

Move on to the present, with emulators, Clonix, and MLDL. Rom images abound and are not an issue as long as they're self-contained and don't have dependencies on other modules. So what about extending the Matrix capabilities of the Advantange Pac, replacing the non-Matrix content with additional Matrix programs? Welcome to the "Advanced Matrix Pac", featuring:

- All the -ADV MATRX functions from the advantage Pac

- All the Matrix Functions & Programs from the ALGEBRA module

- A New Matrix Input mode, for fast data entry using Alpha.

- All Binary Conversion Functions, and last but not least...

- Also keeping SOLVE & INTEG, a monumental tour-de-force in Buffer manipulation and MCODE feats by itself.

This is a lengthy post so we'd better stop here. More details will follow, and for those interested in taking it for a spin, the image will be posted at TOS shortly.


Edited: 15 May 2011, 2:36 a.m.

Which is the best way to use those ROM images in a actual 41? It looks like Clonix is a solution, but I didn't understand how to get one. Is this still available for purchase? I am trying to catch up with the world of HP calculators after I "left" it long time ago.
Thank you

Ángel, it is a great idea to strip off the best of the ADV pack to get a versatile ROM.

However, I imagine that the restructured code will fit into one bank.

In the last time, Diego Diaz provided an update of his burning program to overcome the afflictions due to the bank switching stuff.

Although Diego's solution led to the use of the ADV pack some of the flexibility on his modules was lost.

Antonio, contact Diego Diaz! Clonix is only one of his offers, the NovRAM line of modules being the successors.

Hi Frido,

I imagine that the restructured code will fit into one bank.

Actually not. First off, only SOLVE and INTEG occupy 3/4ths. of a 4k-page. Secondly, the matrix functions are a very large and comprehensive set, all written in MCODE - which despite its better perfromance and speed advantage takes up more room than FOCAL for sure. Third, the idea is not to shrink it to the minimum expression possible but to leverage on the bank-switched approach. Nothing can beat that, and I'm pretty sure there are work-arounds for Clonix/NoVoRAM's. I'm certain of it.


Thank you Marcus, and thank you to all of you who keep alive these amazing little machines!

Two updates:

1. Module image posted at TOS

2. Successful burning to Clonix. Simply rename the ROM files with the Advantage ROM names (make a backup copy first) and use the standard version of ClonixConfig.exe with the "Advantage" option enabled.


The .MOD file on TOS does not include a name for the third page.
This doesn't matter if you're loading the .MOD file directly
but it makes it difficult to translate to a different format.


You'll have the 3 ROM image files by tonight.