Skip to main content

Search

Advance time frame by frame to debug logic in Test Mode

  • TheBeardyMan

    There's no general solution for stepping backward - for example if your logic sets the value of a variable to the square of what it was before, and the new value is 4,  what was the old value? 2 or -2?

    But pausing and single stepping forwards should be possible. To make it more generally useful, perhaps this could be a "breakpoint" gadget that pauses time when it becomes powered on. Time would remain paused until restarted manually, even if the gadget becomes powered off. While the gadget remains powered on, attempts to restart time would single step instead. This would allow the creation of logic systems that can detect when something has gone wrong and turn on the breakpoint gadget to allow the creator to have a close look at what's going on.

    The obstacle to adding this feature is that some logic systems cannot be paused. Anything that has a feedback loop wire - for example a Calculator wired to integrate or differentiate a signal over time - is continuously updated even while time is not running. I reported this as a bug way back in 2019, but Mm resolved it as by design. There are use cases for logic systems that update while time isn't running - for example editing tools - but we really need a mode in which everything can be paused. Perhaps they could make Test mode do this.

Please sign in to leave a comment.