Version 3.0 implements multi column register memory.
On this version there are 10 columns defined on each register.
So the columns available are:
Column with title "value" (equal to mem0)
Columns mem1, mem2, mem3, mem4, mem5, mem6, mem7, mem8, mem9
To access the extended memory only indirect operations are used.
Examples:
saves 1 on register 06 column 5
-----------------------------------------------
4.03 |
STO 01 |
"ABC" |
ASTO IND 01 |
saves ABC on register 04 column 3
-----------------------------------------------
5.02 |
ENTER^ |
100 |
STO IND Y |
saves 100 on register 05 column 2
-----------------------------------------------
saves 15 on register 06 column 4
The two first decimals represent the column.
On this version the implemented commands to access other columns are:
STO , RCL , ASTO, ARCL
All these commands must use IND to store or recall data
I'm sorry: ST+, ST-, ST* ,ST/ and other not implemented yet.
But these commands will be implemented soon.
Also, i'm testing the new features with 10 columns only but i am planning to increase
the columns to 100 on the following versions.
Column 0 is the standard memory of sim41
So:
is equal to:
Both chunks of code are equal and save 2 to register 05 or register 05 column 0 (this is the same thing)
Note that the compatibility with classic HP41 memory management is total when the first two
decimals are .00 on the memory used as reference before use indirect.