File size commands not working.

File size commands not working.

Postby Karpurk » Sat Mar 29, 2025 5:51 pm

Hello,

I just finished and saved a 274-line program to my card reader and now I'm trying to store that main memory file into a program file. When I use the SAVEP as described on page 124, I get a "NO ROOM" message.

Then I tried to check the program file size: Using the procedure found on page 208 for FLSIZE, and; page 211 for RCLPT and RCLPTA I get the same result: "FL NOT FOUND".

I have packed the memory.
CATALOG 1 indicates that the file is present using 922 bytes and 86 registers available.
CATALOG 4 shows "DIR EMPTY".
The program is present when I enter PRGM mode and works fine.
EMROOM indicates that I have 124 registers available.

I have 2 HP-41CXs and exactly the same thing happens on both computers.

My questions are:
1. Is my program so large that I am using too much memory to save it with the SAVEP command?
2. Is my program so large that FLSIZE, RCLPT and RCLPTA will not work?
3. Will an EXTENDED MEMORY modules expand my memory on my HP-41CXs so I can use SAVEP, FLSIZE, RCLPT and RCLPTA?

Thank you,
Larry
Karpurk
..
..
 
Posts: 5
Joined: Sun Feb 09, 2025 6:41 pm

Re: File size commands not working.

Postby Garth » Sat Mar 29, 2025 8:41 pm

Karpurk wrote:CATALOG 1 indicates that the file is present using 922

That's 922/7=132 registers, plus maybe a little overhead for each file.  I don't remember off the top of my head how much overhead there is for each file, but 132 is already more than the 124 that the extended-functions module has.  The FLSIZE, RCLPT and RCLPTA instructions won't work for a file that does not yet exist in extended memory.  If you add an extended-memory module or two, you'll have plenty of room for this program.
Garth
Moderator
Moderator
 
Posts: 305
Joined: Tue Jan 20, 2009 1:31 am

Re: File size commands not working.

Postby mike-stgt » Sat Mar 29, 2025 10:08 pm

Karpurk wrote:When I use the SAVEP as described on page 124, I get a "NO ROOM" message.

This message indicates that there is not enough space/memory to perform the function. So it is aborted completely, not only partially after it's partially executed.
Using the procedure found on page 208 for FLSIZE, and; page 211 for RCLPT and RCLPTA I get the same result: "FL NOT FOUND".

Your conclution presented in this thread's subject is wrong, neither FLSIZE nor RCLPT nor RCLPTA are not working, SAVEP had no chance to fulfil its task -- and told so: "NO ROOM".
My questions are:
1. Is my program so large that I am using too much memory to save it with the SAVEP command?

Yes, with your current setup. Plug one ore two XMem modules and it will work.
2. Is my program so large that FLSIZE, RCLPT and RCLPTA will not work?

No. see above.
3. Will an EXTENDED MEMORY modules expand my memory on my HP-41CXs so I can use SAVEP, FLSIZE, RCLPT and RCLPTA?

RCLPT and RCLPTA will never work on program files.

To convice you your 41CX works fine try a shorter program, something like "%T" (percentage of total):
Code: Select all
 01▶LBL "%T"
 02 1/X
 03 %
 04 1/X
 05 END

Question: how many % are 3 from a total of 5? 5 Enter 3 XEQ "%T" shows 60. (Since 5 is still in Y-register just execute % to see, that's correct.)
With this 5 steps program you may test the XM functions.
mike-stgt
.........
.........
 
Posts: 192
Joined: Tue Dec 24, 2019 12:12 pm

Re: File size commands not working.

Postby Karpurk » Sun Mar 30, 2025 12:33 am

OK, all is well now.

I put one "X MEMORY" module in and it all works.

I had tried putting in up to 2 "Memory Module(s)" in without success, but apparently they only work with my HP-41C.

Thanks for your help!
Larry
Karpurk
..
..
 
Posts: 5
Joined: Sun Feb 09, 2025 6:41 pm

Re: File size commands not working.

Postby Garth » Sun Mar 30, 2025 1:08 am

Right.  Main memory, like to fill out the 41c (no "v" or "x" at the end), and extended memory, are different.  Any my apologies for not mentioning that you cannot set or recall a program file's pointer like you can a data file's or a text file's.
Garth
Moderator
Moderator
 
Posts: 305
Joined: Tue Jan 20, 2009 1:31 am

Re: File size commands not working.

Postby pcscote » Mon Mar 31, 2025 6:29 pm

For reference, this is the RAM memory map for the HP-41 related to the module and memory types.

Code: Select all
+-------------------------+-----------+------+--------------+--------------+
| Description             | Registers | Type | From Address |   To Address |
+-------------------------+-----+-----+------+--------------+--------------+
| 41C/CV/CX status registers    |  16 | main |    0 (0x000) |   15 (0x00F) |
+-------------------------------+-----+------+--------------+--------------+

Code: Select all
+-------------------------------+-----+------+--------------+--------------+
| 41C  build-in memory          |  64 | main |  192 (0x0C0) |  255 (0x0FF) |
| 41C  +1 x 82106A memory       | 128 | main |  192 (0x0C0) |  319 (0x13F) |
| 41C  +2 x 82106A memory       | 192 | main |  192 (0x0C0) |  383 (0x17F) |
| 41C  +3 x 82106A memory       | 256 | main |  192 (0x0C0) |  447 (0x1BF) |
| 41C  +4 x 82106A memory       | 320 | main |  192 (0x0C0) |  511 (0x1FF) |
+-------------------------------+-----+------+--------------+--------------+
| 41C  +1 x 82170A quad memory  | 320 | main |  192 (0x0C0) |  511 (0x1FF) | replace 4x 82106A memory module, hence the name quad
+-------------------------------+-----+------+--------------+--------------+

Code: Select all
+-------------------------------+-----+------+--------------+--------------+
| 41CV build-in memory          | 320 | main |  192 (0x0C0) |  511 (0x1FF) |
+-------------------------------+-----+------+--------------+--------------+
| 41CX build-in memory          | 320 | main |  192 (0x0C0) |  511 (0x1FF) |
| 41CX build-in extended-memory | 128 | ext. |   64 (0x040) |  191 (0x0BF) |
+-------------------------------+-----+------+--------------+--------------+

Code: Select all
+-------------------------------+-----+------+--------------+--------------+
| 82180A x-fncs/memory module   | 128 | ext. |   64 (0x040) |  191 (0x0BF) | for the HP-41C and HP-41CV, built-in in the CX
| 82181A x-memory first module  | 239 | ext. |  513 (0x201) |  751 (0x2EF) |
| 82181A x-memory second module | 239 | ext. |  769 (0x301) | 1007 (0x3EF) |
+-------------------------------+-----+------+--------------+--------------+

Code: Select all
+-------------------------------+-----+------+--------------+--------------+
| Empty Space                   |  48 | none |   16 (0x010) |   63 (0x03F) |
| Empty Space                   |   1 | none |  512 (0x200) |  512 (0x200) |
| Empty Space                   |  17 | none |  752 (0x2F0) |  768 (0x300) |
| Empty Space                   |  16 | none | 1008 (0x3F0) | 1023 (0x3FF) |
+-------------------------------+-----+------+--------------+--------------+

Code: Select all
+------------------------------+------+------+--------------+--------------+
| expanded memory - block 1    | 1024 | exp. | 1024 (0x400) | 2047 (0x7FF) | now: 41CL and MAXX module, soon on: TULIP4041
| expanded memory - block 2    | 1024 | exp. | 2048 (0x800) | 3071 (0xBFF) | now: 41CL and MAXX module, soon on: TULIP4041
| expanded memory - block 3    | 1024 | exp. | 3072 (0xC00) | 4095 (0xFFF) | now: 41CL and MAXX module, soon on: TULIP4041
+------------------------------+------+------+--------------+--------------+
User avatar
pcscote
.......
.......
 
Posts: 36
Joined: Sat Oct 25, 2014 1:24 pm
Location: Québec/Canada


Return to Programming

Who is online

Users browsing this forum: Semrush [Bot] and 1 guest