benirose / O_C-BenisphereSuite

Benisphere Suite is a continuation of Hemisphere Suite, an alternate firmware for Ornament and Crime, featuring a dual-applet framework with dozens of different modular functions.
168 stars 17 forks source link

Change reset behavior on sequencers - when NOT clocked and reset, next clock should play first step #34

Closed benirose closed 1 year ago

benirose commented 2 years ago

The current behavior for reset in most applets is to set things back to the first step. This is a pretty analog approach, but is probably not the expected behavior, as the next clock will move it to the second step rather than playing the first one. If possible, applets should be updated so that if they are reset while not receiving a clock, the first clock they receive plays the first step.

benirose commented 1 year ago

This has all been address in BSS1.3 branch.

djphazer commented 1 year ago

Looking thru your new reset code tweaks, I can't help but feel like they're a little over-engineered... I'm sure it works as intended, haven't fully tested myself.

The simpler solution in my mind is to process and output the current step on Clock(0) first and increment the step last. So, if a reset sets it back to step=0, that step is still processed before advancing. This is how it already works in AnnularFusion.

EDIT: I'll probably eat my words lol, every app is a bit different