HP Forums
41CV memory - Printable Version

+- HP Forums (https://archived.hpcalc.org/museumforum)
+-- Forum: HP Museum Forums (https://archived.hpcalc.org/museumforum/forum-1.html)
+--- Forum: Old HP Forum Archives (https://archived.hpcalc.org/museumforum/forum-2.html)
+--- Thread: 41CV memory (/thread-106065.html)

41CV memory - Paul Beijer - 01-16-2007


I just bought a 41CV. Batteries were dead so I replaced them with fresh ones. The machine powered up with the message "MEMORY LOST" like expected. When I went into program mode I was surprised to see that there were only 46 REGS available just like my 41C. I thought the CV was supposed to have 319 REGS.
Am I missing something? Btw. when I opened up the calc the PCB lookes quite a bit different from the pic on the website.


Edited: 16 Jan 2007, 1:35 p.m. after one or more responses were posted

Re: 41CV memory - Les Bell - 01-16-2007

Don't panic. According to the HP-41C/CV Operating Manual"

"When the calculator 'wakes up' . . . the main memory is set with:

" 17 registers in teh HP-41C or 273 registers in the HP-41CV allocated for data storage.

" 46 completely unused rgisters available for program storage and User mode key assignments"

In other words, the C and CV both look the same when you initially switch to PRGM mode. The CX is different, of course. But when you execute a SIZE instruction, you'll see - well, you should see - you get a lot more registers for programs.


--- Les


Re: 41CV memory - Paul Beijer - 01-16-2007

Thanks Les,
I'll have to dig into the manual first I guess.


HP41CV versus HP41CX initial memory organization - Vieira, Luiz C. (Brazil) - 01-16-2007


as mentioned by Les in his followup, the initial memory organization in the HP41CX is different of the one in both HP41C and HP41CV. Experienced (and some new) HP41 users know that by heart, but it is harmless to talk about this.

A small remark: the actual amount of memory available in the HP41CV/CX or in the HP41C with four memory modules or one quad memory module is, in fact, 320 registers, but there is always a permanent, 3-byte .END. function in program memory, so users actually have 319 registers + 4 bytes available, or 2237 bytes. No X-memory being considered here.

If you have an HP41CX and it has all memory cleared (MEMORY LOST in the display) and you put the calculator in PRoGraM mode, you'll see

00 REG 219
instead of the common
00 REG 46
found in the HP41C or HP41CV. As the HP41CX has many additional, resident features, I believe the software design team decided it would be a good idea to reorganize the HP41CX´ always available 319 registers such that 100 numbered registers are available (R00 to R99) and all remaining 219 registers + 4 Bytes are allocated to programs.

My 2¢.

Luiz (Brazil)

Edited: 16 Jan 2007, 6:15 a.m.

Re: 41CV memory - Les Wright - 01-16-2007

Totally normal behaviour.

The 00 REG 46 display is telling you that 46 registers are allocated for program storage. The remaining 273 are data registers.

You repartion this arrangement with the SIZE command. Try XEQ ALPHA SIZE ALPHA 000, then switch to program mode (PRGM). You now have 319 registers for program storage an none for data storage. Do likewise with SIZE 319--now 0 registers for programs. It is obviously more useful to set the partition somewhere in between!!!!


Re: 41CV memory - Bram - 01-16-2007

It stands to reason that SIZE 100 is the optimum choice, that has become default on the HP-41CX. "Only" 100 registers are directly accessible via the keyboard, so defining more is somewhat inconvenient anyway. 100 storage registers leaves enough program space, for the time being. After a while you can always fine tune when required.

Re: 41CV memory & HP-15C "DIM (i)" - Karl Schneider - 01-16-2007

I'll confirm and elaborate upon what Les and Bram said.

It's significant that the original HP-41C had only 64 registers, part of the last of which was permanently de-allocated for the .END. instruction, leaving 63 full registers available. So, the default allocation allowed 46 full free registers for programming, and reserved 17 registers (R00-R16) for data. This is the allocation obtained by "SIZE 018".

The HP-41CV is functionally equivalent to an HP-41C with an HP82170A Quad Memory module, which adds 4 x 64 = 256 registers of memory. 63 + 256 = 319 total registers were made available.

The initial default allocation of 46 registers for programming was not changed for the HP-41CV, so the user was given 273 data registers, of which the last 173 were only indirectly addressible. This made little sense, so the initial allocation for the HP-41CX was changed to 100 data registers (all directly addressible), leaving 219 registers for programming.

Alles klar? :-)

Side notes:

  1. A useful function "SIZE?" is built into the HP-41CX, and is available on the HP 82180A X-functions module for the HP-41C/CV. It will tell the user (or a program) how many registers are allocated for data.

  2. The "DIM (i)" function on the HP-15C -- analagous to "SIZE" -- works a bit differently. The user specifies the highest-numbered register to be allocated for data, rather than the number of registers. The HP-15C has also 64 allocatable registers, plus the non-allocatable R0, R1, and I. So, the default setting "19 DIM (i)" alocates 20 numbered data registers and 46 registers for programming. Each of the 20 registers is directly addressible (using .0 through .9 for the last ten registers). R0 and R1 are non-allocatable because they are used for matrix indices. So, if all 64 allocatable registers are utilized to store an 8x8 matrix, it can be accessed in the normal manner.

-- KS

Edited: 16 Jan 2007, 10:15 p.m.