https://gitlab.synchro.net/main/sbbs/-/commit/7cec42bc19e9d30efe74eafe
Modified Files:
src/doors/syncretro/syncretro_io.c
Log Message:
syncretro: enable dirty rects on non-SyncTERM terminals
Drop the SyncTERM-only clause from the dirty gate and emit each
non-SyncTERM patch with SIXEL_PAL_USED, so a patch carries only its
handful of used colours instead of the full 256-register palette the
old code judged "far more than one frame". That judgement was correct
under the all-or-nothing palette; subsetting overturns it. Patches are self-describing, so they do not depend on the ?1070l register-
persistence request; band_align (from the prior commit) keeps their
geometry safe on cell-anchored terminals. SyncTERM keeps zero-palette
patches unchanged. The stats overlay's "dr n/a" now means only "no
usable cell grid", not "not SyncTERM".
Verified headlessly: syncretro build.sh succeeds, and the standalone
dirty-rect unit test (test_dirty.c) passes. Live foot visual smoke
testing (confirming dr N% on-screen and no black strips along patch
bottoms in sparse scenes) is PENDING -- a manual step not yet run.
Co-Authored-By: Claude Opus 4.8 (1M context) <
noreply@anthropic.com>
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net