Analytical Combinator

by bruno77

A programmable circuit combinator controlled via a RISC-V inspired assembly language. Supports reading red and green input signals and writing up to four output signals per tick.

Content
8 days ago
2.0
77
Circuit network

a Change Digest for 0.8.30

8 days ago

Here's the tl;dr; changes since v0.8.18:

  • Added Write Signal Immediate (WSIGI). Just like Write Signal except the third operand is an immediate value. This saves using a register to write a constant (as if 31 general purpose registers is a constraint).

  • Added immediate versions of bit-wise AND, OR, and XOR. Opcodes are ANDI, ORI, and XORI.

  • Moved as much validation as I can think of to load-time rather than run-time. Checks for instruction syntax, register names, immediate values, lables (both missing and duplicate), etc. are done when you save the program rather than when the line of code executes some time in the future (when you may not be around to notice). Many of the unreleased versions were related to getting this working properly - particularly for items created in and being migrated from earlier versions of the mod.

  • Optimized execution of WAIT. All of my use-cases involve polling inputs at a 1Hz rate, so I have WAIT 60 instructions in all of my items. Therefore, I want minimal script execution during the game ticks when an analytical combinator is WAITing.

New response