• src/doors/syncdoom/syncdoom.c src/doors/syncduke/syncduke.h syncduke_i

    From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Sat Jul 11 18:22:41 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/842d355b5535e0369bcf846a
    Modified Files:
    src/doors/syncdoom/syncdoom.c src/doors/syncduke/syncduke.h syncduke_input.c syncduke_io.c
    Log Message:
    syncduke,syncdoom: reclaim the status-line row; fix DOOM keypad-plus

    Adopt SyncConquer's DECSSDT status-line hide in SyncDuke and SyncDOOM.
    On entry each door emits termgfx_term_status_off (DECSSDT Ps=0) before
    the canvas probe, so SyncTERM frees its 25th row and the game fills the
    full 80x25 / 640x400 canvas instead of the 640x384 it draws into while
    the status line is visible. The prefixed DECRQSS query's reply is
    captured (a rolling-window scan in the input pump) and restored on exit
    via termgfx_term_status_set, mirroring SyncConquer's door_term_restore.

    Also fix SyncDOOM's numeric-keypad '+': it emitted the character '+',
    but DOOM binds screen-size-up and automap zoom-in to KEY_EQUALS ('='),
    not '+'. keypad-'-' worked only because screen-size-down is KEY_MINUS
    ('-'), which the keypad character happens to match. Map keypad-'+' to
    '=' in both the evdev and kitty numpad tables so it resizes and zooms
    with the same parity keypad-'-' already had; the main '+'/'=' keys are untouched.

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

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