Closed redwizard42 closed 5 months ago
Example use case:
Access data at a calculated location at the end of a pointer. Recalled value at the Add Address Line below evaluations to Pointer Value + (16-Bit Value at 0x1234) * 8 + 4. The 8-bit value at this location is then compared to 0x1c.
Remember Mem 16-Bit 0x1234 * Value 0x08
Remember Recall + Value 0x04
Remember Recall + Mem 32-Bit Pointer
Add Address Recall
Mem 8-Bit 0x00 = Value 0x1c
Or, just remember a value to use later: | ID | Flag | Type | Size | Memory | Cmp | Type | Size | Mem/Val | Hits |
---|---|---|---|---|---|---|---|---|---|---|
1 | Remember | Mem | 16-bit | 0x1234 | - | Delta | 16-Bit | 0x1224 | ||
2 | And Next | Recall | = | Value | 0x05 | |||||
3 | Add Hits | Mem | 8-Bit | 0x1000 | = | Value | 0x03 | 1 (0) | ||
4 | And Next | Recall | = | Value | 0x14 | |||||
5 | Add Hits | Mem | 8-Bit | 0x1000 | = | Value | 0x03 | 1 (0) | ||
6 | And Next | Recall | = | Value | 0x14 | |||||
7 | Add Hits | Mem | 8-Bit | 0x1000 | = | Value | 0x03 | 1 (0) | ||
8 | Measured | Value | 0x00 | = | Value | 0x00 | 3 (0) |
Comments, indentation, etc should all be cleaned up now.
Is there only one slot for the accumulator or will you do multiple, kinda like variables? From what I can tell you can only store one value at any given time, why not make it 4 or 8 values?
Adds a Remember condition to store a value into a designated accumulator for the current group (core, alt1, etc). Defaults to accepting a single operand or can specify an operator and a second operand. At the beginning of an evaluation, the accumulator holds an unsigned integer with value 0.
Adds a Recall operand which evaluates to the value of the group's accumulator.
The Remember condition is a combining condition (similar to Add Source and Add Address) and does not break a chain.