The Museum of HP Calculators

HP Forum Archive 20

[ Return to Index | Top of Index ]

41-MCODE Question
Message #1 Posted by Ángel Martin on 8 Oct 2011, 6:13 a.m.

Does anyone know which OS rutine is called to display a mainframe function NAME while a key is being depressed?

I've located the equivalent for an XROM function, but it doesn't seem work for mainframe ones.

Appreciate any hints that save me long & tricky trace analysis!

Best, 'AM

      
Re: 41-MCODE Question
Message #2 Posted by Eric Smith on 9 Oct 2011, 1:07 a.m.,
in response to message #1 by Ángel Martin

I think the routine that displays the name is PROMFC (05C7), but in the specific case you're asking about, it may be using the entry point PROMF2 (01D3), called from 0CD2 (a few lines after PARS75).

However, I haven't tried to verify any of this, so I could be completely wrong.

It doesn't look like PROMFC (or PROMF2) are usable as a subroutine from a ROM of your own, if that's what you're looking for.

Edited: 9 Oct 2011, 1:08 a.m.

            
Re: 41-MCODE Question
Message #3 Posted by Ángel Martin on 9 Oct 2011, 5:26 a.m.,
in response to message #2 by Eric Smith

Quote:
I haven't tried to verify any of this, so I could be completely wrong.

If there's something I've learned in this forum is that you're *never* completely wrong, Eric. In fact you're absolutely correct, such is the routine I was looking for.

Quote:
It doesn't look like PROMFC (or PROMF2) are usable as a subroutine from a ROM of your own, if that's what you're looking for.

I'm not sure that I get your comment: I've been able to call it form my SandMath module without issues. All it needs is the entry point of the invoked function in A[S&X], for instance that'll be 07D for SDEV, 07C for MEAN, ect. This is reading from the FNCTBL to get the location of the function.

The reason I wanted to know about this is to implement a menu-like launcher, something akin to the 42-style (and later models).

Function "-PB/STS" in the SandMath now prompts a menu in the display, and gets into a [NEXT] partial entry sequence. The allowed choices are the five top keys, SHIFT, and BackArrow (as always). SHIFT toggles the displayed menu to another 5 choices, which in this case are:

Unshifted: SD: CV: R: LR: Y:
shifted: MN: LM: GD: C: P:

here SD is for Standard Deviation, and MN is for Mean - while the others are functions from the SandMath ROM.

Pressing any of the top keys will first display the function name (if the key is kept depressed), then leave the partial entry sequence and execute the corresponding function.

It all worked great, with the exception of displaying the function names for the mainframe MEAN and SDEV.

Now that's also working. Menus are very doable, the HP-41.5 is born :-)

Thanks again, 'AM

                  
Re: 41-MCODE Question
Message #4 Posted by Eric Smith on 10 Oct 2011, 5:03 p.m.,
in response to message #3 by Ángel Martin

Cool! I'm looking forward to trying the new version of SandMath.


[ Return to Index | Top of Index ]

Go back to the main exhibit hall