Age | Commit message (Collapse) | Author |
|
ADDR instruction now executes correctly with or without a register
modifier being present on the next address.
|
|
Like in the original Salis, all register modifiers default to 'rax'
when not enough are present.
|
|
|
|
[#27] C library now only takes care of relaying data to/from functors,
which must be provided by the wrapping application (in this case, a
new python module named 'common.py').
|
|
|
|
|
|
[#28] Bit flags were exclusively a cosmetic component, not needed at
all to run the simulator. I've added a new 'render' module that takes
care of appending bit flags to rendered memory images, providing the
same aesthetic result, but only when requested.
|
|
[#28] This flag served no purpose except to facilitate rendering.
However, performance has a higher priority so I've eliminated this
feature. Block start rendering can still be implemented via other
methods.
|
|
[#28] IP flag served no purpose except to facilitate rendering.
However, performance has a higher priority so I've eliminated this
feature. IP rendering can still be implemented via other methods.
|
|
[#17] After having removed organisms' reward/punishment mechanisms,
the number of executed instructions will always match the number of
processes. No need to keep this.
|
|
[#16] Allowing organisms to EAT information is causing huge reefs to
form too early and occupy most memory space. Here we replace EATB/F
with the old shift left/right. This is done to compare simulation
stability.
|
|
I've found that allowing organisms to eat from everywhere (including
addresses owned by other organisms) made the simulation too unstable.
Organisms may now eat from either free memory, or from self-owned
memory.
|
|
|