The Museum of HP Calculators

HP Forum Archive 20

[ Return to Index | Top of Index ]

41-MCODE: Updated AECROM w/ 13-digit Math
Message #1 Posted by 聲gel Martin on 3 June 2011, 11:17 a.m.

Greetings fellow 41-comrades,

No doubt you all know about the AECROM, the module published by Wilson Holes from "RedShift SW", and programmed by Nelson F. Crowle and others. If you do, you'll be aware of its very original approach and ground-breaking contents, but if it passed unperceived to you (perhaps due to the late release date, or due to the US-centric unit convertion features) it'll probably feel like a mystery to you.

Fact is the AECROM is full of tricks and treats for the MCODE programmer. It's surely hard to follow the intricate code, but also surprisingly innovative and very rewarding once you get your bearings and get the hang of it.

I can't say that I completely understand the full extent of sophisticated techniques that went into putting it together, but I've managed to "upgrade" it by using 13-digit math routines - replacing the standard 10-digit it originally came with. Not sure if the programmers didn't know about them, or they chose not to use them - after all the subjects of the programs are not accuracy-critical: curve fitting for instance - but the fact is that they were not used at all.

So the updated ROM image now uses the 13-digit OS calls in the Hyperbolics, Curve Fitting and the Triangle, Circle, and SARR solvers as well. Lots of careful editing was required - this module is tricky, and there are multitude of calls from either page using unusual methods, so it's almost impossible to MOVE things around and one has to play within the current boundaries of the routines.

Here's some examples:
- extensive usage of GOTO ADR between pages
- jumps from the ROM-ID section of the lower page to the upper one
- tables, tables, and then more tables to hold lots of data
- pseudo FOCAL programs using just ONE menu function that does multiple things depending on HOW it's accessed!
- and a lot more... have you used the PROG function?? An amazing feat that pushes the limits of the 41 MCODE, really a hard nut to crack.

The new MOD image Will be posted at TOS in a couple of days. If you're interested I can send you the "blueprints" - result of the reverse-engineering effort so far (still going on BTW).

Best, 簍

      
Re: 41-MCODE: Updated AECROM w/ 13-digit Math
Message #2 Posted by Geir Isene on 3 June 2011, 11:30 a.m.,
in response to message #1 by 聲gel Martin

Please send me the blueprints.

It would be cool to make it less US-centric, though.

            
Re: 41-MCODE: Updated AECROM w/ 13-digit Math
Message #3 Posted by gene wright on 3 June 2011, 11:40 a.m.,
in response to message #2 by Geir Isene

Great! This will be a perfect example for the community to lay out the BEST way to get this new rom image loaded into the soon to be shipped 41CL.

I'm not sure most of us will want to try transferring / copying a rom image into flash on the 41CL, but the 41CL does include 50+ 4K ram pages that are much easier to load rom images into.

What we need is a good, step-by-step set of instructions for how to go from a .rom file on the PC to having it in a ram page in the 41CL.

I'm hopeful that the first adopters will be seeing their 41CL boards within a week!

Yay!

                  
Re: 41-MCODE: Updated AECROM w/ 13-digit Math
Message #4 Posted by Monte Dalrymple on 3 June 2011, 2:49 p.m.,
in response to message #3 by gene wright

Since both pages in the .MOD file have the same name, translating the image to a .ROM format (which is the first step in getting it into the 41CL) doesn't work very well. The second page overwrites the first...

Monte

            
Re: 41-MCODE: Updated AECROM w/ 13-digit Math
Message #5 Posted by 聲gel Martin on 3 June 2011, 3:11 p.m.,
in response to message #2 by Geir Isene

you扉e got mail...

BTW the foot-meter-etc. stuff is also a beauty to behold in action. I t uses the I/O interrupt of the module to display the values in the "selected" unit, seemingly transparent to the user and creating the impression it is the machine's native "language" for the corresponding mode.

It's good if you need to work in "imperial" units of length, those invented by the British and later on dropped in favor (or favour rather) of the metric system (well, not quite of course... but that's another story). At any rate, it's an MCODE tour-de-force worth watching :-)

Unfortunately it conflicts with the CCD usage of the same interrupt, so you have to choose. Oh well, life isn't perfect!

                  
Hey Angel...how about changing the 2nd MOD page's name?
Message #6 Posted by gene wright on 3 June 2011, 3:20 p.m.,
in response to message #5 by 聲gel Martin

As Monte points out, that will allow it to be moved to the 41CL... ?

                        
Re: Hey Angel...how about changing the 2nd MOD page's name?
Message #7 Posted by 聲gel Martin on 3 June 2011, 4:08 p.m.,
in response to message #6 by gene wright

Quote:
how about changing the 2nd MOD page's name?

Well, I惴 not sure this is anything related to the module itself (read: the MOD file) but to the way it愀 named as a ROM file, or two of them to be precise. My guess is you can use the MOD2ROM utility posted at TOS and label it as you want, thus overcoming the issue.

Best, \'AM

                              
Re: Hey Angel...how about changing the 2nd MOD page's name?
Message #8 Posted by Monte Dalrymple on 3 June 2011, 4:52 p.m.,
in response to message #7 by 聲gel Martin

I use ModFile or ModFileWin from TOS. Neither allow you to name the .ROM pages, but take them from the .MOD file itself.

Monte

                                    
Re: Hey Angel...how about changing the 2nd MOD page's name?
Message #9 Posted by 聲gel Martin on 4 June 2011, 2:55 a.m.,
in response to message #8 by Monte Dalrymple

I see... but you can certainly use M2kManager (which does not require the MLDL to be present) to edit the ROM files of a MOD image ' including giving it another 盯ame.


[ Return to Index | Top of Index ]

Go back to the main exhibit hall