• src/doors/syncscumm/test/test_sixel_palette_used.csrc/doors/termgfx/RE

    From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Wed Jul 22 16:22:51 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/6512285c1be7fcf8528fecb2
    Added Files:
    src/doors/syncscumm/test/test_sixel_palette_used.c
    Modified Files:
    src/doors/termgfx/README.md sixel.c sixel.h
    Log Message:
    termgfx sixel: add SIXEL_PAL_USED to emit only referenced registers

    Replace sixel_encode()'s boolean emit_palette with a tri-state: SIXEL_PAL_NONE/FULL (the legacy 0/1, byte-identical output) and a new SIXEL_PAL_USED that (re)defines only the color registers an image
    actually references, at their original index. Register-resetting
    terminals (xterm/foot/Windows Terminal) must carry a palette on every
    image, and all 256 is mostly wasted bytes; USED cuts a typical dirty
    box from ~3.8KB of palette to a few hundred bytes with no wrong-color
    risk, since every referenced index is in the emitted set by
    construction. Persistent terminals keep FULL/NONE so a palette-less
    box can still rely on a prior frame's registers.

    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net