Post Reply 
41CL CLXPMEM - YSTO, YRCL and YX<> index problem
08-29-2018, 04:57 AM (This post was last modified: 08-29-2018 05:28 AM by Ángel Martin.)
Post: #3
RE: 41CL CLXPMEM - YSTO, YRCL and YX<> index problem
(08-28-2018 06:07 PM)Podalirius Wrote:  I chose the value 500 because is in the range of MAIN memory addresses
(192-511, Hex 0CD-1FF). Where I am wrong?

the argument 500 refers to the 500th. register within the CL-Expanded memory area, i.e. it's got nothing to do with main RAM addresses. In other words, it's an INDEX, not an address.

Without the CL board these functions are therefore meaningless, because that memory area does not exist.

For instance, using them on a standard HP-41 they properly return NONEXISTENT, as there's a memory existence check embedded into their MCODE.

Using them on emulators may yield confusing results if the emulator does not handle memory addresses properly (i.e. exactly like the original machine). For instance, V41 misinterprets the addresses over 3FF by simply wrapping the "XS" digit back to "0", so it always defaults to the 000-3FF range. If there's Extended memory that *may* match some of the emulated registers, giving you the impression that it is working - but it's really storing the values in unexpected areas.

Maybe this is also what happens with your emulator, so make sure the RAM SELECT instruction doesn't override values above 3FF in your implementation .

BTW the latest version of the CLXPMEM module , rev "2D" includes a CL-Board presence check; I added that precisely to avoid the ambiguous response of V41 that I use extensively. You get the "NO CL" error msg and the operation is not performed. If you don't see that error msg you're not using the latest revision...


"To live or die by your own sword one must first learn to wield it aptly."
Find all posts by this user
Quote this message in a reply
Post Reply 

Messages In This Thread
RE: 41CL CLXPMEM - YSTO, YRCL and YX<> index problem - Ángel Martin - 08-29-2018 04:57 AM

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