Could someone educate me on options for HEPAX RAM size?

Discussion around the SwissMicros DM41X calculator
Ángel Martin
Posts: 145
Joined: Mon Apr 24, 2017 8:19 pm

Re: Could someone educate me on options for HEPAX RAM size?

Post by Ángel Martin »

whuyse wrote:
Thu Feb 18, 2021 10:44 am
Thank you, Angel.
Does this mean HEPAX_4H needs the LIB4 module as well? It's not clear for me..
It isn't .. the very last line of your document, sorry!
Werner
I can see that's a very confusing last statement, probably best to remove it and replace it with this:

"Although the library#4 is not strictly needed for the basic HEPAX functions, it is highly recommended and very much needed for the sub-functions extensions, such as the CATalogs and others. "

When in doubt, just plug it in ;-)
rprosperi
Posts: 1698
Joined: Mon Apr 24, 2017 7:48 pm
Location: New York

Re: Could someone educate me on options for HEPAX RAM size?

Post by rprosperi »

Oh! Then I've misunderstood all along, I thought it was required. I've advised (too) many folks that LIB4 was needed, though I suppose no harm there.

Sorry for my poor advice above Werner, though realistically, I can think of no reason to not install LIB4, as nothing else uses P4, and the sub-functions make using it a lot better.

Thanks for clarifying this Angel. :)
--bob p

DM42: β00071 & 00282, DM41X: β00071 & 00656, DM10L: 071/100
whuyse
Posts: 197
Joined: Thu Dec 21, 2017 1:23 pm

Re: Could someone educate me on options for HEPAX RAM size?

Post by whuyse »

Since the 4H doc actually said 'full support of the Lib#4 has added functionality (..)', I was confused. Support of the Lib#4? I thought I had understood that Lib#4 was a collection of often-used Mcode snippets conveniently placed at a fixed address, so you either use it (and then you need it) or you don't.
So, yes, you need it, but not for everything, so you CAN do without it.
Thanks Bob & Angel.
Also, as far as I understand, to solve Dave's question, someone Who Knows How to Do That has to create a HEPAX MOD with 4, 6 or 8 pages to configure, for use in the DM41X. Or just a HEPAX Memory module MOD that you can load several times? Probably showing off my complete ignorance here.

Cheers, Werner
41CV†,42S,48GX,49G,DM42,DM41X,17BII,15CE, DM15L
Ángel Martin
Posts: 145
Joined: Mon Apr 24, 2017 8:19 pm

Re: Could someone educate me on options for HEPAX RAM size?

Post by Ángel Martin »

whuyse wrote:
Thu Feb 18, 2021 6:45 pm
Since the 4H doc actually said 'full support of the Lib#4 has added functionality (..)', I was confused. Support of the Lib#4? I thought I had understood that Lib#4 was a collection of often-used Mcode snippets conveniently placed at a fixed address, so you either use it (and then you need it) or you don't.
So, yes, you need it, but not for everything, so you CAN do without it.
Better to always have it installed, there are many places in the code (across multiple modules) where the Lib#4 is used and it does not hurt to have it always there - unless you're using Hakan's BOOST module of course.
whuyse wrote:
Thu Feb 18, 2021 6:45 pm
Also, as far as I understand, to solve Dave's question, someone Who Knows How to Do That has to create a HEPAX MOD with 4, 6 or 8 pages to configure, for use in the DM41X. Or just a HEPAX Memory module MOD that you can load several times? Probably showing off my complete ignorance here.
Not at all, it's a very valid point indeed. I really don't know if a HEPRAM-Only MOD is possible on the 41X, but surely enough should be possible to create another MOD with additional HEPRAM pages. I'll give it a try on V41 and then will post for your testing. .

PS. OK, here it is... give it a try.
It's configured with 4x HEPRAM Pages.
I called it "8H" to denote it's double RAM of the original "4H"
Attachments
Capture.PNG
Capture.PNG (8.34 KiB) Viewed 3464 times
HEPAX_8H.zip
(19.47 KiB) Downloaded 166 times
hpgene
Posts: 36
Joined: Mon May 29, 2017 3:02 pm

Re: Could someone educate me on options for HEPAX RAM size?

Post by hpgene »

Angel... so what that represents is ...

Hepax RAM pages in pages 8, 9, A and B. Each of those would be 4K of Hepax RAM.

however, they are only useful if the contents had already been loaded with Hepax functions. Once loaded, the hepax module is then unplugged and the hepax ram still works to access the contents.

Am I understanding that correctly?

If I am, then you could have pages 8 - F loaded with 4K hepax ram images full of whatever programs you want as your own FOCAL program library.

Or, where have I gone off the rails ? :-)
Dave Britten
Posts: 137
Joined: Wed Jun 14, 2017 9:27 pm

Re: Could someone educate me on options for HEPAX RAM size?

Post by Dave Britten »

hpgene wrote:
Fri Feb 19, 2021 2:38 pm
Angel... so what that represents is ...

Hepax RAM pages in pages 8, 9, A and B. Each of those would be 4K of Hepax RAM.

however, they are only useful if the contents had already been loaded with Hepax functions. Once loaded, the hepax module is then unplugged and the hepax ram still works to access the contents.

Am I understanding that correctly?

If I am, then you could have pages 8 - F loaded with 4K hepax ram images full of whatever programs you want as your own FOCAL program library.

Or, where have I gone off the rails ? :-)
My understanding of it - and bear in mind I'm somewhat of a layman that didn't have the opportunity to grow up with the 41 - is that you need the HEPAX module to access anything in HEPAX RAM (much like X-FUNC and X-MEM). But I've heard it's possible to convert HEPAX RAM pages into .mod files and use them like standard ROMs.

How does HEPAX handle calls to programs in the HEPAX RAM? Since any programs you store are global labels, do they get converted to XROM instructions behind the scenes, or do they remain normal global-label XEQ instructions that do the usual global label search?

EDIT: Looks like it's XROMs, since adding XEQ "REMIND" to a program only added 2 bytes to it.
whuyse
Posts: 197
Joined: Thu Dec 21, 2017 1:23 pm

Re: Could someone educate me on options for HEPAX RAM size?

Post by whuyse »

The way I understand it the HEPAX RAM pages still need the HEPAX module itself. As with the Extended Functions Module, you can create 'files' in the RAM: data, text or program files. BUT here, when you store program files, they become part of CAT 2 and can be executed, your own on-the-fly FOCAL ROM if you want. Global labels are turned into XROM functions.
The drawback is that if for some reason, you add or delete a function 'in the middle', all other functions shift up a place - XROM calls are by number, not by alpha label. So make sure to put the most 'finished' programs first ;-)
You can somehow reserve a page to act as a ROM module as well, in which you can copy another ROM (or use the hex editor to create your own..). But even then, the HEPAX will need to remain plugged in, as that is where the page resides. I'm still in the learning phase, though.
The HEPAX is the Holy Grail of 41 modules, and its availability for the DM41X was, for me, the ultimate reason to get one. It is underway ;-)
In the meantime, I'll see if it works with I41CX+ on my phone
Werner
41CV†,42S,48GX,49G,DM42,DM41X,17BII,15CE, DM15L
hpgene
Posts: 36
Joined: Mon May 29, 2017 3:02 pm

Re: Could someone educate me on options for HEPAX RAM size?

Post by hpgene »

Reason I asked is that I know you need the Hepax module to change anything in a Hepax ram page, but I was able in the past to still access programs in a hepram page with the hepax module unplugged.

Had not intended to do that :-) but it did work.

So I'm curious. Bigger :-)
Dave Britten
Posts: 137
Joined: Wed Jun 14, 2017 9:27 pm

Re: Could someone educate me on options for HEPAX RAM size?

Post by Dave Britten »

whuyse wrote:
Fri Feb 19, 2021 3:07 pm
Global labels are turned into XROM functions.
The drawback is that if for some reason, you add or delete a function 'in the middle', all other functions shift up a place - XROM calls are by number, not by alpha label. So make sure to put the most 'finished' programs first ;-)
I figured that would probably happen if it's using XROMs and building a FAT out of them on the fly. Not a big deal if you're just calling programs from the keyboard, but obviously a bigger issue if you're calling them from other programs. :)

hpgene wrote:
Fri Feb 19, 2021 3:39 pm
Reason I asked is that I know you need the Hepax module to change anything in a Hepax ram page, but I was able in the past to still access programs in a hepram page with the hepax module unplugged.

Had not intended to do that :-) but it did work.

So I'm curious. Bigger :-)
Interesting! Evidently the work needed to convert a HEPAX RAM page to a standalone ROM module is less than I thought. ;)
Ángel Martin
Posts: 145
Joined: Mon Apr 24, 2017 8:19 pm

Re: Could someone educate me on options for HEPAX RAM size?

Post by Ángel Martin »

Guys, there are two things at play here:

1. The HEPAX structure, ROM, HEPRAM, and how it actually works.
2. The implementation on the DM-41X

- For #1 I strongly encourage you to refer to the excellent manuals, available at hp41.org. Yes you need the HEPAX ROM to manage the HEPRAM pages, yes they look like "regular" ROMs to the HP-41 O/S.

- For #2, the HEPAX RAM is configured using the 41X RAM resources as per the instructions in the MOD file. The HEPAX_4H includes instructions to setup 2 HEPRAM pages, whereas the HEPAX_8H configures 4 HEPRAM pages as shown in the screenshot.

I don't know what happens to the content of the HEPRAM pages when you unplug the HEPAX module, but I suspect they remain in the calculator RAM and therefore will be available when you plug it in again. You can try that yourselves ;-)

Cheers,
ÁM
Post Reply