Post Reply 
HP 41 Catalog implementation
05-02-2021, 07:25 PM
Post: #1
HP 41 Catalog implementation
While the HP41 CATALOG function may probably be called revolutionary for its time (as the whole machine) I am curious why there is no way to use/execute a function when browsing the catalog. It wouldn't seem too far-fetched to allow using e.g. XEQ while stepping through a catalog to execute the "current" function.

I'm still very new to HP41 operation and wonder if there are any known or suspected design considerations that would make this impractical or downright stupid.
Find all posts by this user
Quote this message in a reply
05-02-2021, 08:04 PM (This post was last modified: 05-02-2021 08:06 PM by Steve Simpkin.)
Post: #2
RE: HP 41 Catalog implementation
(05-02-2021 07:25 PM)Siegfried Wrote:  While the HP41 CATALOG function may probably be called revolutionary for its time (as the whole machine) I am curious why there is no way to use/execute a function when browsing the catalog. It wouldn't seem too far-fetched to allow using e.g. XEQ while stepping through a catalog to execute the "current" function.

I'm still very new to HP41 operation and wonder if there are any known or suspected design considerations that would make this impractical or downright stupid.

I would like to know as well. That would have seemed like a really handy way to execute a function that you didn't remember the name of and had to search the catalog for. I suppose the answer might be that "Life is short and ROM is full" Smile
Visit this user's website Find all posts by this user
Quote this message in a reply
05-02-2021, 08:39 PM
Post: #3
RE: HP 41 Catalog implementation
You can do that on catalog 1.

press CAT 1.
when the function appears press R/S.
use backarrow to exit catalog.
press R/S and the function will execute.

Works also with roms containing normal programs but not with the built in functions in cat 3
Find all posts by this user
Quote this message in a reply
05-03-2021, 12:34 AM
Post: #4
RE: HP 41 Catalog implementation
XEQ+ is similar to what you want, in Angel's WarpCore module. However, in trying it just now to verify something to write here, I did just find a serious bug, the first bug I think I've ever found in the 41cx, which I need to tell him about. It apparently crashed and I thought I lost everything; but after pressing various button combinations which I thought were supposed to reset it, I did get it back, but a lot of my key assignments were gone, and a few new ones were there but I couldn't tell what they were, like that CATALOG was doing something else, and so was XEQ. When I figured this out, the solution of course was to turn off the USER keyboard. My programs and files were still there, and the time and date were still correct.

http://WilsonMinesCo.com (Lots of HP-41 links at the bottom of the links page, http://wilsonminesco.com/links.html )
Visit this user's website Find all posts by this user
Quote this message in a reply
05-03-2021, 01:17 AM
Post: #5
RE: HP 41 Catalog implementation
The CCD ROM (from 1985) added this feature while in CAT-2:

-In normal mode, pressing [XEQ] would execute the currently highlighted command/function

-In Program mode (yes, CAT-2 works in PRGM mode) pressing [XEQ] will insert the currently highlighted command into the program you are editing, as the next instruction

Angel Martin's AMC-OSX module includes this, plus many other CCD ROM extensions to the OS, so it can be installed and used today in emulators, the 41CL and the DM41X.

So this is not a new idea, and has been there a very long time.

As for why it was not in the original OS, who can say, but it's likely a combination of ROM being full (which it pretty much was) as well the team certainly never imagining from the beginning, just how far and wide the variety of modules would evolve in it's future.

Its easy to look back on an old, mature design and wonder why the initial developers didn't see this or add that, but the magic hindsight of 20/20 just wasn't available. Remember that the core 41 OS was basically done in '79 and even the CX features were added as mostly external ROM commands; it never really evolved very much once completed. The most interesting OS enhancements came from 3rd parties, like this one.

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
05-03-2021, 05:41 AM (This post was last modified: 05-03-2021 05:51 AM by Ángel Martin.)
Post: #6
RE: HP 41 Catalog implementation
(05-03-2021 12:34 AM)Garth Wilson Wrote:  It apparently crashed and I thought I lost everything; but after pressing various button combinations which I thought were supposed to reset it, I did get it back, but a lot of my key assignments were gone, and a few new ones were there but I couldn't tell what they were, like that CATALOG was doing something else, and so was XEQ. When I figured this out, the solution of course was to turn off the USER keyboard. My programs and files were still there, and the time and date were still correct.

It's hard to say without more details (which configuration, what modules were plugged where, which sequence of events to reproduce the failure). The fact that some of your key assignments were lost indicates a write to status register "e" instead of to the LCD. This feels like a ROM mismatch (Library#4 / WARP), so I'd first ensure they have the paired versions.I have attached the latest & greatest ROM images here for you to try.

PS. Was this on a CL or using NoVRAMs? I know Diego has recently updated the way bank-switching works precisely to allow for all WARP functionality to work on them, but this may not be related to your case. Another thing to watch for is not to plug the WARP in an external port that contains another bank-switching module, this is a known restriction of the bank-switching models.


Attached File(s)
.zip  WARP_BS3.zip (Size: 52.44 KB / Downloads: 3)
Find all posts by this user
Quote this message in a reply
05-03-2021, 06:35 AM
Post: #7
RE: HP 41 Catalog implementation
Thanks. It's a stock Halfnut 41cx with Clonix-D which I bought 3½ years ago. I had Diego load it before sending it, because I don't use Windows, and his software for it was Windows-only. I have it in port 1, and there's nothing in port 3 below it. The double XMem is in port 2, and my combined HPIL/XIO was not plugged in at the time. When the latter is plugged in (so I can use my HP92198 video interface), CAT 2 shows:

   

I think that when I pressed some of the keys that got the re-assignments, and held the key down to see what it was trying to do, it gave an XROM number. I should have written everything down; but I was afraid that if it was in some kind of loop, it would do more destruction if I didn't hurry. It's the only problem I've had that seemed to be a bug.

For others' benefit, what I wrote in the email was:
Quote:What was in the display when the calc froze up included @@x& (where I can't remember what the x was). I had been looking for SQRT which was getting skipped in the S's, and what might have triggered the problem was that I tried the Q after the S, looking for anything starting with SQ (for SQRT). When it appeared to be crashed, I pressed <shift>ON, <shift><back_arrow>, <back_arrow>ON, R/S, and different things, and then I think I pressed ON by itself and got it to turn off, then when I turned it back on, there was some degree of control again but it was hard to figure out what was happening since my key assignments had changed. Then I took it out of USER keyboard. I had to re-do most of my key assignments, but the rest of what was in memory seems to be intact, and SIZE? gives the number I had had it at.

I've never before had a crash, although I did get the MEMORY LOST at least a couple of times in the 1980's when I was new to synthetic programming, before I had the ZENROM module.

http://WilsonMinesCo.com (Lots of HP-41 links at the bottom of the links page, http://wilsonminesco.com/links.html )
Visit this user's website Find all posts by this user
Quote this message in a reply
05-03-2021, 12:52 PM
Post: #8
RE: HP 41 Catalog implementation
(05-03-2021 06:35 AM)Garth Wilson Wrote:  When the latter is plugged in (so I can use my HP92198 video interface), CAT 2 shows:

Since it wouldn't appear in a CAT'2 listing I don't see the Library#4 listed, but I assume it's in the Clonix-D. Also I see you're using the WARPB2 version, quite an old one - although this shoudn't be a problem if it's paired with the correct Library#4 of course.

I understand your situation with Windoze but if at all possible it'll be good to upgrade to the latest revisions.
Find all posts by this user
Quote this message in a reply
05-03-2021, 03:24 PM
Post: #9
RE: HP 41 Catalog implementation
(05-03-2021 01:17 AM)rprosperi Wrote:  The CCD ROM (from 1985) added this feature while in CAT-2:

-In normal mode, pressing [XEQ] would execute the currently highlighted command/function

-In Program mode (yes, CAT-2 works in PRGM mode) pressing [XEQ] will insert the currently highlighted command into the program you are editing, as the next instruction
I am amazed that a ROM could change the CATALOG behaviour like that.
Another reason to get one...


(05-03-2021 01:17 AM)rprosperi Wrote:  Its easy to look back on an old, mature design and wonder why the initial developers didn't see this or add that, but the magic hindsight of 20/20 just wasn't available. Remember that the core 41 OS was basically done in '79 and even the CX features were added as mostly external ROM commands; it never really evolved very much once completed. The most interesting OS enhancements came from 3rd parties, like this one.
Of course. I assumed as much.
Find all posts by this user
Quote this message in a reply
05-03-2021, 04:35 PM
Post: #10
RE: HP 41 Catalog implementation
I would suggest getting an HP-41CL (HP-41 with a replacement CPU board) or a DM-41.

A WHOLE lot easier than finding the physical CCD rom or Zenrom these days. :-)

My 2 cents.
Gene
Find all posts by this user
Quote this message in a reply
05-03-2021, 09:22 PM
Post: #11
RE: HP 41 Catalog implementation
I think the reason is a combination of that it would not work that way in the original design, and the ROM was full.

When a catalog is stopped the keyboard acts "the normal way". Pressing a numeric keys starts numeric entry (and terminates the catalog). The logical thing would be altered XEQ key, but it works the usual way putting up a prompt.

R/S and SST/BST have special handling when you are in catalog mode (ENTER also in enhanced 41CX CAT 2).

I suppose they could have special handled XEQ too, but the ROM was literally full and there were other things that probably should have been there that were (also) left out. They had to stop somewhere.
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: 1 Guest(s)