• src/doors/syncretro/LAUNCHER.mdsrc/doors/syncretro/DESIGN.md M4_AUDIO.

    From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Fri Jul 10 01:39:22 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/486ce37018886b960029d771
    Added Files:
    src/doors/syncretro/LAUNCHER.md
    Modified Files:
    src/doors/syncretro/DESIGN.md M4_AUDIO.md README.md
    Log Message:
    syncretro: record the launcher design and the Windows seams

    The launcher replaces one xtrn.ini entry per cartridge with a JS
    lobby that discovers ROMs and keeps a play-activity board. Write down
    what it does and, more usefully, what it deliberately does not: no
    in-game scores, because no libretro core reports one and reading them
    means a per-ROM RAM-address table that generalizes to nothing; and no multiplayer, because game_lobby.js's registry and muster exist for a
    network play this console does not have.

    Also record the Windows seams while they are fresh. The door is POSIX
    only by decision, and the work is bounded: a dlopen shim xpdev already provides, the socket I/O in two files, the frame pacer's absolute
    deadlines, and a vcpkg libsndfile for the audio encoder. Neither the
    keypad work nor the audio work made any of it harder.

    Corrects three claims the audio spec made that the code does not: the
    unit test is test_chunk.c, Ctrl-R now really does flush the channel,
    and a terminal that never confirmed libsndfile now really does hear
    nothing -- the exit flush is skipped for it. The exit flush carries no
    fade, and the spec now says why.

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