You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Octatrack base: frame guard skips stock FLEX tracks while FM Synth is installed #999
mw_source_render_impl in sdk/machines/octatrack/elekloader/machine_registry.c sends a FLEX track that no machine owns to a MODWERK_MACHINE_RENDER_FLEX machine's render through guarded(...). FM Synth (machine-ports.json, sy_render) is the only machine with that flag. So while FM Synth is installed, the frame guard can skip renders on ordinary FLEX tracks, even ones without FM Synth on them. The guard's own comment says the opposite: "Tracks only stock renders ... always render".
A beta unit's log on 27 Oct 2026 (base 5273cecd) showed up to about 174,000 skipped renders on stock tracks 1–5, 7 and 8 during pattern switches, with FM Synth installed but not on those tracks. Each skip silences a short piece of a sample track. This is not the cause of the Part-switch noise in the effect-buffer issue: that noise stayed after FM Synth was removed.
Also, cost[k] is only measured again when a track renders. After one expensive frame, a skipped track can stay skipped until the next probe, every 1024 frames.
Fix idea
Render unowned tracks unguarded: call the RENDER_FLEX render without the guard on tracks no machine owns. Only machines' own tracks are then skipped.
Check first: whether FM Synth on the USB base still makes its own sound on FLEX tracks that only carry the old card-build FMSYNTH marker. Those tracks would no longer be guarded.
Optionally: let a skipped track's estimate fall back over time.
Re-run the frame-guard stress from #874 on a unit afterwards: POLY8, FM Synth and busy stock tracks.
Fixed in #1017, live in the beta base since 28 Oct (6541d7e9 and later, now 9b7e0eb3): a FLEX track no machine owns now renders FM Synth's RENDER_FLEX path without the frame guard, so only machines' own tracks can be skipped. Not done yet: the #874 frame-guard stress rerun on a unit (POLY8, FM Synth and busy stock tracks). If that shows skips on stock tracks again, reopen.
Activity
Octatrack beta base: more DSP room (receiver in the shared window), F…
repeat98 commentedon Oct 29, 2026
Fixed in #1017, live in the beta base since 28 Oct (6541d7e9 and later, now 9b7e0eb3): a FLEX track no machine owns now renders FM Synth's RENDER_FLEX path without the frame guard, so only machines' own tracks can be skipped. Not done yet: the #874 frame-guard stress rerun on a unit (POLY8, FM Synth and busy stock tracks). If that shows skips on stock tracks again, reopen.
Fix: Octatrack beta base keeps playing with FM Synth installed on FLE…