As the title says, an oscilloscope component/feature is very useful for debugging, showing how one or more signals change over some ticks.
[General Description]
- might have some "monitoring pins", like how the Program Component monitors signals and registers.
- should be able to monitor multiple signals simutaneously
- not necessarily to be an actual component, it can be a feature, a built-in feature of the game
- can export the captured data into a CSV file
[Recording Modes]
- Constant recording mode: It is able to record for an fairly long time after triggered, but requires to simulate the game under the slow mode or manual step mode. It pauses the game once triggered, and wait for the player to resume the game or step the ticks. Restrictions of like 65535 ticks should be implemented
- Fixed length recording mode: automatically record for an given length of ticks after triggered, not pausing the game when triggered. Pauses the game after it has done recording and show the data.
[Triggering modes]
- Breakpoint mode: triggers when it reaches the breakpoint in the Program Component
- Tick-count mode: triggers when the total tick-count at the top-left corner reaches a given number
- ON binary signal mode: triggers when an ON signal, produced by the simulated circuit, is input through an actual pin. An alternate solution is to use the existing INTERRUPTING component to trigger.
- Value change mode: triggers when one or more of the signals monitored change
[Data display]
Show all data as wave form, like those logic simulation software out there do.