Sim41 Extended (sim41e)


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:


6.05
STO 00
1
STO IND 00
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

-----------------------------------------------

6.04
STO M
15
STO IND M
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:



5
STO 10
2
STO IND 10
is equal to:

5.00
STO 10
2
STO IND 10

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.